Compare commits

..

1 Commits

@ -0,0 +1,79 @@
/*
* Copyright (c) 2010-2011, The MiCode Open Source Community (www.micode.net)
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package net.micode.notes.data;
import android.content.Context;
import android.database.Cursor;
import android.provider.ContactsContract.CommonDataKinds.Phone;
import android.provider.ContactsContract.Data;
import android.telephony.PhoneNumberUtils;
import android.util.Log;
import java.util.HashMap;
public class Contact {//联系人
//定义了一个静态的HashMap变量sContactCache和一个静态的字符串常量TAG。
private static HashMap<String, String> sContactCache;
private static final String TAG = "Contact";
//定义字符串常量CALLER_ID_SELECTION包含了整个查询的语句其中使用了安卓提供的一些函数和常量比如PHONE_NUMBERS_EQUAL函数和Phone.NUMBER常量。
//该查询语句作用是从小米设备的联系人数据库中设法获取和指定电话号码匹配的联系人的信息。
private static final String CALLER_ID_SELECTION = "PHONE_NUMBERS_EQUAL(" + Phone.NUMBER
+ ",?) AND " + Data.MIMETYPE + "='" + Phone.CONTENT_ITEM_TYPE + "'"
+ " AND " + Data.RAW_CONTACT_ID + " IN "
+ "(SELECT raw_contact_id "
+ " FROM phone_lookup"
+ " WHERE min_match = '+')";
//定义了一个getContact用来接收context对象和电话号码作为参数该方法先检查sContactCache中是否已经缓存了号码对应联系人信息是的话直接返回联系人姓名。
//否则就构造一个查询语句查询成功后将姓名缓存到sContactCache中,返回姓名失败的话就返回null
public static String getContact(Context context, String phoneNumber) {
if(sContactCache == null) {
sContactCache = new HashMap<String, String>();
}
if(sContactCache.containsKey(phoneNumber)) {
return sContactCache.get(phoneNumber);
}
//将电话号码中的"+"替换为最小匹配的呼叫者ID以生成新的查询条件。
//使用查询条件在联系人数据的URI(Data.CONTENT_URI)上进行查询,查询的结果只包含联系人的显示名称(Phone.DISPLAY_NAME)。
String selection = CALLER_ID_SELECTION.replace("+",
PhoneNumberUtils.toCallerIDMinMatch(phoneNumber));
Cursor cursor = context.getContentResolver().query(
Data.CONTENT_URI,
new String [] { Phone.DISPLAY_NAME },
selection,
new String[] { phoneNumber },
null);
//如果查询结果不为空将第一个结果的显示名称存储在缓存中并返回该名称否则记录日志并返回null。
if (cursor != null && cursor.moveToFirst()) {
try {
String name = cursor.getString(0);
sContactCache.put(phoneNumber, name);
return name;
} catch (IndexOutOfBoundsException e) {
Log.e(TAG, " Cursor get string error " + e.toString());
return null;
} finally {
cursor.close();
}
} else {
Log.d(TAG, "No contact matched with number:" + phoneNumber);
return null;
}
}
}

@ -1,10 +1,26 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- Copyright (c) 2010-2011, The MiCode Open Source Community (www.micode.net)
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
-->
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="net.micode.notes"
android:versionCode="1"
android:versionName="0.1">
android:versionName="0.1" >
<uses-sdk android:minSdkVersion="21" />
<uses-sdk android:minSdkVersion="14" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="com.android.launcher.permission.INSTALL_SHORTCUT" />
@ -17,49 +33,8 @@
<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" />
<application
android:icon="@drawable/icon_app_new"
android:label="@string/app_name">
<activity
android:name=".ui.SplashActivity"
android:configChanges="orientation|keyboardHidden|screenSize"
android:theme="@style/Theme.Note.Fullscreen">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<activity android:name=".ui.LoginActivity" android:configChanges="keyboardHidden|orientation|screenSize" android:label="@string/app_name" android:launchMode="singleTop" android:theme="@style/NoteTheme" android:windowSoftInputMode="adjustPan">
<!-- android:uiOptions="splitActionBarWhenNarrow" -->
<intent-filter>
<action android:name="android.intent.action.MAIN"/>
<category android:name="android.intent.category.LAUNCHER"/>
</intent-filter>
</activity>
<activity
android:name=".ui.ChangePassword"
android:configChanges="keyboardHidden|orientation|screenSize"
android:label="@string/app_name"
android:launchMode="singleTop"
android:theme="@style/NoteTheme"
android:windowSoftInputMode="adjustPan">
</activity>
<activity
android:name=".ui.CreatePassword"
android:configChanges="keyboardHidden|orientation|screenSize"
android:label="@string/app_name"
android:launchMode="singleTop"
android:theme="@style/NoteTheme"
android:windowSoftInputMode="adjustPan">
</activity>
<activity
android:name=".ui.DeletePassword"
android:configChanges="keyboardHidden|orientation|screenSize"
android:label="@string/app_name"
android:launchMode="singleTop"
android:theme="@style/NoteTheme"
android:windowSoftInputMode="adjustPan">
</activity>
android:icon="@drawable/icon_app"
android:label="@string/app_name" >
<activity
android:name=".ui.NotesListActivity"
android:configChanges="keyboardHidden|orientation|screenSize"
@ -69,32 +44,34 @@
android:uiOptions="splitActionBarWhenNarrow"
android:windowSoftInputMode="adjustPan" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<activity
android:name=".ui.NoteEditActivity"
android:configChanges="keyboardHidden|orientation|screenSize"
android:launchMode="singleTop"
android:theme="@style/NoteTheme">
android:theme="@style/NoteTheme" >
<intent-filter>
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.DEFAULT" />
<data android:mimeType="vnd.android.cursor.item/text_note" />
<data android:mimeType="vnd.android.cursor.item/call_note" />
</intent-filter>
<intent-filter>
<action android:name="android.intent.action.INSERT_OR_EDIT" />
<category android:name="android.intent.category.DEFAULT" />
<data android:mimeType="vnd.android.cursor.item/text_note" />
<data android:mimeType="vnd.android.cursor.item/call_note" />
</intent-filter>
<intent-filter>
<action android:name="android.intent.action.SEARCH" />
<category android:name="android.intent.category.DEFAULT" />
</intent-filter>
@ -104,13 +81,13 @@
</activity>
<provider
android:name=".data.NotesProvider"
android:name="net.micode.notes.data.NotesProvider"
android:authorities="micode_notes"
android:multiprocess="true" />
<receiver
android:name=".widget.NoteWidgetProvider_2x"
android:label="@string/app_widget2x2">
android:label="@string/app_widget2x2" >
<intent-filter>
<action android:name="android.appwidget.action.APPWIDGET_UPDATE" />
<action android:name="android.appwidget.action.APPWIDGET_DELETED" />
@ -123,7 +100,8 @@
</receiver>
<receiver
android:name=".widget.NoteWidgetProvider_4x"
android:label="@string/app_widget4x4">
android:label="@string/app_widget4x4" >
<intent-filter>
<action android:name="android.appwidget.action.APPWIDGET_UPDATE" />
<action android:name="android.appwidget.action.APPWIDGET_DELETED" />
@ -134,29 +112,36 @@
android:name="android.appwidget.provider"
android:resource="@xml/widget_4x_info" />
</receiver>
<receiver android:name=".ui.AlarmInitReceiver">
<receiver android:name=".ui.AlarmInitReceiver" >
<intent-filter>
<action android:name="android.intent.action.BOOT_COMPLETED" />
</intent-filter>
</receiver>
<receiver
android:name=".ui.AlarmReceiver"
android:process=":remote"></receiver>
android:name="net.micode.notes.ui.AlarmReceiver"
android:process=":remote" >
</receiver>
<activity
android:name=".ui.AlarmAlertActivity"
android:label="@string/app_name"
android:launchMode="singleInstance"
android:theme="@android:style/Theme.Holo.Wallpaper.NoTitleBar"></activity>
android:theme="@android:style/Theme.Holo.Wallpaper.NoTitleBar" >
</activity>
<activity
android:name=".ui.NotesPreferenceActivity"
android:name="net.micode.notes.ui.NotesPreferenceActivity"
android:label="@string/preferences_title"
android:launchMode="singleTop"
android:theme="@android:style/Theme.Holo.Light"></activity>
android:theme="@android:style/Theme.Holo.Light" >
</activity>
<service
android:name=".gtask.remote.GTaskSyncService"
android:exported="false"></service>
android:name="net.micode.notes.gtask.remote.GTaskSyncService"
android:exported="false" >
</service>
<meta-data
android:name="android.app.default_searchable"

@ -1,4 +1,4 @@
<?xml version="1.0" encoding="utf-8"?>
<?xml version="1.0" encoding="UTF-8"?>
<!-- Copyright (c) 2010-2011, The MiCode Open Source Community (www.micode.net)

@ -1,4 +1,4 @@
<?xml version="1.0" encoding="utf-8"?>
<?xml version="1.0" encoding="UTF-8"?>
<!-- Copyright (c) 2010-2011, The MiCode Open Source Community (www.micode.net)

Binary file not shown.

Before

Width:  |  Height:  |  Size: 149 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.3 MiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 319 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.6 MiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.2 MiB

@ -1,72 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
android:gravity="center_vertical">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="center">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="输入原有密码:"/>
<EditText
android:id="@+id/old_password"
android:layout_width="200dp"
android:layout_height="wrap_content"
android:password="true"/>
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="center">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="输入新建密码:"/>
<EditText
android:id="@+id/new_password"
android:layout_width="200dp"
android:layout_height="wrap_content"
android:password="true"/>
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="center">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="再次输入密码:"/>
<EditText
android:id="@+id/ack_password"
android:layout_width="200dp"
android:layout_height="wrap_content"
android:password="true"/>
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="center">
<Button
android:id="@+id/Bt_Acknowledged"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="确认"/>
</LinearLayout>
</LinearLayout>

@ -1,38 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
android:gravity="center_vertical">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="center">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="输入原有密码:"/>
<EditText
android:id="@+id/old_password"
android:layout_width="200dp"
android:layout_height="wrap_content"
android:password="true"/>
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="center">
<Button
android:id="@+id/Bt_Acknowledged"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="确认"/>
</LinearLayout>
</LinearLayout>

@ -1,56 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
android:gravity="center_vertical">
<!-- <LinearLayout-->
<!-- android:layout_width="match_parent"-->
<!-- android:layout_height="wrap_content"-->
<!-- android:gravity="center">-->
<!-- <TextView-->
<!-- android:layout_width="wrap_content"-->
<!-- android:layout_height="wrap_content"-->
<!-- android:text="用户:"/>-->
<!-- <EditText-->
<!-- android:id="@+id/lg_user"-->
<!-- android:layout_width="150dp"-->
<!-- android:layout_height="wrap_content" />-->
<!-- </LinearLayout>-->
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="center">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="密码:"/>
<EditText
android:id="@+id/lg_password"
android:layout_width="150dp"
android:layout_height="wrap_content"
android:password="true"/>
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="center">
<Button
android:id="@+id/login"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="登录"/>
<!-- <Button-->
<!-- android:id="@+id/lg_registered"-->
<!-- android:layout_width="wrap_content"-->
<!-- android:layout_height="wrap_content"-->
<!-- android:text="注册"/>-->
</LinearLayout>
</LinearLayout>

@ -1,54 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
android:gravity="center_vertical">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="center">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="新建密码:"/>
<EditText
android:id="@+id/rg_password01"
android:layout_width="200dp"
android:layout_height="wrap_content"
android:password="true"/>
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="center">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="确认密码:"/>
<EditText
android:id="@+id/rg_password02"
android:layout_width="200dp"
android:layout_height="wrap_content"
android:password="true"/>
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="center">
<Button
android:id="@+id/rg_registered"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="确认"/>
</LinearLayout>
</LinearLayout>

@ -1,53 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="?attr/fullscreenBackgroundColor"
android:theme="@style/ThemeOverlay.Note.FullscreenContainer"
tools:context=".ui.SplashActivity">
<!-- The primary full-screen view. This can be replaced with whatever view
is needed to present your content, e.g. VideoView, SurfaceView,
TextureView, etc. -->
<TextView
android:id="@+id/fullscreen_content"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@drawable/splash"
android:gravity="center"
android:keepScreenOn="true"
android:text="@string/dummy_content"
android:textColor="?attr/fullscreenTextColor"
android:textSize="50sp"
android:textStyle="bold" />
<!-- This FrameLayout insets its children based on system windows using
android:fitsSystemWindows. -->
<FrameLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:fitsSystemWindows="true">
<LinearLayout
android:id="@+id/fullscreen_content_controls"
style="@style/Widget.Theme.Note.ButtonBar.Fullscreen"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_gravity="bottom|center_horizontal"
android:orientation="horizontal"
tools:ignore="UselessParent">
<Button
android:id="@+id/dummy_button"
style="?android:attr/buttonBarButtonStyle"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:text="@string/dummy_button" />
</LinearLayout>
</FrameLayout>
</FrameLayout>

@ -31,17 +31,6 @@
android:layout_width="fill_parent"
android:layout_height="wrap_content">
<Button
android:id="@+id/translate"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="#2196F3"
android:text="翻译" />
<ImageButton
android:id="@+id/add_img_btn"
android:layout_width="45dp"
android:layout_height="match_parent"
android:src="@android:drawable/ic_menu_gallery" />
<TextView
android:id="@+id/tv_modified_date"
android:layout_width="0dip"
@ -58,13 +47,6 @@
android:layout_gravity="center_vertical"
android:background="@drawable/title_alert" />
<TextView
android:id="@+id/text_num"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="right|center_vertical"
android:layout_marginRight="8dip" />
<TextView
android:id="@+id/tv_alert_date"
android:layout_width="wrap_content"
@ -125,7 +107,6 @@
android:layout_marginLeft="-10dip"
android:visibility="gone" />
</LinearLayout>
</ScrollView>
<ImageView

@ -18,9 +18,8 @@
<FrameLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent">
<!-- android:background="@drawable/list_background"> -->
android:layout_height="fill_parent"
android:background="@drawable/list_background">
<LinearLayout
android:layout_width="fill_parent"

@ -49,13 +49,4 @@
<item
android:id="@+id/menu_delete_remind"
android:title="@string/menu_remove_remind" />
<item
android:id="@+id/menu_font_setting"
android:title="@string/menu_font_setting"/> />
<item
android:id="@+id/menu_revoke"
android:title="@string/menu_revoke"/>
<item
android:id="@+id/menu_voice_speech"
android:title="@string/menu_voice_speech" />
</menu>

@ -32,33 +32,8 @@
<item
android:id="@+id/menu_setting"
android:title="@string/menu_setting" />
<item
android:id="@+id/menu_search"
android:title="@string/menu_search"/>
<!-- Background image switching -->
<item
android:id="@+id/menu_switch_to_picture1"
android:title="@string/menu_switch_to_picture1"/>
<item
android:id="@+id/menu_switch_to_picture2"
android:title="@string/menu_switch_to_picture2"/>
<item
android:id="@+id/menu_switch_to_picture3"
android:title="@string/menu_switch_to_picture3"/>
<item
android:id="@+id/menu_secret"
android:title="@string/menu_secret"/>
<item
android:id="@+id/menu_quit_secret"
android:title="@string/menu_quit_secret" />
<item
android:id="@+id/menu_createlogin"
android:title="@string/menu_createlogin" />
<item
android:id="@+id/menu_deletelogin"
android:title="@string/menu_deletelogin" />
<item
android:id="@+id/menu_changelogin"
android:title="@string/menu_changelogin" />
</menu>

@ -1,7 +0,0 @@
<resources>
<style name="ThemeOverlay.Note.FullscreenContainer" parent="">
<item name="fullscreenBackgroundColor">@color/light_blue_900</item>
<item name="fullscreenTextColor">@color/light_blue_A400</item>
</style>
</resources>

@ -122,19 +122,5 @@
<plurals name="search_results_title">
<item quantity="other"><xliff:g id="NUMBER">%1$s</xliff:g> 条符合“<xliff:g id="SEARCH">%2$s</xliff:g>”的搜索结果</item>
</plurals>
<string name="menu_revoke">撤销</string>
//中文
<string name="tips_of_revoke">提示</string>
<string name="can_not_revoke">您不能再执行撤销了</string>
<string name="have_not_input_anything">您还没有输入任何内容</string>
<string name="menu_voice_speech">朗读</string>
<string name="menu_font_setting">设置字体</string>
<string name="menu_switch_to_picture1">切换背景1</string>
<string name="menu_switch_to_picture2">切换背景2</string>
<string name="menu_switch_to_picture3">切换背景3</string>
<string name="menu_secret">私密模式</string>
<string name="menu_quit_secret">退出私密模式</string>
<string name="menu_createlogin">新建登录密码</string>
<string name="menu_deletelogin">删除登录密码</string>
<string name="menu_changelogin">修改登录密码</string>
</resources>

@ -1,4 +1,4 @@
<?xml version="1.0" encoding="utf-8"?>
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!-- Copyright (c) 2010-2011, The MiCode Open Source Community (www.micode.net)

@ -1,6 +0,0 @@
<resources>
<declare-styleable name="FullscreenAttrs">
<attr name="fullscreenBackgroundColor" format="color" />
<attr name="fullscreenTextColor" format="color" />
</declare-styleable>
</resources>

@ -17,9 +17,4 @@
<resources>
<color name="user_query_highlight">#335b5b5b</color>
<color name="light_blue_600">#FF039BE5</color>
<color name="light_blue_900">#FF01579B</color>
<color name="light_blue_A200">#FF40C4FF</color>
<color name="light_blue_A400">#FF00B0FF</color>
<color name="black_overlay">#66000000</color>
</resources>

@ -1,6 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<resources>
<item name="translate" type="id" />
<item name="num_word" type="id" />
<item name="iatBtn" type="id" />
</resources>

@ -15,7 +15,8 @@
limitations under the License.
-->
<resources xmlns:android="http://schemas.android.com/apk/res/android" xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
<string name="app_name">Notes</string>
<string name="app_widget2x2">Notes 2x2</string>
<string name="app_widget4x4">Notes 4x4</string>
@ -38,12 +39,6 @@
<string name="file_path">/MIUI/notes/</string>
<string name="file_name_txt_format">notes_%s.txt</string>
<!-- notes list string -->
<!-- Background Switch -->
<string name="menu_switch_to_picture1">Switch_to_picture1</string>
<string name="menu_switch_to_picture2">Switch_to_picture2</string>
<string name="menu_switch_to_picture3">Switch_to_picture3</string>
<string name="format_folder_files_count">(%d)</string>
<string name="menu_create_folder">New Folder</string>
<string name="menu_export_text">Export text</string>
@ -132,26 +127,9 @@
<string name="datetime_dialog_ok">set</string>
<string name="datetime_dialog_cancel">cancel</string>
<plurals name="search_results_title">
<item quantity="one"><xliff:g example="1" id="number">%1$s</xliff:g> result for \"<xliff:g example="???" id="search">%2$s</xliff:g>\"</item>
<item quantity="one"><xliff:g id="number" example="1">%1$s</xliff:g> result for \"<xliff:g id="search" example="???">%2$s</xliff:g>\"</item>
<!-- Case of 0 or 2 or more results. -->
<item quantity="other"><xliff:g example="15" id="number">%1$s</xliff:g> results for \"<xliff:g example="???" id="search">%2$s</xliff:g>\"</item>
<item quantity="other"><xliff:g id="number" example="15">%1$s</xliff:g> results for \"<xliff:g id="search" example="???">%2$s</xliff:g>\"</item>
</plurals>
<string name="title_activity_fullscneen">FullscreenActivity</string>
<string name="dumny_button">Dummy Button</string>
<string name="dummy_content">写下你的快乐</string>
<string name="title_activity_splash">SplashActivity</string>
<string name="dummy_button" />
<string name="menu_revoke">Revoke</string>
<string name="menu_font_setting">Set font</string>
<string name="menu_voice_speech">voice speech</string>
<string name="tips_of_revoke">Tips</string>
<string name="can_not_revoke">You can not revoke any more</string>
<string name="have_not_input_anything">You haven not input anything</string>
<string name="menu_secret">Set_secret</string>
<string name="menu_quit_secret">Quit_secret</string>
<string name="menu_createlogin">CreateLogin</string>
<string name="menu_deletelogin">Deletelogin</string>
<string name="menu_changelogin">Changelogin</string>
</resources>

@ -16,22 +16,18 @@
-->
<resources>
<style name="TextAppearanceSuper">
<item name="android:textSize">@dimen/text_font_size_super</item>
<item name="android:textColorLink">#002AFF</item>
<item name="android:textColorLink">#0000ff</item>
</style>
<style name="TextAppearanceLarge">
<item name="android:textSize">@dimen/text_font_size_large</item>
<item name="android:textColorLink">#B90000FF</item>
<item name="android:textColorLink">#0000ff</item>
</style>
<style name="TextAppearanceMedium">
<item name="android:textSize">@dimen/text_font_size_medium</item>
<item name="android:textColorLink">#0000ff</item>
</style>
<style name="TextAppearanceNormal">
<item name="android:textSize">@dimen/text_font_size_normal</item>
<item name="android:textColorLink">#0000ff</item>
@ -39,7 +35,7 @@
<style name="TextAppearancePrimaryItem">
<item name="android:textSize">@dimen/text_font_size_normal</item>
<item name="android:textColor">@color/secondary_text_dark</item>
<item name="android:textColor">@color/primary_text_dark</item>
</style>
<style name="TextAppearanceSecondaryItem">
@ -53,7 +49,7 @@
</style>
<style name="HighlightTextAppearancePrimary">
<item name="android:textSize">@dimen/text_font_size_normal</item>
<item name="android:textSize">@dimen/text_font_size_normal</item>
<item name="android:textColor">@color/primary_text_dark</item>
</style>
@ -68,15 +64,6 @@
<style name="NoteActionBarStyle" parent="@android:style/Widget.Holo.Light.ActionBar.Solid">
<item name="android:displayOptions" />
<item name="android:visibility">visible</item>
</style>
<style name="Widget.Theme.Note.ActionBar.Fullscreen" parent="Widget.AppCompat.ActionBar">
<item name="android:background">@color/black_overlay</item>
</style>
<style name="Widget.Theme.Note.ButtonBar.Fullscreen" parent="">
<item name="android:background">@color/black_overlay</item>
<item name="android:buttonBarStyle">?android:attr/buttonBarStyle</item>
<item name="android:visibility">gone</item>
</style>
</resources>

@ -1,15 +0,0 @@
<resources>
<style name="Theme.Note" parent="Theme.AppCompat.Light" />
<style name="Theme.Note.Fullscreen" parent="Theme.Note">
<item name="android:actionBarStyle">@style/Widget.Theme.Note.ActionBar.Fullscreen</item>
<item name="android:windowActionBarOverlay">true</item>
<item name="android:windowBackground">@null</item>
</style>
<style name="ThemeOverlay.Note.FullscreenContainer" parent="">
<item name="fullscreenBackgroundColor">@color/light_blue_600</item>
<item name="fullscreenTextColor">@color/light_blue_A200</item>
</style>
</resources>

@ -1,6 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="CompilerConfiguration">
<bytecodeTargetLevel target="17" />
</component>
</project>

@ -1,17 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="deploymentTargetDropDown">
<targetSelectedWithDropDown>
<Target>
<type value="QUICK_BOOT_TARGET" />
<deviceKey>
<Key>
<type value="VIRTUAL_DEVICE_PATH" />
<value value="C:\Users\Administrator\.android\avd\Pixel_2_API_34.avd" />
</Key>
</deviceKey>
</Target>
</targetSelectedWithDropDown>
<timeTargetWasSelectedWithDropDown value="2024-01-03T12:28:36.891446200Z" />
</component>
</project>

@ -1,20 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="GradleMigrationSettings" migrationVersion="1" />
<component name="GradleSettings">
<option name="linkedExternalProjectsSettings">
<GradleProjectSettings>
<option name="testRunner" value="GRADLE" />
<option name="distributionType" value="DEFAULT_WRAPPED" />
<option name="externalProjectPath" value="$PROJECT_DIR$" />
<option name="gradleJvm" value="jbr-17" />
<option name="modules">
<set>
<option value="$PROJECT_DIR$" />
<option value="$PROJECT_DIR$/app" />
</set>
</option>
</GradleProjectSettings>
</option>
</component>
</project>

@ -1,25 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="RemoteRepositoriesConfiguration">
<remote-repository>
<option name="id" value="central" />
<option name="name" value="Maven Central repository" />
<option name="url" value="https://repo1.maven.org/maven2" />
</remote-repository>
<remote-repository>
<option name="id" value="jboss.community" />
<option name="name" value="JBoss Community repository" />
<option name="url" value="https://repository.jboss.org/nexus/content/repositories/public/" />
</remote-repository>
<remote-repository>
<option name="id" value="BintrayJCenter" />
<option name="name" value="BintrayJCenter" />
<option name="url" value="https://jcenter.bintray.com/" />
</remote-repository>
<remote-repository>
<option name="id" value="Google" />
<option name="name" value="Google" />
<option name="url" value="https://dl.google.com/dl/android/maven2/" />
</remote-repository>
</component>
</project>

@ -1,7 +1,5 @@
<project version="4">
<component name="ExternalStorageConfigurationManager" enabled="true" />
<component name="ProjectRootManager" version="2" languageLevel="JDK_17" default="true" project-jdk-name="jbr-17" project-jdk-type="JavaSDK" />
<component name="ProjectType">
<option name="id" value="Android" />
<component name="ProjectRootManager">
<output url="file://$PROJECT_DIR$/out" />
</component>
</project>

@ -1,6 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<module version="4">
<component name="SonarLintModuleSettings">
<option name="uniqueId" value="29b39c38-1b9e-4d06-a0f0-055e2fc4cdeb" />
</component>
</module>

@ -1,6 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<module version="4">
<component name="SonarLintModuleSettings">
<option name="uniqueId" value="4f7188bb-ea15-4d10-b145-24c3e03bf3c8" />
</component>
</module>

@ -1,6 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<module version="4">
<component name="SonarLintModuleSettings">
<option name="uniqueId" value="01c17cb0-cd5e-41d1-954e-6d8de01e4445" />
</component>
</module>

@ -1,6 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<module version="4">
<component name="SonarLintModuleSettings">
<option name="uniqueId" value="ecb5e96d-85ac-4f16-864f-1b1b39177fd3" />
</component>
</module>

@ -1,6 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<module version="4">
<component name="SonarLintModuleSettings">
<option name="uniqueId" value="8663cd31-2537-40ad-9bee-5200a5af0551" />
</component>
</module>

@ -1,10 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="SonarLintProjectSettings">
<option name="fileExclusions">
<list>
<option value="DIRECTORY:app/src/main" />
</list>
</option>
</component>
</project>

@ -1,20 +0,0 @@
F
java:S1604§"(Make this anonymous inner class a lambda(Éãî8åù©ÌÉ1
] java:S125"<This block of commented-out lines of code should be removed.(Í<C38D>¸ýÿÿÿÿ8åù©ÌÉ1

java:S3008-"eRename this field "GTASK_SYNC_NOTIFICATION_ID" to match the regular expression '^[a-z][a-zA-Z0-9]*$'.(ëíÅÍúÿÿÿÿ8åù©ÌÉ1
S
java:S1874+"1Remove this use of "AsyncTask"; it is deprecated.(¯ÚÔËúÿÿÿÿ8åù©ÌÉ1
U
java:S3878K"8Remove this array creation and simply pass the elements.(‘Àߎ8åù©ÌÉ1
T
java:S1874K"7Remove this use of "publishProgress"; it is deprecated.(‘Àߎ8åù©ÌÉ1
P
java:S1874d".Remove this use of "<init>"; it is deprecated.(܃÷ýùÿÿÿÿ8ôù©ÌÉ1
T
java:S1874k"7Remove this use of "getNotification"; it is deprecated.(þôõì8ôù©ÌÉ1
m
java:S1874"JDon't override a deprecated method or explicitly mark it as "@Deprecated".(ë•·ÿÿÿÿÿ8ôù©ÌÉ1
m
java:S1874"JDon't override a deprecated method or explicitly mark it as "@Deprecated".(÷ችûÿÿÿÿ8ôù©ÌÉ1

@ -1,5 +0,0 @@
f java:S117%"QRename this local variable to match the regular expression '^[a-z][a-zA-Z0-9]*$'.(‘ÈÞÿ
l java:S116"WRename this field "trans_result" to match the regular expression '^[a-z][a-zA-Z0-9]*$'.(ų…þ
h java:S100!"NRename this method name to match the regular expression '^[a-z][a-zA-Z0-9]*$'.(Çó×·ÿÿÿÿÿ
c java:S100%"NRename this method name to match the regular expression '^[a-z][a-zA-Z0-9]*$'.(‘ÈÞÿ

@ -1,11 +0,0 @@
s
java:S4144Á"\Update this method so that its implementation is not identical to "getParentId" on line 185.(ø¦¯ÿ
>
java:S1125T"(Remove the unnecessary boolean literals.(ú«€É
m
java:S3776p"RRefactor this method to reduce its Cognitive Complexity from 18 to the 15 allowed.(Ñý¨úýÿÿÿÿ
C
java:S1125q"(Remove the unnecessary boolean literals.(¢´—Öÿÿÿÿÿ
>
java:S1125r"(Remove the unnecessary boolean literals.(ãêÛì

@ -1,2 +0,0 @@
a java:S101"MRename this class name to match the regular expression '^[A-Z][a-zA-Z0-9]*$'.(<28>

@ -1,25 +0,0 @@
}
java:S1192A"[Define a constant instead of duplicating this literal " TEXT NOT NULL DEFAULT ''," 5 times.(ƒþÞ¿ùÿÿÿÿ8þÃñ¡Ï1
j
java:S1192e"HDefine a constant instead of duplicating this literal " BEGIN " 4 times.(ÕêïŠþÿÿÿÿ8€Äñ¡Ï1
h
java:S1192t"FDefine a constant instead of duplicating this literal "=old." 6 times.(”»ÎÔüÿÿÿÿ8<>Äñ¡Ï1
j
java:S1192˜"GDefine a constant instead of duplicating this literal " BEGIN" 6 times.(ÕêïŠþÿÿÿÿ8<>Äñ¡Ï1
{
java:S1192:"^Define a constant instead of duplicating this literal " INTEGER NOT NULL DEFAULT 0," 11 times.(çÀœª8Äñ¡Ï1
f
java:S1192h"IDefine a constant instead of duplicating this literal " WHERE " 8 times.(Øëž°8Äñ¡Ï1
c
java:S1192h"FDefine a constant instead of duplicating this literal "=new." 6 times.(Øëž°8Äñ¡Ï1
o
java:S1192"RDefine a constant instead of duplicating this literal " AFTER DELETE ON " 3 times.(“áâB8Äñ¡Ï1
j
java:S1192g"HDefine a constant instead of duplicating this literal " SET " 8 times.(Õ÷Ë“üÿÿÿÿ8‡Äñ¡Ï1
g
java:S1192f"JDefine a constant instead of duplicating this literal " UPDATE " 8 times.(ìó¥Ä8ˆÄñ¡Ï1

java:S1192="yDefine a constant instead of duplicating this literal " INTEGER NOT NULL DEFAULT (strftime('%s','now') * 1000)," 4 times.(˜›£·8ˆÄñ¡Ï1
`
java:S1214-"CMove constants defined in this interfaces to another class or enum.(áÅÔö8ÛÄñ¡Ï1

@ -1,39 +0,0 @@
t
java:S22930"YReplace the type specification in this constructor call with the diamond operator ("<>").(àÉ™âùÿÿÿÿ
o
java:S2293]"YReplace the type specification in this constructor call with the diamond operator ("<>").(œ€ÄÑ
v
java:S2293m"YReplace the type specification in this constructor call with the diamond operator ("<>").(¾<>Ȫ8Æ™¤·Ê1
J
java:S1066U"/Merge this if statement with the enclosing one.(ßÚ§µúÿÿÿÿ
ˆ
java:S1319\"mThe return type of this method should be an interface such as "Set" rather than the implementation "HashSet".(“Ÿóßûÿÿÿÿ
ˆ
java:S1319l"mThe return type of this method should be an interface such as "Set" rather than the implementation "HashSet".(•Ñòóýÿÿÿÿ
j
java:S1104*"TMake widgetId a static final constant or non-public and provide accessors if needed.(åÇŽ<C387>
q
java:S1104+"VMake widgetType a static final constant or non-public and provide accessors if needed.(ö漬þÿÿÿÿ
C
java:S5411_"(Use a primitive boolean expression here.(ɯÀÐüÿÿÿÿ
C
java:S5411o"(Use a primitive boolean expression here.(ɯÀÐüÿÿÿÿ
D
java:S5411"(Use a primitive boolean expression here.( „Œ¢ùÿÿÿÿ
7
java:S1116,"Remove this empty statement.(ôŸŽìúÿÿÿÿ
D
java:S1874/".Remove this use of "<init>"; it is deprecated.(ÌÖçü
J
java:S2864^"4Iterate over the "entrySet" instead of the "keySet".(਷â
B
java:S1125_"'Remove the unnecessary boolean literal.(ɯÀÐüÿÿÿÿ
J
java:S2864n"4Iterate over the "entrySet" instead of the "keySet".(਷â
B
java:S1125o"'Remove the unnecessary boolean literal.(ɯÀÐüÿÿÿÿ
A
java:S1168|"+Return an empty collection instead of null.(¥¹ï<C2B9>
C
java:S1125"'Remove the unnecessary boolean literal.( „Œ¢ùÿÿÿÿ

@ -1,2 +0,0 @@
b java:S101"MRename this class name to match the regular expression '^[A-Z][a-zA-Z0-9]*$'.(–¿ÖÜ

@ -1,10 +0,0 @@
>
java:S1604/"(Make this anonymous inner class a lambda(í˽ý
h java:S100("NRename this method name to match the regular expression '^[a-z][a-zA-Z0-9]*$'.(¦Ÿ¦×ýÿÿÿÿ

java:S3923P"]This conditional operation returns the same value whether the condition is "true" or "false".(Ýç®Üÿÿÿÿÿ8ï¿ÄÆÊ1
W
java:S1874P"5Remove this use of "FORMAT_24HOUR"; it is deprecated.(Ýç®Üÿÿÿÿÿ8¿»ÃÆÊ1
W
java:S1874P"5Remove this use of "FORMAT_24HOUR"; it is deprecated.(Ýç®Üÿÿÿÿÿ8ï¿ÄÆÊ1

@ -1,31 +0,0 @@
{
java:S2293B"YReplace the type specification in this constructor call with the diamond operator ("<>").(áºÐ»ûÿÿÿÿ8•…Ù¢É1
{
java:S2293{"YReplace the type specification in this constructor call with the diamond operator ("<>").(áºÐ»ûÿÿÿÿ8•…Ù¢É1
|
java:S2293š"YReplace the type specification in this constructor call with the diamond operator ("<>").(Ûª¡úÿÿÿÿ8•…Ù¢É1
i
java:S1192V"GDefine a constant instead of duplicating this literal "%s: %s" 4 times.(ÇÇ÷«ùÿÿÿÿ8™…Ù¢É1
k
java:S1192<18>"HDefine a constant instead of duplicating this literal "=? AND " 4 times.(„¼¹<C2BC>úÿÿÿÿ8™…Ù¢É1
<EFBFBD>
java:S1319<18>"mThe return type of this method should be an interface such as "Set" rather than the implementation "HashSet".(ÛëÈðýÿÿÿÿ8™…Ù¢É1
[
java:S2589ˆ"8Remove this expression which always evaluates to "false"(ÎŽŽéûÿÿÿÿ8<>Ô¤•Ì1
\
java:S1118-":Add a private constructor to hide the implicit public one.(³¡¸<C2A1>ÿÿÿÿÿ8Ç…Ù¢É1
[
java:S1155=">Use isEmpty() to check whether the collection is empty or not.(´¤”Ó8Ë…Ù¢É1
a
java:S2147W"DCombine this catch with the one at line 85, which has the same body.(æš©›8Í…Ù¢É1
c
java:S2147<18>"ECombine this catch with the one at line 141, which has the same body.(æš©›8Ñ…Ù¢É1
r
java:S3252¸"OUse static access with "net.micode.notes.data.Notes$DataColumns" for "NOTE_ID".(ž“ñ§ûÿÿÿÿ8×…Ù¢É1
t
java:S3252¸"QUse static access with "net.micode.notes.data.Notes$DataColumns" for "MIME_TYPE".(ž“ñ§ûÿÿÿÿ8؅٢É1
m
java:S3252Ñ"OUse static access with "net.micode.notes.data.Notes$DataColumns" for "NOTE_ID".(ýʹà8م٢É1
t
java:S3252Ò"QUse static access with "net.micode.notes.data.Notes$DataColumns" for "MIME_TYPE".(±ðŒ“úÿÿÿÿ8م٢É1

@ -1,7 +0,0 @@
z
java:S1149"_Replace the synchronized class "StringBuffer" by an unsynchronized one such as "StringBuilder".(讚<><EFBFBD><E6AA8D><EFBFBD><EFBFBD>
U
java:S1118":Add a private constructor to hide the implicit public one.(<28>そ陜<E3819D><E9999C><EFBFBD><EFBFBD>
N
java:S4719"9Replace charset name argument with StandardCharsets.UTF_8(っ<>m

@ -1,3 +0,0 @@
O
java:S59932"9Change the visibility of this constructor to "protected".(»Õí©

@ -1,29 +0,0 @@
g
java:S1301"KReplace this "switch" statement by "if" statements to increase readability.(öÛ«°þÿÿÿÿ
X
java:S18747"=Remove this use of "FLAG_SHOW_WHEN_LOCKED"; it is deprecated.(÷±µÁúÿÿÿÿ
Q
java:S1874;";Remove this use of "FLAG_TURN_SCREEN_ON"; it is deprecated.(ƒìýè
Z
java:S1874="?Remove this use of "FLAG_LAYOUT_INSET_DECOR"; it is deprecated.(‹”‡Ñúÿÿÿÿ
H
java:S1874X"2Remove this use of "isScreenOn"; it is deprecated.(¤® ²
O
java:S1874b":Remove this use of "setAudioStreamType"; it is deprecated.(¡Ìé0
U
java:S1874d":Remove this use of "setAudioStreamType"; it is deprecated.(†Å¨ªùÿÿÿÿ
`
java:S2147n"ECombine this catch with the one at line 107, which has the same body.(ÿëÛßúÿÿÿÿ
[
java:S2147q"ECombine this catch with the one at line 110, which has the same body.(‚ùïÄ
[
java:S2147t"ECombine this catch with the one at line 113, which has the same body.(ï­£Ä
M
java:S1135l"2Complete the task associated to this TODO comment.(ÕÌ<C395>®þÿÿÿÿ
M
java:S1135o"2Complete the task associated to this TODO comment.(ÕÌ<C395>®þÿÿÿÿ
M
java:S1135r"2Complete the task associated to this TODO comment.(ÕÌ<C395>®þÿÿÿÿ
M
java:S1135u"2Complete the task associated to this TODO comment.(ÕÌ<C395>®þÿÿÿÿ

@ -1,29 +0,0 @@
|
java:S2293Š"YReplace the type specification in this constructor call with the diamond operator ("<>").(æå<C3A6>„þÿÿÿÿ8Þ³ÂÍÉ1
i
java:S2184"FCast one of the operands of this multiplication operation to a "long".(⣛Úùÿÿÿÿ8ã³ÂÍÉ1
[
java:S1874S"9Remove this use of "DefaultHttpClient"; it is deprecated.(믥ìþÿÿÿÿ8ÙµÂÍÉ1
P
java:S1874ˆ"2Remove this use of "HttpParams"; it is deprecated.(øìÖ¶8äµÂÍÉ1
U
java:S1874ˆ"7Remove this use of "BasicHttpParams"; it is deprecated.(øìÖ¶8äµÂÍÉ1
_
java:S1874"<Remove this use of "HttpConnectionParams"; it is deprecated.(¥˜Â’úÿÿÿÿ8äµÂÍÉ1
_
java:S1874"<Remove this use of "setConnectionTimeout"; it is deprecated.(¥˜Â’úÿÿÿÿ8èµÂÍÉ1
Z
java:S1874Š"<Remove this use of "HttpConnectionParams"; it is deprecated.(°™¦í8èµÂÍÉ1
R
java:S1874Š"4Remove this use of "setSoTimeout"; it is deprecated.(°™¦í8èµÂÍÉ1
V
java:S1874"9Remove this use of "DefaultHttpClient"; it is deprecated.(ÛÔÇ/8èµÂÍÉ1
]
java:S1874Ž":Remove this use of "HttpProtocolParams"; it is deprecated.(Õêøÿÿÿÿÿ8èµÂÍÉ1
M
java:S2093ê"*Change this "try" to a try-with-resources.(¡»¢üùÿÿÿÿ8ðµÂÍÉ1
c
java:S2147"ECombine this catch with the one at line 405, which has the same body.(ï­£Ä8òµÂÍÉ1
c
java:S2147"ECombine this catch with the one at line 636, which has the same body.(ï­£Ä8žâÇÍÉ1

@ -1,14 +0,0 @@
o
java:S22931"YReplace the type specification in this constructor call with the diamond operator ("<>").(§þ¢¾
D
java:S1604Î"(Make this anonymous inner class a lambda(¯<>Àžÿÿÿÿÿ
m
java:S1301h"KReplace this "switch" statement by "if" statements to increase readability.(ãÁð™øÿÿÿÿ8¸ü·Ê1
M
java:S1135c"2Complete the task associated to this TODO comment.(ƒŠ® úÿÿÿÿ
C java:S131h""Add a default case to this switch.(ãÁð™øÿÿÿÿ8¡È•Ì1
^
java:S1126­"BReplace this if-then-else statement by a single method invocation.(‚å¿¥ûÿÿÿÿ
P
java:S2864Â"4Iterate over the "entrySet" instead of the "keySet".(ΚŸ<C5A1>ûÿÿÿÿ

@ -1,145 +0,0 @@
L
java:S3740l"/Provide the parametrized type for this generic.(ÃóÈ€8÷ïýÁÑ1
M
java:S3740Â"/Provide the parametrized type for this generic.(ÝÌû¸8÷ïýÁÑ1
{
java:S2293z"YReplace the type specification in this constructor call with the diamond operator ("<>").(ÑÓ<C391>¥üÿÿÿÿ8÷ïýÁÑ1
|
java:S2293ƒ"YReplace the type specification in this constructor call with the diamond operator ("<>").(®ú÷õþÿÿÿÿ8÷ïýÁÑ1
|
java:S2293Œ"YReplace the type specification in this constructor call with the diamond operator ("<>").(êÝýÂþÿÿÿÿ8÷ïýÁÑ1
w
java:S2293"YReplace the type specification in this constructor call with the diamond operator ("<>").(À—’¢8÷ïýÁÑ1
w
java:S2293ð"YReplace the type specification in this constructor call with the diamond operator ("<>").(艥ð8÷ïýÁÑ1
f
java:S1192í"HDefine a constant instead of duplicating this literal "[local]" 3 times.(¤œ˜<C593>8÷ïýÁÑ1
g
java:S1192í"IDefine a constant instead of duplicating this literal "[/local]" 3 times.(¤œ˜<C593>8÷ïýÁÑ1
n java:S117<18>"QRename this local variable to match the regular expression '^[a-z][a-zA-Z0-9]*$'.(<28>áû8÷ïýÁÑ1
s java:S117¯"QRename this local variable to match the regular expression '^[a-z][a-zA-Z0-9]*$'.(áÜùûþÿÿÿÿ8÷ïýÁÑ1
s java:S117ì"QRename this local variable to match the regular expression '^[a-z][a-zA-Z0-9]*$'.(ãðÐÙüÿÿÿÿ8÷ïýÁÑ1
s java:S117ÿ"QRename this local variable to match the regular expression '^[a-z][a-zA-Z0-9]*$'.(ÄÀ´Àúÿÿÿÿ8÷ïýÁÑ1
n java:S117œ"QRename this local variable to match the regular expression '^[a-z][a-zA-Z0-9]*$'.(<28>ò<EFBFBD>é8÷ïýÁÑ1
n java:S117¢"QRename this local variable to match the regular expression '^[a-z][a-zA-Z0-9]*$'.(ª€üÖ8÷ïýÁÑ1
n java:S117ú"QRename this local variable to match the regular expression '^[a-z][a-zA-Z0-9]*$'.(¨Å£Ð8÷ïýÁÑ1
E
java:S1604±"(Make this anonymous inner class a lambda(¬<>¥8‡ðýÁÑ1
K
java:S1604Á"(Make this anonymous inner class a lambda(¹‘¶Šùÿÿÿÿ8‡ðýÁÑ1
F
java:S1604Ñ"(Make this anonymous inner class a lambda(ˆ®Äï8ˆðýÁÑ1
K
java:S1604ž"(Make this anonymous inner class a lambda(øè³Ìýÿÿÿÿ8ˆðýÁÑ1
F
java:S1604û"(Make this anonymous inner class a lambda(Ư‚ƒ8ˆðýÁÑ1
K
java:S1604ž"(Make this anonymous inner class a lambda(×îðóÿÿÿÿÿ8ˆðýÁÑ1
K
java:S1604µ"(Make this anonymous inner class a lambda(¦“Þïÿÿÿÿÿ8ˆðýÁÑ1
K
java:S1604Ö"(Make this anonymous inner class a lambda(öëÍÿÿÿÿÿ8ˆðýÁÑ1
K
java:S1604"(Make this anonymous inner class a lambda(÷ìâèýÿÿÿÿ8ˆðýÁÑ1
K
java:S1604"(Make this anonymous inner class a lambda(úµ”œþÿÿÿÿ8ˆðýÁÑ1
F
java:S1604Ž"(Make this anonymous inner class a lambda(ά¯”8‰ðýÁÑ1
F
java:S1604µ"(Make this anonymous inner class a lambda(¨›Ì÷8‰ðýÁÑ1
F
java:S1604
"(Make this anonymous inner class a lambda(××ß’8‰ðýÁÑ1
n
java:S1301<18>"KReplace this "switch" statement by "if" statements to increase readability.(×ö³–úÿÿÿÿ8‰ðýÁÑ1
x
java:S1104q"VMake tvModified a static final constant or non-public and provide accessors if needed.(ƒëÔ£ÿÿÿÿÿ8ðýÁÑ1
y
java:S1104s"WMake ivAlertIcon a static final constant or non-public and provide accessors if needed.(ªà¶±ûÿÿÿÿ8ðýÁÑ1
y
java:S1104u"WMake tvAlertDate a static final constant or non-public and provide accessors if needed.(“²<E2809C>Öúÿÿÿÿ8ðýÁÑ1
z
java:S1104w"XMake ibSetBgColor a static final constant or non-public and provide accessors if needed.(ýãä¬üÿÿÿÿ8ðýÁÑ1
y java:S116½"\Rename this field "restore_translate" to match the regular expression '^[a-z][a-zA-Z0-9]*$'.(³ù¿­8‰ñýÁÑ1
u java:S116Ã"XRename this field "PHOTO_REQUEST" to match the regular expression '^[a-z][a-zA-Z0-9]*$'.(×ö“Ë8‰ñýÁÑ1
y java:S116Ç"\Rename this field "MAX_OF_RVOKE_TIME" to match the regular expression '^[a-z][a-zA-Z0-9]*$'.(†Õ­“8‰ñýÁÑ1
?
java:S1170Ã"!Make this final field static too.(×ö“Ë8‰ñýÁÑ1
?
java:S1170Ç"!Make this final field static too.(†Õ­“8‰ñýÁÑ1
u
java:S1450»"WRemove the "mPattern" field and declare it as a local variable in the relevant methods.(©´ÖÛ8™ñýÁÑ1
m
java:S1149l"PReplace the synchronized class "Stack" by an unsynchronized one such as "Deque".(ÃóÈ€8™ñýÁÑ1
n
java:S1149Â"PReplace the synchronized class "Stack" by an unsynchronized one such as "Deque".(ÝÌû¸8™ñýÁÑ1
e
java:S5361Ì"HReplace this call to "replaceAll()" by a call to the "replace()" method.(´úív8™ñýÁÑ1
L
java:S2140Ó")Use "java.util.Random.nextInt()" instead.(…¢˜òûÿÿÿÿ8™ñýÁÑ1
e
java:S5361õ"HReplace this call to "replaceAll()" by a call to the "replace()" method.(´úív8™ñýÁÑ1
L
java:S2140ý")Use "java.util.Random.nextInt()" instead.(…¢˜òûÿÿÿÿ8™ñýÁÑ1
p
java:S3252ý"MUse static access with "android.text.Spanned" for "SPAN_EXCLUSIVE_EXCLUSIVE".(ˆ†Îúúÿÿÿÿ8¨ñýÁÑ1
X
java:S1161Š":Add the "@Override" annotation above this method signature(ž¬¸Á8¨ñýÁÑ1
j
java:S3252ž"MUse static access with "android.text.Spanned" for "SPAN_EXCLUSIVE_EXCLUSIVE".(þà¦T8¸ñýÁÑ1
u
java:S3776œ"RRefactor this method to reduce its Cognitive Complexity from 26 to the 15 allowed.(ݨÁ±øÿÿÿÿ8¸ñýÁÑ1
^
java:S1874Á"@Remove this use of "SOFT_INPUT_ADJUST_RESIZE"; it is deprecated.(ѯ”<C2AF>8¸ñýÁÑ1
c
java:S1874é"@Remove this use of "SOFT_INPUT_ADJUST_RESIZE"; it is deprecated.(Ò£ú¿ÿÿÿÿÿ8¸ñýÁÑ1
V
java:S1874ü"9Remove this use of "setTextAppearance"; it is deprecated.(½õË(8ÈñýÁÑ1
R
java:S2864"4Iterate over the "entrySet" instead of the "keySet".(­Ô‡ï8ÈñýÁÑ1
U
java:S1135<18>"2Complete the task associated to this TODO comment.(Ùü§“ýÿÿÿÿ8ÈñýÁÑ1
?
java:S1116¥"Remove this empty statement.(ôŸŽìúÿÿÿÿ8ÈñýÁÑ1
_
java:S1126Ò"AReplace this if-then-else statement by a single return statement.(®ÎÚÉ8ÈñýÁÑ1
?
java:S1116÷"Remove this empty statement.(ôŸŽìúÿÿÿÿ8ÈñýÁÑ1
W
java:S1874ø"9Remove this use of "PreferenceManager"; it is deprecated.(ª¦úÅ8ÈñýÁÑ1
a
java:S1874ø"CRemove this use of "getDefaultSharedPreferences"; it is deprecated.(ª¦úÅ8ÈñýÁÑ1
Ÿ
java:S1186"€Add a nested comment explaining why this method is empty, throw an UnsupportedOperationException or complete the implementation.(‹ïØÚ8ÈñýÁÑ1
¤
java:S1186Ž"€Add a nested comment explaining why this method is empty, throw an UnsupportedOperationException or complete the implementation.(Ê¥¾àûÿÿÿÿ8ÈñýÁÑ1
9
java:S3626¾"Remove this redundant jump.(ûÁÝ…8ÈñýÁÑ1
Ÿ
java:S1186·"€Add a nested comment explaining why this method is empty, throw an UnsupportedOperationException or complete the implementation.(¦Œœ¢8ÈñýÁÑ1
> java:S131Ù""Add a default case to this switch.(ìúÇV8×ñýÁÑ1
W
java:S1874Æ"9Remove this use of "setTextAppearance"; it is deprecated.(¬Ñõø8×ñýÁÑ1
m
java:S1874Í"JDon't override a deprecated method or explicitly mark it as "@Deprecated".(œƒƒ©ùÿÿÿÿ8×ñýÁÑ1
X
java:S1874Ó"5Remove this use of "onBackPressed"; it is deprecated.(<28>Ñàÿÿÿÿÿ8×ñýÁÑ1
N
java:S1874ö "0Remove this use of "getColor"; it is deprecated.(è¤ÔÃ8öñýÁÑ1
k
java:S3252ø "MUse static access with "android.text.Spanned" for "SPAN_INCLUSIVE_EXCLUSIVE".(ŸÍÃó8öñýÁÑ1
\
java:S1874
"9Remove this use of "setTextAppearance"; it is deprecated.(Ùú˜Êøÿÿÿÿ8öñýÁÑ1
[
java:S1874î
"=Remove this use of "EXTRA_SHORTCUT_INTENT"; it is deprecated.(·Ã°Ÿ8öñýÁÑ1
Y
java:S1874ï
";Remove this use of "EXTRA_SHORTCUT_NAME"; it is deprecated.(ÒÀ‘ç8öñýÁÑ1
b
java:S1874ñ
"DRemove this use of "EXTRA_SHORTCUT_ICON_RESOURCE"; it is deprecated.(§éǾ8öñýÁÑ1
S
java:S1068Ç"5Remove this unused "MAX_OF_RVOKE_TIME" private field.(†Õ­“8öñýÁÑ1

@ -1,5 +0,0 @@
3
java:S2386$"Make this member "protected".(óð<C3B3>ß
h
java:S3776H"RRefactor this method to reduce its Cognitive Complexity from 19 to the 15 allowed.(ʃëï

@ -1,9 +0,0 @@
m
java:S37763"RRefactor this method to reduce its Cognitive Complexity from 16 to the 15 allowed.(üßú–ùÿÿÿÿ
O
java:S1874?"9Remove this use of "setTextAppearance"; it is deprecated.(¤ñÝ×
O
java:S1874F"9Remove this use of "setTextAppearance"; it is deprecated.(Á†<C381>ö
O
java:S1874P"9Remove this use of "setTextAppearance"; it is deprecated.(¤ñÝ×

@ -1,24 +0,0 @@
k
java:S1192"PDefine a constant instead of duplicating this literal "user management" 3 times.(è‰×Éúÿÿÿÿ
k java:S117"QRename this local variable to match the regular expression '^[a-z][a-zA-Z0-9]*$'.(è<>âÞüÿÿÿÿ
C
java:S1604%"(Make this anonymous inner class a lambda(æÉÅÊúÿÿÿÿ
p java:S116"VRename this field "lg_password" to match the regular expression '^[a-z][a-zA-Z0-9]*$'.(¹Ç<C2B9>ùùÿÿÿÿ
m java:S116"SRename this field "lg_login" to match the regular expression '^[a-z][a-zA-Z0-9]*$'.(ÜèçÔÿÿÿÿÿ
U
java:S1161":Add the "@Override" annotation above this method signature(<28>ž¨Œþÿÿÿÿ
B
java:S1125"'Remove the unnecessary boolean literal.(’î†ÿþÿÿÿÿ
[
java:S1874!"@Remove this use of "SOFT_INPUT_ADJUST_RESIZE"; it is deprecated.(úŽÛàûÿÿÿÿ
B
java:S1125)"'Remove the unnecessary boolean literal.(·´ìŒþÿÿÿÿ
B
java:S1125)"'Remove the unnecessary boolean literal.(·´ìŒþÿÿÿÿ
>
java:S11726"(Remove this unused method parameter "v".(¡é††
B
java:S11259"'Remove the unnecessary boolean literal.(·´ìŒþÿÿÿÿ
B
java:S11259"'Remove the unnecessary boolean literal.(·´ìŒþÿÿÿÿ

@ -1,13 +0,0 @@
i
java:S1192"MDefine a constant instead of duplicating this literal "Unknown URI " 4 times.(¶ª¦þüÿÿÿÿ
M
java:S1153¯"1Directly append the argument of String.valueOf().(œËߦýÿÿÿÿ

java:S3008O"eRename this field "NOTES_SNIPPET_SEARCH_QUERY" to match the regular expression '^[a-z][a-zA-Z0-9]*$'.(Èò<C388>ƒùÿÿÿÿ
Z
java:S1659¡"CDeclare "noteId" and all following declarations on a separate line.(´Ø†Ú
T
java:S2130×"8Use "Long.parseLong" for this string-to-long conversion.(•ãÿ¬ÿÿÿÿÿ
N
java:S1135À"2Complete the task associated to this TODO comment.(» æžÿÿÿÿÿ

@ -1,11 +0,0 @@
>
java:S1604C"(Make this anonymous inner class a lambda(ñ×®è
C
java:S1604L"(Make this anonymous inner class a lambda(Ò´Ñ<C2B4>ÿÿÿÿÿ
C
java:S1604v"(Make this anonymous inner class a lambda(×ÉÑ‘úÿÿÿÿ
?
java:S1604"(Make this anonymous inner class a lambda(À¸èž
V
java:S3398ß"?Move this method into the anonymous class declared at line 118.( šåš

@ -1,11 +0,0 @@
F
java:S1066Á"/Merge this if statement with the enclosing one.(â<>®¾
3
java:S2386A"Make this member "protected".(”µåÓ
8
java:S2386K"Make this member "protected".(Ñ㳎ýÿÿÿÿ
X
java:S1126Ü"AReplace this if-then-else statement by a single return statement.(¶ø ˜
?
java:S1125¬"(Remove the unnecessary boolean literals.(ÍÛì•

@ -1,2 +0,0 @@
R xml:S5594J"1Implement permissions on this exported component.(ˆ©…»ùÿÿÿÿ8ÛñáÀÑ1

@ -1,5 +0,0 @@
2
java:S2386+"Make this member "protected".(¤íÂX
n
java:S3776"RRefactor this method to reduce its Cognitive Complexity from 16 to the 15 allowed.(®‘‡§øÿÿÿÿ

@ -1,11 +0,0 @@
{
java:S2293<"YReplace the type specification in this constructor call with the diamond operator ("<>").(<28>½ñäÿÿÿÿÿ8°Îí¡Ï1
W
java:S1118%":Add a private constructor to hide the implicit public one.(ãÛÒÛ8ÀÎí¡Ï1
x
java:S3252*"VUse static access with "android.provider.ContactsContract$DataColumns" for "MIMETYPE".(‡ù¯–ÿÿÿÿÿ8ÄÎí¡Ï1
y
java:S3252+"\Use static access with "android.provider.ContactsContract$DataColumns" for "RAW_CONTACT_ID".(Ðäç÷8ÄÎí¡Ï1
{
java:S3252G"^Use static access with "android.provider.ContactsContract$ContactsColumns" for "DISPLAY_NAME".(Úÿ†Ø8ÄÎí¡Ï1

@ -1,14 +0,0 @@
C
java:S1604 "(Make this anonymous inner class a lambda(<28>¿Èšûÿÿÿÿ
R
java:S2589,"7Remove this expression which always evaluates to "true"(ûûþÏùÿÿÿÿ
[
java:S1874"@Remove this use of "SOFT_INPUT_ADJUST_RESIZE"; it is deprecated.(Ò£ú¿ÿÿÿÿÿ
B
java:S1125%"'Remove the unnecessary boolean literal.(Íö­·øÿÿÿÿ
B
java:S1125("'Remove the unnecessary boolean literal.(«éÑÓýÿÿÿÿ
B
java:S1125,"'Remove the unnecessary boolean literal.(ûûþÏùÿÿÿÿ
V java:S125>"<This block of commented-out lines of code should be removed.(œƒƒ©ùÿÿÿÿ

@ -1,15 +0,0 @@
s java:S116œ"VRename this field "TEXT_FORMAT" to match the regular expression '^[a-z][a-zA-Z0-9]*$'.(Ñ›–¼8„úŸ‰Ë1
p
java:S3776Ý"RRefactor this method to reduce its Cognitive Complexity from 27 to the 15 allowed.(œÃÁí8‰úŸ‰Ë1
o
java:S3776"RRefactor this method to reduce its Cognitive Complexity from 23 to the 15 allowed.(ì´ê8ŽúŸ‰Ë1
c
java:S2147ü"ECombine this catch with the one at line 377, which has the same body.(ß<>È´8<>úŸ‰Ë1
c
java:S2147¤"ECombine this catch with the one at line 418, which has the same body.(ï­£Ä8˜úŸ‰Ë1
d java:S899Ÿ"BDo something with the "boolean" value returned by "createNewFile".(Ð<>Íùÿÿÿÿ8˜úŸ‰Ë1
F
java:S3398"#Move this method into "TextExport".(¨ä¿ÿýÿÿÿÿ8˜úŸ‰Ë1
@
java:S3398a"#Move this method into "TextExport".(…´<C2B4>8˜úŸ‰Ë1

@ -1,13 +0,0 @@
m
java:S1192F"KDefine a constant instead of duplicating this literal "content://" 4 times.(š¨ú¯üÿÿÿÿ8šÒð¡Ï1
\
java:S1118>":Add a private constructor to hide the implicit public one.(ž’Í“úÿÿÿÿ8¢Òð¡Ï1
e
java:S1214Q"CMove constants defined in this interfaces to another class or enum.(É⸫úÿÿÿÿ8¢Òð¡Ï1
a
java:S1214¿"CMove constants defined in this interfaces to another class or enum.(ŠÉôŸ8¢Òð¡Ï1
]
java:S1118Œ":Add a private constructor to hide the implicit public one.(<28>ˆþÿÿÿÿ8¦Òð¡Ï1
X
java:S1118Ÿ":Add a private constructor to hide the implicit public one.(߀°•8¦Òð¡Ï1

Some files were not shown because too many files have changed in this diff Show More

Loading…
Cancel
Save