diff --git a/src/src/.gradle/8.1/checksums/checksums.lock b/src/src/.gradle/8.1/checksums/checksums.lock
deleted file mode 100644
index 2488e81..0000000
Binary files a/src/src/.gradle/8.1/checksums/checksums.lock and /dev/null differ
diff --git a/src/src/.gradle/8.1/checksums/md5-checksums.bin b/src/src/.gradle/8.1/checksums/md5-checksums.bin
deleted file mode 100644
index c02726a..0000000
Binary files a/src/src/.gradle/8.1/checksums/md5-checksums.bin and /dev/null differ
diff --git a/src/src/.gradle/8.1/checksums/sha1-checksums.bin b/src/src/.gradle/8.1/checksums/sha1-checksums.bin
deleted file mode 100644
index 01641b1..0000000
Binary files a/src/src/.gradle/8.1/checksums/sha1-checksums.bin and /dev/null differ
diff --git a/src/src/.gradle/8.1/dependencies-accessors/dependencies-accessors.lock b/src/src/.gradle/8.1/dependencies-accessors/dependencies-accessors.lock
deleted file mode 100644
index 7d7c310..0000000
Binary files a/src/src/.gradle/8.1/dependencies-accessors/dependencies-accessors.lock and /dev/null differ
diff --git a/src/src/.gradle/8.1/dependencies-accessors/gc.properties b/src/src/.gradle/8.1/dependencies-accessors/gc.properties
deleted file mode 100644
index e69de29..0000000
diff --git a/src/src/.gradle/8.1/executionHistory/executionHistory.bin b/src/src/.gradle/8.1/executionHistory/executionHistory.bin
deleted file mode 100644
index 10b7c2f..0000000
Binary files a/src/src/.gradle/8.1/executionHistory/executionHistory.bin and /dev/null differ
diff --git a/src/src/.gradle/8.1/executionHistory/executionHistory.lock b/src/src/.gradle/8.1/executionHistory/executionHistory.lock
deleted file mode 100644
index 8a7da3c..0000000
Binary files a/src/src/.gradle/8.1/executionHistory/executionHistory.lock and /dev/null differ
diff --git a/src/src/.gradle/8.1/fileChanges/last-build.bin b/src/src/.gradle/8.1/fileChanges/last-build.bin
deleted file mode 100644
index f76dd23..0000000
Binary files a/src/src/.gradle/8.1/fileChanges/last-build.bin and /dev/null differ
diff --git a/src/src/.gradle/8.1/fileHashes/fileHashes.bin b/src/src/.gradle/8.1/fileHashes/fileHashes.bin
deleted file mode 100644
index b1f652f..0000000
Binary files a/src/src/.gradle/8.1/fileHashes/fileHashes.bin and /dev/null differ
diff --git a/src/src/.gradle/8.1/fileHashes/fileHashes.lock b/src/src/.gradle/8.1/fileHashes/fileHashes.lock
deleted file mode 100644
index aad3cc5..0000000
Binary files a/src/src/.gradle/8.1/fileHashes/fileHashes.lock and /dev/null differ
diff --git a/src/src/.gradle/8.1/fileHashes/resourceHashesCache.bin b/src/src/.gradle/8.1/fileHashes/resourceHashesCache.bin
deleted file mode 100644
index c8000f8..0000000
Binary files a/src/src/.gradle/8.1/fileHashes/resourceHashesCache.bin and /dev/null differ
diff --git a/src/src/.gradle/8.1/gc.properties b/src/src/.gradle/8.1/gc.properties
deleted file mode 100644
index e69de29..0000000
diff --git a/src/src/.gradle/buildOutputCleanup/buildOutputCleanup.lock b/src/src/.gradle/buildOutputCleanup/buildOutputCleanup.lock
deleted file mode 100644
index 0e9e30c..0000000
Binary files a/src/src/.gradle/buildOutputCleanup/buildOutputCleanup.lock and /dev/null differ
diff --git a/src/src/.gradle/buildOutputCleanup/cache.properties b/src/src/.gradle/buildOutputCleanup/cache.properties
deleted file mode 100644
index 2be95b4..0000000
--- a/src/src/.gradle/buildOutputCleanup/cache.properties
+++ /dev/null
@@ -1,2 +0,0 @@
-#Wed Jan 03 09:28:56 CST 2024
-gradle.version=8.1
diff --git a/src/src/.gradle/buildOutputCleanup/outputFiles.bin b/src/src/.gradle/buildOutputCleanup/outputFiles.bin
deleted file mode 100644
index 74e33fd..0000000
Binary files a/src/src/.gradle/buildOutputCleanup/outputFiles.bin and /dev/null differ
diff --git a/src/src/.gradle/file-system.probe b/src/src/.gradle/file-system.probe
deleted file mode 100644
index 979c406..0000000
Binary files a/src/src/.gradle/file-system.probe and /dev/null differ
diff --git a/src/src/.gradle/vcs-1/gc.properties b/src/src/.gradle/vcs-1/gc.properties
deleted file mode 100644
index e69de29..0000000
diff --git a/src/src/.idea/.gitignore b/src/src/.idea/.gitignore
deleted file mode 100644
index 359bb53..0000000
--- a/src/src/.idea/.gitignore
+++ /dev/null
@@ -1,3 +0,0 @@
-# 默认忽略的文件
-/shelf/
-/workspace.xml
diff --git a/src/src/.idea/checkstyle-idea.xml b/src/src/.idea/checkstyle-idea.xml
deleted file mode 100644
index f5b372c..0000000
--- a/src/src/.idea/checkstyle-idea.xml
+++ /dev/null
@@ -1,16 +0,0 @@
-
-
-
- 10.12.5
- JavaOnly
- true
-
-
-
-
-
\ No newline at end of file
diff --git a/src/src/.idea/compiler.xml b/src/src/.idea/compiler.xml
deleted file mode 100644
index b589d56..0000000
--- a/src/src/.idea/compiler.xml
+++ /dev/null
@@ -1,6 +0,0 @@
-
-
-
-
-
-
\ No newline at end of file
diff --git a/src/src/.idea/gradle.xml b/src/src/.idea/gradle.xml
deleted file mode 100644
index ae388c2..0000000
--- a/src/src/.idea/gradle.xml
+++ /dev/null
@@ -1,20 +0,0 @@
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/src/src/.idea/intellij-javadocs-4.0.1.xml b/src/src/.idea/intellij-javadocs-4.0.1.xml
deleted file mode 100644
index 3ed9781..0000000
--- a/src/src/.idea/intellij-javadocs-4.0.1.xml
+++ /dev/null
@@ -1,204 +0,0 @@
-
-
-
-
- UPDATE
- false
- true
-
- METHOD
- TYPE
- FIELD
-
-
- DEFAULT
- PUBLIC
- PROTECTED
-
-
-
-
-
- ^.*(public|protected|private)*.+interface\s+\w+.*
- /**\n
- * The interface ${name}.\n
-<#if element.typeParameters?has_content> * \n
-</#if>
-<#list element.typeParameters as typeParameter>
- * @param <${typeParameter.name}> the type parameter\n
-</#list>
- */
-
-
- ^.*(public|protected|private)*.+enum\s+\w+.*
- /**\n
- * The enum ${name}.\n
- */
-
-
- ^.*(public|protected|private)*.+class\s+\w+.*
- /**\n
- * The type ${name}.\n
-<#if element.typeParameters?has_content> * \n
-</#if>
-<#list element.typeParameters as typeParameter>
- * @param <${typeParameter.name}> the type parameter\n
-</#list>
- */
-
-
- .+
- /**\n
- * The type ${name}.\n
- */
-
-
-
-
- .+
- /**\n
- * Instantiates a new ${name}.\n
-<#if element.parameterList.parameters?has_content>
- *\n
-</#if>
-<#list element.parameterList.parameters as parameter>
- * @param ${parameter.name} the ${paramNames[parameter.name]}\n
-</#list>
-<#if element.throwsList.referenceElements?has_content>
- *\n
-</#if>
-<#list element.throwsList.referenceElements as exception>
- * @throws ${exception.referenceName} the ${exceptionNames[exception.referenceName]}\n
-</#list>
- */
-
-
-
-
- ^.*(public|protected|private)*\s*.*(\w(\s*<.+>)*)+\s+get\w+\s*\(.*\).+
- /**\n
- * Gets ${partName}.\n
-<#if element.typeParameters?has_content> * \n
-</#if>
-<#list element.typeParameters as typeParameter>
- * @param <${typeParameter.name}> the type parameter\n
-</#list>
-<#if element.parameterList.parameters?has_content>
- *\n
-</#if>
-<#list element.parameterList.parameters as parameter>
- * @param ${parameter.name} the ${paramNames[parameter.name]}\n
-</#list>
-<#if isNotVoid>
- *\n
- * @return the ${partName}\n
-</#if>
-<#if element.throwsList.referenceElements?has_content>
- *\n
-</#if>
-<#list element.throwsList.referenceElements as exception>
- * @throws ${exception.referenceName} the ${exceptionNames[exception.referenceName]}\n
-</#list>
- */
-
-
- ^.*(public|protected|private)*\s*.*(void|\w(\s*<.+>)*)+\s+set\w+\s*\(.*\).+
- /**\n
- * Sets ${partName}.\n
-<#if element.typeParameters?has_content> * \n
-</#if>
-<#list element.typeParameters as typeParameter>
- * @param <${typeParameter.name}> the type parameter\n
-</#list>
-<#if element.parameterList.parameters?has_content>
- *\n
-</#if>
-<#list element.parameterList.parameters as parameter>
- * @param ${parameter.name} the ${paramNames[parameter.name]}\n
-</#list>
-<#if isNotVoid>
- *\n
- * @return the ${partName}\n
-</#if>
-<#if element.throwsList.referenceElements?has_content>
- *\n
-</#if>
-<#list element.throwsList.referenceElements as exception>
- * @throws ${exception.referenceName} the ${exceptionNames[exception.referenceName]}\n
-</#list>
- */
-
-
- ^.*((public\s+static)|(static\s+public))\s+void\s+main\s*\(\s*String\s*(\[\s*\]|\.\.\.)\s+\w+\s*\).+
- /**\n
- * The entry point of application.\n
-
- <#if element.parameterList.parameters?has_content>
- *\n
-</#if>
- * @param ${element.parameterList.parameters[0].name} the input arguments\n
-<#if element.throwsList.referenceElements?has_content>
- *\n
-</#if>
-<#list element.throwsList.referenceElements as exception>
- * @throws ${exception.referenceName} the ${exceptionNames[exception.referenceName]}\n
-</#list>
- */
-
-
- .+
- /**\n
- * ${name}<#if isNotVoid> ${return}</#if>.\n
-<#if element.typeParameters?has_content> * \n
-</#if>
-<#list element.typeParameters as typeParameter>
- * @param <${typeParameter.name}> the type parameter\n
-</#list>
-<#if element.parameterList.parameters?has_content>
- *\n
-</#if>
-<#list element.parameterList.parameters as parameter>
- * @param ${parameter.name} the ${paramNames[parameter.name]}\n
-</#list>
-<#if isNotVoid>
- *\n
- * @return the ${return}\n
-</#if>
-<#if element.throwsList.referenceElements?has_content>
- *\n
-</#if>
-<#list element.throwsList.referenceElements as exception>
- * @throws ${exception.referenceName} the ${exceptionNames[exception.referenceName]}\n
-</#list>
- */
-
-
-
-
- ^.*(public|protected|private)*.+static.*(\w\s\w)+.+
- /**\n
- * The constant ${element.getName()}.\n
- */
-
-
- ^.*(public|protected|private)*.*(\w\s\w)+.+
- /**\n
- <#if element.parent.isInterface()>
- * The constant ${element.getName()}.\n
-<#else>
- * The ${name}.\n
-</#if> */
-
-
- .+
- /**\n
- <#if element.parent.isEnum()>
- *${name} ${typeName}.\n
-<#else>
- * The ${name}.\n
-</#if>*/
-
-
-
-
-
\ No newline at end of file
diff --git a/src/src/.idea/jarRepositories.xml b/src/src/.idea/jarRepositories.xml
deleted file mode 100644
index 8b0863d..0000000
--- a/src/src/.idea/jarRepositories.xml
+++ /dev/null
@@ -1,35 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/src/src/.idea/misc.xml b/src/src/.idea/misc.xml
deleted file mode 100644
index 8978d23..0000000
--- a/src/src/.idea/misc.xml
+++ /dev/null
@@ -1,9 +0,0 @@
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/src/src/.idea/modules.xml b/src/src/.idea/modules.xml
deleted file mode 100644
index f23d870..0000000
--- a/src/src/.idea/modules.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/src/src/.idea/modules/app/note.app.androidTest.iml b/src/src/.idea/modules/app/note.app.androidTest.iml
deleted file mode 100644
index 93a7ea4..0000000
--- a/src/src/.idea/modules/app/note.app.androidTest.iml
+++ /dev/null
@@ -1,6 +0,0 @@
-
-
-
-
-
-
\ No newline at end of file
diff --git a/src/src/.idea/modules/app/note.app.iml b/src/src/.idea/modules/app/note.app.iml
deleted file mode 100644
index 9cfeb12..0000000
--- a/src/src/.idea/modules/app/note.app.iml
+++ /dev/null
@@ -1,6 +0,0 @@
-
-
-
-
-
-
\ No newline at end of file
diff --git a/src/src/.idea/modules/app/note.app.main.iml b/src/src/.idea/modules/app/note.app.main.iml
deleted file mode 100644
index 3e642d4..0000000
--- a/src/src/.idea/modules/app/note.app.main.iml
+++ /dev/null
@@ -1,6 +0,0 @@
-
-
-
-
-
-
\ No newline at end of file
diff --git a/src/src/.idea/modules/app/note.app.unitTest.iml b/src/src/.idea/modules/app/note.app.unitTest.iml
deleted file mode 100644
index 3d588c0..0000000
--- a/src/src/.idea/modules/app/note.app.unitTest.iml
+++ /dev/null
@@ -1,6 +0,0 @@
-
-
-
-
-
-
\ No newline at end of file
diff --git a/src/src/.idea/modules/app/note1.app.androidTest.iml b/src/src/.idea/modules/app/note1.app.androidTest.iml
deleted file mode 100644
index 13731ac..0000000
--- a/src/src/.idea/modules/app/note1.app.androidTest.iml
+++ /dev/null
@@ -1,6 +0,0 @@
-
-
-
-
-
-
\ No newline at end of file
diff --git a/src/src/.idea/modules/app/note1.app.iml b/src/src/.idea/modules/app/note1.app.iml
deleted file mode 100644
index 5bfe796..0000000
--- a/src/src/.idea/modules/app/note1.app.iml
+++ /dev/null
@@ -1,6 +0,0 @@
-
-
-
-
-
-
\ No newline at end of file
diff --git a/src/src/.idea/modules/app/note1.app.main.iml b/src/src/.idea/modules/app/note1.app.main.iml
deleted file mode 100644
index f0d4196..0000000
--- a/src/src/.idea/modules/app/note1.app.main.iml
+++ /dev/null
@@ -1,11 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/src/src/.idea/modules/app/note1.app.unitTest.iml b/src/src/.idea/modules/app/note1.app.unitTest.iml
deleted file mode 100644
index c1e129b..0000000
--- a/src/src/.idea/modules/app/note1.app.unitTest.iml
+++ /dev/null
@@ -1,6 +0,0 @@
-
-
-
-
-
-
\ No newline at end of file
diff --git a/src/src/.idea/modules/note.iml b/src/src/.idea/modules/note.iml
deleted file mode 100644
index a185a1a..0000000
--- a/src/src/.idea/modules/note.iml
+++ /dev/null
@@ -1,6 +0,0 @@
-
-
-
-
-
-
\ No newline at end of file
diff --git a/src/src/.idea/note1.iml b/src/src/.idea/note1.iml
deleted file mode 100644
index 3fe0d9c..0000000
--- a/src/src/.idea/note1.iml
+++ /dev/null
@@ -1,6 +0,0 @@
-
-
-
-
-
-
\ No newline at end of file
diff --git a/src/src/.idea/sonarlint/issuestore/0/2/023468cfdd0b71d4098903b9070e364658e2fbcf b/src/src/.idea/sonarlint/issuestore/0/2/023468cfdd0b71d4098903b9070e364658e2fbcf
deleted file mode 100644
index d867d1c..0000000
--- a/src/src/.idea/sonarlint/issuestore/0/2/023468cfdd0b71d4098903b9070e364658e2fbcf
+++ /dev/null
@@ -1,10 +0,0 @@
-
-F
-java:S1604"(Make this anonymous inner class a lambda(î81
-V java:S125"").(ə
-o
-java:S2293]"YReplace the type specification in this constructor call with the diamond operator ("<>").(
-o
-java:S2293m"YReplace the type specification in this constructor call with the diamond operator ("<>").(Ȫ
-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.(ǎ
-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 ""; 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.(
-C
-java:S1125"'Remove the unnecessary boolean literal.(
\ No newline at end of file
diff --git a/src/src/.idea/sonarlint/issuestore/2/b/2bfc771e07e87c37d3a76a2c815bc8fb30649798 b/src/src/.idea/sonarlint/issuestore/2/b/2bfc771e07e87c37d3a76a2c815bc8fb30649798
deleted file mode 100644
index 99c727e..0000000
--- a/src/src/.idea/sonarlint/issuestore/2/b/2bfc771e07e87c37d3a76a2c815bc8fb30649798
+++ /dev/null
@@ -1,10 +0,0 @@
-
-E
-java:S1604/"(Make this anonymous inner class a lambda(˽81
-o java:S100("NRename this method name to match the regular expression '^[a-z][a-zA-Z0-9]*$'.(81
-
-java:S3923Q"]This conditional operation returns the same value whether the condition is "true" or "false".(Ҏ81
-W
-java:S1874Q"5Remove this use of "FORMAT_24HOUR"; it is deprecated.(Ҏ81
-W
-java:S1874Q"5Remove this use of "FORMAT_24HOUR"; it is deprecated.(Ҏ81
\ No newline at end of file
diff --git a/src/src/.idea/sonarlint/issuestore/3/2/32360bf24febc78f20db52498c7576b3d8650d56 b/src/src/.idea/sonarlint/issuestore/3/2/32360bf24febc78f20db52498c7576b3d8650d56
deleted file mode 100644
index c5812ef..0000000
--- a/src/src/.idea/sonarlint/issuestore/3/2/32360bf24febc78f20db52498c7576b3d8650d56
+++ /dev/null
@@ -1,32 +0,0 @@
-
-v
-java:S22934"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:S1192G"GDefine a constant instead of duplicating this literal "%s: %s" 4 times.(8ڝ1
-j
-java:S1192~"HDefine a constant instead of duplicating this literal "=? AND " 4 times.(8ڝ1
-R
-java:S1066"/Merge this if statement with the enclosing one.(䲜8ڝ1
-
-java:S1319"mThe return type of this method should be an interface such as "Set" rather than the implementation "HashSet".(8ڝ1
-\
-java:S1118&":Add a private constructor to hide the implicit public one.(81
-[
-java:S1155/">Use isEmpty() to check whether the collection is empty or not.(81
-a
-java:S2147H"DCombine this catch with the one at line 70, which has the same body.(暩81
-b
-java:S2147q"ECombine this catch with the one at line 111, which has the same body.(暩81
-Y java:S125"").(各81
-i
-java:S2184"FCast one of the operands of this multiplication operation to a "long".(⣛81
-[
-java:S1874T"9Remove this use of "DefaultHttpClient"; it is deprecated.(믥81
-O
-java:S1874"2Remove this use of "HttpParams"; it is deprecated.(ŋE81
-T
-java:S1874"7Remove this use of "BasicHttpParams"; it is deprecated.(ŋE81
-_
-java:S1874"").(81
-K
-java:S1604"(Make this anonymous inner class a lambda(81
-m
-java:S1301x"KReplace this "switch" statement by "if" statements to increase readability.(81
-T
-java:S1135p"2Complete the task associated to this TODO comment.(81
-C java:S131x""Add a default case to this switch.(81
-e
-java:S1126"BReplace this if-then-else statement by a single method invocation.(忥81
-W
-java:S2864"4Iterate over the "entrySet" instead of the "keySet".(Κ81
\ No newline at end of file
diff --git a/src/src/.idea/sonarlint/issuestore/5/7/577f30d26378ec8a2bd2e4a43f3c79b3f04c402c b/src/src/.idea/sonarlint/issuestore/5/7/577f30d26378ec8a2bd2e4a43f3c79b3f04c402c
deleted file mode 100644
index 309a800..0000000
--- a/src/src/.idea/sonarlint/issuestore/5/7/577f30d26378ec8a2bd2e4a43f3c79b3f04c402c
+++ /dev/null
@@ -1,119 +0,0 @@
-
-|
-java:S2293"YReplace the type specification in this constructor call with the diamond operator ("<>").(ӏ81
-|
-java:S2293"YReplace the type specification in this constructor call with the diamond operator ("<>").(81
-|
-java:S2293"YReplace the type specification in this constructor call with the diamond operator ("<>").(81
-w
-java:S2293"YReplace the type specification in this constructor call with the diamond operator ("<>").(81
-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 ("<>").(艥81
-f
-java:S1192"HDefine a constant instead of duplicating this literal "[local]" 3 times.(81
-j
-java:S1192"GDefine a constant instead of duplicating this literal "cancel" 3 times.(̺81
-g
-java:S1192"IDefine a constant instead of duplicating this literal "[/local]" 3 times.(81
-n java:S117"QRename this local variable to match the regular expression '^[a-z][a-zA-Z0-9]*$'.(ţ81
-n java:S117"QRename this local variable to match the regular expression '^[a-z][a-zA-Z0-9]*$'.(81
-s java:S117"QRename this local variable to match the regular expression '^[a-z][a-zA-Z0-9]*$'.(81
-n java:S117
-"QRename this local variable to match the regular expression '^[a-z][a-zA-Z0-9]*$'.(81
-n java:S117
-"QRename this local variable to match the regular expression '^[a-z][a-zA-Z0-9]*$'.(81
-F
-java:S1604"(Make this anonymous inner class a lambda(ȼ81
-F
-java:S1604"(Make this anonymous inner class a lambda(Ư81
-F
-java:S1604"(Make this anonymous inner class a lambda(81
-K
-java:S1604"(Make this anonymous inner class a lambda(̺81
-F
-java:S1604"(Make this anonymous inner class a lambda(У81
-K
-java:S1604"(Make this anonymous inner class a lambda(ö81
-K
-java:S1604"(Make this anonymous inner class a lambda(81
-F
-java:S1604"(Make this anonymous inner class a lambda(깔81
-F
-java:S1604"(Make this anonymous inner class a lambda(ά81
-F
-java:S1604"(Make this anonymous inner class a lambda(81
-K
-java:S1604"(Make this anonymous inner class a lambda(̺81
-F
-java:S1604"(Make this anonymous inner class a lambda(ά81
-K
-java:S1604"(Make this anonymous inner class a lambda(̺81
-F
-java:S1604"(Make this anonymous inner class a lambda(81
-F
-java:S1604"(Make this anonymous inner class a lambda(ߒ81
-n
-java:S1301 "KReplace this "switch" statement by "if" statements to increase readability.(81
-y
-java:S1104"VMake tvModified a static final constant or non-public and provide accessors if needed.(ԣ81
-z
-java:S1104"WMake ivAlertIcon a static final constant or non-public and provide accessors if needed.(න81
-z
-java:S1104"WMake tvAlertDate a static final constant or non-public and provide accessors if needed.(81
-{
-java:S1104"XMake ibSetBgColor a static final constant or non-public and provide accessors if needed.(81
-z java:S116"XRename this field "PHOTO_REQUEST" to match the regular expression '^[a-z][a-zA-Z0-9]*$'.(81
-D
-java:S1170"!Make this final field static too.(81
-t
-java:S1450i"WRemove the "editText" field and declare it as a local variable in the relevant methods.(81
-u
-java:S1450"WRemove the "mPattern" field and declare it as a local variable in the relevant methods.(81
-
-java:S1149"eReplace the synchronized class "Vector" by an unsynchronized one such as "ArrayList" or "LinkedList".(81
-X java:S125k"").(81
-] java:S125"").(81
-{
-java:S2293k"YReplace the type specification in this constructor call with the diamond operator ("<>").(81
-{
-java:S2293l"YReplace the type specification in this constructor call with the diamond operator ("<>").(81
-v
-java:S2293n"YReplace the type specification in this constructor call with the diamond operator ("<>").(81
-{
-java:S2293o"YReplace the type specification in this constructor call with the diamond operator ("<>").(81
-{
-java:S2293p"YReplace the type specification in this constructor call with the diamond operator ("<>").(81
-d
-java:S1192"FDefine a constant instead of duplicating this literal " DESC" 3 times.(Ա81
-R
-java:S1066"/Merge this if statement with the enclosing one.(ƣ81
-R
-java:S1066"/Merge this if statement with the enclosing one.(˼֓81
-p
-java:S3776"RRefactor this method to reduce its Cognitive Complexity from 29 to the 15 allowed.(þ81
-P
-java:S1905"-Remove this unnecessary cast to "JSONObject".(`81
-J
-java:S1905"-Remove this unnecessary cast to "JSONObject".(؛
81
-p
-java:S3776"RRefactor this method to reduce its Cognitive Complexity from 28 to the 15 allowed.(81
-u
-java:S3776"RRefactor this method to reduce its Cognitive Complexity from 41 to the 15 allowed.(˰81
-u
-java:S3776"RRefactor this method to reduce its Cognitive Complexity from 34 to the 15 allowed.(ɸ81
-<
-java:S2129"Remove this "Long" constructor(ϭ81
-u
-java:S3776"RRefactor this method to reduce its Cognitive Complexity from 20 to the 15 allowed.(ƶؠ81
-N
-java:S1172"+Remove this unused method parameter "node".(ƶؠ81
-E
-java:S1905"'Remove this unnecessary cast to "Node".(81
-J
-java:S1905"'Remove this unnecessary cast to "Node".(81
\ No newline at end of file
diff --git a/src/src/.idea/sonarlint/issuestore/a/d/ad72331a1bed265bb9c0fe838faa74dbf69fce32 b/src/src/.idea/sonarlint/issuestore/a/d/ad72331a1bed265bb9c0fe838faa74dbf69fce32
deleted file mode 100644
index cbf4b9d..0000000
--- a/src/src/.idea/sonarlint/issuestore/a/d/ad72331a1bed265bb9c0fe838faa74dbf69fce32
+++ /dev/null
@@ -1,76 +0,0 @@
-
-w
-java:S2293"YReplace the type specification in this constructor call with the diamond operator ("<>").(艥81
-E
-java:S1604"(Make this anonymous inner class a lambda(̺V81
-F
-java:S1604"(Make this anonymous inner class a lambda(ά81
-F
-java:S1604"(Make this anonymous inner class a lambda(ܴ81
-K
-java:S1604"(Make this anonymous inner class a lambda(81
-F
-java:S1604"(Make this anonymous inner class a lambda(81
-F
-java:S1604"(Make this anonymous inner class a lambda(۱81
-F
-java:S1604"(Make this anonymous inner class a lambda(ά81
-
-java:S1862"This branch can not be reached because the condition duplicates a previous condition in the same sequence of "if/else if" statements(ɇ81
->
-java:S1116`"Remove this empty statement.(81
-h
-java:S1124"EReorder the modifiers to comply with the Java Language Specification.(81
-b
-java:S1124"EReorder the modifiers to comply with the Java Language Specification.(Ѿk81
-u
-java:S3776"RRefactor this method to reduce its Cognitive Complexity from 17 to the 15 allowed.(81
-9
-java:S3626"Remove this redundant jump.(݅81
-9
-java:S3626"Remove this redundant jump.(݅81
-9
-java:S3626"Remove this redundant jump.(݅81
-U
-java:S1135"2Complete the task associated to this TODO comment.(̐81
-M
-java:S2093"*Change this "try" to a try-with-resources.(81
-v
-java:S1450"XRemove the "mMoveMenu" field and declare it as a local variable in the relevant methods.(8ӯ1
-u
-java:S3252"RUse static access with "android.widget.AbsListView" for "MultiChoiceModeListener".(8ԯ1
-U
-java:S1135"2Complete the task associated to this TODO comment.(8ۯ1
-U
-java:S1135"2Complete the task associated to this TODO comment.(8ۯ1
-T
-java:S1874"1Remove this use of "getHeight"; it is deprecated.(81
-?
-java:S1116"Remove this empty statement.(81
-p
-java:S3776"RRefactor this method to reduce its Cognitive Complexity from 20 to the 15 allowed.(81
-F java:S108")Either remove or fill this block of code.(ʥ81
-o
-java:S3776"RRefactor this method to reduce its Cognitive Complexity from 17 to the 15 allowed.(#81
-U
-java:S1135"2Complete the task associated to this TODO comment.(81
-e
-java:S1126"BReplace this if-then-else statement by a single method invocation.(玒81
-U
-java:S1135"2Complete the task associated to this TODO comment.(81
-p
-java:S3776"RRefactor this method to reduce its Cognitive Complexity from 16 to the 15 allowed.(81
-o
-java:S3776"RRefactor this method to reduce its Cognitive Complexity from 18 to the 15 allowed.(b8Ű1
-R
-java:S3398"/Move this method into "BackgroundQueryHandler".(8ɰ1
-N
-java:S3398"0Move this method into "OnListItemClickListener".(8ɰ1
-H
-java:S3398"%Move this method into "ModeCallback".(8ɰ1
-C
-java:S3398"%Move this method into "ModeCallback".(8ɰ1
-J
-java:S1068S"(Remove this unused "mode" private field.(8ɰ1
-M
-java:S1068U"+Remove this unused "mButton" private field.(8ʰ1
\ No newline at end of file
diff --git a/src/src/.idea/sonarlint/issuestore/c/1/c182d0c9c237ea8a46a92ccaae9bb5c751923a88 b/src/src/.idea/sonarlint/issuestore/c/1/c182d0c9c237ea8a46a92ccaae9bb5c751923a88
deleted file mode 100644
index 8281165..0000000
--- a/src/src/.idea/sonarlint/issuestore/c/1/c182d0c9c237ea8a46a92ccaae9bb5c751923a88
+++ /dev/null
@@ -1,3 +0,0 @@
-
-b
-java:S1124 "EReorder the modifiers to comply with the Java Language Specification.(81
\ No newline at end of file
diff --git a/src/src/.idea/sonarlint/issuestore/c/4/c42ad3cd6e664963fa1849c760a57d417d500ee7 b/src/src/.idea/sonarlint/issuestore/c/4/c42ad3cd6e664963fa1849c760a57d417d500ee7
deleted file mode 100644
index 4d77e1b..0000000
--- a/src/src/.idea/sonarlint/issuestore/c/4/c42ad3cd6e664963fa1849c760a57d417d500ee7
+++ /dev/null
@@ -1,95 +0,0 @@
-
-W
-java:S1118":Add a private constructor to hide the implicit public one.(81
-`
-java:S1124"EReorder the modifiers to comply with the Java Language Specification.(棍
-[
-java:S1124"EReorder the modifiers to comply with the Java Language Specification.(
-[
-java:S1124"EReorder the modifiers to comply with the Java Language Specification.(۪
-[
-java:S1124"EReorder the modifiers to comply with the Java Language Specification.(ρ
-`
-java:S1124"EReorder the modifiers to comply with the Java Language Specification.(Ɖ
-[
-java:S1124 "EReorder the modifiers to comply with the Java Language Specification.(
-`
-java:S1124""EReorder the modifiers to comply with the Java Language Specification.(
-[
-java:S1124$"EReorder the modifiers to comply with the Java Language Specification.(
-`
-java:S1124&"EReorder the modifiers to comply with the Java Language Specification.(
-`
-java:S1124("EReorder the modifiers to comply with the Java Language Specification.(
-`
-java:S1124*"EReorder the modifiers to comply with the Java Language Specification.(۲
-`
-java:S1124,"EReorder the modifiers to comply with the Java Language Specification.(
-[
-java:S1124."EReorder the modifiers to comply with the Java Language Specification.(
-[
-java:S11240"EReorder the modifiers to comply with the Java Language Specification.(Ӎ
-[
-java:S11242"EReorder the modifiers to comply with the Java Language Specification.(
-[
-java:S11244"EReorder the modifiers to comply with the Java Language Specification.(̥
-[
-java:S11246"EReorder the modifiers to comply with the Java Language Specification.(Ƒ
-Z
-java:S11248"EReorder the modifiers to comply with the Java Language Specification.(
-`
-java:S1124:"EReorder the modifiers to comply with the Java Language Specification.(
-Z
-java:S1124<"EReorder the modifiers to comply with the Java Language Specification.(K
-`
-java:S1124>"EReorder the modifiers to comply with the Java Language Specification.(
-[
-java:S1124@"EReorder the modifiers to comply with the Java Language Specification.(֫
-Z
-java:S1124B"EReorder the modifiers to comply with the Java Language Specification.($
-[
-java:S1124D"EReorder the modifiers to comply with the Java Language Specification.(
-`
-java:S1124F"EReorder the modifiers to comply with the Java Language Specification.(
-[
-java:S1124H"EReorder the modifiers to comply with the Java Language Specification.(
-[
-java:S1124J"EReorder the modifiers to comply with the Java Language Specification.(
-`
-java:S1124L"EReorder the modifiers to comply with the Java Language Specification.(
-[
-java:S1124N"EReorder the modifiers to comply with the Java Language Specification.(
-`
-java:S1124P"EReorder the modifiers to comply with the Java Language Specification.(
-`
-java:S1124R"EReorder the modifiers to comply with the Java Language Specification.(
-[
-java:S1124T"EReorder the modifiers to comply with the Java Language Specification.(
-[
-java:S1124V"EReorder the modifiers to comply with the Java Language Specification.(ʹ
-`
-java:S1124X"EReorder the modifiers to comply with the Java Language Specification.(ԣ
-[
-java:S1124Z"EReorder the modifiers to comply with the Java Language Specification.(
-`
-java:S1124\"EReorder the modifiers to comply with the Java Language Specification.(Ō
-`
-java:S1124^"EReorder the modifiers to comply with the Java Language Specification.(Ȩ
-[
-java:S1124`"EReorder the modifiers to comply with the Java Language Specification.(
-[
-java:S1124b"EReorder the modifiers to comply with the Java Language Specification.(̀
-`
-java:S1124d"EReorder the modifiers to comply with the Java Language Specification.(â
-`
-java:S1124f"EReorder the modifiers to comply with the Java Language Specification.(
-[
-java:S1124h"EReorder the modifiers to comply with the Java Language Specification.(ƒ
-`
-java:S1124j"EReorder the modifiers to comply with the Java Language Specification.(
-g
-java:S1124l"EReorder the modifiers to comply with the Java Language Specification.(81
-a
-java:S1124n"EReorder the modifiers to comply with the Java Language Specification.(-81
-g
-java:S1124p"EReorder the modifiers to comply with the Java Language Specification.(81
\ No newline at end of file
diff --git a/src/src/.idea/sonarlint/issuestore/c/6/c65f5dc8218ef1da6f6bfb5d1b14aea855a54d7f b/src/src/.idea/sonarlint/issuestore/c/6/c65f5dc8218ef1da6f6bfb5d1b14aea855a54d7f
deleted file mode 100644
index a307337..0000000
--- a/src/src/.idea/sonarlint/issuestore/c/6/c65f5dc8218ef1da6f6bfb5d1b14aea855a54d7f
+++ /dev/null
@@ -1,31 +0,0 @@
-
-W
-java:S1118)":Add a private constructor to hide the implicit public one.(ڦ81
-W
-java:S1118:":Add a private constructor to hide the implicit public one.(81
-b
-java:S1124<"EReorder the modifiers to comply with the Java Language Specification.(Ɠ81
-g
-java:S1124D"EReorder the modifiers to comply with the Java Language Specification.(81
-K
-java:S2140Z")Use "java.util.Random.nextInt()" instead.(81
-\
-java:S1118a":Add a private constructor to hide the implicit public one.(Ū81
-g
-java:S1124b"EReorder the modifiers to comply with the Java Language Specification.(81
-g
-java:S1124j"EReorder the modifiers to comply with the Java Language Specification.(81
-g
-java:S1124r"EReorder the modifiers to comply with the Java Language Specification.(81
-b
-java:S1124z"EReorder the modifiers to comply with the Java Language Specification.(ɜ81
-X
-java:S1118":Add a private constructor to hide the implicit public one.(ֹ81
-h
-java:S1124"EReorder the modifiers to comply with the Java Language Specification.(81
-h
-java:S1124"EReorder the modifiers to comply with the Java Language Specification.(81
-]
-java:S1118":Add a private constructor to hide the implicit public one.(81
-c
-java:S1124"EReorder the modifiers to comply with the Java Language Specification.(81
\ No newline at end of file
diff --git a/src/src/.idea/sonarlint/issuestore/d/1/d187f1271655c3d91661a39fe6de395b6a9f290a b/src/src/.idea/sonarlint/issuestore/d/1/d187f1271655c3d91661a39fe6de395b6a9f290a
deleted file mode 100644
index e815cc6..0000000
--- a/src/src/.idea/sonarlint/issuestore/d/1/d187f1271655c3d91661a39fe6de395b6a9f290a
+++ /dev/null
@@ -1,5 +0,0 @@
-
-c
-java:S2259"@A "NullPointerException" could be thrown; "js" is nullable here.(81
-p
-java:S3776"RRefactor this method to reduce its Cognitive Complexity from 16 to the 15 allowed.(ǎ81
\ No newline at end of file
diff --git a/src/src/.idea/sonarlint/issuestore/d/1/d1cc822fa9d783a8d4563bf6e139b7ae10de2fb1 b/src/src/.idea/sonarlint/issuestore/d/1/d1cc822fa9d783a8d4563bf6e139b7ae10de2fb1
deleted file mode 100644
index efd47b4..0000000
--- a/src/src/.idea/sonarlint/issuestore/d/1/d1cc822fa9d783a8d4563bf6e139b7ae10de2fb1
+++ /dev/null
@@ -1,3 +0,0 @@
-
-E
-java:S1604)"(Make this anonymous inner class a lambda(ʩ81
\ No newline at end of file
diff --git a/src/src/.idea/sonarlint/issuestore/d/a/da57ce446af85bbd9aefee65e969869f0cff78b0 b/src/src/.idea/sonarlint/issuestore/d/a/da57ce446af85bbd9aefee65e969869f0cff78b0
deleted file mode 100644
index 4bd201c..0000000
--- a/src/src/.idea/sonarlint/issuestore/d/a/da57ce446af85bbd9aefee65e969869f0cff78b0
+++ /dev/null
@@ -1,25 +0,0 @@
-
-?
-java:S1604"(Make this anonymous inner class a lambda(
-?
-java:S1604"(Make this anonymous inner class a lambda(ܨ
-?
-java:S1604"(Make this anonymous inner class a lambda(ܨ
-?
-java:S1604"(Make this anonymous inner class a lambda(ά
-?
-java:S1604"(Make this anonymous inner class a lambda(څ
-?
-java:S1604"(Make this anonymous inner class a lambda(
-?
-java:S1604"(Make this anonymous inner class a lambda(î
-?
-java:S1604"(Make this anonymous inner class a lambda(î
-g
-java:S1301"KReplace this "switch" statement by "if" statements to increase readability.(崡
-L
-java:S1874P"6Remove this use of "findPreference"; it is deprecated.(
-h
-java:S3776\"RRefactor this method to reduce its Cognitive Complexity from 20 to the 15 allowed.(٫
-Q
-java:S1161":Add the "@Override" annotation above this method signature(
\ No newline at end of file
diff --git a/src/src/.idea/sonarlint/issuestore/d/d/dd970bd8ce083850fca1d4d159647ccd110e57cb b/src/src/.idea/sonarlint/issuestore/d/d/dd970bd8ce083850fca1d4d159647ccd110e57cb
deleted file mode 100644
index da28914..0000000
--- a/src/src/.idea/sonarlint/issuestore/d/d/dd970bd8ce083850fca1d4d159647ccd110e57cb
+++ /dev/null
@@ -1,13 +0,0 @@
-
-|
-java:S2293"YReplace the type specification in this constructor call with the diamond operator ("<>").(л8۾1
-q
-java:S1192D"ODefine a constant instead of duplicating this literal "Wrong note id:" 3 times.(8ྕ1
-d
-java:S1126"AReplace this if-then-else statement by a single return statement.(Ʒ81
-p
-java:S3776"RRefactor this method to reduce its Cognitive Complexity from 23 to the 15 allowed.(81
-a
-java:S1155">Use isEmpty() to check whether the collection is empty or not.(81
-c
-java:S2147"ECombine this catch with the one at line 258, which has the same body.(暩81
\ No newline at end of file
diff --git a/src/src/.idea/sonarlint/issuestore/e/0/e094aec5c3e1b6f44539adff3114f5a1ad603ddc b/src/src/.idea/sonarlint/issuestore/e/0/e094aec5c3e1b6f44539adff3114f5a1ad603ddc
deleted file mode 100644
index ad65062..0000000
--- a/src/src/.idea/sonarlint/issuestore/e/0/e094aec5c3e1b6f44539adff3114f5a1ad603ddc
+++ /dev/null
@@ -1,9 +0,0 @@
-
-{
-java:S22930"YReplace the type specification in this constructor call with the diamond operator ("<>").(ʩ81
-
-java:S1319"pThe return type of this method should be an interface such as "List" rather than the implementation "ArrayList".(ﷺ81
-c
-java:S2259"@A "NullPointerException" could be thrown; "js" is nullable here.(81
-y
-java:S3923"[Remove this conditional structure or edit its code blocks so that they're not all the same.(ԡ81
\ No newline at end of file
diff --git a/src/src/.idea/sonarlint/issuestore/f/0/f087b1ba1b9c91b7293fea0fb071eaed62a42137 b/src/src/.idea/sonarlint/issuestore/f/0/f087b1ba1b9c91b7293fea0fb071eaed62a42137
deleted file mode 100644
index 8062a38..0000000
--- a/src/src/.idea/sonarlint/issuestore/f/0/f087b1ba1b9c91b7293fea0fb071eaed62a42137
+++ /dev/null
@@ -1,25 +0,0 @@
-
-E
-java:S16049"(Make this anonymous inner class a lambda(ю81
-g
-java:S1124""EReorder the modifiers to comply with the Java Language Specification.(֖81
-g
-java:S1124%"EReorder the modifiers to comply with the Java Language Specification.(Ų81
-g
-java:S1124&"EReorder the modifiers to comply with the Java Language Specification.(ز81
-g
-java:S1124'"EReorder the modifiers to comply with the Java Language Specification.(81
-b
-java:S1124*"EReorder the modifiers to comply with the Java Language Specification.(ճ81
-b
-java:S1124-"EReorder the modifiers to comply with the Java Language Specification.(ߪ81
-b
-java:S1124."EReorder the modifiers to comply with the Java Language Specification.(81
-S
-java:S26969"6Make the enclosing method "static" or remove this set.(ю81
-S
-java:S2696;"6Make the enclosing method "static" or remove this set.(81
-S
-java:S2696N"6Make the enclosing method "static" or remove this set.(81
-R
-java:S2696t"6Make the enclosing method "static" or remove this set.(81
\ No newline at end of file
diff --git a/src/src/.idea/sonarlint/issuestore/f/1/f1226eeacd46c914d51f3d1a6d6f27377490d2a4 b/src/src/.idea/sonarlint/issuestore/f/1/f1226eeacd46c914d51f3d1a6d6f27377490d2a4
deleted file mode 100644
index 863e5f6..0000000
--- a/src/src/.idea/sonarlint/issuestore/f/1/f1226eeacd46c914d51f3d1a6d6f27377490d2a4
+++ /dev/null
@@ -1,13 +0,0 @@
-
-{
-java:S2293z"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
-9
-java:S23860"Make this member "protected".(u8ަ1
-u
-java:S3776"RRefactor this method to reduce its Cognitive Complexity from 25 to the 15 allowed.(8ަ1
-o
-java:S3776"RRefactor this method to reduce its Cognitive Complexity from 32 to the 15 allowed.(8ަ1
\ No newline at end of file
diff --git a/src/src/.idea/sonarlint/issuestore/f/4/f4a01d6a4fcb971362ec00a83903fd3902f52164 b/src/src/.idea/sonarlint/issuestore/f/4/f4a01d6a4fcb971362ec00a83903fd3902f52164
deleted file mode 100644
index e69de29..0000000
diff --git a/src/src/.idea/sonarlint/issuestore/f/9/f9f49497f95afd327db7a7a512612aa1089003d4 b/src/src/.idea/sonarlint/issuestore/f/9/f9f49497f95afd327db7a7a512612aa1089003d4
deleted file mode 100644
index 23fec40..0000000
--- a/src/src/.idea/sonarlint/issuestore/f/9/f9f49497f95afd327db7a7a512612aa1089003d4
+++ /dev/null
@@ -1,7 +0,0 @@
-
-:
-java:S2386"Make this member "protected".(Ꙗ8Ę1
-K
-java:S1874".Remove this use of ""; it is deprecated.(ж8Ƙ1
-T
-java:S1135"2Complete the task associated to this TODO comment.(8ǘ1
\ No newline at end of file
diff --git a/src/src/.idea/sonarlint/issuestore/f/b/fbe448ebfc3eb2d4e308f6b8b043666f5b57235e b/src/src/.idea/sonarlint/issuestore/f/b/fbe448ebfc3eb2d4e308f6b8b043666f5b57235e
deleted file mode 100644
index e69de29..0000000
diff --git a/src/src/.idea/sonarlint/issuestore/index.pb b/src/src/.idea/sonarlint/issuestore/index.pb
deleted file mode 100644
index 716eef3..0000000
--- a/src/src/.idea/sonarlint/issuestore/index.pb
+++ /dev/null
@@ -1,87 +0,0 @@
-
-p
-@app/src/main/java/net/micode/notes/gtask/remote/GTaskClient.java,4\5\4529b3a97b0f3b19b895aa06f23bed63ff38a312
-X
-(gradle/wrapper/gradle-wrapper.properties,f\b\fbe448ebfc3eb2d4e308f6b8b043666f5b57235e
-@
-local.properties,0\7\0712df971a99ac4d2fccb8e0fb19f377f3374cca
-?
-settings.gradle,0\5\05efc8b1657769a27696d478ded1e95f38737233
-@
-app/build.gradle,f\4\f4a01d6a4fcb971362ec00a83903fd3902f52164
-k
-;app/src/main/java/net/micode/notes/ui/NoteEditActivity.java,5\7\577f30d26378ec8a2bd2e4a43f3c79b3f04c402c
-l
-
-
-
-
-
-
\ No newline at end of file
diff --git a/src/src/README.md b/src/src/README.md
deleted file mode 100644
index 8351c7d..0000000
--- a/src/src/README.md
+++ /dev/null
@@ -1,2 +0,0 @@
-# zsy
-
diff --git a/src/src/app.zip b/src/src/app.zip
deleted file mode 100644
index 7a902aa..0000000
Binary files a/src/src/app.zip and /dev/null differ
diff --git a/src/src/app/build.gradle b/src/src/app/build.gradle
deleted file mode 100644
index 67bb31a..0000000
--- a/src/src/app/build.gradle
+++ /dev/null
@@ -1,26 +0,0 @@
-apply plugin: 'com.android.application'
-
-android {
- namespace "net.micode.notes"
- compileSdkVersion 22
- buildToolsVersion "34.0.0"
-
- android {
- useLibrary 'org.apache.http.legacy'
- }
-
- defaultConfig {
- applicationId "net.micode.notes"
- targetSdkVersion 16
- }
-
- buildTypes {
- release {
- minifyEnabled false
- proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.txt'
- }
- }
-}
-tasks.withType(JavaCompile) {
- options.encoding = "UTF-8"
-}
\ No newline at end of file
diff --git a/src/src/app/build/intermediates/annotation_processor_list/debug/annotationProcessors.json b/src/src/app/build/intermediates/annotation_processor_list/debug/annotationProcessors.json
deleted file mode 100644
index 9e26dfe..0000000
--- a/src/src/app/build/intermediates/annotation_processor_list/debug/annotationProcessors.json
+++ /dev/null
@@ -1 +0,0 @@
-{}
\ No newline at end of file
diff --git a/src/src/app/build/intermediates/apk/debug/app-debug.apk b/src/src/app/build/intermediates/apk/debug/app-debug.apk
deleted file mode 100644
index fcdfdce..0000000
Binary files a/src/src/app/build/intermediates/apk/debug/app-debug.apk and /dev/null differ
diff --git a/src/src/app/build/intermediates/apk/debug/output-metadata.json b/src/src/app/build/intermediates/apk/debug/output-metadata.json
deleted file mode 100644
index b2231b9..0000000
--- a/src/src/app/build/intermediates/apk/debug/output-metadata.json
+++ /dev/null
@@ -1,20 +0,0 @@
-{
- "version": 3,
- "artifactType": {
- "type": "APK",
- "kind": "Directory"
- },
- "applicationId": "net.micode.notes",
- "variantName": "debug",
- "elements": [
- {
- "type": "SINGLE",
- "filters": [],
- "attributes": [],
- "versionCode": 1,
- "versionName": "0.1",
- "outputFile": "app-debug.apk"
- }
- ],
- "elementType": "File"
-}
\ No newline at end of file
diff --git a/src/src/app/build/intermediates/apk_ide_redirect_file/debug/redirect.txt b/src/src/app/build/intermediates/apk_ide_redirect_file/debug/redirect.txt
deleted file mode 100644
index 46dacc6..0000000
--- a/src/src/app/build/intermediates/apk_ide_redirect_file/debug/redirect.txt
+++ /dev/null
@@ -1,2 +0,0 @@
-#- File Locator -
-listingFile=../../apk/debug/output-metadata.json
diff --git a/src/src/app/build/intermediates/app_metadata/debug/app-metadata.properties b/src/src/app/build/intermediates/app_metadata/debug/app-metadata.properties
deleted file mode 100644
index 59d2906..0000000
--- a/src/src/app/build/intermediates/app_metadata/debug/app-metadata.properties
+++ /dev/null
@@ -1,2 +0,0 @@
-appMetadataVersion=1.1
-androidGradlePluginVersion=8.1.2
diff --git a/src/src/app/build/intermediates/assets/debug/font/FZSTK.TTF b/src/src/app/build/intermediates/assets/debug/font/FZSTK.TTF
deleted file mode 100644
index e69de29..0000000
diff --git a/src/src/app/build/intermediates/assets/debug/font/STXINGKA.TTF b/src/src/app/build/intermediates/assets/debug/font/STXINGKA.TTF
deleted file mode 100644
index e69de29..0000000
diff --git a/src/src/app/build/intermediates/assets/debug/font/mingliub.ttc b/src/src/app/build/intermediates/assets/debug/font/mingliub.ttc
deleted file mode 100644
index e69de29..0000000
diff --git a/src/src/app/build/intermediates/assets/debug/font/simhei.ttf b/src/src/app/build/intermediates/assets/debug/font/simhei.ttf
deleted file mode 100644
index e69de29..0000000
diff --git a/src/src/app/build/intermediates/compatible_screen_manifest/debug/output-metadata.json b/src/src/app/build/intermediates/compatible_screen_manifest/debug/output-metadata.json
deleted file mode 100644
index 714f651..0000000
--- a/src/src/app/build/intermediates/compatible_screen_manifest/debug/output-metadata.json
+++ /dev/null
@@ -1,10 +0,0 @@
-{
- "version": 3,
- "artifactType": {
- "type": "COMPATIBLE_SCREEN_MANIFEST",
- "kind": "Directory"
- },
- "applicationId": "net.micode.notes",
- "variantName": "debug",
- "elements": []
-}
\ No newline at end of file
diff --git a/src/src/app/build/intermediates/compile_and_runtime_not_namespaced_r_class_jar/debug/R.jar b/src/src/app/build/intermediates/compile_and_runtime_not_namespaced_r_class_jar/debug/R.jar
deleted file mode 100644
index 8c60b2e..0000000
Binary files a/src/src/app/build/intermediates/compile_and_runtime_not_namespaced_r_class_jar/debug/R.jar and /dev/null differ
diff --git a/src/src/app/build/intermediates/compressed_assets/debug/out/assets/font/FZSTK.TTF.jar b/src/src/app/build/intermediates/compressed_assets/debug/out/assets/font/FZSTK.TTF.jar
deleted file mode 100644
index f9dc560..0000000
Binary files a/src/src/app/build/intermediates/compressed_assets/debug/out/assets/font/FZSTK.TTF.jar and /dev/null differ
diff --git a/src/src/app/build/intermediates/compressed_assets/debug/out/assets/font/STXINGKA.TTF.jar b/src/src/app/build/intermediates/compressed_assets/debug/out/assets/font/STXINGKA.TTF.jar
deleted file mode 100644
index 6c83fc3..0000000
Binary files a/src/src/app/build/intermediates/compressed_assets/debug/out/assets/font/STXINGKA.TTF.jar and /dev/null differ
diff --git a/src/src/app/build/intermediates/compressed_assets/debug/out/assets/font/mingliub.ttc.jar b/src/src/app/build/intermediates/compressed_assets/debug/out/assets/font/mingliub.ttc.jar
deleted file mode 100644
index 8f03afd..0000000
Binary files a/src/src/app/build/intermediates/compressed_assets/debug/out/assets/font/mingliub.ttc.jar and /dev/null differ
diff --git a/src/src/app/build/intermediates/compressed_assets/debug/out/assets/font/simhei.ttf.jar b/src/src/app/build/intermediates/compressed_assets/debug/out/assets/font/simhei.ttf.jar
deleted file mode 100644
index d8b9072..0000000
Binary files a/src/src/app/build/intermediates/compressed_assets/debug/out/assets/font/simhei.ttf.jar and /dev/null differ
diff --git a/src/src/app/build/intermediates/desugar_graph/debug/out/currentProject/dirs_bucket_0/graph.bin b/src/src/app/build/intermediates/desugar_graph/debug/out/currentProject/dirs_bucket_0/graph.bin
deleted file mode 100644
index d34c164..0000000
Binary files a/src/src/app/build/intermediates/desugar_graph/debug/out/currentProject/dirs_bucket_0/graph.bin and /dev/null differ
diff --git a/src/src/app/build/intermediates/desugar_graph/debug/out/currentProject/dirs_bucket_1/graph.bin b/src/src/app/build/intermediates/desugar_graph/debug/out/currentProject/dirs_bucket_1/graph.bin
deleted file mode 100644
index 413449c..0000000
Binary files a/src/src/app/build/intermediates/desugar_graph/debug/out/currentProject/dirs_bucket_1/graph.bin and /dev/null differ
diff --git a/src/src/app/build/intermediates/desugar_graph/debug/out/currentProject/dirs_bucket_2/graph.bin b/src/src/app/build/intermediates/desugar_graph/debug/out/currentProject/dirs_bucket_2/graph.bin
deleted file mode 100644
index 601f245..0000000
Binary files a/src/src/app/build/intermediates/desugar_graph/debug/out/currentProject/dirs_bucket_2/graph.bin and /dev/null differ
diff --git a/src/src/app/build/intermediates/desugar_graph/debug/out/currentProject/dirs_bucket_3/graph.bin b/src/src/app/build/intermediates/desugar_graph/debug/out/currentProject/dirs_bucket_3/graph.bin
deleted file mode 100644
index 0c309fb..0000000
Binary files a/src/src/app/build/intermediates/desugar_graph/debug/out/currentProject/dirs_bucket_3/graph.bin and /dev/null differ
diff --git a/src/src/app/build/intermediates/desugar_graph/debug/out/currentProject/dirs_bucket_4/graph.bin b/src/src/app/build/intermediates/desugar_graph/debug/out/currentProject/dirs_bucket_4/graph.bin
deleted file mode 100644
index c813ad7..0000000
Binary files a/src/src/app/build/intermediates/desugar_graph/debug/out/currentProject/dirs_bucket_4/graph.bin and /dev/null differ
diff --git a/src/src/app/build/intermediates/desugar_graph/debug/out/currentProject/dirs_bucket_5/graph.bin b/src/src/app/build/intermediates/desugar_graph/debug/out/currentProject/dirs_bucket_5/graph.bin
deleted file mode 100644
index b25dd74..0000000
Binary files a/src/src/app/build/intermediates/desugar_graph/debug/out/currentProject/dirs_bucket_5/graph.bin and /dev/null differ
diff --git a/src/src/app/build/intermediates/desugar_graph/debug/out/currentProject/dirs_bucket_6/graph.bin b/src/src/app/build/intermediates/desugar_graph/debug/out/currentProject/dirs_bucket_6/graph.bin
deleted file mode 100644
index 339fbef..0000000
Binary files a/src/src/app/build/intermediates/desugar_graph/debug/out/currentProject/dirs_bucket_6/graph.bin and /dev/null differ
diff --git a/src/src/app/build/intermediates/desugar_graph/debug/out/currentProject/dirs_bucket_7/graph.bin b/src/src/app/build/intermediates/desugar_graph/debug/out/currentProject/dirs_bucket_7/graph.bin
deleted file mode 100644
index 9caff22..0000000
Binary files a/src/src/app/build/intermediates/desugar_graph/debug/out/currentProject/dirs_bucket_7/graph.bin and /dev/null differ
diff --git a/src/src/app/build/intermediates/desugar_graph/debug/out/currentProject/jar_ae858c6b409adaf880ea9fe9e269dcf51641a95740cfd48c552341712f6460dd_bucket_0/graph.bin b/src/src/app/build/intermediates/desugar_graph/debug/out/currentProject/jar_ae858c6b409adaf880ea9fe9e269dcf51641a95740cfd48c552341712f6460dd_bucket_0/graph.bin
deleted file mode 100644
index 601f245..0000000
Binary files a/src/src/app/build/intermediates/desugar_graph/debug/out/currentProject/jar_ae858c6b409adaf880ea9fe9e269dcf51641a95740cfd48c552341712f6460dd_bucket_0/graph.bin and /dev/null differ
diff --git a/src/src/app/build/intermediates/desugar_graph/debug/out/currentProject/jar_ae858c6b409adaf880ea9fe9e269dcf51641a95740cfd48c552341712f6460dd_bucket_1/graph.bin b/src/src/app/build/intermediates/desugar_graph/debug/out/currentProject/jar_ae858c6b409adaf880ea9fe9e269dcf51641a95740cfd48c552341712f6460dd_bucket_1/graph.bin
deleted file mode 100644
index 601f245..0000000
Binary files a/src/src/app/build/intermediates/desugar_graph/debug/out/currentProject/jar_ae858c6b409adaf880ea9fe9e269dcf51641a95740cfd48c552341712f6460dd_bucket_1/graph.bin and /dev/null differ
diff --git a/src/src/app/build/intermediates/desugar_graph/debug/out/currentProject/jar_ae858c6b409adaf880ea9fe9e269dcf51641a95740cfd48c552341712f6460dd_bucket_2/graph.bin b/src/src/app/build/intermediates/desugar_graph/debug/out/currentProject/jar_ae858c6b409adaf880ea9fe9e269dcf51641a95740cfd48c552341712f6460dd_bucket_2/graph.bin
deleted file mode 100644
index 601f245..0000000
Binary files a/src/src/app/build/intermediates/desugar_graph/debug/out/currentProject/jar_ae858c6b409adaf880ea9fe9e269dcf51641a95740cfd48c552341712f6460dd_bucket_2/graph.bin and /dev/null differ
diff --git a/src/src/app/build/intermediates/desugar_graph/debug/out/currentProject/jar_ae858c6b409adaf880ea9fe9e269dcf51641a95740cfd48c552341712f6460dd_bucket_3/graph.bin b/src/src/app/build/intermediates/desugar_graph/debug/out/currentProject/jar_ae858c6b409adaf880ea9fe9e269dcf51641a95740cfd48c552341712f6460dd_bucket_3/graph.bin
deleted file mode 100644
index 601f245..0000000
Binary files a/src/src/app/build/intermediates/desugar_graph/debug/out/currentProject/jar_ae858c6b409adaf880ea9fe9e269dcf51641a95740cfd48c552341712f6460dd_bucket_3/graph.bin and /dev/null differ
diff --git a/src/src/app/build/intermediates/desugar_graph/debug/out/currentProject/jar_ae858c6b409adaf880ea9fe9e269dcf51641a95740cfd48c552341712f6460dd_bucket_4/graph.bin b/src/src/app/build/intermediates/desugar_graph/debug/out/currentProject/jar_ae858c6b409adaf880ea9fe9e269dcf51641a95740cfd48c552341712f6460dd_bucket_4/graph.bin
deleted file mode 100644
index 601f245..0000000
Binary files a/src/src/app/build/intermediates/desugar_graph/debug/out/currentProject/jar_ae858c6b409adaf880ea9fe9e269dcf51641a95740cfd48c552341712f6460dd_bucket_4/graph.bin and /dev/null differ
diff --git a/src/src/app/build/intermediates/desugar_graph/debug/out/currentProject/jar_ae858c6b409adaf880ea9fe9e269dcf51641a95740cfd48c552341712f6460dd_bucket_5/graph.bin b/src/src/app/build/intermediates/desugar_graph/debug/out/currentProject/jar_ae858c6b409adaf880ea9fe9e269dcf51641a95740cfd48c552341712f6460dd_bucket_5/graph.bin
deleted file mode 100644
index 601f245..0000000
Binary files a/src/src/app/build/intermediates/desugar_graph/debug/out/currentProject/jar_ae858c6b409adaf880ea9fe9e269dcf51641a95740cfd48c552341712f6460dd_bucket_5/graph.bin and /dev/null differ
diff --git a/src/src/app/build/intermediates/desugar_graph/debug/out/currentProject/jar_ae858c6b409adaf880ea9fe9e269dcf51641a95740cfd48c552341712f6460dd_bucket_6/graph.bin b/src/src/app/build/intermediates/desugar_graph/debug/out/currentProject/jar_ae858c6b409adaf880ea9fe9e269dcf51641a95740cfd48c552341712f6460dd_bucket_6/graph.bin
deleted file mode 100644
index 601f245..0000000
Binary files a/src/src/app/build/intermediates/desugar_graph/debug/out/currentProject/jar_ae858c6b409adaf880ea9fe9e269dcf51641a95740cfd48c552341712f6460dd_bucket_6/graph.bin and /dev/null differ
diff --git a/src/src/app/build/intermediates/desugar_graph/debug/out/currentProject/jar_ae858c6b409adaf880ea9fe9e269dcf51641a95740cfd48c552341712f6460dd_bucket_7/graph.bin b/src/src/app/build/intermediates/desugar_graph/debug/out/currentProject/jar_ae858c6b409adaf880ea9fe9e269dcf51641a95740cfd48c552341712f6460dd_bucket_7/graph.bin
deleted file mode 100644
index 601f245..0000000
Binary files a/src/src/app/build/intermediates/desugar_graph/debug/out/currentProject/jar_ae858c6b409adaf880ea9fe9e269dcf51641a95740cfd48c552341712f6460dd_bucket_7/graph.bin and /dev/null differ
diff --git a/src/src/app/build/intermediates/dex/debug/mergeDexDebug/classes.dex b/src/src/app/build/intermediates/dex/debug/mergeDexDebug/classes.dex
deleted file mode 100644
index 5884480..0000000
Binary files a/src/src/app/build/intermediates/dex/debug/mergeDexDebug/classes.dex and /dev/null differ
diff --git a/src/src/app/build/intermediates/dex_archive_input_jar_hashes/debug/out b/src/src/app/build/intermediates/dex_archive_input_jar_hashes/debug/out
deleted file mode 100644
index d6d6813..0000000
Binary files a/src/src/app/build/intermediates/dex_archive_input_jar_hashes/debug/out and /dev/null differ
diff --git a/src/src/app/build/intermediates/dex_number_of_buckets_file/debug/out b/src/src/app/build/intermediates/dex_number_of_buckets_file/debug/out
deleted file mode 100644
index 301160a..0000000
--- a/src/src/app/build/intermediates/dex_number_of_buckets_file/debug/out
+++ /dev/null
@@ -1 +0,0 @@
-8
\ No newline at end of file
diff --git a/src/src/app/build/intermediates/incremental/debug-mergeJavaRes/merge-state b/src/src/app/build/intermediates/incremental/debug-mergeJavaRes/merge-state
deleted file mode 100644
index 1c983fc..0000000
Binary files a/src/src/app/build/intermediates/incremental/debug-mergeJavaRes/merge-state and /dev/null differ
diff --git a/src/src/app/build/intermediates/incremental/debug/mergeDebugResources/compile-file-map.properties b/src/src/app/build/intermediates/incremental/debug/mergeDebugResources/compile-file-map.properties
deleted file mode 100644
index c4eee49..0000000
--- a/src/src/app/build/intermediates/incremental/debug/mergeDebugResources/compile-file-map.properties
+++ /dev/null
@@ -1,101 +0,0 @@
-#Fri Jan 19 00:53:09 GMT+08:00 2024
-net.micode.notes.app-main-6\:/color/primary_text_dark.xml=D\:\\note1\\app\\build\\intermediates\\merged_res\\debug\\color_primary_text_dark.xml.flat
-net.micode.notes.app-main-6\:/color/secondary_text_dark.xml=D\:\\note1\\app\\build\\intermediates\\merged_res\\debug\\color_secondary_text_dark.xml.flat
-net.micode.notes.app-main-6\:/drawable-hdpi/a1.png=D\:\\note1\\app\\build\\intermediates\\merged_res\\debug\\drawable-hdpi_a1.png.flat
-net.micode.notes.app-main-6\:/drawable-hdpi/a2.png=D\:\\note1\\app\\build\\intermediates\\merged_res\\debug\\drawable-hdpi_a2.png.flat
-net.micode.notes.app-main-6\:/drawable-hdpi/a3.png=D\:\\note1\\app\\build\\intermediates\\merged_res\\debug\\drawable-hdpi_a3.png.flat
-net.micode.notes.app-main-6\:/drawable-hdpi/a4.png=D\:\\note1\\app\\build\\intermediates\\merged_res\\debug\\drawable-hdpi_a4.png.flat
-net.micode.notes.app-main-6\:/drawable-hdpi/bg_btn_set_color.png=D\:\\note1\\app\\build\\intermediates\\merged_res\\debug\\drawable-hdpi_bg_btn_set_color.png.flat
-net.micode.notes.app-main-6\:/drawable-hdpi/bg_color_btn_mask.png=D\:\\note1\\app\\build\\intermediates\\merged_res\\debug\\drawable-hdpi_bg_color_btn_mask.png.flat
-net.micode.notes.app-main-6\:/drawable-hdpi/call_record.png=D\:\\note1\\app\\build\\intermediates\\merged_res\\debug\\drawable-hdpi_call_record.png.flat
-net.micode.notes.app-main-6\:/drawable-hdpi/clock.png=D\:\\note1\\app\\build\\intermediates\\merged_res\\debug\\drawable-hdpi_clock.png.flat
-net.micode.notes.app-main-6\:/drawable-hdpi/delete.png=D\:\\note1\\app\\build\\intermediates\\merged_res\\debug\\drawable-hdpi_delete.png.flat
-net.micode.notes.app-main-6\:/drawable-hdpi/dropdown_icon.9.png=D\:\\note1\\app\\build\\intermediates\\merged_res\\debug\\drawable-hdpi_dropdown_icon.9.png.flat
-net.micode.notes.app-main-6\:/drawable-hdpi/edit_blue.9.png=D\:\\note1\\app\\build\\intermediates\\merged_res\\debug\\drawable-hdpi_edit_blue.9.png.flat
-net.micode.notes.app-main-6\:/drawable-hdpi/edit_green.9.png=D\:\\note1\\app\\build\\intermediates\\merged_res\\debug\\drawable-hdpi_edit_green.9.png.flat
-net.micode.notes.app-main-6\:/drawable-hdpi/edit_red.9.png=D\:\\note1\\app\\build\\intermediates\\merged_res\\debug\\drawable-hdpi_edit_red.9.png.flat
-net.micode.notes.app-main-6\:/drawable-hdpi/edit_title_blue.9.png=D\:\\note1\\app\\build\\intermediates\\merged_res\\debug\\drawable-hdpi_edit_title_blue.9.png.flat
-net.micode.notes.app-main-6\:/drawable-hdpi/edit_title_green.9.png=D\:\\note1\\app\\build\\intermediates\\merged_res\\debug\\drawable-hdpi_edit_title_green.9.png.flat
-net.micode.notes.app-main-6\:/drawable-hdpi/edit_title_red.9.png=D\:\\note1\\app\\build\\intermediates\\merged_res\\debug\\drawable-hdpi_edit_title_red.9.png.flat
-net.micode.notes.app-main-6\:/drawable-hdpi/edit_title_white.9.png=D\:\\note1\\app\\build\\intermediates\\merged_res\\debug\\drawable-hdpi_edit_title_white.9.png.flat
-net.micode.notes.app-main-6\:/drawable-hdpi/edit_title_yellow.9.png=D\:\\note1\\app\\build\\intermediates\\merged_res\\debug\\drawable-hdpi_edit_title_yellow.9.png.flat
-net.micode.notes.app-main-6\:/drawable-hdpi/edit_white.9.png=D\:\\note1\\app\\build\\intermediates\\merged_res\\debug\\drawable-hdpi_edit_white.9.png.flat
-net.micode.notes.app-main-6\:/drawable-hdpi/edit_yellow.9.png=D\:\\note1\\app\\build\\intermediates\\merged_res\\debug\\drawable-hdpi_edit_yellow.9.png.flat
-net.micode.notes.app-main-6\:/drawable-hdpi/font_large.png=D\:\\note1\\app\\build\\intermediates\\merged_res\\debug\\drawable-hdpi_font_large.png.flat
-net.micode.notes.app-main-6\:/drawable-hdpi/font_normal.png=D\:\\note1\\app\\build\\intermediates\\merged_res\\debug\\drawable-hdpi_font_normal.png.flat
-net.micode.notes.app-main-6\:/drawable-hdpi/font_size_selector_bg.9.png=D\:\\note1\\app\\build\\intermediates\\merged_res\\debug\\drawable-hdpi_font_size_selector_bg.9.png.flat
-net.micode.notes.app-main-6\:/drawable-hdpi/font_small.png=D\:\\note1\\app\\build\\intermediates\\merged_res\\debug\\drawable-hdpi_font_small.png.flat
-net.micode.notes.app-main-6\:/drawable-hdpi/font_super.png=D\:\\note1\\app\\build\\intermediates\\merged_res\\debug\\drawable-hdpi_font_super.png.flat
-net.micode.notes.app-main-6\:/drawable-hdpi/g780.jpg=D\:\\note1\\app\\build\\intermediates\\merged_res\\debug\\drawable-hdpi_g780.jpg.flat
-net.micode.notes.app-main-6\:/drawable-hdpi/gao.png=D\:\\note1\\app\\build\\intermediates\\merged_res\\debug\\drawable-hdpi_gao.png.flat
-net.micode.notes.app-main-6\:/drawable-hdpi/icon_app.png=D\:\\note1\\app\\build\\intermediates\\merged_res\\debug\\drawable-hdpi_icon_app.png.flat
-net.micode.notes.app-main-6\:/drawable-hdpi/list_background.png=D\:\\note1\\app\\build\\intermediates\\merged_res\\debug\\drawable-hdpi_list_background.png.flat
-net.micode.notes.app-main-6\:/drawable-hdpi/list_blue_down.9.png=D\:\\note1\\app\\build\\intermediates\\merged_res\\debug\\drawable-hdpi_list_blue_down.9.png.flat
-net.micode.notes.app-main-6\:/drawable-hdpi/list_blue_middle.9.png=D\:\\note1\\app\\build\\intermediates\\merged_res\\debug\\drawable-hdpi_list_blue_middle.9.png.flat
-net.micode.notes.app-main-6\:/drawable-hdpi/list_blue_single.9.png=D\:\\note1\\app\\build\\intermediates\\merged_res\\debug\\drawable-hdpi_list_blue_single.9.png.flat
-net.micode.notes.app-main-6\:/drawable-hdpi/list_blue_up.9.png=D\:\\note1\\app\\build\\intermediates\\merged_res\\debug\\drawable-hdpi_list_blue_up.9.png.flat
-net.micode.notes.app-main-6\:/drawable-hdpi/list_folder.9.png=D\:\\note1\\app\\build\\intermediates\\merged_res\\debug\\drawable-hdpi_list_folder.9.png.flat
-net.micode.notes.app-main-6\:/drawable-hdpi/list_footer_bg.9.png=D\:\\note1\\app\\build\\intermediates\\merged_res\\debug\\drawable-hdpi_list_footer_bg.9.png.flat
-net.micode.notes.app-main-6\:/drawable-hdpi/list_green_down.9.png=D\:\\note1\\app\\build\\intermediates\\merged_res\\debug\\drawable-hdpi_list_green_down.9.png.flat
-net.micode.notes.app-main-6\:/drawable-hdpi/list_green_middle.9.png=D\:\\note1\\app\\build\\intermediates\\merged_res\\debug\\drawable-hdpi_list_green_middle.9.png.flat
-net.micode.notes.app-main-6\:/drawable-hdpi/list_green_single.9.png=D\:\\note1\\app\\build\\intermediates\\merged_res\\debug\\drawable-hdpi_list_green_single.9.png.flat
-net.micode.notes.app-main-6\:/drawable-hdpi/list_green_up.9.png=D\:\\note1\\app\\build\\intermediates\\merged_res\\debug\\drawable-hdpi_list_green_up.9.png.flat
-net.micode.notes.app-main-6\:/drawable-hdpi/list_red_down.9.png=D\:\\note1\\app\\build\\intermediates\\merged_res\\debug\\drawable-hdpi_list_red_down.9.png.flat
-net.micode.notes.app-main-6\:/drawable-hdpi/list_red_middle.9.png=D\:\\note1\\app\\build\\intermediates\\merged_res\\debug\\drawable-hdpi_list_red_middle.9.png.flat
-net.micode.notes.app-main-6\:/drawable-hdpi/list_red_single.9.png=D\:\\note1\\app\\build\\intermediates\\merged_res\\debug\\drawable-hdpi_list_red_single.9.png.flat
-net.micode.notes.app-main-6\:/drawable-hdpi/list_red_up.9.png=D\:\\note1\\app\\build\\intermediates\\merged_res\\debug\\drawable-hdpi_list_red_up.9.png.flat
-net.micode.notes.app-main-6\:/drawable-hdpi/list_white_down.9.png=D\:\\note1\\app\\build\\intermediates\\merged_res\\debug\\drawable-hdpi_list_white_down.9.png.flat
-net.micode.notes.app-main-6\:/drawable-hdpi/list_white_middle.9.png=D\:\\note1\\app\\build\\intermediates\\merged_res\\debug\\drawable-hdpi_list_white_middle.9.png.flat
-net.micode.notes.app-main-6\:/drawable-hdpi/list_white_single.9.png=D\:\\note1\\app\\build\\intermediates\\merged_res\\debug\\drawable-hdpi_list_white_single.9.png.flat
-net.micode.notes.app-main-6\:/drawable-hdpi/list_white_up.9.png=D\:\\note1\\app\\build\\intermediates\\merged_res\\debug\\drawable-hdpi_list_white_up.9.png.flat
-net.micode.notes.app-main-6\:/drawable-hdpi/list_yellow_down.9.png=D\:\\note1\\app\\build\\intermediates\\merged_res\\debug\\drawable-hdpi_list_yellow_down.9.png.flat
-net.micode.notes.app-main-6\:/drawable-hdpi/list_yellow_middle.9.png=D\:\\note1\\app\\build\\intermediates\\merged_res\\debug\\drawable-hdpi_list_yellow_middle.9.png.flat
-net.micode.notes.app-main-6\:/drawable-hdpi/list_yellow_single.9.png=D\:\\note1\\app\\build\\intermediates\\merged_res\\debug\\drawable-hdpi_list_yellow_single.9.png.flat
-net.micode.notes.app-main-6\:/drawable-hdpi/list_yellow_up.9.png=D\:\\note1\\app\\build\\intermediates\\merged_res\\debug\\drawable-hdpi_list_yellow_up.9.png.flat
-net.micode.notes.app-main-6\:/drawable-hdpi/menu_delete.png=D\:\\note1\\app\\build\\intermediates\\merged_res\\debug\\drawable-hdpi_menu_delete.png.flat
-net.micode.notes.app-main-6\:/drawable-hdpi/menu_move.png=D\:\\note1\\app\\build\\intermediates\\merged_res\\debug\\drawable-hdpi_menu_move.png.flat
-net.micode.notes.app-main-6\:/drawable-hdpi/new_note_normal.png=D\:\\note1\\app\\build\\intermediates\\merged_res\\debug\\drawable-hdpi_new_note_normal.png.flat
-net.micode.notes.app-main-6\:/drawable-hdpi/new_note_pressed.png=D\:\\note1\\app\\build\\intermediates\\merged_res\\debug\\drawable-hdpi_new_note_pressed.png.flat
-net.micode.notes.app-main-6\:/drawable-hdpi/note_edit_color_selector_panel.png=D\:\\note1\\app\\build\\intermediates\\merged_res\\debug\\drawable-hdpi_note_edit_color_selector_panel.png.flat
-net.micode.notes.app-main-6\:/drawable-hdpi/search_result.png=D\:\\note1\\app\\build\\intermediates\\merged_res\\debug\\drawable-hdpi_search_result.png.flat
-net.micode.notes.app-main-6\:/drawable-hdpi/selected.png=D\:\\note1\\app\\build\\intermediates\\merged_res\\debug\\drawable-hdpi_selected.png.flat
-net.micode.notes.app-main-6\:/drawable-hdpi/title_alert.png=D\:\\note1\\app\\build\\intermediates\\merged_res\\debug\\drawable-hdpi_title_alert.png.flat
-net.micode.notes.app-main-6\:/drawable-hdpi/title_bar_bg.9.png=D\:\\note1\\app\\build\\intermediates\\merged_res\\debug\\drawable-hdpi_title_bar_bg.9.png.flat
-net.micode.notes.app-main-6\:/drawable-hdpi/widget_2x_blue.png=D\:\\note1\\app\\build\\intermediates\\merged_res\\debug\\drawable-hdpi_widget_2x_blue.png.flat
-net.micode.notes.app-main-6\:/drawable-hdpi/widget_2x_green.png=D\:\\note1\\app\\build\\intermediates\\merged_res\\debug\\drawable-hdpi_widget_2x_green.png.flat
-net.micode.notes.app-main-6\:/drawable-hdpi/widget_2x_red.png=D\:\\note1\\app\\build\\intermediates\\merged_res\\debug\\drawable-hdpi_widget_2x_red.png.flat
-net.micode.notes.app-main-6\:/drawable-hdpi/widget_2x_white.png=D\:\\note1\\app\\build\\intermediates\\merged_res\\debug\\drawable-hdpi_widget_2x_white.png.flat
-net.micode.notes.app-main-6\:/drawable-hdpi/widget_2x_yellow.png=D\:\\note1\\app\\build\\intermediates\\merged_res\\debug\\drawable-hdpi_widget_2x_yellow.png.flat
-net.micode.notes.app-main-6\:/drawable-hdpi/widget_4x_blue.png=D\:\\note1\\app\\build\\intermediates\\merged_res\\debug\\drawable-hdpi_widget_4x_blue.png.flat
-net.micode.notes.app-main-6\:/drawable-hdpi/widget_4x_green.png=D\:\\note1\\app\\build\\intermediates\\merged_res\\debug\\drawable-hdpi_widget_4x_green.png.flat
-net.micode.notes.app-main-6\:/drawable-hdpi/widget_4x_red.png=D\:\\note1\\app\\build\\intermediates\\merged_res\\debug\\drawable-hdpi_widget_4x_red.png.flat
-net.micode.notes.app-main-6\:/drawable-hdpi/widget_4x_white.png=D\:\\note1\\app\\build\\intermediates\\merged_res\\debug\\drawable-hdpi_widget_4x_white.png.flat
-net.micode.notes.app-main-6\:/drawable-hdpi/widget_4x_yellow.png=D\:\\note1\\app\\build\\intermediates\\merged_res\\debug\\drawable-hdpi_widget_4x_yellow.png.flat
-net.micode.notes.app-main-6\:/drawable/new_note.xml=D\:\\note1\\app\\build\\intermediates\\merged_res\\debug\\drawable_new_note.xml.flat
-net.micode.notes.app-main-6\:/layout/account_dialog_title.xml=D\:\\note1\\app\\build\\intermediates\\merged_res\\debug\\layout_account_dialog_title.xml.flat
-net.micode.notes.app-main-6\:/layout/add_account_text.xml=D\:\\note1\\app\\build\\intermediates\\merged_res\\debug\\layout_add_account_text.xml.flat
-net.micode.notes.app-main-6\:/layout/datetime_picker.xml=D\:\\note1\\app\\build\\intermediates\\merged_res\\debug\\layout_datetime_picker.xml.flat
-net.micode.notes.app-main-6\:/layout/dialog_edit_text.xml=D\:\\note1\\app\\build\\intermediates\\merged_res\\debug\\layout_dialog_edit_text.xml.flat
-net.micode.notes.app-main-6\:/layout/folder_list_item.xml=D\:\\note1\\app\\build\\intermediates\\merged_res\\debug\\layout_folder_list_item.xml.flat
-net.micode.notes.app-main-6\:/layout/note_edit.xml=D\:\\note1\\app\\build\\intermediates\\merged_res\\debug\\layout_note_edit.xml.flat
-net.micode.notes.app-main-6\:/layout/note_edit_list_item.xml=D\:\\note1\\app\\build\\intermediates\\merged_res\\debug\\layout_note_edit_list_item.xml.flat
-net.micode.notes.app-main-6\:/layout/note_item.xml=D\:\\note1\\app\\build\\intermediates\\merged_res\\debug\\layout_note_item.xml.flat
-net.micode.notes.app-main-6\:/layout/note_list.xml=D\:\\note1\\app\\build\\intermediates\\merged_res\\debug\\layout_note_list.xml.flat
-net.micode.notes.app-main-6\:/layout/note_list_dropdown_menu.xml=D\:\\note1\\app\\build\\intermediates\\merged_res\\debug\\layout_note_list_dropdown_menu.xml.flat
-net.micode.notes.app-main-6\:/layout/note_list_footer.xml=D\:\\note1\\app\\build\\intermediates\\merged_res\\debug\\layout_note_list_footer.xml.flat
-net.micode.notes.app-main-6\:/layout/settings_header.xml=D\:\\note1\\app\\build\\intermediates\\merged_res\\debug\\layout_settings_header.xml.flat
-net.micode.notes.app-main-6\:/layout/widget_2x.xml=D\:\\note1\\app\\build\\intermediates\\merged_res\\debug\\layout_widget_2x.xml.flat
-net.micode.notes.app-main-6\:/layout/widget_4x.xml=D\:\\note1\\app\\build\\intermediates\\merged_res\\debug\\layout_widget_4x.xml.flat
-net.micode.notes.app-main-6\:/menu/call_note_edit.xml=D\:\\note1\\app\\build\\intermediates\\merged_res\\debug\\menu_call_note_edit.xml.flat
-net.micode.notes.app-main-6\:/menu/call_record_folder.xml=D\:\\note1\\app\\build\\intermediates\\merged_res\\debug\\menu_call_record_folder.xml.flat
-net.micode.notes.app-main-6\:/menu/note_edit.xml=D\:\\note1\\app\\build\\intermediates\\merged_res\\debug\\menu_note_edit.xml.flat
-net.micode.notes.app-main-6\:/menu/note_list.xml=D\:\\note1\\app\\build\\intermediates\\merged_res\\debug\\menu_note_list.xml.flat
-net.micode.notes.app-main-6\:/menu/note_list_dropdown.xml=D\:\\note1\\app\\build\\intermediates\\merged_res\\debug\\menu_note_list_dropdown.xml.flat
-net.micode.notes.app-main-6\:/menu/note_list_options.xml=D\:\\note1\\app\\build\\intermediates\\merged_res\\debug\\menu_note_list_options.xml.flat
-net.micode.notes.app-main-6\:/menu/sub_folder.xml=D\:\\note1\\app\\build\\intermediates\\merged_res\\debug\\menu_sub_folder.xml.flat
-net.micode.notes.app-main-6\:/raw-zh-rCN/introduction=D\:\\note1\\app\\build\\intermediates\\merged_res\\debug\\raw-zh-rCN_introduction.flat
-net.micode.notes.app-main-6\:/raw/introduction=D\:\\note1\\app\\build\\intermediates\\merged_res\\debug\\raw_introduction.flat
-net.micode.notes.app-main-6\:/xml/preferences.xml=D\:\\note1\\app\\build\\intermediates\\merged_res\\debug\\xml_preferences.xml.flat
-net.micode.notes.app-main-6\:/xml/searchable.xml=D\:\\note1\\app\\build\\intermediates\\merged_res\\debug\\xml_searchable.xml.flat
-net.micode.notes.app-main-6\:/xml/widget_2x_info.xml=D\:\\note1\\app\\build\\intermediates\\merged_res\\debug\\xml_widget_2x_info.xml.flat
-net.micode.notes.app-main-6\:/xml/widget_4x_info.xml=D\:\\note1\\app\\build\\intermediates\\merged_res\\debug\\xml_widget_4x_info.xml.flat
diff --git a/src/src/app/build/intermediates/incremental/debug/mergeDebugResources/merger.xml b/src/src/app/build/intermediates/incremental/debug/mergeDebugResources/merger.xml
deleted file mode 100644
index e4425b2..0000000
--- a/src/src/app/build/intermediates/incremental/debug/mergeDebugResources/merger.xml
+++ /dev/null
@@ -1,56 +0,0 @@
-
-
- -%s
- --%s
- --%s
- --%s
-
- Messaging
- Email
- #335b5b5b33sp26sp20sp17sp14spNotesNotes 2x2Notes 4x4No associated note found, click to create associated note.Privacy mode,can not see note content...Add noteDelete reminder successfullySet reminderExpiredyyyyMMddMMMd kk:mmGot itTake a lookCallSend emailBrowse webOpen map/MIUI/notes/notes_%s.txt(%d)New FolderExport textg780gaoset_passcodedelete_passcodeSyncCancel syncingSettingsSearchDeleteMove to folder%d selectedNothing selected, the operation is invalidSelect allDeselect allFont sizeSmallMediumLargeSuperEnter check listLeave check listView folderDelete folderChange folder nameThe folder %1$s exist, please renameShareSend to homeRemind meDelete reminderSelect folderParent folderNote added to homeConfirm to delete folder and its notes?Delete selected notesConfirm to delete the selected %d notes?Confirm to delete this note?Have moved selected %1$d notes to %2$s folderSD card busy, not available nowExport failed, please check SD cardThe note is not existSorry, can not set clock on empty noteSorry, can not send and empty note to homeExport successfulExport failExport text file (%1$s) to SD (%2$s) directorySyncing notes...Sync is successfulSync is failedSync is canceledSync is successful with account %1$sSync failed, please check network and account settingsSync failed, internal error occursSync is canceledLogging into %1$s...Getting remote note list...Synchronize local notes with Google Task...SettingsSync accountSync notes with google taskLast sync time %1$syyyy-MM-dd hh:mm:ssAdd accountChange sync accountRemove sync accountCancelSync immediatelyCancel syncingCurrent account %1$sAll sync related information will be deleted, which may result in duplicated items sometimeSync notesPlease select a google account. Local notes will be synced with google task.Cannot change the account because sync is in progress%1$s has been set as the sync accountNew note background color randomDeleteCall notesInput nameSearching NotesSearch notesText in your notesNotessetcancel
- %1$s result for \"%2$s\"
-
- %1$s results for \"%2$s\"
- Read notesfont_selectRevokeTipsYou can not revokeYou have not input anything
- 短信
- 邮件
- 便签便签2x2便签4x4没有关联内容,点击新建便签。访客模式下,便签内容不可见...新建便签成功删除提醒创建提醒已过期yyyyMMddMM月dd日 kk:mm知道了查看呼叫电话发送邮件浏览网页打开地图新建文件夹导出文本同步取消同步设置搜索删除移动到文件夹选中了 %d 项没有选中项,操作无效全选取消全选文字大小小正常大超大进入清单模式set_passcodedelete_passcode退出清单模式查看文件夹刪除文件夹修改文件夹名称文件夹 %1$s 已存在,请重新命名分享发送到桌面提醒我删除提醒选择文件夹上一级文件夹已添加到桌面删除确认要删除所选的 %d 条便签吗?确认要删除该条便签吗?确认删除文件夹及所包含的便签吗?已将所选 %1$d 条便签移到 %2$s 文件夹SD卡被占用,不能操作导出文本时发生错误,请检查SD卡要查看的便签不存在不能为空便签设置闹钟提醒不能将空便签发送到桌面导出成功导出失败已将文本文件(%1$s)输出至SD卡(%2$s)目录同步便签...同步成功同步失败同步已取消与%1$s同步成功同步失败,请检查网络和帐号设置同步失败,发生内部错误同步已取消登录%1$s...正在获取服务器便签列表...正在同步本地便签...设置同步账号与google task同步便签记录上次同步于 %1$s添加账号更换账号删除账号取消立即同步取消同步当前帐号 %1$s如更换同步帐号,过去的帐号同步信息将被清空,再次切换的同时可能会造成数据重复同步便签请选择google帐号,便签将与该帐号的google task内容同步。正在同步中,不能修改同步帐号同步帐号已设置为%1$s新建便签背景颜色随机删除通话便签请输入名称正在搜索便签搜索便签便签中的文字便签设置取消
- %1$s 条符合“%2$s”的搜索结果
- 读便签选择字体撤销提示你不能撤销了您还没有输入任何内容
- 短信
- 郵件
- 便簽便簽2x2便簽4x4沒有關聯內容,點擊新建便簽。訪客模式下,便籤內容不可見...新建便簽成功刪除提醒創建提醒已過期yyyyMMddMM月dd日 kk:mm知道了查看呼叫電話發送郵件浏覽網頁打開地圖已將所選 %1$d 便籤移到 %2$s 文件夾新建文件夾導出文本同步取消同步設置搜尋刪除移動到文件夾選中了 %d 項沒有選中項,操作無效全選取消全選文字大小小正常大超大進入清單模式退出清單模式查看文件夾刪除文件夾修改文件夾名稱文件夾 %1$s 已存在,請重新命名分享發送到桌面提醒我刪除提醒選擇文件夾上一級文件夾已添加到桌面刪除确认要刪除所選的 %d 條便籤嗎?确认要删除該條便籤嗎?確認刪除檔夾及所包含的便簽嗎?SD卡被佔用,不能操作導出TXT時發生錯誤,請檢查SD卡要查看的便籤不存在不能爲空便籤設置鬧鐘提醒不能將空便籤發送到桌面導出成功導出失敗已將文本文件(%1$s)導出至SD(%2$s)目錄同步便簽...同步成功同步失敗同步已取消與%1$s同步成功同步失敗,請檢查網絡和帳號設置同步失敗,發生內部錯誤同步已取消登陸%1$s...正在獲取服務器便籤列表...正在同步本地便籤...設置同步賬號与google task同步便簽記錄上次同步于 %1$s添加賬號更換賬號刪除賬號取消立即同步取消同步當前帳號 %1$s如更換同步帳號,過去的帳號同步信息將被清空,再次切換的同時可能會造成數據重復同步便簽請選擇google帳號,便簽將與該帳號的google task內容同步。正在同步中,不能修改同步帳號同步帳號已設置為%1$s新建便籤背景顏色隨機刪除通話便籤請輸入名稱正在搜索便籤搜索便籤便籤中的文字便籤設置取消set_passcodedelete_passcode
- %1$s 條符合”%2$s“的搜尋結果
-
\ No newline at end of file
diff --git a/src/src/app/build/intermediates/incremental/debug/packageDebugResources/compile-file-map.properties b/src/src/app/build/intermediates/incremental/debug/packageDebugResources/compile-file-map.properties
deleted file mode 100644
index 05301d4..0000000
--- a/src/src/app/build/intermediates/incremental/debug/packageDebugResources/compile-file-map.properties
+++ /dev/null
@@ -1,101 +0,0 @@
-#Fri Jan 19 00:53:10 GMT+08:00 2024
-net.micode.notes.app-main-5\:/color/primary_text_dark.xml=D\:\\note1\\app\\build\\intermediates\\packaged_res\\debug\\color\\primary_text_dark.xml
-net.micode.notes.app-main-5\:/color/secondary_text_dark.xml=D\:\\note1\\app\\build\\intermediates\\packaged_res\\debug\\color\\secondary_text_dark.xml
-net.micode.notes.app-main-5\:/drawable-hdpi/a1.png=D\:\\note1\\app\\build\\intermediates\\packaged_res\\debug\\drawable-hdpi-v4\\a1.png
-net.micode.notes.app-main-5\:/drawable-hdpi/a2.png=D\:\\note1\\app\\build\\intermediates\\packaged_res\\debug\\drawable-hdpi-v4\\a2.png
-net.micode.notes.app-main-5\:/drawable-hdpi/a3.png=D\:\\note1\\app\\build\\intermediates\\packaged_res\\debug\\drawable-hdpi-v4\\a3.png
-net.micode.notes.app-main-5\:/drawable-hdpi/a4.png=D\:\\note1\\app\\build\\intermediates\\packaged_res\\debug\\drawable-hdpi-v4\\a4.png
-net.micode.notes.app-main-5\:/drawable-hdpi/bg_btn_set_color.png=D\:\\note1\\app\\build\\intermediates\\packaged_res\\debug\\drawable-hdpi-v4\\bg_btn_set_color.png
-net.micode.notes.app-main-5\:/drawable-hdpi/bg_color_btn_mask.png=D\:\\note1\\app\\build\\intermediates\\packaged_res\\debug\\drawable-hdpi-v4\\bg_color_btn_mask.png
-net.micode.notes.app-main-5\:/drawable-hdpi/call_record.png=D\:\\note1\\app\\build\\intermediates\\packaged_res\\debug\\drawable-hdpi-v4\\call_record.png
-net.micode.notes.app-main-5\:/drawable-hdpi/clock.png=D\:\\note1\\app\\build\\intermediates\\packaged_res\\debug\\drawable-hdpi-v4\\clock.png
-net.micode.notes.app-main-5\:/drawable-hdpi/delete.png=D\:\\note1\\app\\build\\intermediates\\packaged_res\\debug\\drawable-hdpi-v4\\delete.png
-net.micode.notes.app-main-5\:/drawable-hdpi/dropdown_icon.9.png=D\:\\note1\\app\\build\\intermediates\\packaged_res\\debug\\drawable-hdpi-v4\\dropdown_icon.9.png
-net.micode.notes.app-main-5\:/drawable-hdpi/edit_blue.9.png=D\:\\note1\\app\\build\\intermediates\\packaged_res\\debug\\drawable-hdpi-v4\\edit_blue.9.png
-net.micode.notes.app-main-5\:/drawable-hdpi/edit_green.9.png=D\:\\note1\\app\\build\\intermediates\\packaged_res\\debug\\drawable-hdpi-v4\\edit_green.9.png
-net.micode.notes.app-main-5\:/drawable-hdpi/edit_red.9.png=D\:\\note1\\app\\build\\intermediates\\packaged_res\\debug\\drawable-hdpi-v4\\edit_red.9.png
-net.micode.notes.app-main-5\:/drawable-hdpi/edit_title_blue.9.png=D\:\\note1\\app\\build\\intermediates\\packaged_res\\debug\\drawable-hdpi-v4\\edit_title_blue.9.png
-net.micode.notes.app-main-5\:/drawable-hdpi/edit_title_green.9.png=D\:\\note1\\app\\build\\intermediates\\packaged_res\\debug\\drawable-hdpi-v4\\edit_title_green.9.png
-net.micode.notes.app-main-5\:/drawable-hdpi/edit_title_red.9.png=D\:\\note1\\app\\build\\intermediates\\packaged_res\\debug\\drawable-hdpi-v4\\edit_title_red.9.png
-net.micode.notes.app-main-5\:/drawable-hdpi/edit_title_white.9.png=D\:\\note1\\app\\build\\intermediates\\packaged_res\\debug\\drawable-hdpi-v4\\edit_title_white.9.png
-net.micode.notes.app-main-5\:/drawable-hdpi/edit_title_yellow.9.png=D\:\\note1\\app\\build\\intermediates\\packaged_res\\debug\\drawable-hdpi-v4\\edit_title_yellow.9.png
-net.micode.notes.app-main-5\:/drawable-hdpi/edit_white.9.png=D\:\\note1\\app\\build\\intermediates\\packaged_res\\debug\\drawable-hdpi-v4\\edit_white.9.png
-net.micode.notes.app-main-5\:/drawable-hdpi/edit_yellow.9.png=D\:\\note1\\app\\build\\intermediates\\packaged_res\\debug\\drawable-hdpi-v4\\edit_yellow.9.png
-net.micode.notes.app-main-5\:/drawable-hdpi/font_large.png=D\:\\note1\\app\\build\\intermediates\\packaged_res\\debug\\drawable-hdpi-v4\\font_large.png
-net.micode.notes.app-main-5\:/drawable-hdpi/font_normal.png=D\:\\note1\\app\\build\\intermediates\\packaged_res\\debug\\drawable-hdpi-v4\\font_normal.png
-net.micode.notes.app-main-5\:/drawable-hdpi/font_size_selector_bg.9.png=D\:\\note1\\app\\build\\intermediates\\packaged_res\\debug\\drawable-hdpi-v4\\font_size_selector_bg.9.png
-net.micode.notes.app-main-5\:/drawable-hdpi/font_small.png=D\:\\note1\\app\\build\\intermediates\\packaged_res\\debug\\drawable-hdpi-v4\\font_small.png
-net.micode.notes.app-main-5\:/drawable-hdpi/font_super.png=D\:\\note1\\app\\build\\intermediates\\packaged_res\\debug\\drawable-hdpi-v4\\font_super.png
-net.micode.notes.app-main-5\:/drawable-hdpi/g780.jpg=D\:\\note1\\app\\build\\intermediates\\packaged_res\\debug\\drawable-hdpi-v4\\g780.jpg
-net.micode.notes.app-main-5\:/drawable-hdpi/gao.png=D\:\\note1\\app\\build\\intermediates\\packaged_res\\debug\\drawable-hdpi-v4\\gao.png
-net.micode.notes.app-main-5\:/drawable-hdpi/icon_app.png=D\:\\note1\\app\\build\\intermediates\\packaged_res\\debug\\drawable-hdpi-v4\\icon_app.png
-net.micode.notes.app-main-5\:/drawable-hdpi/list_background.png=D\:\\note1\\app\\build\\intermediates\\packaged_res\\debug\\drawable-hdpi-v4\\list_background.png
-net.micode.notes.app-main-5\:/drawable-hdpi/list_blue_down.9.png=D\:\\note1\\app\\build\\intermediates\\packaged_res\\debug\\drawable-hdpi-v4\\list_blue_down.9.png
-net.micode.notes.app-main-5\:/drawable-hdpi/list_blue_middle.9.png=D\:\\note1\\app\\build\\intermediates\\packaged_res\\debug\\drawable-hdpi-v4\\list_blue_middle.9.png
-net.micode.notes.app-main-5\:/drawable-hdpi/list_blue_single.9.png=D\:\\note1\\app\\build\\intermediates\\packaged_res\\debug\\drawable-hdpi-v4\\list_blue_single.9.png
-net.micode.notes.app-main-5\:/drawable-hdpi/list_blue_up.9.png=D\:\\note1\\app\\build\\intermediates\\packaged_res\\debug\\drawable-hdpi-v4\\list_blue_up.9.png
-net.micode.notes.app-main-5\:/drawable-hdpi/list_folder.9.png=D\:\\note1\\app\\build\\intermediates\\packaged_res\\debug\\drawable-hdpi-v4\\list_folder.9.png
-net.micode.notes.app-main-5\:/drawable-hdpi/list_footer_bg.9.png=D\:\\note1\\app\\build\\intermediates\\packaged_res\\debug\\drawable-hdpi-v4\\list_footer_bg.9.png
-net.micode.notes.app-main-5\:/drawable-hdpi/list_green_down.9.png=D\:\\note1\\app\\build\\intermediates\\packaged_res\\debug\\drawable-hdpi-v4\\list_green_down.9.png
-net.micode.notes.app-main-5\:/drawable-hdpi/list_green_middle.9.png=D\:\\note1\\app\\build\\intermediates\\packaged_res\\debug\\drawable-hdpi-v4\\list_green_middle.9.png
-net.micode.notes.app-main-5\:/drawable-hdpi/list_green_single.9.png=D\:\\note1\\app\\build\\intermediates\\packaged_res\\debug\\drawable-hdpi-v4\\list_green_single.9.png
-net.micode.notes.app-main-5\:/drawable-hdpi/list_green_up.9.png=D\:\\note1\\app\\build\\intermediates\\packaged_res\\debug\\drawable-hdpi-v4\\list_green_up.9.png
-net.micode.notes.app-main-5\:/drawable-hdpi/list_red_down.9.png=D\:\\note1\\app\\build\\intermediates\\packaged_res\\debug\\drawable-hdpi-v4\\list_red_down.9.png
-net.micode.notes.app-main-5\:/drawable-hdpi/list_red_middle.9.png=D\:\\note1\\app\\build\\intermediates\\packaged_res\\debug\\drawable-hdpi-v4\\list_red_middle.9.png
-net.micode.notes.app-main-5\:/drawable-hdpi/list_red_single.9.png=D\:\\note1\\app\\build\\intermediates\\packaged_res\\debug\\drawable-hdpi-v4\\list_red_single.9.png
-net.micode.notes.app-main-5\:/drawable-hdpi/list_red_up.9.png=D\:\\note1\\app\\build\\intermediates\\packaged_res\\debug\\drawable-hdpi-v4\\list_red_up.9.png
-net.micode.notes.app-main-5\:/drawable-hdpi/list_white_down.9.png=D\:\\note1\\app\\build\\intermediates\\packaged_res\\debug\\drawable-hdpi-v4\\list_white_down.9.png
-net.micode.notes.app-main-5\:/drawable-hdpi/list_white_middle.9.png=D\:\\note1\\app\\build\\intermediates\\packaged_res\\debug\\drawable-hdpi-v4\\list_white_middle.9.png
-net.micode.notes.app-main-5\:/drawable-hdpi/list_white_single.9.png=D\:\\note1\\app\\build\\intermediates\\packaged_res\\debug\\drawable-hdpi-v4\\list_white_single.9.png
-net.micode.notes.app-main-5\:/drawable-hdpi/list_white_up.9.png=D\:\\note1\\app\\build\\intermediates\\packaged_res\\debug\\drawable-hdpi-v4\\list_white_up.9.png
-net.micode.notes.app-main-5\:/drawable-hdpi/list_yellow_down.9.png=D\:\\note1\\app\\build\\intermediates\\packaged_res\\debug\\drawable-hdpi-v4\\list_yellow_down.9.png
-net.micode.notes.app-main-5\:/drawable-hdpi/list_yellow_middle.9.png=D\:\\note1\\app\\build\\intermediates\\packaged_res\\debug\\drawable-hdpi-v4\\list_yellow_middle.9.png
-net.micode.notes.app-main-5\:/drawable-hdpi/list_yellow_single.9.png=D\:\\note1\\app\\build\\intermediates\\packaged_res\\debug\\drawable-hdpi-v4\\list_yellow_single.9.png
-net.micode.notes.app-main-5\:/drawable-hdpi/list_yellow_up.9.png=D\:\\note1\\app\\build\\intermediates\\packaged_res\\debug\\drawable-hdpi-v4\\list_yellow_up.9.png
-net.micode.notes.app-main-5\:/drawable-hdpi/menu_delete.png=D\:\\note1\\app\\build\\intermediates\\packaged_res\\debug\\drawable-hdpi-v4\\menu_delete.png
-net.micode.notes.app-main-5\:/drawable-hdpi/menu_move.png=D\:\\note1\\app\\build\\intermediates\\packaged_res\\debug\\drawable-hdpi-v4\\menu_move.png
-net.micode.notes.app-main-5\:/drawable-hdpi/new_note_normal.png=D\:\\note1\\app\\build\\intermediates\\packaged_res\\debug\\drawable-hdpi-v4\\new_note_normal.png
-net.micode.notes.app-main-5\:/drawable-hdpi/new_note_pressed.png=D\:\\note1\\app\\build\\intermediates\\packaged_res\\debug\\drawable-hdpi-v4\\new_note_pressed.png
-net.micode.notes.app-main-5\:/drawable-hdpi/note_edit_color_selector_panel.png=D\:\\note1\\app\\build\\intermediates\\packaged_res\\debug\\drawable-hdpi-v4\\note_edit_color_selector_panel.png
-net.micode.notes.app-main-5\:/drawable-hdpi/search_result.png=D\:\\note1\\app\\build\\intermediates\\packaged_res\\debug\\drawable-hdpi-v4\\search_result.png
-net.micode.notes.app-main-5\:/drawable-hdpi/selected.png=D\:\\note1\\app\\build\\intermediates\\packaged_res\\debug\\drawable-hdpi-v4\\selected.png
-net.micode.notes.app-main-5\:/drawable-hdpi/title_alert.png=D\:\\note1\\app\\build\\intermediates\\packaged_res\\debug\\drawable-hdpi-v4\\title_alert.png
-net.micode.notes.app-main-5\:/drawable-hdpi/title_bar_bg.9.png=D\:\\note1\\app\\build\\intermediates\\packaged_res\\debug\\drawable-hdpi-v4\\title_bar_bg.9.png
-net.micode.notes.app-main-5\:/drawable-hdpi/widget_2x_blue.png=D\:\\note1\\app\\build\\intermediates\\packaged_res\\debug\\drawable-hdpi-v4\\widget_2x_blue.png
-net.micode.notes.app-main-5\:/drawable-hdpi/widget_2x_green.png=D\:\\note1\\app\\build\\intermediates\\packaged_res\\debug\\drawable-hdpi-v4\\widget_2x_green.png
-net.micode.notes.app-main-5\:/drawable-hdpi/widget_2x_red.png=D\:\\note1\\app\\build\\intermediates\\packaged_res\\debug\\drawable-hdpi-v4\\widget_2x_red.png
-net.micode.notes.app-main-5\:/drawable-hdpi/widget_2x_white.png=D\:\\note1\\app\\build\\intermediates\\packaged_res\\debug\\drawable-hdpi-v4\\widget_2x_white.png
-net.micode.notes.app-main-5\:/drawable-hdpi/widget_2x_yellow.png=D\:\\note1\\app\\build\\intermediates\\packaged_res\\debug\\drawable-hdpi-v4\\widget_2x_yellow.png
-net.micode.notes.app-main-5\:/drawable-hdpi/widget_4x_blue.png=D\:\\note1\\app\\build\\intermediates\\packaged_res\\debug\\drawable-hdpi-v4\\widget_4x_blue.png
-net.micode.notes.app-main-5\:/drawable-hdpi/widget_4x_green.png=D\:\\note1\\app\\build\\intermediates\\packaged_res\\debug\\drawable-hdpi-v4\\widget_4x_green.png
-net.micode.notes.app-main-5\:/drawable-hdpi/widget_4x_red.png=D\:\\note1\\app\\build\\intermediates\\packaged_res\\debug\\drawable-hdpi-v4\\widget_4x_red.png
-net.micode.notes.app-main-5\:/drawable-hdpi/widget_4x_white.png=D\:\\note1\\app\\build\\intermediates\\packaged_res\\debug\\drawable-hdpi-v4\\widget_4x_white.png
-net.micode.notes.app-main-5\:/drawable-hdpi/widget_4x_yellow.png=D\:\\note1\\app\\build\\intermediates\\packaged_res\\debug\\drawable-hdpi-v4\\widget_4x_yellow.png
-net.micode.notes.app-main-5\:/drawable/new_note.xml=D\:\\note1\\app\\build\\intermediates\\packaged_res\\debug\\drawable\\new_note.xml
-net.micode.notes.app-main-5\:/layout/account_dialog_title.xml=D\:\\note1\\app\\build\\intermediates\\packaged_res\\debug\\layout\\account_dialog_title.xml
-net.micode.notes.app-main-5\:/layout/add_account_text.xml=D\:\\note1\\app\\build\\intermediates\\packaged_res\\debug\\layout\\add_account_text.xml
-net.micode.notes.app-main-5\:/layout/datetime_picker.xml=D\:\\note1\\app\\build\\intermediates\\packaged_res\\debug\\layout\\datetime_picker.xml
-net.micode.notes.app-main-5\:/layout/dialog_edit_text.xml=D\:\\note1\\app\\build\\intermediates\\packaged_res\\debug\\layout\\dialog_edit_text.xml
-net.micode.notes.app-main-5\:/layout/folder_list_item.xml=D\:\\note1\\app\\build\\intermediates\\packaged_res\\debug\\layout\\folder_list_item.xml
-net.micode.notes.app-main-5\:/layout/note_edit.xml=D\:\\note1\\app\\build\\intermediates\\packaged_res\\debug\\layout\\note_edit.xml
-net.micode.notes.app-main-5\:/layout/note_edit_list_item.xml=D\:\\note1\\app\\build\\intermediates\\packaged_res\\debug\\layout\\note_edit_list_item.xml
-net.micode.notes.app-main-5\:/layout/note_item.xml=D\:\\note1\\app\\build\\intermediates\\packaged_res\\debug\\layout\\note_item.xml
-net.micode.notes.app-main-5\:/layout/note_list.xml=D\:\\note1\\app\\build\\intermediates\\packaged_res\\debug\\layout\\note_list.xml
-net.micode.notes.app-main-5\:/layout/note_list_dropdown_menu.xml=D\:\\note1\\app\\build\\intermediates\\packaged_res\\debug\\layout\\note_list_dropdown_menu.xml
-net.micode.notes.app-main-5\:/layout/note_list_footer.xml=D\:\\note1\\app\\build\\intermediates\\packaged_res\\debug\\layout\\note_list_footer.xml
-net.micode.notes.app-main-5\:/layout/settings_header.xml=D\:\\note1\\app\\build\\intermediates\\packaged_res\\debug\\layout\\settings_header.xml
-net.micode.notes.app-main-5\:/layout/widget_2x.xml=D\:\\note1\\app\\build\\intermediates\\packaged_res\\debug\\layout\\widget_2x.xml
-net.micode.notes.app-main-5\:/layout/widget_4x.xml=D\:\\note1\\app\\build\\intermediates\\packaged_res\\debug\\layout\\widget_4x.xml
-net.micode.notes.app-main-5\:/menu/call_note_edit.xml=D\:\\note1\\app\\build\\intermediates\\packaged_res\\debug\\menu\\call_note_edit.xml
-net.micode.notes.app-main-5\:/menu/call_record_folder.xml=D\:\\note1\\app\\build\\intermediates\\packaged_res\\debug\\menu\\call_record_folder.xml
-net.micode.notes.app-main-5\:/menu/note_edit.xml=D\:\\note1\\app\\build\\intermediates\\packaged_res\\debug\\menu\\note_edit.xml
-net.micode.notes.app-main-5\:/menu/note_list.xml=D\:\\note1\\app\\build\\intermediates\\packaged_res\\debug\\menu\\note_list.xml
-net.micode.notes.app-main-5\:/menu/note_list_dropdown.xml=D\:\\note1\\app\\build\\intermediates\\packaged_res\\debug\\menu\\note_list_dropdown.xml
-net.micode.notes.app-main-5\:/menu/note_list_options.xml=D\:\\note1\\app\\build\\intermediates\\packaged_res\\debug\\menu\\note_list_options.xml
-net.micode.notes.app-main-5\:/menu/sub_folder.xml=D\:\\note1\\app\\build\\intermediates\\packaged_res\\debug\\menu\\sub_folder.xml
-net.micode.notes.app-main-5\:/raw-zh-rCN/introduction=D\:\\note1\\app\\build\\intermediates\\packaged_res\\debug\\raw-zh-rCN\\introduction
-net.micode.notes.app-main-5\:/raw/introduction=D\:\\note1\\app\\build\\intermediates\\packaged_res\\debug\\raw\\introduction
-net.micode.notes.app-main-5\:/xml/preferences.xml=D\:\\note1\\app\\build\\intermediates\\packaged_res\\debug\\xml\\preferences.xml
-net.micode.notes.app-main-5\:/xml/searchable.xml=D\:\\note1\\app\\build\\intermediates\\packaged_res\\debug\\xml\\searchable.xml
-net.micode.notes.app-main-5\:/xml/widget_2x_info.xml=D\:\\note1\\app\\build\\intermediates\\packaged_res\\debug\\xml\\widget_2x_info.xml
-net.micode.notes.app-main-5\:/xml/widget_4x_info.xml=D\:\\note1\\app\\build\\intermediates\\packaged_res\\debug\\xml\\widget_4x_info.xml
diff --git a/src/src/app/build/intermediates/incremental/debug/packageDebugResources/merger.xml b/src/src/app/build/intermediates/incremental/debug/packageDebugResources/merger.xml
deleted file mode 100644
index e4425b2..0000000
--- a/src/src/app/build/intermediates/incremental/debug/packageDebugResources/merger.xml
+++ /dev/null
@@ -1,56 +0,0 @@
-
-
- -%s
- --%s
- --%s
- --%s
-
- Messaging
- Email
- #335b5b5b33sp26sp20sp17sp14spNotesNotes 2x2Notes 4x4No associated note found, click to create associated note.Privacy mode,can not see note content...Add noteDelete reminder successfullySet reminderExpiredyyyyMMddMMMd kk:mmGot itTake a lookCallSend emailBrowse webOpen map/MIUI/notes/notes_%s.txt(%d)New FolderExport textg780gaoset_passcodedelete_passcodeSyncCancel syncingSettingsSearchDeleteMove to folder%d selectedNothing selected, the operation is invalidSelect allDeselect allFont sizeSmallMediumLargeSuperEnter check listLeave check listView folderDelete folderChange folder nameThe folder %1$s exist, please renameShareSend to homeRemind meDelete reminderSelect folderParent folderNote added to homeConfirm to delete folder and its notes?Delete selected notesConfirm to delete the selected %d notes?Confirm to delete this note?Have moved selected %1$d notes to %2$s folderSD card busy, not available nowExport failed, please check SD cardThe note is not existSorry, can not set clock on empty noteSorry, can not send and empty note to homeExport successfulExport failExport text file (%1$s) to SD (%2$s) directorySyncing notes...Sync is successfulSync is failedSync is canceledSync is successful with account %1$sSync failed, please check network and account settingsSync failed, internal error occursSync is canceledLogging into %1$s...Getting remote note list...Synchronize local notes with Google Task...SettingsSync accountSync notes with google taskLast sync time %1$syyyy-MM-dd hh:mm:ssAdd accountChange sync accountRemove sync accountCancelSync immediatelyCancel syncingCurrent account %1$sAll sync related information will be deleted, which may result in duplicated items sometimeSync notesPlease select a google account. Local notes will be synced with google task.Cannot change the account because sync is in progress%1$s has been set as the sync accountNew note background color randomDeleteCall notesInput nameSearching NotesSearch notesText in your notesNotessetcancel
- %1$s result for \"%2$s\"
-
- %1$s results for \"%2$s\"
- Read notesfont_selectRevokeTipsYou can not revokeYou have not input anything
- 短信
- 邮件
- 便签便签2x2便签4x4没有关联内容,点击新建便签。访客模式下,便签内容不可见...新建便签成功删除提醒创建提醒已过期yyyyMMddMM月dd日 kk:mm知道了查看呼叫电话发送邮件浏览网页打开地图新建文件夹导出文本同步取消同步设置搜索删除移动到文件夹选中了 %d 项没有选中项,操作无效全选取消全选文字大小小正常大超大进入清单模式set_passcodedelete_passcode退出清单模式查看文件夹刪除文件夹修改文件夹名称文件夹 %1$s 已存在,请重新命名分享发送到桌面提醒我删除提醒选择文件夹上一级文件夹已添加到桌面删除确认要删除所选的 %d 条便签吗?确认要删除该条便签吗?确认删除文件夹及所包含的便签吗?已将所选 %1$d 条便签移到 %2$s 文件夹SD卡被占用,不能操作导出文本时发生错误,请检查SD卡要查看的便签不存在不能为空便签设置闹钟提醒不能将空便签发送到桌面导出成功导出失败已将文本文件(%1$s)输出至SD卡(%2$s)目录同步便签...同步成功同步失败同步已取消与%1$s同步成功同步失败,请检查网络和帐号设置同步失败,发生内部错误同步已取消登录%1$s...正在获取服务器便签列表...正在同步本地便签...设置同步账号与google task同步便签记录上次同步于 %1$s添加账号更换账号删除账号取消立即同步取消同步当前帐号 %1$s如更换同步帐号,过去的帐号同步信息将被清空,再次切换的同时可能会造成数据重复同步便签请选择google帐号,便签将与该帐号的google task内容同步。正在同步中,不能修改同步帐号同步帐号已设置为%1$s新建便签背景颜色随机删除通话便签请输入名称正在搜索便签搜索便签便签中的文字便签设置取消
- %1$s 条符合“%2$s”的搜索结果
- 读便签选择字体撤销提示你不能撤销了您还没有输入任何内容
- 短信
- 郵件
- 便簽便簽2x2便簽4x4沒有關聯內容,點擊新建便簽。訪客模式下,便籤內容不可見...新建便簽成功刪除提醒創建提醒已過期yyyyMMddMM月dd日 kk:mm知道了查看呼叫電話發送郵件浏覽網頁打開地圖已將所選 %1$d 便籤移到 %2$s 文件夾新建文件夾導出文本同步取消同步設置搜尋刪除移動到文件夾選中了 %d 項沒有選中項,操作無效全選取消全選文字大小小正常大超大進入清單模式退出清單模式查看文件夾刪除文件夾修改文件夾名稱文件夾 %1$s 已存在,請重新命名分享發送到桌面提醒我刪除提醒選擇文件夾上一級文件夾已添加到桌面刪除确认要刪除所選的 %d 條便籤嗎?确认要删除該條便籤嗎?確認刪除檔夾及所包含的便簽嗎?SD卡被佔用,不能操作導出TXT時發生錯誤,請檢查SD卡要查看的便籤不存在不能爲空便籤設置鬧鐘提醒不能將空便籤發送到桌面導出成功導出失敗已將文本文件(%1$s)導出至SD(%2$s)目錄同步便簽...同步成功同步失敗同步已取消與%1$s同步成功同步失敗,請檢查網絡和帳號設置同步失敗,發生內部錯誤同步已取消登陸%1$s...正在獲取服務器便籤列表...正在同步本地便籤...設置同步賬號与google task同步便簽記錄上次同步于 %1$s添加賬號更換賬號刪除賬號取消立即同步取消同步當前帳號 %1$s如更換同步帳號,過去的帳號同步信息將被清空,再次切換的同時可能會造成數據重復同步便簽請選擇google帳號,便簽將與該帳號的google task內容同步。正在同步中,不能修改同步帳號同步帳號已設置為%1$s新建便籤背景顏色隨機刪除通話便籤請輸入名稱正在搜索便籤搜索便籤便籤中的文字便籤設置取消set_passcodedelete_passcode
- %1$s 條符合”%2$s“的搜尋結果
-
\ No newline at end of file
diff --git a/src/src/app/build/intermediates/incremental/mergeDebugAssets/merger.xml b/src/src/app/build/intermediates/incremental/mergeDebugAssets/merger.xml
deleted file mode 100644
index ecfe044..0000000
--- a/src/src/app/build/intermediates/incremental/mergeDebugAssets/merger.xml
+++ /dev/null
@@ -1,2 +0,0 @@
-
-
\ No newline at end of file
diff --git a/src/src/app/build/intermediates/incremental/mergeDebugJniLibFolders/merger.xml b/src/src/app/build/intermediates/incremental/mergeDebugJniLibFolders/merger.xml
deleted file mode 100644
index 713828e..0000000
--- a/src/src/app/build/intermediates/incremental/mergeDebugJniLibFolders/merger.xml
+++ /dev/null
@@ -1,2 +0,0 @@
-
-
\ No newline at end of file
diff --git a/src/src/app/build/intermediates/incremental/mergeDebugShaders/merger.xml b/src/src/app/build/intermediates/incremental/mergeDebugShaders/merger.xml
deleted file mode 100644
index 5eebfc8..0000000
--- a/src/src/app/build/intermediates/incremental/mergeDebugShaders/merger.xml
+++ /dev/null
@@ -1,2 +0,0 @@
-
-
\ No newline at end of file
diff --git a/src/src/app/build/intermediates/incremental/packageDebug/tmp/debug/dex-renamer-state.txt b/src/src/app/build/intermediates/incremental/packageDebug/tmp/debug/dex-renamer-state.txt
deleted file mode 100644
index da4f996..0000000
--- a/src/src/app/build/intermediates/incremental/packageDebug/tmp/debug/dex-renamer-state.txt
+++ /dev/null
@@ -1,4 +0,0 @@
-#Fri Jan 19 02:22:15 GMT+08:00 2024
-base.0=D\:\\note1\\app\\build\\intermediates\\dex\\debug\\mergeDexDebug\\classes.dex
-path.0=classes.dex
-renamed.0=classes.dex
diff --git a/src/src/app/build/intermediates/incremental/packageDebug/tmp/debug/zip-cache/androidResources b/src/src/app/build/intermediates/incremental/packageDebug/tmp/debug/zip-cache/androidResources
deleted file mode 100644
index 7882120..0000000
Binary files a/src/src/app/build/intermediates/incremental/packageDebug/tmp/debug/zip-cache/androidResources and /dev/null differ
diff --git a/src/src/app/build/intermediates/incremental/packageDebug/tmp/debug/zip-cache/javaResources0 b/src/src/app/build/intermediates/incremental/packageDebug/tmp/debug/zip-cache/javaResources0
deleted file mode 100644
index 945a7c5..0000000
Binary files a/src/src/app/build/intermediates/incremental/packageDebug/tmp/debug/zip-cache/javaResources0 and /dev/null differ
diff --git a/src/src/app/build/intermediates/incremental/processDebugResources/resources-list-for-resources-debug.ap_.txt b/src/src/app/build/intermediates/incremental/processDebugResources/resources-list-for-resources-debug.ap_.txt
deleted file mode 100644
index 43237fb..0000000
--- a/src/src/app/build/intermediates/incremental/processDebugResources/resources-list-for-resources-debug.ap_.txt
+++ /dev/null
@@ -1 +0,0 @@
-G:\xiaomi\note\app\build\intermediates\merged_res\debug\color_primary_text_dark.xml.flat G:\xiaomi\note\app\build\intermediates\merged_res\debug\color_secondary_text_dark.xml.flat G:\xiaomi\note\app\build\intermediates\merged_res\debug\drawable-hdpi_a1.png.flat G:\xiaomi\note\app\build\intermediates\merged_res\debug\drawable-hdpi_a2.png.flat G:\xiaomi\note\app\build\intermediates\merged_res\debug\drawable-hdpi_a3.png.flat G:\xiaomi\note\app\build\intermediates\merged_res\debug\drawable-hdpi_a4.png.flat G:\xiaomi\note\app\build\intermediates\merged_res\debug\drawable-hdpi_bg_btn_set_color.png.flat G:\xiaomi\note\app\build\intermediates\merged_res\debug\drawable-hdpi_bg_color_btn_mask.png.flat G:\xiaomi\note\app\build\intermediates\merged_res\debug\drawable-hdpi_call_record.png.flat G:\xiaomi\note\app\build\intermediates\merged_res\debug\drawable-hdpi_clock.png.flat G:\xiaomi\note\app\build\intermediates\merged_res\debug\drawable-hdpi_delete.png.flat G:\xiaomi\note\app\build\intermediates\merged_res\debug\drawable-hdpi_dropdown_icon.9.png.flat G:\xiaomi\note\app\build\intermediates\merged_res\debug\drawable-hdpi_edit_blue.9.png.flat G:\xiaomi\note\app\build\intermediates\merged_res\debug\drawable-hdpi_edit_green.9.png.flat G:\xiaomi\note\app\build\intermediates\merged_res\debug\drawable-hdpi_edit_red.9.png.flat G:\xiaomi\note\app\build\intermediates\merged_res\debug\drawable-hdpi_edit_title_blue.9.png.flat G:\xiaomi\note\app\build\intermediates\merged_res\debug\drawable-hdpi_edit_title_green.9.png.flat G:\xiaomi\note\app\build\intermediates\merged_res\debug\drawable-hdpi_edit_title_red.9.png.flat G:\xiaomi\note\app\build\intermediates\merged_res\debug\drawable-hdpi_edit_title_white.9.png.flat G:\xiaomi\note\app\build\intermediates\merged_res\debug\drawable-hdpi_edit_title_yellow.9.png.flat G:\xiaomi\note\app\build\intermediates\merged_res\debug\drawable-hdpi_edit_white.9.png.flat G:\xiaomi\note\app\build\intermediates\merged_res\debug\drawable-hdpi_edit_yellow.9.png.flat G:\xiaomi\note\app\build\intermediates\merged_res\debug\drawable-hdpi_font_large.png.flat G:\xiaomi\note\app\build\intermediates\merged_res\debug\drawable-hdpi_font_normal.png.flat G:\xiaomi\note\app\build\intermediates\merged_res\debug\drawable-hdpi_font_size_selector_bg.9.png.flat G:\xiaomi\note\app\build\intermediates\merged_res\debug\drawable-hdpi_font_small.png.flat G:\xiaomi\note\app\build\intermediates\merged_res\debug\drawable-hdpi_font_super.png.flat G:\xiaomi\note\app\build\intermediates\merged_res\debug\drawable-hdpi_g780.jpg.flat G:\xiaomi\note\app\build\intermediates\merged_res\debug\drawable-hdpi_gao.png.flat G:\xiaomi\note\app\build\intermediates\merged_res\debug\drawable-hdpi_icon_app.png.flat G:\xiaomi\note\app\build\intermediates\merged_res\debug\drawable-hdpi_list_background.png.flat G:\xiaomi\note\app\build\intermediates\merged_res\debug\drawable-hdpi_list_blue_down.9.png.flat G:\xiaomi\note\app\build\intermediates\merged_res\debug\drawable-hdpi_list_blue_middle.9.png.flat G:\xiaomi\note\app\build\intermediates\merged_res\debug\drawable-hdpi_list_blue_single.9.png.flat G:\xiaomi\note\app\build\intermediates\merged_res\debug\drawable-hdpi_list_blue_up.9.png.flat G:\xiaomi\note\app\build\intermediates\merged_res\debug\drawable-hdpi_list_folder.9.png.flat G:\xiaomi\note\app\build\intermediates\merged_res\debug\drawable-hdpi_list_footer_bg.9.png.flat G:\xiaomi\note\app\build\intermediates\merged_res\debug\drawable-hdpi_list_green_down.9.png.flat G:\xiaomi\note\app\build\intermediates\merged_res\debug\drawable-hdpi_list_green_middle.9.png.flat G:\xiaomi\note\app\build\intermediates\merged_res\debug\drawable-hdpi_list_green_single.9.png.flat G:\xiaomi\note\app\build\intermediates\merged_res\debug\drawable-hdpi_list_green_up.9.png.flat G:\xiaomi\note\app\build\intermediates\merged_res\debug\drawable-hdpi_list_red_down.9.png.flat G:\xiaomi\note\app\build\intermediates\merged_res\debug\drawable-hdpi_list_red_middle.9.png.flat G:\xiaomi\note\app\build\intermediates\merged_res\debug\drawable-hdpi_list_red_single.9.png.flat G:\xiaomi\note\app\build\intermediates\merged_res\debug\drawable-hdpi_list_red_up.9.png.flat G:\xiaomi\note\app\build\intermediates\merged_res\debug\drawable-hdpi_list_white_down.9.png.flat G:\xiaomi\note\app\build\intermediates\merged_res\debug\drawable-hdpi_list_white_middle.9.png.flat G:\xiaomi\note\app\build\intermediates\merged_res\debug\drawable-hdpi_list_white_single.9.png.flat G:\xiaomi\note\app\build\intermediates\merged_res\debug\drawable-hdpi_list_white_up.9.png.flat G:\xiaomi\note\app\build\intermediates\merged_res\debug\drawable-hdpi_list_yellow_down.9.png.flat G:\xiaomi\note\app\build\intermediates\merged_res\debug\drawable-hdpi_list_yellow_middle.9.png.flat G:\xiaomi\note\app\build\intermediates\merged_res\debug\drawable-hdpi_list_yellow_single.9.png.flat G:\xiaomi\note\app\build\intermediates\merged_res\debug\drawable-hdpi_list_yellow_up.9.png.flat G:\xiaomi\note\app\build\intermediates\merged_res\debug\drawable-hdpi_menu_delete.png.flat G:\xiaomi\note\app\build\intermediates\merged_res\debug\drawable-hdpi_menu_move.png.flat G:\xiaomi\note\app\build\intermediates\merged_res\debug\drawable-hdpi_new_note_normal.png.flat G:\xiaomi\note\app\build\intermediates\merged_res\debug\drawable-hdpi_new_note_pressed.png.flat G:\xiaomi\note\app\build\intermediates\merged_res\debug\drawable-hdpi_note_edit_color_selector_panel.png.flat G:\xiaomi\note\app\build\intermediates\merged_res\debug\drawable-hdpi_search_result.png.flat G:\xiaomi\note\app\build\intermediates\merged_res\debug\drawable-hdpi_selected.png.flat G:\xiaomi\note\app\build\intermediates\merged_res\debug\drawable-hdpi_title_alert.png.flat G:\xiaomi\note\app\build\intermediates\merged_res\debug\drawable-hdpi_title_bar_bg.9.png.flat G:\xiaomi\note\app\build\intermediates\merged_res\debug\drawable-hdpi_widget_2x_blue.png.flat G:\xiaomi\note\app\build\intermediates\merged_res\debug\drawable-hdpi_widget_2x_green.png.flat G:\xiaomi\note\app\build\intermediates\merged_res\debug\drawable-hdpi_widget_2x_red.png.flat G:\xiaomi\note\app\build\intermediates\merged_res\debug\drawable-hdpi_widget_2x_white.png.flat G:\xiaomi\note\app\build\intermediates\merged_res\debug\drawable-hdpi_widget_2x_yellow.png.flat G:\xiaomi\note\app\build\intermediates\merged_res\debug\drawable-hdpi_widget_4x_blue.png.flat G:\xiaomi\note\app\build\intermediates\merged_res\debug\drawable-hdpi_widget_4x_green.png.flat G:\xiaomi\note\app\build\intermediates\merged_res\debug\drawable-hdpi_widget_4x_red.png.flat G:\xiaomi\note\app\build\intermediates\merged_res\debug\drawable-hdpi_widget_4x_white.png.flat G:\xiaomi\note\app\build\intermediates\merged_res\debug\drawable-hdpi_widget_4x_yellow.png.flat G:\xiaomi\note\app\build\intermediates\merged_res\debug\drawable_new_note.xml.flat G:\xiaomi\note\app\build\intermediates\merged_res\debug\layout_account_dialog_title.xml.flat G:\xiaomi\note\app\build\intermediates\merged_res\debug\layout_add_account_text.xml.flat G:\xiaomi\note\app\build\intermediates\merged_res\debug\layout_datetime_picker.xml.flat G:\xiaomi\note\app\build\intermediates\merged_res\debug\layout_dialog_edit_text.xml.flat G:\xiaomi\note\app\build\intermediates\merged_res\debug\layout_folder_list_item.xml.flat G:\xiaomi\note\app\build\intermediates\merged_res\debug\layout_note_edit.xml.flat G:\xiaomi\note\app\build\intermediates\merged_res\debug\layout_note_edit_list_item.xml.flat G:\xiaomi\note\app\build\intermediates\merged_res\debug\layout_note_item.xml.flat G:\xiaomi\note\app\build\intermediates\merged_res\debug\layout_note_list.xml.flat G:\xiaomi\note\app\build\intermediates\merged_res\debug\layout_note_list_dropdown_menu.xml.flat G:\xiaomi\note\app\build\intermediates\merged_res\debug\layout_note_list_footer.xml.flat G:\xiaomi\note\app\build\intermediates\merged_res\debug\layout_settings_header.xml.flat G:\xiaomi\note\app\build\intermediates\merged_res\debug\layout_widget_2x.xml.flat G:\xiaomi\note\app\build\intermediates\merged_res\debug\layout_widget_4x.xml.flat G:\xiaomi\note\app\build\intermediates\merged_res\debug\menu_call_note_edit.xml.flat G:\xiaomi\note\app\build\intermediates\merged_res\debug\menu_call_record_folder.xml.flat G:\xiaomi\note\app\build\intermediates\merged_res\debug\menu_note_edit.xml.flat G:\xiaomi\note\app\build\intermediates\merged_res\debug\menu_note_list.xml.flat G:\xiaomi\note\app\build\intermediates\merged_res\debug\menu_note_list_dropdown.xml.flat G:\xiaomi\note\app\build\intermediates\merged_res\debug\menu_note_list_options.xml.flat G:\xiaomi\note\app\build\intermediates\merged_res\debug\menu_sub_folder.xml.flat G:\xiaomi\note\app\build\intermediates\merged_res\debug\raw-zh-rCN_introduction.flat G:\xiaomi\note\app\build\intermediates\merged_res\debug\raw_introduction.flat G:\xiaomi\note\app\build\intermediates\merged_res\debug\values-zh-rCN_values-zh-rCN.arsc.flat G:\xiaomi\note\app\build\intermediates\merged_res\debug\values-zh-rTW_values-zh-rTW.arsc.flat G:\xiaomi\note\app\build\intermediates\merged_res\debug\values_values.arsc.flat G:\xiaomi\note\app\build\intermediates\merged_res\debug\xml_preferences.xml.flat G:\xiaomi\note\app\build\intermediates\merged_res\debug\xml_searchable.xml.flat G:\xiaomi\note\app\build\intermediates\merged_res\debug\xml_widget_2x_info.xml.flat G:\xiaomi\note\app\build\intermediates\merged_res\debug\xml_widget_4x_info.xml.flat
\ No newline at end of file
diff --git a/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/data/Contact.class b/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/data/Contact.class
deleted file mode 100644
index 60ccbbf..0000000
Binary files a/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/data/Contact.class and /dev/null differ
diff --git a/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/data/Notes$CallNote.class b/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/data/Notes$CallNote.class
deleted file mode 100644
index 274e43a..0000000
Binary files a/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/data/Notes$CallNote.class and /dev/null differ
diff --git a/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/data/Notes$DataColumns.class b/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/data/Notes$DataColumns.class
deleted file mode 100644
index 569dbdc..0000000
Binary files a/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/data/Notes$DataColumns.class and /dev/null differ
diff --git a/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/data/Notes$DataConstants.class b/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/data/Notes$DataConstants.class
deleted file mode 100644
index f8dee34..0000000
Binary files a/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/data/Notes$DataConstants.class and /dev/null differ
diff --git a/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/data/Notes$NoteColumns.class b/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/data/Notes$NoteColumns.class
deleted file mode 100644
index 54a6ce0..0000000
Binary files a/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/data/Notes$NoteColumns.class and /dev/null differ
diff --git a/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/data/Notes$TextNote.class b/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/data/Notes$TextNote.class
deleted file mode 100644
index 8a63ad0..0000000
Binary files a/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/data/Notes$TextNote.class and /dev/null differ
diff --git a/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/data/Notes.class b/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/data/Notes.class
deleted file mode 100644
index 973ff7b..0000000
Binary files a/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/data/Notes.class and /dev/null differ
diff --git a/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/data/NotesDatabaseHelper$TABLE.class b/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/data/NotesDatabaseHelper$TABLE.class
deleted file mode 100644
index 64fe9eb..0000000
Binary files a/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/data/NotesDatabaseHelper$TABLE.class and /dev/null differ
diff --git a/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/data/NotesDatabaseHelper.class b/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/data/NotesDatabaseHelper.class
deleted file mode 100644
index 565d3c0..0000000
Binary files a/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/data/NotesDatabaseHelper.class and /dev/null differ
diff --git a/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/data/NotesProvider.class b/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/data/NotesProvider.class
deleted file mode 100644
index f494b90..0000000
Binary files a/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/data/NotesProvider.class and /dev/null differ
diff --git a/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/gtask/data/MetaData.class b/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/gtask/data/MetaData.class
deleted file mode 100644
index 71ec025..0000000
Binary files a/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/gtask/data/MetaData.class and /dev/null differ
diff --git a/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/gtask/data/Node.class b/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/gtask/data/Node.class
deleted file mode 100644
index 59c2348..0000000
Binary files a/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/gtask/data/Node.class and /dev/null differ
diff --git a/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/gtask/data/SqlData.class b/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/gtask/data/SqlData.class
deleted file mode 100644
index 1b358b9..0000000
Binary files a/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/gtask/data/SqlData.class and /dev/null differ
diff --git a/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/gtask/data/SqlNote.class b/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/gtask/data/SqlNote.class
deleted file mode 100644
index 7ea6444..0000000
Binary files a/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/gtask/data/SqlNote.class and /dev/null differ
diff --git a/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/gtask/data/Task.class b/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/gtask/data/Task.class
deleted file mode 100644
index 2d2569c..0000000
Binary files a/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/gtask/data/Task.class and /dev/null differ
diff --git a/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/gtask/data/TaskList.class b/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/gtask/data/TaskList.class
deleted file mode 100644
index d134575..0000000
Binary files a/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/gtask/data/TaskList.class and /dev/null differ
diff --git a/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/gtask/exception/ActionFailureException.class b/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/gtask/exception/ActionFailureException.class
deleted file mode 100644
index d50661a..0000000
Binary files a/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/gtask/exception/ActionFailureException.class and /dev/null differ
diff --git a/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/gtask/exception/NetworkFailureException.class b/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/gtask/exception/NetworkFailureException.class
deleted file mode 100644
index 695510a..0000000
Binary files a/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/gtask/exception/NetworkFailureException.class and /dev/null differ
diff --git a/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/gtask/remote/GTaskASyncTask$1.class b/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/gtask/remote/GTaskASyncTask$1.class
deleted file mode 100644
index daea4d8..0000000
Binary files a/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/gtask/remote/GTaskASyncTask$1.class and /dev/null differ
diff --git a/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/gtask/remote/GTaskASyncTask$OnCompleteListener.class b/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/gtask/remote/GTaskASyncTask$OnCompleteListener.class
deleted file mode 100644
index f73069c..0000000
Binary files a/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/gtask/remote/GTaskASyncTask$OnCompleteListener.class and /dev/null differ
diff --git a/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/gtask/remote/GTaskASyncTask.class b/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/gtask/remote/GTaskASyncTask.class
deleted file mode 100644
index ec7c0d4..0000000
Binary files a/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/gtask/remote/GTaskASyncTask.class and /dev/null differ
diff --git a/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/gtask/remote/GTaskClient.class b/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/gtask/remote/GTaskClient.class
deleted file mode 100644
index 929e19a..0000000
Binary files a/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/gtask/remote/GTaskClient.class and /dev/null differ
diff --git a/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/gtask/remote/GTaskManager.class b/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/gtask/remote/GTaskManager.class
deleted file mode 100644
index 8406055..0000000
Binary files a/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/gtask/remote/GTaskManager.class and /dev/null differ
diff --git a/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/gtask/remote/GTaskSyncService$1.class b/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/gtask/remote/GTaskSyncService$1.class
deleted file mode 100644
index 00f2f82..0000000
Binary files a/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/gtask/remote/GTaskSyncService$1.class and /dev/null differ
diff --git a/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/gtask/remote/GTaskSyncService.class b/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/gtask/remote/GTaskSyncService.class
deleted file mode 100644
index 836530e..0000000
Binary files a/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/gtask/remote/GTaskSyncService.class and /dev/null differ
diff --git a/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/model/Note$NoteData.class b/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/model/Note$NoteData.class
deleted file mode 100644
index 2015e3d..0000000
Binary files a/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/model/Note$NoteData.class and /dev/null differ
diff --git a/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/model/Note.class b/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/model/Note.class
deleted file mode 100644
index 94e9b80..0000000
Binary files a/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/model/Note.class and /dev/null differ
diff --git a/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/model/WorkingNote$NoteSettingChangedListener.class b/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/model/WorkingNote$NoteSettingChangedListener.class
deleted file mode 100644
index 15f1f77..0000000
Binary files a/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/model/WorkingNote$NoteSettingChangedListener.class and /dev/null differ
diff --git a/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/model/WorkingNote.class b/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/model/WorkingNote.class
deleted file mode 100644
index 8c5cd4a..0000000
Binary files a/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/model/WorkingNote.class and /dev/null differ
diff --git a/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/tool/BackupUtils$TextExport.class b/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/tool/BackupUtils$TextExport.class
deleted file mode 100644
index bed07b4..0000000
Binary files a/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/tool/BackupUtils$TextExport.class and /dev/null differ
diff --git a/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/tool/BackupUtils.class b/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/tool/BackupUtils.class
deleted file mode 100644
index f85dbd4..0000000
Binary files a/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/tool/BackupUtils.class and /dev/null differ
diff --git a/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/tool/DataUtils.class b/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/tool/DataUtils.class
deleted file mode 100644
index 94ef572..0000000
Binary files a/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/tool/DataUtils.class and /dev/null differ
diff --git a/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/tool/GTaskStringUtils.class b/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/tool/GTaskStringUtils.class
deleted file mode 100644
index 51b6249..0000000
Binary files a/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/tool/GTaskStringUtils.class and /dev/null differ
diff --git a/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/tool/ResourceParser$NoteBgResources.class b/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/tool/ResourceParser$NoteBgResources.class
deleted file mode 100644
index b37d3e8..0000000
Binary files a/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/tool/ResourceParser$NoteBgResources.class and /dev/null differ
diff --git a/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/tool/ResourceParser$NoteItemBgResources.class b/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/tool/ResourceParser$NoteItemBgResources.class
deleted file mode 100644
index 706624a..0000000
Binary files a/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/tool/ResourceParser$NoteItemBgResources.class and /dev/null differ
diff --git a/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/tool/ResourceParser$TextAppearanceResources.class b/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/tool/ResourceParser$TextAppearanceResources.class
deleted file mode 100644
index 215a0d0..0000000
Binary files a/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/tool/ResourceParser$TextAppearanceResources.class and /dev/null differ
diff --git a/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/tool/ResourceParser$WidgetBgResources.class b/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/tool/ResourceParser$WidgetBgResources.class
deleted file mode 100644
index 3d0c37c..0000000
Binary files a/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/tool/ResourceParser$WidgetBgResources.class and /dev/null differ
diff --git a/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/tool/ResourceParser.class b/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/tool/ResourceParser.class
deleted file mode 100644
index 0ed9a86..0000000
Binary files a/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/tool/ResourceParser.class and /dev/null differ
diff --git a/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/ui/AlarmAlertActivity.class b/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/ui/AlarmAlertActivity.class
deleted file mode 100644
index 1c2c702..0000000
Binary files a/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/ui/AlarmAlertActivity.class and /dev/null differ
diff --git a/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/ui/AlarmInitReceiver.class b/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/ui/AlarmInitReceiver.class
deleted file mode 100644
index 4586d6d..0000000
Binary files a/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/ui/AlarmInitReceiver.class and /dev/null differ
diff --git a/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/ui/AlarmReceiver.class b/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/ui/AlarmReceiver.class
deleted file mode 100644
index 2f45d9c..0000000
Binary files a/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/ui/AlarmReceiver.class and /dev/null differ
diff --git a/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/ui/DateTimePicker$1.class b/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/ui/DateTimePicker$1.class
deleted file mode 100644
index 15dee66..0000000
Binary files a/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/ui/DateTimePicker$1.class and /dev/null differ
diff --git a/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/ui/DateTimePicker$2.class b/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/ui/DateTimePicker$2.class
deleted file mode 100644
index a5b1611..0000000
Binary files a/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/ui/DateTimePicker$2.class and /dev/null differ
diff --git a/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/ui/DateTimePicker$3.class b/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/ui/DateTimePicker$3.class
deleted file mode 100644
index f8e98b5..0000000
Binary files a/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/ui/DateTimePicker$3.class and /dev/null differ
diff --git a/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/ui/DateTimePicker$4.class b/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/ui/DateTimePicker$4.class
deleted file mode 100644
index 1363da3..0000000
Binary files a/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/ui/DateTimePicker$4.class and /dev/null differ
diff --git a/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/ui/DateTimePicker$OnDateTimeChangedListener.class b/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/ui/DateTimePicker$OnDateTimeChangedListener.class
deleted file mode 100644
index 255a4e6..0000000
Binary files a/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/ui/DateTimePicker$OnDateTimeChangedListener.class and /dev/null differ
diff --git a/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/ui/DateTimePicker.class b/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/ui/DateTimePicker.class
deleted file mode 100644
index 173a743..0000000
Binary files a/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/ui/DateTimePicker.class and /dev/null differ
diff --git a/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/ui/DateTimePickerDialog$1.class b/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/ui/DateTimePickerDialog$1.class
deleted file mode 100644
index 415e755..0000000
Binary files a/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/ui/DateTimePickerDialog$1.class and /dev/null differ
diff --git a/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/ui/DateTimePickerDialog$OnDateTimeSetListener.class b/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/ui/DateTimePickerDialog$OnDateTimeSetListener.class
deleted file mode 100644
index 70481dd..0000000
Binary files a/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/ui/DateTimePickerDialog$OnDateTimeSetListener.class and /dev/null differ
diff --git a/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/ui/DateTimePickerDialog.class b/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/ui/DateTimePickerDialog.class
deleted file mode 100644
index a7df97a..0000000
Binary files a/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/ui/DateTimePickerDialog.class and /dev/null differ
diff --git a/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/ui/DropdownMenu$1.class b/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/ui/DropdownMenu$1.class
deleted file mode 100644
index ddd74fd..0000000
Binary files a/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/ui/DropdownMenu$1.class and /dev/null differ
diff --git a/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/ui/DropdownMenu.class b/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/ui/DropdownMenu.class
deleted file mode 100644
index 54e7df6..0000000
Binary files a/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/ui/DropdownMenu.class and /dev/null differ
diff --git a/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/ui/FoldersListAdapter$FolderListItem.class b/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/ui/FoldersListAdapter$FolderListItem.class
deleted file mode 100644
index 3ef5cd6..0000000
Binary files a/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/ui/FoldersListAdapter$FolderListItem.class and /dev/null differ
diff --git a/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/ui/FoldersListAdapter.class b/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/ui/FoldersListAdapter.class
deleted file mode 100644
index 3fb33ec..0000000
Binary files a/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/ui/FoldersListAdapter.class and /dev/null differ
diff --git a/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/ui/NoteEditActivity$1.class b/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/ui/NoteEditActivity$1.class
deleted file mode 100644
index d43ea96..0000000
Binary files a/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/ui/NoteEditActivity$1.class and /dev/null differ
diff --git a/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/ui/NoteEditActivity$10.class b/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/ui/NoteEditActivity$10.class
deleted file mode 100644
index 8f3790e..0000000
Binary files a/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/ui/NoteEditActivity$10.class and /dev/null differ
diff --git a/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/ui/NoteEditActivity$11.class b/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/ui/NoteEditActivity$11.class
deleted file mode 100644
index fbd83aa..0000000
Binary files a/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/ui/NoteEditActivity$11.class and /dev/null differ
diff --git a/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/ui/NoteEditActivity$12.class b/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/ui/NoteEditActivity$12.class
deleted file mode 100644
index 881fa6e..0000000
Binary files a/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/ui/NoteEditActivity$12.class and /dev/null differ
diff --git a/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/ui/NoteEditActivity$13.class b/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/ui/NoteEditActivity$13.class
deleted file mode 100644
index ba2b6d8..0000000
Binary files a/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/ui/NoteEditActivity$13.class and /dev/null differ
diff --git a/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/ui/NoteEditActivity$14.class b/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/ui/NoteEditActivity$14.class
deleted file mode 100644
index 806bee2..0000000
Binary files a/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/ui/NoteEditActivity$14.class and /dev/null differ
diff --git a/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/ui/NoteEditActivity$15.class b/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/ui/NoteEditActivity$15.class
deleted file mode 100644
index 0527e8c..0000000
Binary files a/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/ui/NoteEditActivity$15.class and /dev/null differ
diff --git a/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/ui/NoteEditActivity$16.class b/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/ui/NoteEditActivity$16.class
deleted file mode 100644
index 82dcae0..0000000
Binary files a/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/ui/NoteEditActivity$16.class and /dev/null differ
diff --git a/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/ui/NoteEditActivity$17.class b/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/ui/NoteEditActivity$17.class
deleted file mode 100644
index 60f0c26..0000000
Binary files a/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/ui/NoteEditActivity$17.class and /dev/null differ
diff --git a/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/ui/NoteEditActivity$2.class b/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/ui/NoteEditActivity$2.class
deleted file mode 100644
index 8a4c44c..0000000
Binary files a/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/ui/NoteEditActivity$2.class and /dev/null differ
diff --git a/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/ui/NoteEditActivity$3.class b/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/ui/NoteEditActivity$3.class
deleted file mode 100644
index 8278cce..0000000
Binary files a/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/ui/NoteEditActivity$3.class and /dev/null differ
diff --git a/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/ui/NoteEditActivity$4.class b/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/ui/NoteEditActivity$4.class
deleted file mode 100644
index 3f712a0..0000000
Binary files a/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/ui/NoteEditActivity$4.class and /dev/null differ
diff --git a/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/ui/NoteEditActivity$5.class b/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/ui/NoteEditActivity$5.class
deleted file mode 100644
index d6b3502..0000000
Binary files a/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/ui/NoteEditActivity$5.class and /dev/null differ
diff --git a/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/ui/NoteEditActivity$6.class b/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/ui/NoteEditActivity$6.class
deleted file mode 100644
index 0b77303..0000000
Binary files a/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/ui/NoteEditActivity$6.class and /dev/null differ
diff --git a/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/ui/NoteEditActivity$7.class b/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/ui/NoteEditActivity$7.class
deleted file mode 100644
index 5487e6f..0000000
Binary files a/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/ui/NoteEditActivity$7.class and /dev/null differ
diff --git a/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/ui/NoteEditActivity$8.class b/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/ui/NoteEditActivity$8.class
deleted file mode 100644
index a478ada..0000000
Binary files a/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/ui/NoteEditActivity$8.class and /dev/null differ
diff --git a/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/ui/NoteEditActivity$9.class b/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/ui/NoteEditActivity$9.class
deleted file mode 100644
index 84288ec..0000000
Binary files a/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/ui/NoteEditActivity$9.class and /dev/null differ
diff --git a/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/ui/NoteEditActivity$HeadViewHolder.class b/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/ui/NoteEditActivity$HeadViewHolder.class
deleted file mode 100644
index 594340f..0000000
Binary files a/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/ui/NoteEditActivity$HeadViewHolder.class and /dev/null differ
diff --git a/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/ui/NoteEditActivity.class b/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/ui/NoteEditActivity.class
deleted file mode 100644
index 120fcf7..0000000
Binary files a/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/ui/NoteEditActivity.class and /dev/null differ
diff --git a/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/ui/NoteEditText$1.class b/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/ui/NoteEditText$1.class
deleted file mode 100644
index c6c74cb..0000000
Binary files a/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/ui/NoteEditText$1.class and /dev/null differ
diff --git a/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/ui/NoteEditText$OnTextViewChangeListener.class b/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/ui/NoteEditText$OnTextViewChangeListener.class
deleted file mode 100644
index 9874f47..0000000
Binary files a/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/ui/NoteEditText$OnTextViewChangeListener.class and /dev/null differ
diff --git a/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/ui/NoteEditText.class b/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/ui/NoteEditText.class
deleted file mode 100644
index 7b5714d..0000000
Binary files a/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/ui/NoteEditText.class and /dev/null differ
diff --git a/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/ui/NoteItemData.class b/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/ui/NoteItemData.class
deleted file mode 100644
index 47c6986..0000000
Binary files a/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/ui/NoteItemData.class and /dev/null differ
diff --git a/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/ui/NotesListActivity$1.class b/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/ui/NotesListActivity$1.class
deleted file mode 100644
index ae9244f..0000000
Binary files a/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/ui/NotesListActivity$1.class and /dev/null differ
diff --git a/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/ui/NotesListActivity$2.class b/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/ui/NotesListActivity$2.class
deleted file mode 100644
index 70299f5..0000000
Binary files a/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/ui/NotesListActivity$2.class and /dev/null differ
diff --git a/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/ui/NotesListActivity$3.class b/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/ui/NotesListActivity$3.class
deleted file mode 100644
index e952b8c..0000000
Binary files a/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/ui/NotesListActivity$3.class and /dev/null differ
diff --git a/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/ui/NotesListActivity$4.class b/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/ui/NotesListActivity$4.class
deleted file mode 100644
index ae17758..0000000
Binary files a/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/ui/NotesListActivity$4.class and /dev/null differ
diff --git a/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/ui/NotesListActivity$5.class b/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/ui/NotesListActivity$5.class
deleted file mode 100644
index cf9cee6..0000000
Binary files a/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/ui/NotesListActivity$5.class and /dev/null differ
diff --git a/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/ui/NotesListActivity$6.class b/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/ui/NotesListActivity$6.class
deleted file mode 100644
index 8e474d2..0000000
Binary files a/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/ui/NotesListActivity$6.class and /dev/null differ
diff --git a/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/ui/NotesListActivity$7.class b/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/ui/NotesListActivity$7.class
deleted file mode 100644
index d21739a..0000000
Binary files a/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/ui/NotesListActivity$7.class and /dev/null differ
diff --git a/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/ui/NotesListActivity$8.class b/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/ui/NotesListActivity$8.class
deleted file mode 100644
index 7a5850a..0000000
Binary files a/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/ui/NotesListActivity$8.class and /dev/null differ
diff --git a/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/ui/NotesListActivity$9.class b/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/ui/NotesListActivity$9.class
deleted file mode 100644
index 8dbbc7e..0000000
Binary files a/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/ui/NotesListActivity$9.class and /dev/null differ
diff --git a/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/ui/NotesListActivity$BackgroundQueryHandler.class b/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/ui/NotesListActivity$BackgroundQueryHandler.class
deleted file mode 100644
index fadd4fc..0000000
Binary files a/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/ui/NotesListActivity$BackgroundQueryHandler.class and /dev/null differ
diff --git a/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/ui/NotesListActivity$ListEditState.class b/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/ui/NotesListActivity$ListEditState.class
deleted file mode 100644
index 2edab7b..0000000
Binary files a/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/ui/NotesListActivity$ListEditState.class and /dev/null differ
diff --git a/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/ui/NotesListActivity$ModeCallback$1.class b/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/ui/NotesListActivity$ModeCallback$1.class
deleted file mode 100644
index e0b44ff..0000000
Binary files a/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/ui/NotesListActivity$ModeCallback$1.class and /dev/null differ
diff --git a/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/ui/NotesListActivity$ModeCallback$2.class b/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/ui/NotesListActivity$ModeCallback$2.class
deleted file mode 100644
index 5e68562..0000000
Binary files a/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/ui/NotesListActivity$ModeCallback$2.class and /dev/null differ
diff --git a/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/ui/NotesListActivity$ModeCallback.class b/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/ui/NotesListActivity$ModeCallback.class
deleted file mode 100644
index 70b4274..0000000
Binary files a/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/ui/NotesListActivity$ModeCallback.class and /dev/null differ
diff --git a/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/ui/NotesListActivity$NewNoteOnTouchListener.class b/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/ui/NotesListActivity$NewNoteOnTouchListener.class
deleted file mode 100644
index 1e7b9f0..0000000
Binary files a/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/ui/NotesListActivity$NewNoteOnTouchListener.class and /dev/null differ
diff --git a/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/ui/NotesListActivity$OnListItemClickListener.class b/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/ui/NotesListActivity$OnListItemClickListener.class
deleted file mode 100644
index 00b8846..0000000
Binary files a/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/ui/NotesListActivity$OnListItemClickListener.class and /dev/null differ
diff --git a/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/ui/NotesListActivity.class b/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/ui/NotesListActivity.class
deleted file mode 100644
index 55fc394..0000000
Binary files a/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/ui/NotesListActivity.class and /dev/null differ
diff --git a/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/ui/NotesListAdapter$AppWidgetAttribute.class b/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/ui/NotesListAdapter$AppWidgetAttribute.class
deleted file mode 100644
index 2bdb58b..0000000
Binary files a/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/ui/NotesListAdapter$AppWidgetAttribute.class and /dev/null differ
diff --git a/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/ui/NotesListAdapter.class b/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/ui/NotesListAdapter.class
deleted file mode 100644
index 5e432e9..0000000
Binary files a/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/ui/NotesListAdapter.class and /dev/null differ
diff --git a/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/ui/NotesListItem.class b/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/ui/NotesListItem.class
deleted file mode 100644
index 4596834..0000000
Binary files a/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/ui/NotesListItem.class and /dev/null differ
diff --git a/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/ui/NotesPreferenceActivity$1.class b/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/ui/NotesPreferenceActivity$1.class
deleted file mode 100644
index 362fa05..0000000
Binary files a/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/ui/NotesPreferenceActivity$1.class and /dev/null differ
diff --git a/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/ui/NotesPreferenceActivity$2.class b/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/ui/NotesPreferenceActivity$2.class
deleted file mode 100644
index 8523228..0000000
Binary files a/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/ui/NotesPreferenceActivity$2.class and /dev/null differ
diff --git a/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/ui/NotesPreferenceActivity$3.class b/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/ui/NotesPreferenceActivity$3.class
deleted file mode 100644
index d91bc85..0000000
Binary files a/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/ui/NotesPreferenceActivity$3.class and /dev/null differ
diff --git a/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/ui/NotesPreferenceActivity$4.class b/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/ui/NotesPreferenceActivity$4.class
deleted file mode 100644
index 99c7a64..0000000
Binary files a/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/ui/NotesPreferenceActivity$4.class and /dev/null differ
diff --git a/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/ui/NotesPreferenceActivity$5.class b/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/ui/NotesPreferenceActivity$5.class
deleted file mode 100644
index 17e4d3b..0000000
Binary files a/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/ui/NotesPreferenceActivity$5.class and /dev/null differ
diff --git a/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/ui/NotesPreferenceActivity$6.class b/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/ui/NotesPreferenceActivity$6.class
deleted file mode 100644
index 7b80036..0000000
Binary files a/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/ui/NotesPreferenceActivity$6.class and /dev/null differ
diff --git a/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/ui/NotesPreferenceActivity$7.class b/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/ui/NotesPreferenceActivity$7.class
deleted file mode 100644
index d9abeb9..0000000
Binary files a/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/ui/NotesPreferenceActivity$7.class and /dev/null differ
diff --git a/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/ui/NotesPreferenceActivity$8.class b/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/ui/NotesPreferenceActivity$8.class
deleted file mode 100644
index 39e534a..0000000
Binary files a/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/ui/NotesPreferenceActivity$8.class and /dev/null differ
diff --git a/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/ui/NotesPreferenceActivity$GTaskReceiver.class b/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/ui/NotesPreferenceActivity$GTaskReceiver.class
deleted file mode 100644
index eb938cf..0000000
Binary files a/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/ui/NotesPreferenceActivity$GTaskReceiver.class and /dev/null differ
diff --git a/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/ui/NotesPreferenceActivity.class b/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/ui/NotesPreferenceActivity.class
deleted file mode 100644
index 0937be2..0000000
Binary files a/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/ui/NotesPreferenceActivity.class and /dev/null differ
diff --git a/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/widget/NoteWidgetProvider.class b/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/widget/NoteWidgetProvider.class
deleted file mode 100644
index a00281f..0000000
Binary files a/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/widget/NoteWidgetProvider.class and /dev/null differ
diff --git a/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/widget/NoteWidgetProvider_2x.class b/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/widget/NoteWidgetProvider_2x.class
deleted file mode 100644
index 043e410..0000000
Binary files a/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/widget/NoteWidgetProvider_2x.class and /dev/null differ
diff --git a/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/widget/NoteWidgetProvider_4x.class b/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/widget/NoteWidgetProvider_4x.class
deleted file mode 100644
index ee3fd40..0000000
Binary files a/src/src/app/build/intermediates/javac/debug/classes/net/micode/notes/widget/NoteWidgetProvider_4x.class and /dev/null differ
diff --git a/src/src/app/build/intermediates/local_only_symbol_list/debug/R-def.txt b/src/src/app/build/intermediates/local_only_symbol_list/debug/R-def.txt
deleted file mode 100644
index 77bc9e4..0000000
--- a/src/src/app/build/intermediates/local_only_symbol_list/debug/R-def.txt
+++ /dev/null
@@ -1,317 +0,0 @@
-R_DEF: Internal format may change without notice
-local
-array format_for_exported_note
-array menu_share_ways
-color primary_text_dark
-color secondary_text_dark
-color user_query_highlight
-dimen text_font_size_large
-dimen text_font_size_medium
-dimen text_font_size_normal
-dimen text_font_size_small
-dimen text_font_size_super
-drawable a1
-drawable a2
-drawable a3
-drawable a4
-drawable bg_btn_set_color
-drawable bg_color_btn_mask
-drawable call_record
-drawable clock
-drawable delete
-drawable dropdown_icon
-drawable edit_blue
-drawable edit_green
-drawable edit_red
-drawable edit_title_blue
-drawable edit_title_green
-drawable edit_title_red
-drawable edit_title_white
-drawable edit_title_yellow
-drawable edit_white
-drawable edit_yellow
-drawable font_large
-drawable font_normal
-drawable font_size_selector_bg
-drawable font_small
-drawable font_super
-drawable g780
-drawable gao
-drawable icon_app
-drawable list_background
-drawable list_blue_down
-drawable list_blue_middle
-drawable list_blue_single
-drawable list_blue_up
-drawable list_folder
-drawable list_footer_bg
-drawable list_green_down
-drawable list_green_middle
-drawable list_green_single
-drawable list_green_up
-drawable list_red_down
-drawable list_red_middle
-drawable list_red_single
-drawable list_red_up
-drawable list_white_down
-drawable list_white_middle
-drawable list_white_single
-drawable list_white_up
-drawable list_yellow_down
-drawable list_yellow_middle
-drawable list_yellow_single
-drawable list_yellow_up
-drawable menu_delete
-drawable menu_move
-drawable new_note
-drawable new_note_normal
-drawable new_note_pressed
-drawable note_edit_color_selector_panel
-drawable notification
-drawable search_result
-drawable selected
-drawable title_alert
-drawable title_bar_bg
-drawable widget_2x_blue
-drawable widget_2x_green
-drawable widget_2x_red
-drawable widget_2x_white
-drawable widget_2x_yellow
-drawable widget_4x_blue
-drawable widget_4x_green
-drawable widget_4x_red
-drawable widget_4x_white
-drawable widget_4x_yellow
-id account_dialog_subtitle
-id account_dialog_title
-id action_bold
-id action_italic
-id action_other
-id action_select_all
-id add_img_btn
-id add_img_menu_move
-id amPm
-id btn_new_note
-id btn_set_bg_color
-id cb_edit_item
-id date
-id delete
-id et_edit_text
-id et_foler_name
-id font_size_selector
-id hour
-id iv_alert_icon
-id iv_bg_blue
-id iv_bg_blue_select
-id iv_bg_green
-id iv_bg_green_select
-id iv_bg_red
-id iv_bg_red_select
-id iv_bg_white
-id iv_bg_white_select
-id iv_bg_yellow
-id iv_bg_yellow_select
-id iv_large_select
-id iv_medium_select
-id iv_small_select
-id iv_super_select
-id ll_font_large
-id ll_font_normal
-id ll_font_small
-id ll_font_super
-id menu_alert
-id menu_bg_g780
-id menu_bg_gao
-id menu_delete
-id menu_delete_key
-id menu_delete_passcode
-id menu_delete_remind
-id menu_export_text
-id menu_font_select
-id menu_font_size
-id menu_list_mode
-id menu_new_folder
-id menu_new_note
-id menu_revoke
-id menu_search
-id menu_send_to_desktop
-id menu_set_key
-id menu_set_passcode
-id menu_setting
-id menu_share
-id menu_sync
-id menu_voice_read
-id minute
-id move
-id navigation_bar
-id no_change
-id note_bg_color_selector
-id note_edit_list
-id note_edit_view
-id note_item
-id note_title
-id notes_list
-id prefenerece_sync_status_textview
-id preference_sync_button
-id selection_menu
-id sv_note_edit
-id text_num
-id tv_alert_date
-id tv_folder_name
-id tv_modified_date
-id tv_name
-id tv_time
-id tv_title
-id tv_title_bar
-id widget_bg_image
-id widget_text
-layout account_dialog_title
-layout add_account_text
-layout datetime_picker
-layout dialog_edit_text
-layout folder_list_item
-layout note_edit
-layout note_edit_list_item
-layout note_item
-layout note_list
-layout note_list_dropdown_menu
-layout note_list_footer
-layout settings_header
-layout widget_2x
-layout widget_4x
-menu call_note_edit
-menu call_record_folder
-menu note_edit
-menu note_list
-menu note_list_dropdown
-menu note_list_options
-menu sub_folder
-plurals search_results_title
-raw introduction
-string alert_message_delete_folder
-string alert_message_delete_note
-string alert_message_delete_notes
-string alert_title_delete
-string app_name
-string app_widget2x2
-string app_widget4x4
-string button_delete
-string call_record_folder_name
-string can_not_revoke
-string datetime_dialog_cancel
-string datetime_dialog_ok
-string delete_remind_time_message
-string error_note_empty_for_clock
-string error_note_empty_for_send_to_desktop
-string error_note_not_exist
-string error_sdcard_export
-string error_sdcard_unmounted
-string error_sync_cancelled
-string error_sync_internal
-string error_sync_network
-string failed_sdcard_export
-string file_name_txt_format
-string file_path
-string folder_exist
-string format_date_ymd
-string format_datetime_mdhm
-string format_exported_file_location
-string format_folder_files_count
-string format_move_notes_to_folder
-string have_not_input_anything
-string hint_foler_name
-string ic_delete_passcode
-string ic_set_passcode
-string info_note_enter_desktop
-string menu_alert
-string menu_bg_g780
-string menu_bg_gao
-string menu_create_folder
-string menu_delete
-string menu_deselect_all
-string menu_export_text
-string menu_folder_change_name
-string menu_folder_delete
-string menu_folder_view
-string menu_font_large
-string menu_font_normal
-string menu_font_select
-string menu_font_size
-string menu_font_small
-string menu_font_super
-string menu_list_mode
-string menu_move
-string menu_move_parent_folder
-string menu_normal_mode
-string menu_remove_remind
-string menu_revoke
-string menu_search
-string menu_select_all
-string menu_select_none
-string menu_select_title
-string menu_send_to_desktop
-string menu_setting
-string menu_share
-string menu_sync
-string menu_sync_cancel
-string menu_title_select_folder
-string menu_voice_read
-string note_alert_expired
-string note_link_email
-string note_link_other
-string note_link_tel
-string note_link_web
-string notealert_enter
-string notealert_ok
-string notelist_menu_new
-string notelist_string_info
-string preferences_account_summary
-string preferences_account_title
-string preferences_add_account
-string preferences_bg_random_appear_title
-string preferences_button_sync_cancel
-string preferences_button_sync_immediately
-string preferences_dialog_change_account_title
-string preferences_dialog_change_account_warn_msg
-string preferences_dialog_select_account_tips
-string preferences_dialog_select_account_title
-string preferences_last_sync_time
-string preferences_last_sync_time_format
-string preferences_menu_cancel
-string preferences_menu_change_account
-string preferences_menu_remove_account
-string preferences_title
-string preferences_toast_cannot_change_account
-string preferences_toast_success_set_accout
-string search
-string search_hint
-string search_label
-string search_setting_description
-string set_remind_time_message
-string success_sdcard_export
-string success_sync_account
-string sync_progress_init_list
-string sync_progress_login
-string sync_progress_syncing
-string ticker_cancel
-string ticker_fail
-string ticker_success
-string ticker_syncing
-string tips_of_revoke
-string widget_havenot_content
-string widget_under_visit_mode
-style HighlightTextAppearancePrimary
-style HighlightTextAppearanceSecondary
-style NoteActionBarStyle
-style NoteTheme
-style TextAppearanceLarge
-style TextAppearanceMedium
-style TextAppearanceNormal
-style TextAppearancePrimaryItem
-style TextAppearanceSecondaryItem
-style TextAppearanceSuper
-style TextAppearanceUnderMenuIcon
-xml preferences
-xml searchable
-xml widget_2x_info
-xml widget_4x_info
diff --git a/src/src/app/build/intermediates/manifest_merge_blame_file/debug/manifest-merger-blame-debug-report.txt b/src/src/app/build/intermediates/manifest_merge_blame_file/debug/manifest-merger-blame-debug-report.txt
deleted file mode 100644
index 024eda8..0000000
--- a/src/src/app/build/intermediates/manifest_merge_blame_file/debug/manifest-merger-blame-debug-report.txt
+++ /dev/null
@@ -1,272 +0,0 @@
-1
-2
-17
-21
-22 D:\note1\app\src\main\AndroidManifest.xml:23:5-44
-23 android:minSdkVersion="1"
-23-->D:\note1\app\src\main\AndroidManifest.xml:23:15-41
-24 android:targetSdkVersion="16" />
-25
-26
-26-->D:\note1\app\src\main\AndroidManifest.xml:25:5-81
-26-->D:\note1\app\src\main\AndroidManifest.xml:25:22-78
-27
-27-->D:\note1\app\src\main\AndroidManifest.xml:26:5-88
-27-->D:\note1\app\src\main\AndroidManifest.xml:26:22-85
-28
-28-->D:\note1\app\src\main\AndroidManifest.xml:27:5-67
-28-->D:\note1\app\src\main\AndroidManifest.xml:27:22-64
-29
-29-->D:\note1\app\src\main\AndroidManifest.xml:28:5-72
-29-->D:\note1\app\src\main\AndroidManifest.xml:28:22-69
-30
-30-->D:\note1\app\src\main\AndroidManifest.xml:29:5-74
-30-->D:\note1\app\src\main\AndroidManifest.xml:29:22-71
-31
-31-->D:\note1\app\src\main\AndroidManifest.xml:30:5-80
-31-->D:\note1\app\src\main\AndroidManifest.xml:30:22-77
-32
-32-->D:\note1\app\src\main\AndroidManifest.xml:31:5-71
-32-->D:\note1\app\src\main\AndroidManifest.xml:31:22-68
-33
-33-->D:\note1\app\src\main\AndroidManifest.xml:32:5-74
-33-->D:\note1\app\src\main\AndroidManifest.xml:32:22-71
-34
-34-->D:\note1\app\src\main\AndroidManifest.xml:33:5-81
-34-->D:\note1\app\src\main\AndroidManifest.xml:33:22-78
-35
-36 D:\note1\app\src\main\AndroidManifest.xml:35:5-149:19
-37 android:debuggable="true"
-38 android:icon="@drawable/icon_app"
-38-->D:\note1\app\src\main\AndroidManifest.xml:36:9-42
-39 android:label="@string/app_name"
-39-->D:\note1\app\src\main\AndroidManifest.xml:37:9-41
-40 android:testOnly="true" >
-41 D:\note1\app\src\main\AndroidManifest.xml:38:9-51:20
-42 android:name="net.micode.notes.ui.NotesListActivity"
-42-->D:\note1\app\src\main\AndroidManifest.xml:39:13-49
-43 android:configChanges="keyboardHidden|orientation|screenSize"
-43-->D:\note1\app\src\main\AndroidManifest.xml:40:13-74
-44 android:label="@string/app_name"
-44-->D:\note1\app\src\main\AndroidManifest.xml:41:13-45
-45 android:launchMode="singleTop"
-45-->D:\note1\app\src\main\AndroidManifest.xml:42:13-43
-46 android:theme="@style/NoteTheme"
-46-->D:\note1\app\src\main\AndroidManifest.xml:43:13-45
-47 android:uiOptions="none"
-47-->D:\note1\app\src\main\AndroidManifest.xml:44:13-37
-48 android:windowSoftInputMode="adjustPan" >
-48-->D:\note1\app\src\main\AndroidManifest.xml:45:13-52
-49
-49-->D:\note1\app\src\main\AndroidManifest.xml:47:13-50:29
-50
-50-->D:\note1\app\src\main\AndroidManifest.xml:48:17-69
-50-->D:\note1\app\src\main\AndroidManifest.xml:48:25-66
-51
-52
-52-->D:\note1\app\src\main\AndroidManifest.xml:49:17-77
-52-->D:\note1\app\src\main\AndroidManifest.xml:49:27-74
-53
-54
-55 D:\note1\app\src\main\AndroidManifest.xml:53:9-81:20
-56 android:name="net.micode.notes.ui.NoteEditActivity"
-56-->D:\note1\app\src\main\AndroidManifest.xml:54:13-48
-57 android:configChanges="keyboardHidden|orientation|screenSize"
-57-->D:\note1\app\src\main\AndroidManifest.xml:55:13-74
-58 android:launchMode="singleTop"
-58-->D:\note1\app\src\main\AndroidManifest.xml:56:13-43
-59 android:theme="@style/NoteTheme" >
-59-->D:\note1\app\src\main\AndroidManifest.xml:57:13-45
-60
-60-->D:\note1\app\src\main\AndroidManifest.xml:59:13-64:29
-61
-61-->D:\note1\app\src\main\AndroidManifest.xml:60:17-69
-61-->D:\note1\app\src\main\AndroidManifest.xml:60:25-66
-62
-63
-63-->D:\note1\app\src\main\AndroidManifest.xml:61:17-76
-63-->D:\note1\app\src\main\AndroidManifest.xml:61:27-73
-64
-65
-65-->D:\note1\app\src\main\AndroidManifest.xml:62:17-78
-65-->D:\note1\app\src\main\AndroidManifest.xml:62:23-75
-66
-66-->D:\note1\app\src\main\AndroidManifest.xml:62:17-78
-66-->D:\note1\app\src\main\AndroidManifest.xml:62:23-75
-67
-68
-68-->D:\note1\app\src\main\AndroidManifest.xml:66:13-71:29
-69
-69-->D:\note1\app\src\main\AndroidManifest.xml:67:17-79
-69-->D:\note1\app\src\main\AndroidManifest.xml:67:25-76
-70
-71
-71-->D:\note1\app\src\main\AndroidManifest.xml:61:17-76
-71-->D:\note1\app\src\main\AndroidManifest.xml:61:27-73
-72
-73
-73-->D:\note1\app\src\main\AndroidManifest.xml:62:17-78
-73-->D:\note1\app\src\main\AndroidManifest.xml:62:23-75
-74
-74-->D:\note1\app\src\main\AndroidManifest.xml:62:17-78
-74-->D:\note1\app\src\main\AndroidManifest.xml:62:23-75
-75
-76
-76-->D:\note1\app\src\main\AndroidManifest.xml:73:13-76:29
-77
-77-->D:\note1\app\src\main\AndroidManifest.xml:74:17-71
-77-->D:\note1\app\src\main\AndroidManifest.xml:74:25-68
-78
-79
-79-->D:\note1\app\src\main\AndroidManifest.xml:61:17-76
-79-->D:\note1\app\src\main\AndroidManifest.xml:61:27-73
-80
-81
-82 D:\note1\app\src\main\AndroidManifest.xml:78:13-80:54
-83 android:name="android.app.searchable"
-83-->D:\note1\app\src\main\AndroidManifest.xml:79:17-54
-84 android:resource="@xml/searchable" />
-84-->D:\note1\app\src\main\AndroidManifest.xml:80:17-51
-85
-86
-87 D:\note1\app\src\main\AndroidManifest.xml:83:9-86:43
-88 android:name="net.micode.notes.data.NotesProvider"
-88-->D:\note1\app\src\main\AndroidManifest.xml:84:13-63
-89 android:authorities="micode_notes"
-89-->D:\note1\app\src\main\AndroidManifest.xml:85:13-47
-90 android:multiprocess="true" />
-90-->D:\note1\app\src\main\AndroidManifest.xml:86:13-40
-91
-92 D:\note1\app\src\main\AndroidManifest.xml:88:9-100:20
-93 android:name="net.micode.notes.widget.NoteWidgetProvider_2x"
-93-->D:\note1\app\src\main\AndroidManifest.xml:89:13-57
-94 android:label="@string/app_widget2x2" >
-94-->D:\note1\app\src\main\AndroidManifest.xml:90:13-50
-95
-95-->D:\note1\app\src\main\AndroidManifest.xml:91:13-95:29
-96
-96-->D:\note1\app\src\main\AndroidManifest.xml:92:17-84
-96-->D:\note1\app\src\main\AndroidManifest.xml:92:25-81
-97
-97-->D:\note1\app\src\main\AndroidManifest.xml:93:17-85
-97-->D:\note1\app\src\main\AndroidManifest.xml:93:25-82
-98
-98-->D:\note1\app\src\main\AndroidManifest.xml:94:17-85
-98-->D:\note1\app\src\main\AndroidManifest.xml:94:25-82
-99
-100
-101 D:\note1\app\src\main\AndroidManifest.xml:97:13-99:58
-102 android:name="android.appwidget.provider"
-102-->D:\note1\app\src\main\AndroidManifest.xml:98:17-58
-103 android:resource="@xml/widget_2x_info" />
-103-->D:\note1\app\src\main\AndroidManifest.xml:99:17-55
-104
-105 D:\note1\app\src\main\AndroidManifest.xml:101:9-114:20
-106 android:name="net.micode.notes.widget.NoteWidgetProvider_4x"
-106-->D:\note1\app\src\main\AndroidManifest.xml:102:13-57
-107 android:label="@string/app_widget4x4" >
-107-->D:\note1\app\src\main\AndroidManifest.xml:103:13-50
-108
-108-->D:\note1\app\src\main\AndroidManifest.xml:91:13-95:29
-109
-109-->D:\note1\app\src\main\AndroidManifest.xml:92:17-84
-109-->D:\note1\app\src\main\AndroidManifest.xml:92:25-81
-110
-110-->D:\note1\app\src\main\AndroidManifest.xml:93:17-85
-110-->D:\note1\app\src\main\AndroidManifest.xml:93:25-82
-111
-111-->D:\note1\app\src\main\AndroidManifest.xml:94:17-85
-111-->D:\note1\app\src\main\AndroidManifest.xml:94:25-82
-112
-113
-114 D:\note1\app\src\main\AndroidManifest.xml:97:13-99:58
-115 android:name="android.appwidget.provider"
-115-->D:\note1\app\src\main\AndroidManifest.xml:98:17-58
-116 android:resource="@xml/widget_4x_info" />
-116-->D:\note1\app\src\main\AndroidManifest.xml:99:17-55
-117
-118
-118-->D:\note1\app\src\main\AndroidManifest.xml:116:9-120:20
-118-->D:\note1\app\src\main\AndroidManifest.xml:116:19-55
-119
-119-->D:\note1\app\src\main\AndroidManifest.xml:117:13-119:29
-120
-120-->D:\note1\app\src\main\AndroidManifest.xml:118:17-79
-120-->D:\note1\app\src\main\AndroidManifest.xml:118:25-76
-121
-122
-123 D:\note1\app\src\main\AndroidManifest.xml:122:9-125:20
-124 android:name="net.micode.notes.ui.AlarmReceiver"
-124-->D:\note1\app\src\main\AndroidManifest.xml:123:13-61
-125 android:process=":remote" >
-125-->D:\note1\app\src\main\AndroidManifest.xml:124:13-38
-126
-127
-128 D:\note1\app\src\main\AndroidManifest.xml:127:9-132:20
-129 android:name="net.micode.notes.ui.AlarmAlertActivity"
-129-->D:\note1\app\src\main\AndroidManifest.xml:128:13-50
-130 android:label="@string/app_name"
-130-->D:\note1\app\src\main\AndroidManifest.xml:129:13-45
-131 android:launchMode="singleInstance"
-131-->D:\note1\app\src\main\AndroidManifest.xml:130:13-48
-132 android:theme="@android:style/Theme.Holo.Wallpaper.NoTitleBar" >
-132-->D:\note1\app\src\main\AndroidManifest.xml:131:13-75
-133
-134 D:\note1\app\src\main\AndroidManifest.xml:134:9-139:20
-135 android:name="net.micode.notes.ui.NotesPreferenceActivity"
-135-->D:\note1\app\src\main\AndroidManifest.xml:135:13-71
-136 android:label="@string/preferences_title"
-136-->D:\note1\app\src\main\AndroidManifest.xml:136:13-54
-137 android:launchMode="singleTop"
-137-->D:\note1\app\src\main\AndroidManifest.xml:137:13-43
-138 android:theme="@android:style/Theme.Holo.Light" >
-138-->D:\note1\app\src\main\AndroidManifest.xml:138:13-60
-139
-140
-141 D:\note1\app\src\main\AndroidManifest.xml:141:9-144:19
-142 android:name="net.micode.notes.gtask.remote.GTaskSyncService"
-142-->D:\note1\app\src\main\AndroidManifest.xml:142:13-74
-143 android:exported="false" >
-143-->D:\note1\app\src\main\AndroidManifest.xml:143:13-37
-144
-145
-146 D:\note1\app\src\main\AndroidManifest.xml:146:9-148:52
-147 android:name="android.app.default_searchable"
-147-->D:\note1\app\src\main\AndroidManifest.xml:147:13-58
-148 android:value=".ui.NoteEditActivity" />
-148-->D:\note1\app\src\main\AndroidManifest.xml:148:13-49
-149
-150
-151
diff --git a/src/src/app/build/intermediates/merged_java_res/debug/base.jar b/src/src/app/build/intermediates/merged_java_res/debug/base.jar
deleted file mode 100644
index 15cb0ec..0000000
Binary files a/src/src/app/build/intermediates/merged_java_res/debug/base.jar and /dev/null differ
diff --git a/src/src/app/build/intermediates/merged_manifest/debug/AndroidManifest.xml b/src/src/app/build/intermediates/merged_manifest/debug/AndroidManifest.xml
deleted file mode 100644
index df53d07..0000000
--- a/src/src/app/build/intermediates/merged_manifest/debug/AndroidManifest.xml
+++ /dev/null
@@ -1,151 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/src/src/app/build/intermediates/merged_manifests/debug/AndroidManifest.xml b/src/src/app/build/intermediates/merged_manifests/debug/AndroidManifest.xml
deleted file mode 100644
index df53d07..0000000
--- a/src/src/app/build/intermediates/merged_manifests/debug/AndroidManifest.xml
+++ /dev/null
@@ -1,151 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/src/src/app/build/intermediates/merged_manifests/debug/output-metadata.json b/src/src/app/build/intermediates/merged_manifests/debug/output-metadata.json
deleted file mode 100644
index a56d03a..0000000
--- a/src/src/app/build/intermediates/merged_manifests/debug/output-metadata.json
+++ /dev/null
@@ -1,20 +0,0 @@
-{
- "version": 3,
- "artifactType": {
- "type": "MERGED_MANIFESTS",
- "kind": "Directory"
- },
- "applicationId": "net.micode.notes",
- "variantName": "debug",
- "elements": [
- {
- "type": "SINGLE",
- "filters": [],
- "attributes": [],
- "versionCode": 1,
- "versionName": "0.1",
- "outputFile": "AndroidManifest.xml"
- }
- ],
- "elementType": "File"
-}
\ No newline at end of file
diff --git a/src/src/app/build/intermediates/merged_res/debug/color_primary_text_dark.xml.flat b/src/src/app/build/intermediates/merged_res/debug/color_primary_text_dark.xml.flat
deleted file mode 100644
index 7d99d7a..0000000
Binary files a/src/src/app/build/intermediates/merged_res/debug/color_primary_text_dark.xml.flat and /dev/null differ
diff --git a/src/src/app/build/intermediates/merged_res/debug/color_secondary_text_dark.xml.flat b/src/src/app/build/intermediates/merged_res/debug/color_secondary_text_dark.xml.flat
deleted file mode 100644
index 8cc05db..0000000
Binary files a/src/src/app/build/intermediates/merged_res/debug/color_secondary_text_dark.xml.flat and /dev/null differ
diff --git a/src/src/app/build/intermediates/merged_res/debug/drawable-hdpi_a1.png.flat b/src/src/app/build/intermediates/merged_res/debug/drawable-hdpi_a1.png.flat
deleted file mode 100644
index d0bb99a..0000000
Binary files a/src/src/app/build/intermediates/merged_res/debug/drawable-hdpi_a1.png.flat and /dev/null differ
diff --git a/src/src/app/build/intermediates/merged_res/debug/drawable-hdpi_a2.png.flat b/src/src/app/build/intermediates/merged_res/debug/drawable-hdpi_a2.png.flat
deleted file mode 100644
index 384dc6e..0000000
Binary files a/src/src/app/build/intermediates/merged_res/debug/drawable-hdpi_a2.png.flat and /dev/null differ
diff --git a/src/src/app/build/intermediates/merged_res/debug/drawable-hdpi_a3.png.flat b/src/src/app/build/intermediates/merged_res/debug/drawable-hdpi_a3.png.flat
deleted file mode 100644
index 763f24c..0000000
Binary files a/src/src/app/build/intermediates/merged_res/debug/drawable-hdpi_a3.png.flat and /dev/null differ
diff --git a/src/src/app/build/intermediates/merged_res/debug/drawable-hdpi_a4.png.flat b/src/src/app/build/intermediates/merged_res/debug/drawable-hdpi_a4.png.flat
deleted file mode 100644
index f77cc07..0000000
Binary files a/src/src/app/build/intermediates/merged_res/debug/drawable-hdpi_a4.png.flat and /dev/null differ
diff --git a/src/src/app/build/intermediates/merged_res/debug/drawable-hdpi_bg_btn_set_color.png.flat b/src/src/app/build/intermediates/merged_res/debug/drawable-hdpi_bg_btn_set_color.png.flat
deleted file mode 100644
index 2eda191..0000000
Binary files a/src/src/app/build/intermediates/merged_res/debug/drawable-hdpi_bg_btn_set_color.png.flat and /dev/null differ
diff --git a/src/src/app/build/intermediates/merged_res/debug/drawable-hdpi_bg_color_btn_mask.png.flat b/src/src/app/build/intermediates/merged_res/debug/drawable-hdpi_bg_color_btn_mask.png.flat
deleted file mode 100644
index 59c2358..0000000
Binary files a/src/src/app/build/intermediates/merged_res/debug/drawable-hdpi_bg_color_btn_mask.png.flat and /dev/null differ
diff --git a/src/src/app/build/intermediates/merged_res/debug/drawable-hdpi_call_record.png.flat b/src/src/app/build/intermediates/merged_res/debug/drawable-hdpi_call_record.png.flat
deleted file mode 100644
index 89fb25d..0000000
Binary files a/src/src/app/build/intermediates/merged_res/debug/drawable-hdpi_call_record.png.flat and /dev/null differ
diff --git a/src/src/app/build/intermediates/merged_res/debug/drawable-hdpi_clock.png.flat b/src/src/app/build/intermediates/merged_res/debug/drawable-hdpi_clock.png.flat
deleted file mode 100644
index 40e03de..0000000
Binary files a/src/src/app/build/intermediates/merged_res/debug/drawable-hdpi_clock.png.flat and /dev/null differ
diff --git a/src/src/app/build/intermediates/merged_res/debug/drawable-hdpi_delete.png.flat b/src/src/app/build/intermediates/merged_res/debug/drawable-hdpi_delete.png.flat
deleted file mode 100644
index 809ce24..0000000
Binary files a/src/src/app/build/intermediates/merged_res/debug/drawable-hdpi_delete.png.flat and /dev/null differ
diff --git a/src/src/app/build/intermediates/merged_res/debug/drawable-hdpi_dropdown_icon.9.png.flat b/src/src/app/build/intermediates/merged_res/debug/drawable-hdpi_dropdown_icon.9.png.flat
deleted file mode 100644
index f80e058..0000000
Binary files a/src/src/app/build/intermediates/merged_res/debug/drawable-hdpi_dropdown_icon.9.png.flat and /dev/null differ
diff --git a/src/src/app/build/intermediates/merged_res/debug/drawable-hdpi_edit_blue.9.png.flat b/src/src/app/build/intermediates/merged_res/debug/drawable-hdpi_edit_blue.9.png.flat
deleted file mode 100644
index be22aa0..0000000
Binary files a/src/src/app/build/intermediates/merged_res/debug/drawable-hdpi_edit_blue.9.png.flat and /dev/null differ
diff --git a/src/src/app/build/intermediates/merged_res/debug/drawable-hdpi_edit_green.9.png.flat b/src/src/app/build/intermediates/merged_res/debug/drawable-hdpi_edit_green.9.png.flat
deleted file mode 100644
index 2a07d4f..0000000
Binary files a/src/src/app/build/intermediates/merged_res/debug/drawable-hdpi_edit_green.9.png.flat and /dev/null differ
diff --git a/src/src/app/build/intermediates/merged_res/debug/drawable-hdpi_edit_red.9.png.flat b/src/src/app/build/intermediates/merged_res/debug/drawable-hdpi_edit_red.9.png.flat
deleted file mode 100644
index b71467d..0000000
Binary files a/src/src/app/build/intermediates/merged_res/debug/drawable-hdpi_edit_red.9.png.flat and /dev/null differ
diff --git a/src/src/app/build/intermediates/merged_res/debug/drawable-hdpi_edit_title_blue.9.png.flat b/src/src/app/build/intermediates/merged_res/debug/drawable-hdpi_edit_title_blue.9.png.flat
deleted file mode 100644
index 9cf62b3..0000000
Binary files a/src/src/app/build/intermediates/merged_res/debug/drawable-hdpi_edit_title_blue.9.png.flat and /dev/null differ
diff --git a/src/src/app/build/intermediates/merged_res/debug/drawable-hdpi_edit_title_green.9.png.flat b/src/src/app/build/intermediates/merged_res/debug/drawable-hdpi_edit_title_green.9.png.flat
deleted file mode 100644
index f77ea7d..0000000
Binary files a/src/src/app/build/intermediates/merged_res/debug/drawable-hdpi_edit_title_green.9.png.flat and /dev/null differ
diff --git a/src/src/app/build/intermediates/merged_res/debug/drawable-hdpi_edit_title_red.9.png.flat b/src/src/app/build/intermediates/merged_res/debug/drawable-hdpi_edit_title_red.9.png.flat
deleted file mode 100644
index 4b9e264..0000000
Binary files a/src/src/app/build/intermediates/merged_res/debug/drawable-hdpi_edit_title_red.9.png.flat and /dev/null differ
diff --git a/src/src/app/build/intermediates/merged_res/debug/drawable-hdpi_edit_title_white.9.png.flat b/src/src/app/build/intermediates/merged_res/debug/drawable-hdpi_edit_title_white.9.png.flat
deleted file mode 100644
index cbb044c..0000000
Binary files a/src/src/app/build/intermediates/merged_res/debug/drawable-hdpi_edit_title_white.9.png.flat and /dev/null differ
diff --git a/src/src/app/build/intermediates/merged_res/debug/drawable-hdpi_edit_title_yellow.9.png.flat b/src/src/app/build/intermediates/merged_res/debug/drawable-hdpi_edit_title_yellow.9.png.flat
deleted file mode 100644
index 14d4feb..0000000
Binary files a/src/src/app/build/intermediates/merged_res/debug/drawable-hdpi_edit_title_yellow.9.png.flat and /dev/null differ
diff --git a/src/src/app/build/intermediates/merged_res/debug/drawable-hdpi_edit_white.9.png.flat b/src/src/app/build/intermediates/merged_res/debug/drawable-hdpi_edit_white.9.png.flat
deleted file mode 100644
index 9226aa6..0000000
Binary files a/src/src/app/build/intermediates/merged_res/debug/drawable-hdpi_edit_white.9.png.flat and /dev/null differ
diff --git a/src/src/app/build/intermediates/merged_res/debug/drawable-hdpi_edit_yellow.9.png.flat b/src/src/app/build/intermediates/merged_res/debug/drawable-hdpi_edit_yellow.9.png.flat
deleted file mode 100644
index d49f07e..0000000
Binary files a/src/src/app/build/intermediates/merged_res/debug/drawable-hdpi_edit_yellow.9.png.flat and /dev/null differ
diff --git a/src/src/app/build/intermediates/merged_res/debug/drawable-hdpi_font_large.png.flat b/src/src/app/build/intermediates/merged_res/debug/drawable-hdpi_font_large.png.flat
deleted file mode 100644
index b33f03f..0000000
Binary files a/src/src/app/build/intermediates/merged_res/debug/drawable-hdpi_font_large.png.flat and /dev/null differ
diff --git a/src/src/app/build/intermediates/merged_res/debug/drawable-hdpi_font_normal.png.flat b/src/src/app/build/intermediates/merged_res/debug/drawable-hdpi_font_normal.png.flat
deleted file mode 100644
index d631a65..0000000
Binary files a/src/src/app/build/intermediates/merged_res/debug/drawable-hdpi_font_normal.png.flat and /dev/null differ
diff --git a/src/src/app/build/intermediates/merged_res/debug/drawable-hdpi_font_size_selector_bg.9.png.flat b/src/src/app/build/intermediates/merged_res/debug/drawable-hdpi_font_size_selector_bg.9.png.flat
deleted file mode 100644
index 0400aeb..0000000
Binary files a/src/src/app/build/intermediates/merged_res/debug/drawable-hdpi_font_size_selector_bg.9.png.flat and /dev/null differ
diff --git a/src/src/app/build/intermediates/merged_res/debug/drawable-hdpi_font_small.png.flat b/src/src/app/build/intermediates/merged_res/debug/drawable-hdpi_font_small.png.flat
deleted file mode 100644
index f6a97f6..0000000
Binary files a/src/src/app/build/intermediates/merged_res/debug/drawable-hdpi_font_small.png.flat and /dev/null differ
diff --git a/src/src/app/build/intermediates/merged_res/debug/drawable-hdpi_font_super.png.flat b/src/src/app/build/intermediates/merged_res/debug/drawable-hdpi_font_super.png.flat
deleted file mode 100644
index 28656cb..0000000
Binary files a/src/src/app/build/intermediates/merged_res/debug/drawable-hdpi_font_super.png.flat and /dev/null differ
diff --git a/src/src/app/build/intermediates/merged_res/debug/drawable-hdpi_g780.jpg.flat b/src/src/app/build/intermediates/merged_res/debug/drawable-hdpi_g780.jpg.flat
deleted file mode 100644
index 22d0912..0000000
Binary files a/src/src/app/build/intermediates/merged_res/debug/drawable-hdpi_g780.jpg.flat and /dev/null differ
diff --git a/src/src/app/build/intermediates/merged_res/debug/drawable-hdpi_gao.png.flat b/src/src/app/build/intermediates/merged_res/debug/drawable-hdpi_gao.png.flat
deleted file mode 100644
index 43e58a6..0000000
Binary files a/src/src/app/build/intermediates/merged_res/debug/drawable-hdpi_gao.png.flat and /dev/null differ
diff --git a/src/src/app/build/intermediates/merged_res/debug/drawable-hdpi_icon_app.png.flat b/src/src/app/build/intermediates/merged_res/debug/drawable-hdpi_icon_app.png.flat
deleted file mode 100644
index ca8a144..0000000
Binary files a/src/src/app/build/intermediates/merged_res/debug/drawable-hdpi_icon_app.png.flat and /dev/null differ
diff --git a/src/src/app/build/intermediates/merged_res/debug/drawable-hdpi_list_background.png.flat b/src/src/app/build/intermediates/merged_res/debug/drawable-hdpi_list_background.png.flat
deleted file mode 100644
index 2a028e8..0000000
Binary files a/src/src/app/build/intermediates/merged_res/debug/drawable-hdpi_list_background.png.flat and /dev/null differ
diff --git a/src/src/app/build/intermediates/merged_res/debug/drawable-hdpi_list_blue_down.9.png.flat b/src/src/app/build/intermediates/merged_res/debug/drawable-hdpi_list_blue_down.9.png.flat
deleted file mode 100644
index ca41f40..0000000
Binary files a/src/src/app/build/intermediates/merged_res/debug/drawable-hdpi_list_blue_down.9.png.flat and /dev/null differ
diff --git a/src/src/app/build/intermediates/merged_res/debug/drawable-hdpi_list_blue_middle.9.png.flat b/src/src/app/build/intermediates/merged_res/debug/drawable-hdpi_list_blue_middle.9.png.flat
deleted file mode 100644
index 7302f30..0000000
Binary files a/src/src/app/build/intermediates/merged_res/debug/drawable-hdpi_list_blue_middle.9.png.flat and /dev/null differ
diff --git a/src/src/app/build/intermediates/merged_res/debug/drawable-hdpi_list_blue_single.9.png.flat b/src/src/app/build/intermediates/merged_res/debug/drawable-hdpi_list_blue_single.9.png.flat
deleted file mode 100644
index 02a4f77..0000000
Binary files a/src/src/app/build/intermediates/merged_res/debug/drawable-hdpi_list_blue_single.9.png.flat and /dev/null differ
diff --git a/src/src/app/build/intermediates/merged_res/debug/drawable-hdpi_list_blue_up.9.png.flat b/src/src/app/build/intermediates/merged_res/debug/drawable-hdpi_list_blue_up.9.png.flat
deleted file mode 100644
index 4382694..0000000
Binary files a/src/src/app/build/intermediates/merged_res/debug/drawable-hdpi_list_blue_up.9.png.flat and /dev/null differ
diff --git a/src/src/app/build/intermediates/merged_res/debug/drawable-hdpi_list_folder.9.png.flat b/src/src/app/build/intermediates/merged_res/debug/drawable-hdpi_list_folder.9.png.flat
deleted file mode 100644
index b4e71dc..0000000
Binary files a/src/src/app/build/intermediates/merged_res/debug/drawable-hdpi_list_folder.9.png.flat and /dev/null differ
diff --git a/src/src/app/build/intermediates/merged_res/debug/drawable-hdpi_list_footer_bg.9.png.flat b/src/src/app/build/intermediates/merged_res/debug/drawable-hdpi_list_footer_bg.9.png.flat
deleted file mode 100644
index b230b8f..0000000
Binary files a/src/src/app/build/intermediates/merged_res/debug/drawable-hdpi_list_footer_bg.9.png.flat and /dev/null differ
diff --git a/src/src/app/build/intermediates/merged_res/debug/drawable-hdpi_list_green_down.9.png.flat b/src/src/app/build/intermediates/merged_res/debug/drawable-hdpi_list_green_down.9.png.flat
deleted file mode 100644
index 633e0e7..0000000
Binary files a/src/src/app/build/intermediates/merged_res/debug/drawable-hdpi_list_green_down.9.png.flat and /dev/null differ
diff --git a/src/src/app/build/intermediates/merged_res/debug/drawable-hdpi_list_green_middle.9.png.flat b/src/src/app/build/intermediates/merged_res/debug/drawable-hdpi_list_green_middle.9.png.flat
deleted file mode 100644
index d432a14..0000000
Binary files a/src/src/app/build/intermediates/merged_res/debug/drawable-hdpi_list_green_middle.9.png.flat and /dev/null differ
diff --git a/src/src/app/build/intermediates/merged_res/debug/drawable-hdpi_list_green_single.9.png.flat b/src/src/app/build/intermediates/merged_res/debug/drawable-hdpi_list_green_single.9.png.flat
deleted file mode 100644
index 5a72f21..0000000
Binary files a/src/src/app/build/intermediates/merged_res/debug/drawable-hdpi_list_green_single.9.png.flat and /dev/null differ
diff --git a/src/src/app/build/intermediates/merged_res/debug/drawable-hdpi_list_green_up.9.png.flat b/src/src/app/build/intermediates/merged_res/debug/drawable-hdpi_list_green_up.9.png.flat
deleted file mode 100644
index 3e628af..0000000
Binary files a/src/src/app/build/intermediates/merged_res/debug/drawable-hdpi_list_green_up.9.png.flat and /dev/null differ
diff --git a/src/src/app/build/intermediates/merged_res/debug/drawable-hdpi_list_red_down.9.png.flat b/src/src/app/build/intermediates/merged_res/debug/drawable-hdpi_list_red_down.9.png.flat
deleted file mode 100644
index a4b4193..0000000
Binary files a/src/src/app/build/intermediates/merged_res/debug/drawable-hdpi_list_red_down.9.png.flat and /dev/null differ
diff --git a/src/src/app/build/intermediates/merged_res/debug/drawable-hdpi_list_red_middle.9.png.flat b/src/src/app/build/intermediates/merged_res/debug/drawable-hdpi_list_red_middle.9.png.flat
deleted file mode 100644
index 7ae0f98..0000000
Binary files a/src/src/app/build/intermediates/merged_res/debug/drawable-hdpi_list_red_middle.9.png.flat and /dev/null differ
diff --git a/src/src/app/build/intermediates/merged_res/debug/drawable-hdpi_list_red_single.9.png.flat b/src/src/app/build/intermediates/merged_res/debug/drawable-hdpi_list_red_single.9.png.flat
deleted file mode 100644
index 6cbb18b..0000000
Binary files a/src/src/app/build/intermediates/merged_res/debug/drawable-hdpi_list_red_single.9.png.flat and /dev/null differ
diff --git a/src/src/app/build/intermediates/merged_res/debug/drawable-hdpi_list_red_up.9.png.flat b/src/src/app/build/intermediates/merged_res/debug/drawable-hdpi_list_red_up.9.png.flat
deleted file mode 100644
index a4a6692..0000000
Binary files a/src/src/app/build/intermediates/merged_res/debug/drawable-hdpi_list_red_up.9.png.flat and /dev/null differ
diff --git a/src/src/app/build/intermediates/merged_res/debug/drawable-hdpi_list_white_down.9.png.flat b/src/src/app/build/intermediates/merged_res/debug/drawable-hdpi_list_white_down.9.png.flat
deleted file mode 100644
index 9623c13..0000000
Binary files a/src/src/app/build/intermediates/merged_res/debug/drawable-hdpi_list_white_down.9.png.flat and /dev/null differ
diff --git a/src/src/app/build/intermediates/merged_res/debug/drawable-hdpi_list_white_middle.9.png.flat b/src/src/app/build/intermediates/merged_res/debug/drawable-hdpi_list_white_middle.9.png.flat
deleted file mode 100644
index 404ea2c..0000000
Binary files a/src/src/app/build/intermediates/merged_res/debug/drawable-hdpi_list_white_middle.9.png.flat and /dev/null differ
diff --git a/src/src/app/build/intermediates/merged_res/debug/drawable-hdpi_list_white_single.9.png.flat b/src/src/app/build/intermediates/merged_res/debug/drawable-hdpi_list_white_single.9.png.flat
deleted file mode 100644
index 4bb304b..0000000
Binary files a/src/src/app/build/intermediates/merged_res/debug/drawable-hdpi_list_white_single.9.png.flat and /dev/null differ
diff --git a/src/src/app/build/intermediates/merged_res/debug/drawable-hdpi_list_white_up.9.png.flat b/src/src/app/build/intermediates/merged_res/debug/drawable-hdpi_list_white_up.9.png.flat
deleted file mode 100644
index 449a2d8..0000000
Binary files a/src/src/app/build/intermediates/merged_res/debug/drawable-hdpi_list_white_up.9.png.flat and /dev/null differ
diff --git a/src/src/app/build/intermediates/merged_res/debug/drawable-hdpi_list_yellow_down.9.png.flat b/src/src/app/build/intermediates/merged_res/debug/drawable-hdpi_list_yellow_down.9.png.flat
deleted file mode 100644
index 74c5445..0000000
Binary files a/src/src/app/build/intermediates/merged_res/debug/drawable-hdpi_list_yellow_down.9.png.flat and /dev/null differ
diff --git a/src/src/app/build/intermediates/merged_res/debug/drawable-hdpi_list_yellow_middle.9.png.flat b/src/src/app/build/intermediates/merged_res/debug/drawable-hdpi_list_yellow_middle.9.png.flat
deleted file mode 100644
index 99bbe37..0000000
Binary files a/src/src/app/build/intermediates/merged_res/debug/drawable-hdpi_list_yellow_middle.9.png.flat and /dev/null differ
diff --git a/src/src/app/build/intermediates/merged_res/debug/drawable-hdpi_list_yellow_single.9.png.flat b/src/src/app/build/intermediates/merged_res/debug/drawable-hdpi_list_yellow_single.9.png.flat
deleted file mode 100644
index cfab562..0000000
Binary files a/src/src/app/build/intermediates/merged_res/debug/drawable-hdpi_list_yellow_single.9.png.flat and /dev/null differ
diff --git a/src/src/app/build/intermediates/merged_res/debug/drawable-hdpi_list_yellow_up.9.png.flat b/src/src/app/build/intermediates/merged_res/debug/drawable-hdpi_list_yellow_up.9.png.flat
deleted file mode 100644
index afdf9b0..0000000
Binary files a/src/src/app/build/intermediates/merged_res/debug/drawable-hdpi_list_yellow_up.9.png.flat and /dev/null differ
diff --git a/src/src/app/build/intermediates/merged_res/debug/drawable-hdpi_menu_delete.png.flat b/src/src/app/build/intermediates/merged_res/debug/drawable-hdpi_menu_delete.png.flat
deleted file mode 100644
index a53a14d..0000000
Binary files a/src/src/app/build/intermediates/merged_res/debug/drawable-hdpi_menu_delete.png.flat and /dev/null differ
diff --git a/src/src/app/build/intermediates/merged_res/debug/drawable-hdpi_menu_move.png.flat b/src/src/app/build/intermediates/merged_res/debug/drawable-hdpi_menu_move.png.flat
deleted file mode 100644
index d0312eb..0000000
Binary files a/src/src/app/build/intermediates/merged_res/debug/drawable-hdpi_menu_move.png.flat and /dev/null differ
diff --git a/src/src/app/build/intermediates/merged_res/debug/drawable-hdpi_new_note_normal.png.flat b/src/src/app/build/intermediates/merged_res/debug/drawable-hdpi_new_note_normal.png.flat
deleted file mode 100644
index 01ef2da..0000000
Binary files a/src/src/app/build/intermediates/merged_res/debug/drawable-hdpi_new_note_normal.png.flat and /dev/null differ
diff --git a/src/src/app/build/intermediates/merged_res/debug/drawable-hdpi_new_note_pressed.png.flat b/src/src/app/build/intermediates/merged_res/debug/drawable-hdpi_new_note_pressed.png.flat
deleted file mode 100644
index ca5c107..0000000
Binary files a/src/src/app/build/intermediates/merged_res/debug/drawable-hdpi_new_note_pressed.png.flat and /dev/null differ
diff --git a/src/src/app/build/intermediates/merged_res/debug/drawable-hdpi_note_edit_color_selector_panel.png.flat b/src/src/app/build/intermediates/merged_res/debug/drawable-hdpi_note_edit_color_selector_panel.png.flat
deleted file mode 100644
index 23eb0dc..0000000
Binary files a/src/src/app/build/intermediates/merged_res/debug/drawable-hdpi_note_edit_color_selector_panel.png.flat and /dev/null differ
diff --git a/src/src/app/build/intermediates/merged_res/debug/drawable-hdpi_search_result.png.flat b/src/src/app/build/intermediates/merged_res/debug/drawable-hdpi_search_result.png.flat
deleted file mode 100644
index 3b4516a..0000000
Binary files a/src/src/app/build/intermediates/merged_res/debug/drawable-hdpi_search_result.png.flat and /dev/null differ
diff --git a/src/src/app/build/intermediates/merged_res/debug/drawable-hdpi_selected.png.flat b/src/src/app/build/intermediates/merged_res/debug/drawable-hdpi_selected.png.flat
deleted file mode 100644
index 465926e..0000000
Binary files a/src/src/app/build/intermediates/merged_res/debug/drawable-hdpi_selected.png.flat and /dev/null differ
diff --git a/src/src/app/build/intermediates/merged_res/debug/drawable-hdpi_title_alert.png.flat b/src/src/app/build/intermediates/merged_res/debug/drawable-hdpi_title_alert.png.flat
deleted file mode 100644
index ed8e6a9..0000000
Binary files a/src/src/app/build/intermediates/merged_res/debug/drawable-hdpi_title_alert.png.flat and /dev/null differ
diff --git a/src/src/app/build/intermediates/merged_res/debug/drawable-hdpi_title_bar_bg.9.png.flat b/src/src/app/build/intermediates/merged_res/debug/drawable-hdpi_title_bar_bg.9.png.flat
deleted file mode 100644
index fb37689..0000000
Binary files a/src/src/app/build/intermediates/merged_res/debug/drawable-hdpi_title_bar_bg.9.png.flat and /dev/null differ
diff --git a/src/src/app/build/intermediates/merged_res/debug/drawable-hdpi_widget_2x_blue.png.flat b/src/src/app/build/intermediates/merged_res/debug/drawable-hdpi_widget_2x_blue.png.flat
deleted file mode 100644
index adfba04..0000000
Binary files a/src/src/app/build/intermediates/merged_res/debug/drawable-hdpi_widget_2x_blue.png.flat and /dev/null differ
diff --git a/src/src/app/build/intermediates/merged_res/debug/drawable-hdpi_widget_2x_green.png.flat b/src/src/app/build/intermediates/merged_res/debug/drawable-hdpi_widget_2x_green.png.flat
deleted file mode 100644
index 8b13b97..0000000
Binary files a/src/src/app/build/intermediates/merged_res/debug/drawable-hdpi_widget_2x_green.png.flat and /dev/null differ
diff --git a/src/src/app/build/intermediates/merged_res/debug/drawable-hdpi_widget_2x_red.png.flat b/src/src/app/build/intermediates/merged_res/debug/drawable-hdpi_widget_2x_red.png.flat
deleted file mode 100644
index 896fb83..0000000
Binary files a/src/src/app/build/intermediates/merged_res/debug/drawable-hdpi_widget_2x_red.png.flat and /dev/null differ
diff --git a/src/src/app/build/intermediates/merged_res/debug/drawable-hdpi_widget_2x_white.png.flat b/src/src/app/build/intermediates/merged_res/debug/drawable-hdpi_widget_2x_white.png.flat
deleted file mode 100644
index 2c0cce3..0000000
Binary files a/src/src/app/build/intermediates/merged_res/debug/drawable-hdpi_widget_2x_white.png.flat and /dev/null differ
diff --git a/src/src/app/build/intermediates/merged_res/debug/drawable-hdpi_widget_2x_yellow.png.flat b/src/src/app/build/intermediates/merged_res/debug/drawable-hdpi_widget_2x_yellow.png.flat
deleted file mode 100644
index 973eb75..0000000
Binary files a/src/src/app/build/intermediates/merged_res/debug/drawable-hdpi_widget_2x_yellow.png.flat and /dev/null differ
diff --git a/src/src/app/build/intermediates/merged_res/debug/drawable-hdpi_widget_4x_blue.png.flat b/src/src/app/build/intermediates/merged_res/debug/drawable-hdpi_widget_4x_blue.png.flat
deleted file mode 100644
index c521cf6..0000000
Binary files a/src/src/app/build/intermediates/merged_res/debug/drawable-hdpi_widget_4x_blue.png.flat and /dev/null differ
diff --git a/src/src/app/build/intermediates/merged_res/debug/drawable-hdpi_widget_4x_green.png.flat b/src/src/app/build/intermediates/merged_res/debug/drawable-hdpi_widget_4x_green.png.flat
deleted file mode 100644
index dd55472..0000000
Binary files a/src/src/app/build/intermediates/merged_res/debug/drawable-hdpi_widget_4x_green.png.flat and /dev/null differ
diff --git a/src/src/app/build/intermediates/merged_res/debug/drawable-hdpi_widget_4x_red.png.flat b/src/src/app/build/intermediates/merged_res/debug/drawable-hdpi_widget_4x_red.png.flat
deleted file mode 100644
index 2912b97..0000000
Binary files a/src/src/app/build/intermediates/merged_res/debug/drawable-hdpi_widget_4x_red.png.flat and /dev/null differ
diff --git a/src/src/app/build/intermediates/merged_res/debug/drawable-hdpi_widget_4x_white.png.flat b/src/src/app/build/intermediates/merged_res/debug/drawable-hdpi_widget_4x_white.png.flat
deleted file mode 100644
index 90b6f06..0000000
Binary files a/src/src/app/build/intermediates/merged_res/debug/drawable-hdpi_widget_4x_white.png.flat and /dev/null differ
diff --git a/src/src/app/build/intermediates/merged_res/debug/drawable-hdpi_widget_4x_yellow.png.flat b/src/src/app/build/intermediates/merged_res/debug/drawable-hdpi_widget_4x_yellow.png.flat
deleted file mode 100644
index 6556925..0000000
Binary files a/src/src/app/build/intermediates/merged_res/debug/drawable-hdpi_widget_4x_yellow.png.flat and /dev/null differ
diff --git a/src/src/app/build/intermediates/merged_res/debug/drawable_new_note.xml.flat b/src/src/app/build/intermediates/merged_res/debug/drawable_new_note.xml.flat
deleted file mode 100644
index fb12dfd..0000000
Binary files a/src/src/app/build/intermediates/merged_res/debug/drawable_new_note.xml.flat and /dev/null differ
diff --git a/src/src/app/build/intermediates/merged_res/debug/layout_account_dialog_title.xml.flat b/src/src/app/build/intermediates/merged_res/debug/layout_account_dialog_title.xml.flat
deleted file mode 100644
index 1bbe3ab..0000000
Binary files a/src/src/app/build/intermediates/merged_res/debug/layout_account_dialog_title.xml.flat and /dev/null differ
diff --git a/src/src/app/build/intermediates/merged_res/debug/layout_add_account_text.xml.flat b/src/src/app/build/intermediates/merged_res/debug/layout_add_account_text.xml.flat
deleted file mode 100644
index 305e7a6..0000000
Binary files a/src/src/app/build/intermediates/merged_res/debug/layout_add_account_text.xml.flat and /dev/null differ
diff --git a/src/src/app/build/intermediates/merged_res/debug/layout_datetime_picker.xml.flat b/src/src/app/build/intermediates/merged_res/debug/layout_datetime_picker.xml.flat
deleted file mode 100644
index 61742b5..0000000
Binary files a/src/src/app/build/intermediates/merged_res/debug/layout_datetime_picker.xml.flat and /dev/null differ
diff --git a/src/src/app/build/intermediates/merged_res/debug/layout_dialog_edit_text.xml.flat b/src/src/app/build/intermediates/merged_res/debug/layout_dialog_edit_text.xml.flat
deleted file mode 100644
index 78701a1..0000000
Binary files a/src/src/app/build/intermediates/merged_res/debug/layout_dialog_edit_text.xml.flat and /dev/null differ
diff --git a/src/src/app/build/intermediates/merged_res/debug/layout_folder_list_item.xml.flat b/src/src/app/build/intermediates/merged_res/debug/layout_folder_list_item.xml.flat
deleted file mode 100644
index 7b3fb68..0000000
Binary files a/src/src/app/build/intermediates/merged_res/debug/layout_folder_list_item.xml.flat and /dev/null differ
diff --git a/src/src/app/build/intermediates/merged_res/debug/layout_note_edit.xml.flat b/src/src/app/build/intermediates/merged_res/debug/layout_note_edit.xml.flat
deleted file mode 100644
index edb7b71..0000000
Binary files a/src/src/app/build/intermediates/merged_res/debug/layout_note_edit.xml.flat and /dev/null differ
diff --git a/src/src/app/build/intermediates/merged_res/debug/layout_note_edit_list_item.xml.flat b/src/src/app/build/intermediates/merged_res/debug/layout_note_edit_list_item.xml.flat
deleted file mode 100644
index 006b151..0000000
Binary files a/src/src/app/build/intermediates/merged_res/debug/layout_note_edit_list_item.xml.flat and /dev/null differ
diff --git a/src/src/app/build/intermediates/merged_res/debug/layout_note_item.xml.flat b/src/src/app/build/intermediates/merged_res/debug/layout_note_item.xml.flat
deleted file mode 100644
index 1c3342f..0000000
Binary files a/src/src/app/build/intermediates/merged_res/debug/layout_note_item.xml.flat and /dev/null differ
diff --git a/src/src/app/build/intermediates/merged_res/debug/layout_note_list.xml.flat b/src/src/app/build/intermediates/merged_res/debug/layout_note_list.xml.flat
deleted file mode 100644
index 24a703b..0000000
Binary files a/src/src/app/build/intermediates/merged_res/debug/layout_note_list.xml.flat and /dev/null differ
diff --git a/src/src/app/build/intermediates/merged_res/debug/layout_note_list_dropdown_menu.xml.flat b/src/src/app/build/intermediates/merged_res/debug/layout_note_list_dropdown_menu.xml.flat
deleted file mode 100644
index 749f04b..0000000
Binary files a/src/src/app/build/intermediates/merged_res/debug/layout_note_list_dropdown_menu.xml.flat and /dev/null differ
diff --git a/src/src/app/build/intermediates/merged_res/debug/layout_note_list_footer.xml.flat b/src/src/app/build/intermediates/merged_res/debug/layout_note_list_footer.xml.flat
deleted file mode 100644
index 98f56f4..0000000
Binary files a/src/src/app/build/intermediates/merged_res/debug/layout_note_list_footer.xml.flat and /dev/null differ
diff --git a/src/src/app/build/intermediates/merged_res/debug/layout_settings_header.xml.flat b/src/src/app/build/intermediates/merged_res/debug/layout_settings_header.xml.flat
deleted file mode 100644
index 9caf2e6..0000000
Binary files a/src/src/app/build/intermediates/merged_res/debug/layout_settings_header.xml.flat and /dev/null differ
diff --git a/src/src/app/build/intermediates/merged_res/debug/layout_widget_2x.xml.flat b/src/src/app/build/intermediates/merged_res/debug/layout_widget_2x.xml.flat
deleted file mode 100644
index a74989a..0000000
Binary files a/src/src/app/build/intermediates/merged_res/debug/layout_widget_2x.xml.flat and /dev/null differ
diff --git a/src/src/app/build/intermediates/merged_res/debug/layout_widget_4x.xml.flat b/src/src/app/build/intermediates/merged_res/debug/layout_widget_4x.xml.flat
deleted file mode 100644
index 94470b7..0000000
Binary files a/src/src/app/build/intermediates/merged_res/debug/layout_widget_4x.xml.flat and /dev/null differ
diff --git a/src/src/app/build/intermediates/merged_res/debug/menu_call_note_edit.xml.flat b/src/src/app/build/intermediates/merged_res/debug/menu_call_note_edit.xml.flat
deleted file mode 100644
index 7b10945..0000000
Binary files a/src/src/app/build/intermediates/merged_res/debug/menu_call_note_edit.xml.flat and /dev/null differ
diff --git a/src/src/app/build/intermediates/merged_res/debug/menu_call_record_folder.xml.flat b/src/src/app/build/intermediates/merged_res/debug/menu_call_record_folder.xml.flat
deleted file mode 100644
index 5cbb9e9..0000000
Binary files a/src/src/app/build/intermediates/merged_res/debug/menu_call_record_folder.xml.flat and /dev/null differ
diff --git a/src/src/app/build/intermediates/merged_res/debug/menu_note_edit.xml.flat b/src/src/app/build/intermediates/merged_res/debug/menu_note_edit.xml.flat
deleted file mode 100644
index 658ffa2..0000000
Binary files a/src/src/app/build/intermediates/merged_res/debug/menu_note_edit.xml.flat and /dev/null differ
diff --git a/src/src/app/build/intermediates/merged_res/debug/menu_note_list.xml.flat b/src/src/app/build/intermediates/merged_res/debug/menu_note_list.xml.flat
deleted file mode 100644
index 027fc55..0000000
Binary files a/src/src/app/build/intermediates/merged_res/debug/menu_note_list.xml.flat and /dev/null differ
diff --git a/src/src/app/build/intermediates/merged_res/debug/menu_note_list_dropdown.xml.flat b/src/src/app/build/intermediates/merged_res/debug/menu_note_list_dropdown.xml.flat
deleted file mode 100644
index 7d74a65..0000000
Binary files a/src/src/app/build/intermediates/merged_res/debug/menu_note_list_dropdown.xml.flat and /dev/null differ
diff --git a/src/src/app/build/intermediates/merged_res/debug/menu_note_list_options.xml.flat b/src/src/app/build/intermediates/merged_res/debug/menu_note_list_options.xml.flat
deleted file mode 100644
index 9210c15..0000000
Binary files a/src/src/app/build/intermediates/merged_res/debug/menu_note_list_options.xml.flat and /dev/null differ
diff --git a/src/src/app/build/intermediates/merged_res/debug/menu_sub_folder.xml.flat b/src/src/app/build/intermediates/merged_res/debug/menu_sub_folder.xml.flat
deleted file mode 100644
index ad66757..0000000
Binary files a/src/src/app/build/intermediates/merged_res/debug/menu_sub_folder.xml.flat and /dev/null differ
diff --git a/src/src/app/build/intermediates/merged_res/debug/raw-zh-rCN_introduction.flat b/src/src/app/build/intermediates/merged_res/debug/raw-zh-rCN_introduction.flat
deleted file mode 100644
index 68b46ae..0000000
Binary files a/src/src/app/build/intermediates/merged_res/debug/raw-zh-rCN_introduction.flat and /dev/null differ
diff --git a/src/src/app/build/intermediates/merged_res/debug/raw_introduction.flat b/src/src/app/build/intermediates/merged_res/debug/raw_introduction.flat
deleted file mode 100644
index 02a9e4e..0000000
Binary files a/src/src/app/build/intermediates/merged_res/debug/raw_introduction.flat and /dev/null differ
diff --git a/src/src/app/build/intermediates/merged_res/debug/values-zh-rCN_values-zh-rCN.arsc.flat b/src/src/app/build/intermediates/merged_res/debug/values-zh-rCN_values-zh-rCN.arsc.flat
deleted file mode 100644
index 1e3507a..0000000
Binary files a/src/src/app/build/intermediates/merged_res/debug/values-zh-rCN_values-zh-rCN.arsc.flat and /dev/null differ
diff --git a/src/src/app/build/intermediates/merged_res/debug/values-zh-rTW_values-zh-rTW.arsc.flat b/src/src/app/build/intermediates/merged_res/debug/values-zh-rTW_values-zh-rTW.arsc.flat
deleted file mode 100644
index 69cb5b1..0000000
Binary files a/src/src/app/build/intermediates/merged_res/debug/values-zh-rTW_values-zh-rTW.arsc.flat and /dev/null differ
diff --git a/src/src/app/build/intermediates/merged_res/debug/values_values.arsc.flat b/src/src/app/build/intermediates/merged_res/debug/values_values.arsc.flat
deleted file mode 100644
index 7067417..0000000
Binary files a/src/src/app/build/intermediates/merged_res/debug/values_values.arsc.flat and /dev/null differ
diff --git a/src/src/app/build/intermediates/merged_res/debug/xml_preferences.xml.flat b/src/src/app/build/intermediates/merged_res/debug/xml_preferences.xml.flat
deleted file mode 100644
index 752f47f..0000000
Binary files a/src/src/app/build/intermediates/merged_res/debug/xml_preferences.xml.flat and /dev/null differ
diff --git a/src/src/app/build/intermediates/merged_res/debug/xml_searchable.xml.flat b/src/src/app/build/intermediates/merged_res/debug/xml_searchable.xml.flat
deleted file mode 100644
index 625e86f..0000000
Binary files a/src/src/app/build/intermediates/merged_res/debug/xml_searchable.xml.flat and /dev/null differ
diff --git a/src/src/app/build/intermediates/merged_res/debug/xml_widget_2x_info.xml.flat b/src/src/app/build/intermediates/merged_res/debug/xml_widget_2x_info.xml.flat
deleted file mode 100644
index ad294be..0000000
Binary files a/src/src/app/build/intermediates/merged_res/debug/xml_widget_2x_info.xml.flat and /dev/null differ
diff --git a/src/src/app/build/intermediates/merged_res/debug/xml_widget_4x_info.xml.flat b/src/src/app/build/intermediates/merged_res/debug/xml_widget_4x_info.xml.flat
deleted file mode 100644
index 4d8a2a5..0000000
Binary files a/src/src/app/build/intermediates/merged_res/debug/xml_widget_4x_info.xml.flat and /dev/null differ
diff --git a/src/src/app/build/intermediates/merged_res_blame_folder/debug/out/multi-v2/debug.json b/src/src/app/build/intermediates/merged_res_blame_folder/debug/out/multi-v2/debug.json
deleted file mode 100644
index da21ac4..0000000
--- a/src/src/app/build/intermediates/merged_res_blame_folder/debug/out/multi-v2/debug.json
+++ /dev/null
@@ -1,343 +0,0 @@
-{
- "logs": [
- {
- "outputFile": "net.micode.notes.app-merged_res-4:/values-zh-rCN_values-zh-rCN.arsc.flat",
- "map": [
- {
- "source": "D:\\note1\\app\\src\\main\\res\\values-zh-rCN\\strings.xml",
- "from": {
- "startLines": "-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,24,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,25,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,22,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,23,-1,-1",
- "startColumns": "-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,4,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,4,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,4,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,4,-1,-1",
- "startOffsets": "-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,1054,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,1104,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,965,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,1008,-1,-1",
- "endColumns": "-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,49,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,62,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,42,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,45,-1,-1",
- "endOffsets": "-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,1099,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,1162,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,1003,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,1049,-1,-1"
- },
- "to": {
- "startLines": "6,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114",
- "startColumns": "4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4",
- "startOffsets": "215,384,457,523,596,646,686,734,782,827,884,934,988,1038,1100,1168,1245,1304,1369,1432,1487,1547,1610,1664,1724,1777,1839,1924,2005,2068,2118,2181,2238,2297,2340,2393,2436,2487,2537,2597,2650,2701,2747,2795,2845,2893,2939,2986,3036,3081,3140,3192,3244,3287,3330,3377,3433,3488,3543,3587,3629,3670,3720,3779,3827,3878,3927,3976,4023,4070,4117,4162,4213,4266,4341,4400,4457,4531,4595,4664,4742,4852,4956,5029,5095,5150,5215,5280,5329,5412,5490,5528,5573,5621,5683,5740,5795,5854,5921,5979,6041,6089,6134,6182,6233,6279,6345",
- "endLines": "8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114",
- "endColumns": "14,72,65,72,49,39,47,47,44,56,49,53,49,61,67,76,58,64,62,54,59,62,53,59,52,61,84,80,62,49,62,56,58,42,52,42,50,49,59,52,50,45,47,49,47,45,46,49,44,58,51,51,42,42,46,55,54,54,43,41,40,49,58,47,50,48,48,46,46,46,44,50,52,74,58,56,73,63,68,77,109,103,72,65,54,64,64,48,82,77,37,44,47,61,56,54,58,66,57,61,47,44,47,50,45,65,65",
- "endOffsets": "379,452,518,591,641,681,729,777,822,879,929,983,1033,1095,1163,1240,1299,1364,1427,1482,1542,1605,1659,1719,1772,1834,1919,2000,2063,2113,2176,2233,2292,2335,2388,2431,2482,2532,2592,2645,2696,2742,2790,2840,2888,2934,2981,3031,3076,3135,3187,3239,3282,3325,3372,3428,3483,3538,3582,3624,3665,3715,3774,3822,3873,3922,3971,4018,4065,4112,4157,4208,4261,4336,4395,4452,4526,4590,4659,4737,4847,4951,5024,5090,5145,5210,5275,5324,5407,5485,5523,5568,5616,5678,5735,5790,5849,5916,5974,6036,6084,6129,6177,6228,6274,6340,6406"
- }
- },
- {
- "source": "D:\\note1\\app\\src\\main\\res\\values-zh-rCN\\arrays.xml",
- "from": {
- "startLines": "-1",
- "startColumns": "-1",
- "startOffsets": "-1"
- },
- "to": {
- "startLines": "2",
- "startColumns": "4",
- "startOffsets": "105",
- "endLines": "5",
- "endColumns": "19",
- "endOffsets": "210"
- }
- }
- ]
- },
- {
- "outputFile": "C:\\Users\\86139\\.gradle\\daemon\\8.1\\net.micode.notes.app-merged_res-4:\\values-zh-rCN_values-zh-rCN.arsc.flat",
- "map": [
- {
- "source": "D:\\note1\\app\\src\\main\\res\\values-zh-rCN\\strings.xml",
- "from": {
- "startLines": "123,73,72,71,70,19,20,21,114,115,122,121,26,79,80,78,77,76,92,91,90,82,62,29,30,83,74,116,57,56,69,65,38,44,49,39,61,60,59,53,52,50,51,54,55,45,68,58,66,43,48,47,46,64,42,63,40,41,67,28,34,36,33,35,32,31,25,24,99,98,101,113,106,105,107,108,110,109,100,104,102,103,97,111,112,120,118,117,119,27,81,89,94,93,95,88,87,86,85,22,23",
- "startColumns": "4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4",
- "startOffsets": "6652,3615,3549,3476,3426,827,867,915,6203,6248,6598,6548,1199,3981,4049,3922,3857,3794,4712,4652,4589,4181,2997,1369,1422,4235,3688,6305,2718,2661,3367,3154,1798,2079,2325,1851,2937,2884,2833,2518,2470,2376,2424,2564,2611,2122,3308,2781,3197,2036,2278,2222,2167,3099,1992,3057,1901,1942,3249,1318,1623,1719,1576,1672,1529,1484,1148,1095,5087,5028,5228,6129,5539,5470,5603,5681,5864,5791,5162,5415,5285,5350,4979,5968,6051,6510,6403,6355,6448,1261,4126,4530,4825,4767,4892,4482,4437,4389,4338,963,1029",
- "endLines": "125,73,72,71,70,19,20,21,114,115,122,121,26,79,80,78,77,76,92,91,90,82,62,29,30,83,74,116,57,56,69,65,38,44,49,39,61,60,59,53,52,50,51,54,55,45,68,58,66,43,48,47,46,64,42,63,40,41,67,28,34,36,33,35,32,31,25,24,99,98,101,113,106,105,107,108,110,109,100,104,102,103,97,111,112,120,118,117,119,27,81,89,94,93,95,88,87,86,85,22,23",
- "endColumns": "14,72,65,72,49,39,47,47,44,56,53,49,61,67,76,58,64,62,54,59,62,53,59,52,61,84,80,49,62,56,58,42,52,42,50,49,59,52,50,45,47,47,45,46,49,44,58,51,51,42,46,55,54,54,43,41,40,49,58,50,48,48,46,46,46,44,50,52,74,58,56,73,63,68,77,109,103,72,65,54,64,64,48,82,77,37,44,47,61,56,54,58,66,57,61,47,44,47,50,65,65",
- "endOffsets": "6824,3683,3610,3544,3471,862,910,958,6243,6300,6647,6593,1256,4044,4121,3976,3917,3852,4762,4707,4647,4230,3052,1417,1479,4315,3764,6350,2776,2713,3421,3192,1846,2117,2371,1896,2992,2932,2879,2559,2513,2419,2465,2606,2656,2162,3362,2828,3244,2074,2320,2273,2217,3149,2031,3094,1937,1987,3303,1364,1667,1763,1618,1714,1571,1524,1194,1143,5157,5082,5280,6198,5598,5534,5676,5786,5963,5859,5223,5465,5345,5410,5023,6046,6124,6543,6443,6398,6505,1313,4176,4584,4887,4820,4949,4525,4477,4432,4384,1024,1090"
- },
- "to": {
- "startLines": "6,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108",
- "startColumns": "4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4",
- "startOffsets": "215,384,457,523,596,646,686,734,782,827,884,938,988,1050,1118,1195,1254,1319,1382,1437,1497,1560,1614,1674,1727,1789,1874,1955,2005,2068,2125,2184,2227,2280,2323,2374,2424,2484,2537,2588,2634,2682,2730,2776,2823,2873,2918,2977,3029,3081,3124,3171,3227,3282,3337,3381,3423,3464,3514,3573,3624,3673,3722,3769,3816,3863,3908,3959,4012,4087,4146,4203,4277,4341,4410,4488,4598,4702,4775,4841,4896,4961,5026,5075,5158,5236,5274,5319,5367,5429,5486,5541,5600,5667,5725,5787,5835,5880,5928,5979,6045",
- "endLines": "8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108",
- "endColumns": "14,72,65,72,49,39,47,47,44,56,53,49,61,67,76,58,64,62,54,59,62,53,59,52,61,84,80,49,62,56,58,42,52,42,50,49,59,52,50,45,47,47,45,46,49,44,58,51,51,42,46,55,54,54,43,41,40,49,58,50,48,48,46,46,46,44,50,52,74,58,56,73,63,68,77,109,103,72,65,54,64,64,48,82,77,37,44,47,61,56,54,58,66,57,61,47,44,47,50,65,65",
- "endOffsets": "379,452,518,591,641,681,729,777,822,879,933,983,1045,1113,1190,1249,1314,1377,1432,1492,1555,1609,1669,1722,1784,1869,1950,2000,2063,2120,2179,2222,2275,2318,2369,2419,2479,2532,2583,2629,2677,2725,2771,2818,2868,2913,2972,3024,3076,3119,3166,3222,3277,3332,3376,3418,3459,3509,3568,3619,3668,3717,3764,3811,3858,3903,3954,4007,4082,4141,4198,4272,4336,4405,4483,4593,4697,4770,4836,4891,4956,5021,5070,5153,5231,5269,5314,5362,5424,5481,5536,5595,5662,5720,5782,5830,5875,5923,5974,6040,6106"
- }
- },
- {
- "source": "D:\\note1\\app\\src\\main\\res\\values-zh-rCN\\arrays.xml",
- "from": {
- "startLines": "18",
- "startColumns": "4",
- "startOffsets": "712",
- "endLines": "21",
- "endColumns": "19",
- "endOffsets": "817"
- },
- "to": {
- "startLines": "2",
- "startColumns": "4",
- "startOffsets": "105",
- "endLines": "5",
- "endColumns": "19",
- "endOffsets": "210"
- }
- }
- ]
- },
- {
- "outputFile": "net.micode.notes.app-merged_res-4:/values_values.arsc.flat",
- "map": [
- {
- "source": "D:\\note1\\app\\src\\main\\res\\values\\arrays.xml",
- "from": {
- "startLines": "-1,-1",
- "startColumns": "-1,-1",
- "startOffsets": "-1,-1"
- },
- "to": {
- "startLines": "2,8",
- "startColumns": "4,4",
- "startOffsets": "105,300",
- "endLines": "7,11",
- "endColumns": "19,19",
- "endOffsets": "295,415"
- }
- },
- {
- "source": "D:\\note1\\app\\src\\main\\res\\values\\strings.xml",
- "from": {
- "startLines": "138,-1,-1,-1,-1,-1,-1,-1,-1,-1,136,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,137,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,134,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,135,-1,-1",
- "startColumns": "4,-1,-1,-1,-1,-1,-1,-1,-1,-1,4,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,4,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,4,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,4,-1,-1",
- "startOffsets": "8567,-1,-1,-1,-1,-1,-1,-1,-1,-1,8425,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,8487,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,8330,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,8377,-1,-1",
- "endLines": "142,-1,-1,-1,-1,-1,-1,-1,-1,-1,136,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,137,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,134,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,135,-1,-1",
- "endColumns": "14,-1,-1,-1,-1,-1,-1,-1,-1,-1,61,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,79,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,46,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,47,-1,-1",
- "endOffsets": "8971,-1,-1,-1,-1,-1,-1,-1,-1,-1,8482,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,8562,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,8372,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,8420,-1,-1"
- },
- "to": {
- "startLines": "19,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135",
- "startColumns": "4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4",
- "startOffsets": "775,1128,1224,1307,1403,1472,1515,1567,1619,1668,1731,1793,1851,1902,1986,2080,2188,2259,2343,2426,2492,2575,2677,2738,2800,2851,2929,2982,3042,3147,3206,3308,3388,3443,3506,3563,3634,3683,3729,3773,3831,3878,3937,3994,4065,4126,4183,4233,4285,4342,4395,4445,4495,4555,4608,4674,4736,4799,4846,4893,4948,5036,5094,5156,5206,5251,5294,5354,5421,5476,5531,5586,5639,5686,5739,5795,5843,5898,5951,6035,6102,6166,6262,6336,6417,6506,6669,6813,6892,6967,7049,7108,7188,7268,7323,7445,7548,7589,7642,7699,7773,7838,7906,7992,8072,8141,8235,8294,8349,8411,8471,8519,8629",
- "endLines": "23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135",
- "endColumns": "14,95,82,95,68,42,51,51,48,62,61,57,50,83,93,107,70,83,82,65,82,101,60,61,50,77,52,59,104,58,101,79,54,62,56,70,48,45,43,57,46,58,56,70,60,56,49,51,56,52,49,49,59,52,65,61,62,46,46,54,87,57,61,49,44,42,59,66,54,54,54,52,46,52,55,47,54,52,83,66,63,95,73,80,88,162,143,78,74,81,58,79,79,54,121,102,40,52,56,73,64,67,85,79,68,93,58,54,61,59,47,109,89",
- "endOffsets": "1123,1219,1302,1398,1467,1510,1562,1614,1663,1726,1788,1846,1897,1981,2075,2183,2254,2338,2421,2487,2570,2672,2733,2795,2846,2924,2977,3037,3142,3201,3303,3383,3438,3501,3558,3629,3678,3724,3768,3826,3873,3932,3989,4060,4121,4178,4228,4280,4337,4390,4440,4490,4550,4603,4669,4731,4794,4841,4888,4943,5031,5089,5151,5201,5246,5289,5349,5416,5471,5526,5581,5634,5681,5734,5790,5838,5893,5946,6030,6097,6161,6257,6331,6412,6501,6664,6808,6887,6962,7044,7103,7183,7263,7318,7440,7543,7584,7637,7694,7768,7833,7901,7987,8067,8136,8230,8289,8344,8406,8466,8514,8624,8714"
- }
- },
- {
- "source": "D:\\note1\\app\\src\\main\\res\\values\\colors.xml",
- "from": {
- "startLines": "-1",
- "startColumns": "-1",
- "startOffsets": "-1"
- },
- "to": {
- "startLines": "12",
- "startColumns": "4",
- "startOffsets": "420",
- "endColumns": "56",
- "endOffsets": "472"
- }
- },
- {
- "source": "D:\\note1\\app\\src\\main\\res\\values\\styles.xml",
- "from": {
- "startLines": "-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1",
- "startColumns": "-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1",
- "startOffsets": "-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1"
- },
- "to": {
- "startLines": "136,140,144,148,151,155,159,163,167,171,175",
- "startColumns": "4,4,4,4,4,4,4,4,4,4,4",
- "startOffsets": "8719,8923,9134,9346,9506,9689,9874,10059,10262,10468,10651",
- "endLines": "139,143,147,150,154,158,162,166,170,174,178",
- "endColumns": "12,12,12,12,12,12,12,12,12,12,12",
- "endOffsets": "8918,9129,9341,9501,9684,9869,10054,10257,10463,10646,10847"
- }
- },
- {
- "source": "D:\\note1\\app\\src\\main\\res\\values\\dimens.xml",
- "from": {
- "startLines": "-1,-1,-1,-1,-1",
- "startColumns": "-1,-1,-1,-1,-1",
- "startOffsets": "-1,-1,-1,-1,-1"
- },
- "to": {
- "startLines": "13,14,15,16,17",
- "startColumns": "4,4,4,4,4",
- "startOffsets": "477,529,582,635,687",
- "endColumns": "51,52,52,51,51",
- "endOffsets": "524,577,630,682,734"
- }
- },
- {
- "source": "D:\\note1\\app\\src\\main\\res\\values\\refs.xml",
- "from": {
- "startLines": "-1",
- "startColumns": "-1",
- "startOffsets": "-1"
- },
- "to": {
- "startLines": "18",
- "startColumns": "4",
- "startOffsets": "739",
- "endColumns": "35",
- "endOffsets": "770"
- }
- }
- ]
- },
- {
- "outputFile": "C:\\Users\\86139\\.gradle\\daemon\\8.1\\net.micode.notes.app-merged_res-4:\\values_values.arsc.flat",
- "map": [
- {
- "source": "D:\\note1\\app\\src\\main\\res\\values\\arrays.xml",
- "from": {
- "startLines": "19,26",
- "startColumns": "4,4",
- "startOffsets": "739,1047",
- "endLines": "24,29",
- "endColumns": "19,19",
- "endOffsets": "1041,1162"
- },
- "to": {
- "startLines": "2,8",
- "startColumns": "4,4",
- "startOffsets": "105,300",
- "endLines": "7,11",
- "endColumns": "19,19",
- "endOffsets": "295,415"
- }
- },
- {
- "source": "D:\\note1\\app\\src\\main\\res\\values\\strings.xml",
- "from": {
- "startLines": "132,76,79,78,77,19,20,21,122,123,131,130,26,85,86,84,83,82,98,97,96,88,39,38,68,29,30,89,41,80,124,47,46,75,71,44,45,42,52,57,43,67,66,65,61,60,58,59,62,63,53,74,64,72,51,56,55,54,70,50,69,48,49,73,28,34,36,33,35,32,31,25,24,105,104,108,120,113,112,114,115,117,116,106,107,111,109,110,103,118,119,129,127,126,128,27,87,95,100,99,101,94,93,92,91,22,23",
- "startColumns": "4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4",
- "startOffsets": "8218,4108,4369,4273,4204,827,870,922,7716,7765,8160,8109,1282,4823,4917,4752,4668,4585,5784,5701,5599,5093,2004,1953,3607,1486,1539,5154,2097,4452,7828,2418,2361,4037,3792,2271,2317,2156,2681,2982,2214,3536,3475,3418,3196,3144,3041,3094,3246,3296,2728,3971,3356,3841,2634,2927,2839,2781,3730,2584,3685,2481,2524,3904,1431,1750,1858,1703,1805,1647,1599,1227,1174,6240,6173,6481,7619,6845,6764,6919,7008,7250,7171,6324,6399,6705,6545,6625,6118,7394,7516,8068,7941,7884,7994,1366,5025,5513,5919,5850,5999,5454,5399,5337,5277,974,1084",
- "endLines": "136,76,79,78,77,19,20,21,122,123,131,130,26,85,86,84,83,82,98,97,96,88,39,38,68,29,30,89,41,80,124,47,46,75,71,44,45,42,52,57,43,67,66,65,61,60,58,59,62,63,53,74,64,72,51,56,55,54,70,50,69,48,49,73,28,34,36,33,35,32,31,25,24,105,104,108,120,113,112,114,115,117,116,106,107,111,109,110,103,118,119,129,127,126,128,27,87,95,100,99,101,94,93,92,91,22,23",
- "endColumns": "14,95,82,95,68,42,51,51,48,62,57,50,83,93,107,70,83,82,65,82,101,60,61,50,77,52,59,104,58,101,54,62,56,70,48,45,43,57,46,58,56,70,60,56,49,51,52,49,49,59,52,65,61,62,46,54,87,57,61,49,44,42,59,66,54,54,52,46,52,55,47,54,52,83,66,63,95,73,80,88,162,143,78,74,81,58,79,79,54,121,102,40,52,56,73,64,67,85,79,68,93,58,54,61,59,109,89",
- "endOffsets": "8622,4199,4447,4364,4268,865,917,969,7760,7823,8213,8155,1361,4912,5020,4818,4747,4663,5845,5779,5696,5149,2061,1999,3680,1534,1594,5254,2151,4549,7878,2476,2413,4103,3836,2312,2356,2209,2723,3036,2266,3602,3531,3470,3241,3191,3089,3139,3291,3351,2776,4032,3413,3899,2676,2977,2922,2834,3787,2629,3725,2519,2579,3966,1481,1800,1906,1745,1853,1698,1642,1277,1222,6319,6235,6540,7710,6914,6840,7003,7166,7389,7245,6394,6476,6759,6620,6700,6168,7511,7614,8104,7989,7936,8063,1426,5088,5594,5994,5914,6088,5508,5449,5394,5332,1079,1169"
- },
- "to": {
- "startLines": "19,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129",
- "startColumns": "4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4",
- "startOffsets": "775,1128,1224,1307,1403,1472,1515,1567,1619,1668,1731,1789,1840,1924,2018,2126,2197,2281,2364,2430,2513,2615,2676,2738,2789,2867,2920,2980,3085,3144,3246,3301,3364,3421,3492,3541,3587,3631,3689,3736,3795,3852,3923,3984,4041,4091,4143,4196,4246,4296,4356,4409,4475,4537,4600,4647,4702,4790,4848,4910,4960,5005,5048,5108,5175,5230,5285,5338,5385,5438,5494,5542,5597,5650,5734,5801,5865,5961,6035,6116,6205,6368,6512,6591,6666,6748,6807,6887,6967,7022,7144,7247,7288,7341,7398,7472,7537,7605,7691,7771,7840,7934,7993,8048,8110,8170,8280",
- "endLines": "23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129",
- "endColumns": "14,95,82,95,68,42,51,51,48,62,57,50,83,93,107,70,83,82,65,82,101,60,61,50,77,52,59,104,58,101,54,62,56,70,48,45,43,57,46,58,56,70,60,56,49,51,52,49,49,59,52,65,61,62,46,54,87,57,61,49,44,42,59,66,54,54,52,46,52,55,47,54,52,83,66,63,95,73,80,88,162,143,78,74,81,58,79,79,54,121,102,40,52,56,73,64,67,85,79,68,93,58,54,61,59,109,89",
- "endOffsets": "1123,1219,1302,1398,1467,1510,1562,1614,1663,1726,1784,1835,1919,2013,2121,2192,2276,2359,2425,2508,2610,2671,2733,2784,2862,2915,2975,3080,3139,3241,3296,3359,3416,3487,3536,3582,3626,3684,3731,3790,3847,3918,3979,4036,4086,4138,4191,4241,4291,4351,4404,4470,4532,4595,4642,4697,4785,4843,4905,4955,5000,5043,5103,5170,5225,5280,5333,5380,5433,5489,5537,5592,5645,5729,5796,5860,5956,6030,6111,6200,6363,6507,6586,6661,6743,6802,6882,6962,7017,7139,7242,7283,7336,7393,7467,7532,7600,7686,7766,7835,7929,7988,8043,8105,8165,8275,8365"
- }
- },
- {
- "source": "D:\\note1\\app\\src\\main\\res\\values\\colors.xml",
- "from": {
- "startLines": "18",
- "startColumns": "4",
- "startOffsets": "712",
- "endColumns": "56",
- "endOffsets": "764"
- },
- "to": {
- "startLines": "12",
- "startColumns": "4",
- "startOffsets": "420",
- "endColumns": "56",
- "endOffsets": "472"
- }
- },
- {
- "source": "D:\\note1\\app\\src\\main\\res\\values\\styles.xml",
- "from": {
- "startLines": "50,55,64,60,22,26,30,35,40,18,45",
- "startColumns": "4,4,4,4,4,4,4,4,4,4,4",
- "startOffsets": "2062,2267,2640,2479,895,1078,1263,1449,1653,712,1860",
- "endLines": "53,58,67,62,25,29,33,38,43,21,48",
- "endColumns": "12,12,12,12,12,12,12,12,12,12,12",
- "endOffsets": "2261,2473,2848,2634,1073,1258,1443,1647,1854,890,2056"
- },
- "to": {
- "startLines": "130,134,138,142,145,149,153,157,161,165,169",
- "startColumns": "4,4,4,4,4,4,4,4,4,4,4",
- "startOffsets": "8370,8574,8785,8997,9157,9340,9525,9710,9913,10119,10302",
- "endLines": "133,137,141,144,148,152,156,160,164,168,172",
- "endColumns": "12,12,12,12,12,12,12,12,12,12,12",
- "endOffsets": "8569,8780,8992,9152,9335,9520,9705,9908,10114,10297,10498"
- }
- },
- {
- "source": "D:\\note1\\app\\src\\main\\res\\values\\dimens.xml",
- "from": {
- "startLines": "19,20,21,22,18",
- "startColumns": "4,4,4,4,4",
- "startOffsets": "764,816,869,922,712",
- "endColumns": "51,52,52,51,51",
- "endOffsets": "811,864,917,969,759"
- },
- "to": {
- "startLines": "13,14,15,16,17",
- "startColumns": "4,4,4,4,4",
- "startOffsets": "477,529,582,635,687",
- "endColumns": "51,52,52,51,51",
- "endOffsets": "524,577,630,682,734"
- }
- },
- {
- "source": "D:\\note1\\app\\src\\main\\res\\values\\refs.xml",
- "from": {
- "startLines": "2",
- "startColumns": "4",
- "startOffsets": "57",
- "endColumns": "36",
- "endOffsets": "89"
- },
- "to": {
- "startLines": "18",
- "startColumns": "4",
- "startOffsets": "739",
- "endColumns": "35",
- "endOffsets": "770"
- }
- }
- ]
- },
- {
- "outputFile": "C:\\Users\\86139\\.gradle\\daemon\\8.1\\net.micode.notes.app-merged_res-4:\\values-zh-rTW_values-zh-rTW.arsc.flat",
- "map": [
- {
- "source": "D:\\note1\\app\\src\\main\\res\\values-zh-rTW\\strings.xml",
- "from": {
- "startLines": "124,72,71,70,69,19,20,21,112,113,121,120,26,76,77,75,74,73,89,88,87,79,61,29,30,80,37,114,123,122,68,64,39,45,50,40,60,59,58,54,53,51,52,55,56,46,67,57,65,44,49,48,47,63,43,62,41,42,66,28,34,36,33,35,32,31,25,24,96,95,98,110,103,102,104,105,107,106,97,101,99,100,94,108,109,119,117,116,118,27,78,86,91,90,92,85,84,83,82,22,23",
- "startColumns": "4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4",
- "startOffsets": "6627,3575,3509,3436,3386,827,867,915,6057,6102,6453,6403,1199,3835,3903,3776,3710,3647,4565,4505,4442,4035,2957,1369,1422,4089,1768,6159,6564,6507,3327,3114,1878,2159,2405,1931,2897,2844,2793,2598,2550,2456,2504,2644,2691,2202,3268,2741,3157,2116,2358,2302,2247,3059,2072,3017,1981,2022,3209,1318,1623,1719,1576,1672,1529,1484,1148,1095,4940,4881,5081,5982,5392,5323,5456,5534,5717,5644,5015,5268,5138,5203,4832,5821,5904,6365,6258,6210,6303,1261,3980,4383,4678,4620,4745,4335,4290,4242,4191,963,1029",
- "endLines": "126,72,71,70,69,19,20,21,112,113,121,120,26,76,77,75,74,73,89,88,87,79,61,29,30,80,37,114,123,122,68,64,39,45,50,40,60,59,58,54,53,51,52,55,56,46,67,57,65,44,49,48,47,63,43,62,41,42,66,28,34,36,33,35,32,31,25,24,96,95,98,110,103,102,104,105,107,106,97,101,99,100,94,108,109,119,117,116,118,27,78,86,91,90,92,85,84,83,82,22,23",
- "endColumns": "14,71,65,72,49,39,47,47,44,56,53,49,61,67,76,58,65,62,54,59,62,53,59,52,61,83,79,49,62,56,58,42,52,42,50,49,59,52,50,45,47,47,45,46,49,44,58,51,51,42,46,55,54,54,43,41,40,49,58,50,48,48,46,46,46,44,50,52,74,58,56,73,63,68,77,109,103,72,65,54,64,64,48,82,77,37,44,47,61,56,54,58,66,57,61,47,44,47,50,65,65",
- "endOffsets": "6799,3642,3570,3504,3431,862,910,958,6097,6154,6502,6448,1256,3898,3975,3830,3771,3705,4615,4560,4500,4084,3012,1417,1479,4168,1843,6204,6622,6559,3381,3152,1926,2197,2451,1976,2952,2892,2839,2639,2593,2499,2545,2686,2736,2242,3322,2788,3204,2154,2400,2353,2297,3109,2111,3054,2017,2067,3263,1364,1667,1763,1618,1714,1571,1524,1194,1143,5010,4935,5133,6051,5451,5387,5529,5639,5816,5712,5076,5318,5198,5263,4876,5899,5977,6398,6298,6253,6360,1313,4030,4437,4740,4673,4802,4378,4330,4285,4237,1024,1090"
- },
- "to": {
- "startLines": "6,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108",
- "startColumns": "4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4",
- "startOffsets": "215,384,456,522,595,645,685,733,781,826,883,937,987,1049,1117,1194,1253,1319,1382,1437,1497,1560,1614,1674,1727,1789,1873,1953,2003,2066,2123,2182,2225,2278,2321,2372,2422,2482,2535,2586,2632,2680,2728,2774,2821,2871,2916,2975,3027,3079,3122,3169,3225,3280,3335,3379,3421,3462,3512,3571,3622,3671,3720,3767,3814,3861,3906,3957,4010,4085,4144,4201,4275,4339,4408,4486,4596,4700,4773,4839,4894,4959,5024,5073,5156,5234,5272,5317,5365,5427,5484,5539,5598,5665,5723,5785,5833,5878,5926,5977,6043",
- "endLines": "8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108",
- "endColumns": "14,71,65,72,49,39,47,47,44,56,53,49,61,67,76,58,65,62,54,59,62,53,59,52,61,83,79,49,62,56,58,42,52,42,50,49,59,52,50,45,47,47,45,46,49,44,58,51,51,42,46,55,54,54,43,41,40,49,58,50,48,48,46,46,46,44,50,52,74,58,56,73,63,68,77,109,103,72,65,54,64,64,48,82,77,37,44,47,61,56,54,58,66,57,61,47,44,47,50,65,65",
- "endOffsets": "379,451,517,590,640,680,728,776,821,878,932,982,1044,1112,1189,1248,1314,1377,1432,1492,1555,1609,1669,1722,1784,1868,1948,1998,2061,2118,2177,2220,2273,2316,2367,2417,2477,2530,2581,2627,2675,2723,2769,2816,2866,2911,2970,3022,3074,3117,3164,3220,3275,3330,3374,3416,3457,3507,3566,3617,3666,3715,3762,3809,3856,3901,3952,4005,4080,4139,4196,4270,4334,4403,4481,4591,4695,4768,4834,4889,4954,5019,5068,5151,5229,5267,5312,5360,5422,5479,5534,5593,5660,5718,5780,5828,5873,5921,5972,6038,6104"
- }
- },
- {
- "source": "D:\\note1\\app\\src\\main\\res\\values-zh-rTW\\arrays.xml",
- "from": {
- "startLines": "18",
- "startColumns": "4",
- "startOffsets": "712",
- "endLines": "21",
- "endColumns": "19",
- "endOffsets": "817"
- },
- "to": {
- "startLines": "2",
- "startColumns": "4",
- "startOffsets": "105",
- "endLines": "5",
- "endColumns": "19",
- "endOffsets": "210"
- }
- }
- ]
- }
- ]
-}
\ No newline at end of file
diff --git a/src/src/app/build/intermediates/merged_res_blame_folder/debug/out/multi-v2/values-zh-rCN.json b/src/src/app/build/intermediates/merged_res_blame_folder/debug/out/multi-v2/values-zh-rCN.json
deleted file mode 100644
index a58efc2..0000000
--- a/src/src/app/build/intermediates/merged_res_blame_folder/debug/out/multi-v2/values-zh-rCN.json
+++ /dev/null
@@ -1,86 +0,0 @@
-{
- "logs": [
- {
- "outputFile": "net.micode.notes.app-mergeDebugResources-2:/values-zh-rCN/values-zh-rCN.xml",
- "map": [
- {
- "source": "D:\\note1\\app\\src\\main\\res\\values-zh-rCN\\strings.xml",
- "from": {
- "startLines": "-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,24,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,25,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,22,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,23,-1,-1",
- "startColumns": "-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,4,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,4,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,4,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,4,-1,-1",
- "startOffsets": "-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,1054,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,1104,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,965,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,1008,-1,-1",
- "endColumns": "-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,49,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,62,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,42,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,45,-1,-1",
- "endOffsets": "-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,1099,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,1162,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,1003,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,1049,-1,-1"
- },
- "to": {
- "startLines": "6,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114",
- "startColumns": "4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4",
- "startOffsets": "215,384,457,523,596,646,686,734,782,827,884,934,988,1038,1100,1168,1245,1304,1369,1432,1487,1547,1610,1664,1724,1777,1839,1924,2005,2068,2118,2181,2238,2297,2340,2393,2436,2487,2537,2597,2650,2701,2747,2795,2845,2893,2939,2986,3036,3081,3140,3192,3244,3287,3330,3377,3433,3488,3543,3587,3629,3670,3720,3779,3827,3878,3927,3976,4023,4070,4117,4162,4213,4266,4341,4400,4457,4531,4595,4664,4742,4852,4956,5029,5095,5150,5215,5280,5329,5412,5490,5528,5573,5621,5683,5740,5795,5854,5921,5979,6041,6089,6134,6182,6233,6279,6345",
- "endLines": "8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114",
- "endColumns": "14,72,65,72,49,39,47,47,44,56,49,53,49,61,67,76,58,64,62,54,59,62,53,59,52,61,84,80,62,49,62,56,58,42,52,42,50,49,59,52,50,45,47,49,47,45,46,49,44,58,51,51,42,42,46,55,54,54,43,41,40,49,58,47,50,48,48,46,46,46,44,50,52,74,58,56,73,63,68,77,109,103,72,65,54,64,64,48,82,77,37,44,47,61,56,54,58,66,57,61,47,44,47,50,45,65,65",
- "endOffsets": "379,452,518,591,641,681,729,777,822,879,929,983,1033,1095,1163,1240,1299,1364,1427,1482,1542,1605,1659,1719,1772,1834,1919,2000,2063,2113,2176,2233,2292,2335,2388,2431,2482,2532,2592,2645,2696,2742,2790,2840,2888,2934,2981,3031,3076,3135,3187,3239,3282,3325,3372,3428,3483,3538,3582,3624,3665,3715,3774,3822,3873,3922,3971,4018,4065,4112,4157,4208,4261,4336,4395,4452,4526,4590,4659,4737,4847,4951,5024,5090,5145,5210,5275,5324,5407,5485,5523,5568,5616,5678,5735,5790,5849,5916,5974,6036,6084,6129,6177,6228,6274,6340,6406"
- }
- },
- {
- "source": "D:\\note1\\app\\src\\main\\res\\values-zh-rCN\\arrays.xml",
- "from": {
- "startLines": "-1",
- "startColumns": "-1",
- "startOffsets": "-1"
- },
- "to": {
- "startLines": "2",
- "startColumns": "4",
- "startOffsets": "105",
- "endLines": "5",
- "endColumns": "19",
- "endOffsets": "210"
- }
- }
- ]
- },
- {
- "outputFile": "C:\\Users\\86139\\.gradle\\daemon\\8.1\\net.micode.notes.app-mergeDebugResources-2:\\values-zh-rCN\\values-zh-rCN.xml",
- "map": [
- {
- "source": "D:\\note1\\app\\src\\main\\res\\values-zh-rCN\\strings.xml",
- "from": {
- "startLines": "123,73,72,71,70,19,20,21,114,115,122,121,26,79,80,78,77,76,92,91,90,82,62,29,30,83,74,116,57,56,69,65,38,44,49,39,61,60,59,53,52,50,51,54,55,45,68,58,66,43,48,47,46,64,42,63,40,41,67,28,34,36,33,35,32,31,25,24,99,98,101,113,106,105,107,108,110,109,100,104,102,103,97,111,112,120,118,117,119,27,81,89,94,93,95,88,87,86,85,22,23",
- "startColumns": "4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4",
- "startOffsets": "6652,3615,3549,3476,3426,827,867,915,6203,6248,6598,6548,1199,3981,4049,3922,3857,3794,4712,4652,4589,4181,2997,1369,1422,4235,3688,6305,2718,2661,3367,3154,1798,2079,2325,1851,2937,2884,2833,2518,2470,2376,2424,2564,2611,2122,3308,2781,3197,2036,2278,2222,2167,3099,1992,3057,1901,1942,3249,1318,1623,1719,1576,1672,1529,1484,1148,1095,5087,5028,5228,6129,5539,5470,5603,5681,5864,5791,5162,5415,5285,5350,4979,5968,6051,6510,6403,6355,6448,1261,4126,4530,4825,4767,4892,4482,4437,4389,4338,963,1029",
- "endLines": "125,73,72,71,70,19,20,21,114,115,122,121,26,79,80,78,77,76,92,91,90,82,62,29,30,83,74,116,57,56,69,65,38,44,49,39,61,60,59,53,52,50,51,54,55,45,68,58,66,43,48,47,46,64,42,63,40,41,67,28,34,36,33,35,32,31,25,24,99,98,101,113,106,105,107,108,110,109,100,104,102,103,97,111,112,120,118,117,119,27,81,89,94,93,95,88,87,86,85,22,23",
- "endColumns": "14,72,65,72,49,39,47,47,44,56,53,49,61,67,76,58,64,62,54,59,62,53,59,52,61,84,80,49,62,56,58,42,52,42,50,49,59,52,50,45,47,47,45,46,49,44,58,51,51,42,46,55,54,54,43,41,40,49,58,50,48,48,46,46,46,44,50,52,74,58,56,73,63,68,77,109,103,72,65,54,64,64,48,82,77,37,44,47,61,56,54,58,66,57,61,47,44,47,50,65,65",
- "endOffsets": "6824,3683,3610,3544,3471,862,910,958,6243,6300,6647,6593,1256,4044,4121,3976,3917,3852,4762,4707,4647,4230,3052,1417,1479,4315,3764,6350,2776,2713,3421,3192,1846,2117,2371,1896,2992,2932,2879,2559,2513,2419,2465,2606,2656,2162,3362,2828,3244,2074,2320,2273,2217,3149,2031,3094,1937,1987,3303,1364,1667,1763,1618,1714,1571,1524,1194,1143,5157,5082,5280,6198,5598,5534,5676,5786,5963,5859,5223,5465,5345,5410,5023,6046,6124,6543,6443,6398,6505,1313,4176,4584,4887,4820,4949,4525,4477,4432,4384,1024,1090"
- },
- "to": {
- "startLines": "6,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108",
- "startColumns": "4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4",
- "startOffsets": "215,384,457,523,596,646,686,734,782,827,884,938,988,1050,1118,1195,1254,1319,1382,1437,1497,1560,1614,1674,1727,1789,1874,1955,2005,2068,2125,2184,2227,2280,2323,2374,2424,2484,2537,2588,2634,2682,2730,2776,2823,2873,2918,2977,3029,3081,3124,3171,3227,3282,3337,3381,3423,3464,3514,3573,3624,3673,3722,3769,3816,3863,3908,3959,4012,4087,4146,4203,4277,4341,4410,4488,4598,4702,4775,4841,4896,4961,5026,5075,5158,5236,5274,5319,5367,5429,5486,5541,5600,5667,5725,5787,5835,5880,5928,5979,6045",
- "endLines": "8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108",
- "endColumns": "14,72,65,72,49,39,47,47,44,56,53,49,61,67,76,58,64,62,54,59,62,53,59,52,61,84,80,49,62,56,58,42,52,42,50,49,59,52,50,45,47,47,45,46,49,44,58,51,51,42,46,55,54,54,43,41,40,49,58,50,48,48,46,46,46,44,50,52,74,58,56,73,63,68,77,109,103,72,65,54,64,64,48,82,77,37,44,47,61,56,54,58,66,57,61,47,44,47,50,65,65",
- "endOffsets": "379,452,518,591,641,681,729,777,822,879,933,983,1045,1113,1190,1249,1314,1377,1432,1492,1555,1609,1669,1722,1784,1869,1950,2000,2063,2120,2179,2222,2275,2318,2369,2419,2479,2532,2583,2629,2677,2725,2771,2818,2868,2913,2972,3024,3076,3119,3166,3222,3277,3332,3376,3418,3459,3509,3568,3619,3668,3717,3764,3811,3858,3903,3954,4007,4082,4141,4198,4272,4336,4405,4483,4593,4697,4770,4836,4891,4956,5021,5070,5153,5231,5269,5314,5362,5424,5481,5536,5595,5662,5720,5782,5830,5875,5923,5974,6040,6106"
- }
- },
- {
- "source": "D:\\note1\\app\\src\\main\\res\\values-zh-rCN\\arrays.xml",
- "from": {
- "startLines": "18",
- "startColumns": "4",
- "startOffsets": "712",
- "endLines": "21",
- "endColumns": "19",
- "endOffsets": "817"
- },
- "to": {
- "startLines": "2",
- "startColumns": "4",
- "startOffsets": "105",
- "endLines": "5",
- "endColumns": "19",
- "endOffsets": "210"
- }
- }
- ]
- }
- ]
-}
\ No newline at end of file
diff --git a/src/src/app/build/intermediates/merged_res_blame_folder/debug/out/multi-v2/values-zh-rTW.json b/src/src/app/build/intermediates/merged_res_blame_folder/debug/out/multi-v2/values-zh-rTW.json
deleted file mode 100644
index ad0569a..0000000
--- a/src/src/app/build/intermediates/merged_res_blame_folder/debug/out/multi-v2/values-zh-rTW.json
+++ /dev/null
@@ -1,47 +0,0 @@
-{
- "logs": [
- {
- "outputFile": "net.micode.notes.app-mergeDebugResources-2:/values-zh-rTW/values-zh-rTW.xml",
- "map": [
- {
- "source": "D:\\note1\\app\\src\\main\\res\\values-zh-rTW\\strings.xml",
- "from": {
- "startLines": "124,72,71,70,69,19,20,21,112,113,121,120,26,76,77,75,74,73,89,88,87,79,61,29,30,80,37,114,123,122,68,64,39,45,50,40,60,59,58,54,53,51,52,55,56,46,67,57,65,44,49,48,47,63,43,62,41,42,66,28,34,36,33,35,32,31,25,24,96,95,98,110,103,102,104,105,107,106,97,101,99,100,94,108,109,119,117,116,118,27,78,86,91,90,92,85,84,83,82,22,23",
- "startColumns": "4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4",
- "startOffsets": "6627,3575,3509,3436,3386,827,867,915,6057,6102,6453,6403,1199,3835,3903,3776,3710,3647,4565,4505,4442,4035,2957,1369,1422,4089,1768,6159,6564,6507,3327,3114,1878,2159,2405,1931,2897,2844,2793,2598,2550,2456,2504,2644,2691,2202,3268,2741,3157,2116,2358,2302,2247,3059,2072,3017,1981,2022,3209,1318,1623,1719,1576,1672,1529,1484,1148,1095,4940,4881,5081,5982,5392,5323,5456,5534,5717,5644,5015,5268,5138,5203,4832,5821,5904,6365,6258,6210,6303,1261,3980,4383,4678,4620,4745,4335,4290,4242,4191,963,1029",
- "endLines": "126,72,71,70,69,19,20,21,112,113,121,120,26,76,77,75,74,73,89,88,87,79,61,29,30,80,37,114,123,122,68,64,39,45,50,40,60,59,58,54,53,51,52,55,56,46,67,57,65,44,49,48,47,63,43,62,41,42,66,28,34,36,33,35,32,31,25,24,96,95,98,110,103,102,104,105,107,106,97,101,99,100,94,108,109,119,117,116,118,27,78,86,91,90,92,85,84,83,82,22,23",
- "endColumns": "14,71,65,72,49,39,47,47,44,56,53,49,61,67,76,58,65,62,54,59,62,53,59,52,61,83,79,49,62,56,58,42,52,42,50,49,59,52,50,45,47,47,45,46,49,44,58,51,51,42,46,55,54,54,43,41,40,49,58,50,48,48,46,46,46,44,50,52,74,58,56,73,63,68,77,109,103,72,65,54,64,64,48,82,77,37,44,47,61,56,54,58,66,57,61,47,44,47,50,65,65",
- "endOffsets": "6799,3642,3570,3504,3431,862,910,958,6097,6154,6502,6448,1256,3898,3975,3830,3771,3705,4615,4560,4500,4084,3012,1417,1479,4168,1843,6204,6622,6559,3381,3152,1926,2197,2451,1976,2952,2892,2839,2639,2593,2499,2545,2686,2736,2242,3322,2788,3204,2154,2400,2353,2297,3109,2111,3054,2017,2067,3263,1364,1667,1763,1618,1714,1571,1524,1194,1143,5010,4935,5133,6051,5451,5387,5529,5639,5816,5712,5076,5318,5198,5263,4876,5899,5977,6398,6298,6253,6360,1313,4030,4437,4740,4673,4802,4378,4330,4285,4237,1024,1090"
- },
- "to": {
- "startLines": "6,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108",
- "startColumns": "4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4",
- "startOffsets": "215,384,456,522,595,645,685,733,781,826,883,937,987,1049,1117,1194,1253,1319,1382,1437,1497,1560,1614,1674,1727,1789,1873,1953,2003,2066,2123,2182,2225,2278,2321,2372,2422,2482,2535,2586,2632,2680,2728,2774,2821,2871,2916,2975,3027,3079,3122,3169,3225,3280,3335,3379,3421,3462,3512,3571,3622,3671,3720,3767,3814,3861,3906,3957,4010,4085,4144,4201,4275,4339,4408,4486,4596,4700,4773,4839,4894,4959,5024,5073,5156,5234,5272,5317,5365,5427,5484,5539,5598,5665,5723,5785,5833,5878,5926,5977,6043",
- "endLines": "8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108",
- "endColumns": "14,71,65,72,49,39,47,47,44,56,53,49,61,67,76,58,65,62,54,59,62,53,59,52,61,83,79,49,62,56,58,42,52,42,50,49,59,52,50,45,47,47,45,46,49,44,58,51,51,42,46,55,54,54,43,41,40,49,58,50,48,48,46,46,46,44,50,52,74,58,56,73,63,68,77,109,103,72,65,54,64,64,48,82,77,37,44,47,61,56,54,58,66,57,61,47,44,47,50,65,65",
- "endOffsets": "379,451,517,590,640,680,728,776,821,878,932,982,1044,1112,1189,1248,1314,1377,1432,1492,1555,1609,1669,1722,1784,1868,1948,1998,2061,2118,2177,2220,2273,2316,2367,2417,2477,2530,2581,2627,2675,2723,2769,2816,2866,2911,2970,3022,3074,3117,3164,3220,3275,3330,3374,3416,3457,3507,3566,3617,3666,3715,3762,3809,3856,3901,3952,4005,4080,4139,4196,4270,4334,4403,4481,4591,4695,4768,4834,4889,4954,5019,5068,5151,5229,5267,5312,5360,5422,5479,5534,5593,5660,5718,5780,5828,5873,5921,5972,6038,6104"
- }
- },
- {
- "source": "D:\\note1\\app\\src\\main\\res\\values-zh-rTW\\arrays.xml",
- "from": {
- "startLines": "18",
- "startColumns": "4",
- "startOffsets": "712",
- "endLines": "21",
- "endColumns": "19",
- "endOffsets": "817"
- },
- "to": {
- "startLines": "2",
- "startColumns": "4",
- "startOffsets": "105",
- "endLines": "5",
- "endColumns": "19",
- "endOffsets": "210"
- }
- }
- ]
- }
- ]
-}
\ No newline at end of file
diff --git a/src/src/app/build/intermediates/merged_res_blame_folder/debug/out/multi-v2/values.json b/src/src/app/build/intermediates/merged_res_blame_folder/debug/out/multi-v2/values.json
deleted file mode 100644
index 8a39a18..0000000
--- a/src/src/app/build/intermediates/merged_res_blame_folder/debug/out/multi-v2/values.json
+++ /dev/null
@@ -1,206 +0,0 @@
-{
- "logs": [
- {
- "outputFile": "C:\\Users\\86139\\.gradle\\daemon\\8.1\\net.micode.notes.app-mergeDebugResources-2:\\values\\values.xml",
- "map": [
- {
- "source": "D:\\note1\\app\\src\\main\\res\\values\\arrays.xml",
- "from": {
- "startLines": "-1,-1",
- "startColumns": "-1,-1",
- "startOffsets": "-1,-1"
- },
- "to": {
- "startLines": "2,8",
- "startColumns": "4,4",
- "startOffsets": "105,300",
- "endLines": "7,11",
- "endColumns": "19,19",
- "endOffsets": "295,415"
- }
- },
- {
- "source": "D:\\note1\\app\\src\\main\\res\\values\\strings.xml",
- "from": {
- "startLines": "134,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,133,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1",
- "startColumns": "4,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,4,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1",
- "startOffsets": "8330,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,8273,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1",
- "endLines": "138,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,133,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1",
- "endColumns": "14,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,56,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1",
- "endOffsets": "8734,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,8325,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1"
- },
- "to": {
- "startLines": "19,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131",
- "startColumns": "4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4",
- "startOffsets": "775,1128,1224,1307,1403,1472,1515,1567,1619,1668,1731,1789,1840,1924,2018,2126,2197,2281,2364,2430,2513,2615,2676,2738,2789,2867,2920,2980,3085,3144,3246,3301,3364,3421,3492,3541,3587,3631,3689,3736,3795,3852,3923,3984,4041,4091,4143,4200,4253,4303,4353,4413,4466,4532,4594,4657,4704,4759,4847,4905,4967,5017,5062,5105,5165,5232,5287,5342,5397,5450,5497,5550,5606,5654,5709,5762,5846,5913,5977,6073,6147,6228,6317,6480,6624,6703,6778,6860,6919,6999,7079,7134,7256,7359,7400,7453,7510,7584,7649,7717,7803,7883,7952,8046,8105,8160,8222,8282,8392",
- "endLines": "23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131",
- "endColumns": "14,95,82,95,68,42,51,51,48,62,57,50,83,93,107,70,83,82,65,82,101,60,61,50,77,52,59,104,58,101,54,62,56,70,48,45,43,57,46,58,56,70,60,56,49,51,56,52,49,49,59,52,65,61,62,46,54,87,57,61,49,44,42,59,66,54,54,54,52,46,52,55,47,54,52,83,66,63,95,73,80,88,162,143,78,74,81,58,79,79,54,121,102,40,52,56,73,64,67,85,79,68,93,58,54,61,59,109,89",
- "endOffsets": "1123,1219,1302,1398,1467,1510,1562,1614,1663,1726,1784,1835,1919,2013,2121,2192,2276,2359,2425,2508,2610,2671,2733,2784,2862,2915,2975,3080,3139,3241,3296,3359,3416,3487,3536,3582,3626,3684,3731,3790,3847,3918,3979,4036,4086,4138,4195,4248,4298,4348,4408,4461,4527,4589,4652,4699,4754,4842,4900,4962,5012,5057,5100,5160,5227,5282,5337,5392,5445,5492,5545,5601,5649,5704,5757,5841,5908,5972,6068,6142,6223,6312,6475,6619,6698,6773,6855,6914,6994,7074,7129,7251,7354,7395,7448,7505,7579,7644,7712,7798,7878,7947,8041,8100,8155,8217,8277,8387,8477"
- }
- },
- {
- "source": "D:\\note1\\app\\src\\main\\res\\values\\colors.xml",
- "from": {
- "startLines": "-1",
- "startColumns": "-1",
- "startOffsets": "-1"
- },
- "to": {
- "startLines": "12",
- "startColumns": "4",
- "startOffsets": "420",
- "endColumns": "56",
- "endOffsets": "472"
- }
- },
- {
- "source": "D:\\note1\\app\\src\\main\\res\\values\\styles.xml",
- "from": {
- "startLines": "-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1",
- "startColumns": "-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1",
- "startOffsets": "-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1"
- },
- "to": {
- "startLines": "132,136,140,144,147,151,155,159,163,167,171",
- "startColumns": "4,4,4,4,4,4,4,4,4,4,4",
- "startOffsets": "8482,8686,8897,9109,9269,9452,9637,9822,10025,10231,10414",
- "endLines": "135,139,143,146,150,154,158,162,166,170,174",
- "endColumns": "12,12,12,12,12,12,12,12,12,12,12",
- "endOffsets": "8681,8892,9104,9264,9447,9632,9817,10020,10226,10409,10610"
- }
- },
- {
- "source": "D:\\note1\\app\\src\\main\\res\\values\\dimens.xml",
- "from": {
- "startLines": "-1,-1,-1,-1,-1",
- "startColumns": "-1,-1,-1,-1,-1",
- "startOffsets": "-1,-1,-1,-1,-1"
- },
- "to": {
- "startLines": "13,14,15,16,17",
- "startColumns": "4,4,4,4,4",
- "startOffsets": "477,529,582,635,687",
- "endColumns": "51,52,52,51,51",
- "endOffsets": "524,577,630,682,734"
- }
- },
- {
- "source": "D:\\note1\\app\\src\\main\\res\\values\\refs.xml",
- "from": {
- "startLines": "-1",
- "startColumns": "-1",
- "startOffsets": "-1"
- },
- "to": {
- "startLines": "18",
- "startColumns": "4",
- "startOffsets": "739",
- "endColumns": "35",
- "endOffsets": "770"
- }
- }
- ]
- },
- {
- "outputFile": "net.micode.notes.app-mergeDebugResources-2:/values/values.xml",
- "map": [
- {
- "source": "D:\\note1\\app\\src\\main\\res\\values\\arrays.xml",
- "from": {
- "startLines": "-1,-1",
- "startColumns": "-1,-1",
- "startOffsets": "-1,-1"
- },
- "to": {
- "startLines": "2,8",
- "startColumns": "4,4",
- "startOffsets": "105,300",
- "endLines": "7,11",
- "endColumns": "19,19",
- "endOffsets": "295,415"
- }
- },
- {
- "source": "D:\\note1\\app\\src\\main\\res\\values\\strings.xml",
- "from": {
- "startLines": "138,-1,-1,-1,-1,-1,-1,-1,-1,-1,136,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,137,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,134,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,135,-1,-1",
- "startColumns": "4,-1,-1,-1,-1,-1,-1,-1,-1,-1,4,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,4,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,4,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,4,-1,-1",
- "startOffsets": "8567,-1,-1,-1,-1,-1,-1,-1,-1,-1,8425,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,8487,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,8330,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,8377,-1,-1",
- "endLines": "142,-1,-1,-1,-1,-1,-1,-1,-1,-1,136,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,137,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,134,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,135,-1,-1",
- "endColumns": "14,-1,-1,-1,-1,-1,-1,-1,-1,-1,61,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,79,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,46,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,47,-1,-1",
- "endOffsets": "8971,-1,-1,-1,-1,-1,-1,-1,-1,-1,8482,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,8562,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,8372,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,8420,-1,-1"
- },
- "to": {
- "startLines": "19,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135",
- "startColumns": "4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4",
- "startOffsets": "775,1128,1224,1307,1403,1472,1515,1567,1619,1668,1731,1793,1851,1902,1986,2080,2188,2259,2343,2426,2492,2575,2677,2738,2800,2851,2929,2982,3042,3147,3206,3308,3388,3443,3506,3563,3634,3683,3729,3773,3831,3878,3937,3994,4065,4126,4183,4233,4285,4342,4395,4445,4495,4555,4608,4674,4736,4799,4846,4893,4948,5036,5094,5156,5206,5251,5294,5354,5421,5476,5531,5586,5639,5686,5739,5795,5843,5898,5951,6035,6102,6166,6262,6336,6417,6506,6669,6813,6892,6967,7049,7108,7188,7268,7323,7445,7548,7589,7642,7699,7773,7838,7906,7992,8072,8141,8235,8294,8349,8411,8471,8519,8629",
- "endLines": "23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135",
- "endColumns": "14,95,82,95,68,42,51,51,48,62,61,57,50,83,93,107,70,83,82,65,82,101,60,61,50,77,52,59,104,58,101,79,54,62,56,70,48,45,43,57,46,58,56,70,60,56,49,51,56,52,49,49,59,52,65,61,62,46,46,54,87,57,61,49,44,42,59,66,54,54,54,52,46,52,55,47,54,52,83,66,63,95,73,80,88,162,143,78,74,81,58,79,79,54,121,102,40,52,56,73,64,67,85,79,68,93,58,54,61,59,47,109,89",
- "endOffsets": "1123,1219,1302,1398,1467,1510,1562,1614,1663,1726,1788,1846,1897,1981,2075,2183,2254,2338,2421,2487,2570,2672,2733,2795,2846,2924,2977,3037,3142,3201,3303,3383,3438,3501,3558,3629,3678,3724,3768,3826,3873,3932,3989,4060,4121,4178,4228,4280,4337,4390,4440,4490,4550,4603,4669,4731,4794,4841,4888,4943,5031,5089,5151,5201,5246,5289,5349,5416,5471,5526,5581,5634,5681,5734,5790,5838,5893,5946,6030,6097,6161,6257,6331,6412,6501,6664,6808,6887,6962,7044,7103,7183,7263,7318,7440,7543,7584,7637,7694,7768,7833,7901,7987,8067,8136,8230,8289,8344,8406,8466,8514,8624,8714"
- }
- },
- {
- "source": "D:\\note1\\app\\src\\main\\res\\values\\colors.xml",
- "from": {
- "startLines": "-1",
- "startColumns": "-1",
- "startOffsets": "-1"
- },
- "to": {
- "startLines": "12",
- "startColumns": "4",
- "startOffsets": "420",
- "endColumns": "56",
- "endOffsets": "472"
- }
- },
- {
- "source": "D:\\note1\\app\\src\\main\\res\\values\\styles.xml",
- "from": {
- "startLines": "-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1",
- "startColumns": "-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1",
- "startOffsets": "-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1"
- },
- "to": {
- "startLines": "136,140,144,148,151,155,159,163,167,171,175",
- "startColumns": "4,4,4,4,4,4,4,4,4,4,4",
- "startOffsets": "8719,8923,9134,9346,9506,9689,9874,10059,10262,10468,10651",
- "endLines": "139,143,147,150,154,158,162,166,170,174,178",
- "endColumns": "12,12,12,12,12,12,12,12,12,12,12",
- "endOffsets": "8918,9129,9341,9501,9684,9869,10054,10257,10463,10646,10847"
- }
- },
- {
- "source": "D:\\note1\\app\\src\\main\\res\\values\\dimens.xml",
- "from": {
- "startLines": "-1,-1,-1,-1,-1",
- "startColumns": "-1,-1,-1,-1,-1",
- "startOffsets": "-1,-1,-1,-1,-1"
- },
- "to": {
- "startLines": "13,14,15,16,17",
- "startColumns": "4,4,4,4,4",
- "startOffsets": "477,529,582,635,687",
- "endColumns": "51,52,52,51,51",
- "endOffsets": "524,577,630,682,734"
- }
- },
- {
- "source": "D:\\note1\\app\\src\\main\\res\\values\\refs.xml",
- "from": {
- "startLines": "-1",
- "startColumns": "-1",
- "startOffsets": "-1"
- },
- "to": {
- "startLines": "18",
- "startColumns": "4",
- "startOffsets": "739",
- "endColumns": "35",
- "endOffsets": "770"
- }
- }
- ]
- }
- ]
-}
\ No newline at end of file
diff --git a/src/src/app/build/intermediates/merged_res_blame_folder/debug/out/single/debug.json b/src/src/app/build/intermediates/merged_res_blame_folder/debug/out/single/debug.json
deleted file mode 100644
index d583f78..0000000
--- a/src/src/app/build/intermediates/merged_res_blame_folder/debug/out/single/debug.json
+++ /dev/null
@@ -1,406 +0,0 @@
-[
- {
- "merged": "C:\\Users\\86139\\.gradle\\daemon\\8.1\\net.micode.notes.app-merged_res-4:\\drawable-hdpi_list_white_single.9.png.flat",
- "source": "C:\\Users\\86139\\.gradle\\daemon\\8.1\\net.micode.notes.app-main-6:\\drawable-hdpi\\list_white_single.9.png"
- },
- {
- "merged": "C:\\Users\\86139\\.gradle\\daemon\\8.1\\net.micode.notes.app-merged_res-4:\\drawable-hdpi_list_yellow_up.9.png.flat",
- "source": "C:\\Users\\86139\\.gradle\\daemon\\8.1\\net.micode.notes.app-main-6:\\drawable-hdpi\\list_yellow_up.9.png"
- },
- {
- "merged": "C:\\Users\\86139\\.gradle\\daemon\\8.1\\net.micode.notes.app-merged_res-4:\\drawable-hdpi_list_blue_single.9.png.flat",
- "source": "C:\\Users\\86139\\.gradle\\daemon\\8.1\\net.micode.notes.app-main-6:\\drawable-hdpi\\list_blue_single.9.png"
- },
- {
- "merged": "C:\\Users\\86139\\.gradle\\daemon\\8.1\\net.micode.notes.app-merged_res-4:\\layout_add_account_text.xml.flat",
- "source": "C:\\Users\\86139\\.gradle\\daemon\\8.1\\net.micode.notes.app-main-6:\\layout\\add_account_text.xml"
- },
- {
- "merged": "C:\\Users\\86139\\.gradle\\daemon\\8.1\\net.micode.notes.app-merged_res-4:\\layout_note_edit_list_item.xml.flat",
- "source": "C:\\Users\\86139\\.gradle\\daemon\\8.1\\net.micode.notes.app-main-6:\\layout\\note_edit_list_item.xml"
- },
- {
- "merged": "C:\\Users\\86139\\.gradle\\daemon\\8.1\\net.micode.notes.app-merged_res-4:\\layout_datetime_picker.xml.flat",
- "source": "C:\\Users\\86139\\.gradle\\daemon\\8.1\\net.micode.notes.app-main-6:\\layout\\datetime_picker.xml"
- },
- {
- "merged": "C:\\Users\\86139\\.gradle\\daemon\\8.1\\net.micode.notes.app-merged_res-4:\\raw-zh-rCN_introduction.flat",
- "source": "C:\\Users\\86139\\.gradle\\daemon\\8.1\\net.micode.notes.app-main-6:\\raw-zh-rCN\\introduction"
- },
- {
- "merged": "C:\\Users\\86139\\.gradle\\daemon\\8.1\\net.micode.notes.app-merged_res-4:\\drawable-hdpi_list_blue_down.9.png.flat",
- "source": "C:\\Users\\86139\\.gradle\\daemon\\8.1\\net.micode.notes.app-main-6:\\drawable-hdpi\\list_blue_down.9.png"
- },
- {
- "merged": "C:\\Users\\86139\\.gradle\\daemon\\8.1\\net.micode.notes.app-merged_res-4:\\xml_widget_2x_info.xml.flat",
- "source": "C:\\Users\\86139\\.gradle\\daemon\\8.1\\net.micode.notes.app-main-6:\\xml\\widget_2x_info.xml"
- },
- {
- "merged": "C:\\Users\\86139\\.gradle\\daemon\\8.1\\net.micode.notes.app-merged_res-4:\\drawable-hdpi_edit_title_blue.9.png.flat",
- "source": "C:\\Users\\86139\\.gradle\\daemon\\8.1\\net.micode.notes.app-main-6:\\drawable-hdpi\\edit_title_blue.9.png"
- },
- {
- "merged": "C:\\Users\\86139\\.gradle\\daemon\\8.1\\net.micode.notes.app-merged_res-4:\\drawable-hdpi_list_red_down.9.png.flat",
- "source": "C:\\Users\\86139\\.gradle\\daemon\\8.1\\net.micode.notes.app-main-6:\\drawable-hdpi\\list_red_down.9.png"
- },
- {
- "merged": "C:\\Users\\86139\\.gradle\\daemon\\8.1\\net.micode.notes.app-merged_res-4:\\drawable-hdpi_edit_blue.9.png.flat",
- "source": "C:\\Users\\86139\\.gradle\\daemon\\8.1\\net.micode.notes.app-main-6:\\drawable-hdpi\\edit_blue.9.png"
- },
- {
- "merged": "C:\\Users\\86139\\.gradle\\daemon\\8.1\\net.micode.notes.app-merged_res-4:\\drawable-hdpi_selected.png.flat",
- "source": "C:\\Users\\86139\\.gradle\\daemon\\8.1\\net.micode.notes.app-main-6:\\drawable-hdpi\\selected.png"
- },
- {
- "merged": "C:\\Users\\86139\\.gradle\\daemon\\8.1\\net.micode.notes.app-merged_res-4:\\drawable-hdpi_list_yellow_single.9.png.flat",
- "source": "C:\\Users\\86139\\.gradle\\daemon\\8.1\\net.micode.notes.app-main-6:\\drawable-hdpi\\list_yellow_single.9.png"
- },
- {
- "merged": "C:\\Users\\86139\\.gradle\\daemon\\8.1\\net.micode.notes.app-merged_res-4:\\drawable-hdpi_new_note_pressed.png.flat",
- "source": "C:\\Users\\86139\\.gradle\\daemon\\8.1\\net.micode.notes.app-main-6:\\drawable-hdpi\\new_note_pressed.png"
- },
- {
- "merged": "C:\\Users\\86139\\.gradle\\daemon\\8.1\\net.micode.notes.app-merged_res-4:\\drawable-hdpi_title_bar_bg.9.png.flat",
- "source": "C:\\Users\\86139\\.gradle\\daemon\\8.1\\net.micode.notes.app-main-6:\\drawable-hdpi\\title_bar_bg.9.png"
- },
- {
- "merged": "C:\\Users\\86139\\.gradle\\daemon\\8.1\\net.micode.notes.app-merged_res-4:\\drawable-hdpi_edit_green.9.png.flat",
- "source": "C:\\Users\\86139\\.gradle\\daemon\\8.1\\net.micode.notes.app-main-6:\\drawable-hdpi\\edit_green.9.png"
- },
- {
- "merged": "C:\\Users\\86139\\.gradle\\daemon\\8.1\\net.micode.notes.app-merged_res-4:\\drawable-hdpi_font_small.png.flat",
- "source": "C:\\Users\\86139\\.gradle\\daemon\\8.1\\net.micode.notes.app-main-6:\\drawable-hdpi\\font_small.png"
- },
- {
- "merged": "C:\\Users\\86139\\.gradle\\daemon\\8.1\\net.micode.notes.app-merged_res-4:\\menu_note_edit.xml.flat",
- "source": "C:\\Users\\86139\\.gradle\\daemon\\8.1\\net.micode.notes.app-main-6:\\menu\\note_edit.xml"
- },
- {
- "merged": "C:\\Users\\86139\\.gradle\\daemon\\8.1\\net.micode.notes.app-merged_res-4:\\layout_folder_list_item.xml.flat",
- "source": "C:\\Users\\86139\\.gradle\\daemon\\8.1\\net.micode.notes.app-main-6:\\layout\\folder_list_item.xml"
- },
- {
- "merged": "C:\\Users\\86139\\.gradle\\daemon\\8.1\\net.micode.notes.app-merged_res-4:\\layout_dialog_edit_text.xml.flat",
- "source": "C:\\Users\\86139\\.gradle\\daemon\\8.1\\net.micode.notes.app-main-6:\\layout\\dialog_edit_text.xml"
- },
- {
- "merged": "C:\\Users\\86139\\.gradle\\daemon\\8.1\\net.micode.notes.app-merged_res-4:\\menu_call_record_folder.xml.flat",
- "source": "C:\\Users\\86139\\.gradle\\daemon\\8.1\\net.micode.notes.app-main-6:\\menu\\call_record_folder.xml"
- },
- {
- "merged": "C:\\Users\\86139\\.gradle\\daemon\\8.1\\net.micode.notes.app-merged_res-4:\\drawable-hdpi_gao.png.flat",
- "source": "C:\\Users\\86139\\.gradle\\daemon\\8.1\\net.micode.notes.app-main-6:\\drawable-hdpi\\gao.png"
- },
- {
- "merged": "C:\\Users\\86139\\.gradle\\daemon\\8.1\\net.micode.notes.app-merged_res-4:\\menu_note_list_options.xml.flat",
- "source": "C:\\Users\\86139\\.gradle\\daemon\\8.1\\net.micode.notes.app-main-6:\\menu\\note_list_options.xml"
- },
- {
- "merged": "C:\\Users\\86139\\.gradle\\daemon\\8.1\\net.micode.notes.app-merged_res-4:\\menu_sub_folder.xml.flat",
- "source": "C:\\Users\\86139\\.gradle\\daemon\\8.1\\net.micode.notes.app-main-6:\\menu\\sub_folder.xml"
- },
- {
- "merged": "C:\\Users\\86139\\.gradle\\daemon\\8.1\\net.micode.notes.app-merged_res-4:\\drawable-hdpi_widget_4x_red.png.flat",
- "source": "C:\\Users\\86139\\.gradle\\daemon\\8.1\\net.micode.notes.app-main-6:\\drawable-hdpi\\widget_4x_red.png"
- },
- {
- "merged": "C:\\Users\\86139\\.gradle\\daemon\\8.1\\net.micode.notes.app-merged_res-4:\\drawable-hdpi_widget_2x_white.png.flat",
- "source": "C:\\Users\\86139\\.gradle\\daemon\\8.1\\net.micode.notes.app-main-6:\\drawable-hdpi\\widget_2x_white.png"
- },
- {
- "merged": "C:\\Users\\86139\\.gradle\\daemon\\8.1\\net.micode.notes.app-merged_res-4:\\drawable-hdpi_a3.png.flat",
- "source": "C:\\Users\\86139\\.gradle\\daemon\\8.1\\net.micode.notes.app-main-6:\\drawable-hdpi\\a3.png"
- },
- {
- "merged": "C:\\Users\\86139\\.gradle\\daemon\\8.1\\net.micode.notes.app-merged_res-4:\\drawable-hdpi_edit_title_yellow.9.png.flat",
- "source": "C:\\Users\\86139\\.gradle\\daemon\\8.1\\net.micode.notes.app-main-6:\\drawable-hdpi\\edit_title_yellow.9.png"
- },
- {
- "merged": "C:\\Users\\86139\\.gradle\\daemon\\8.1\\net.micode.notes.app-merged_res-4:\\color_secondary_text_dark.xml.flat",
- "source": "C:\\Users\\86139\\.gradle\\daemon\\8.1\\net.micode.notes.app-main-6:\\color\\secondary_text_dark.xml"
- },
- {
- "merged": "C:\\Users\\86139\\.gradle\\daemon\\8.1\\net.micode.notes.app-merged_res-4:\\drawable-hdpi_icon_app.png.flat",
- "source": "C:\\Users\\86139\\.gradle\\daemon\\8.1\\net.micode.notes.app-main-6:\\drawable-hdpi\\icon_app.png"
- },
- {
- "merged": "C:\\Users\\86139\\.gradle\\daemon\\8.1\\net.micode.notes.app-merged_res-4:\\drawable-hdpi_list_red_single.9.png.flat",
- "source": "C:\\Users\\86139\\.gradle\\daemon\\8.1\\net.micode.notes.app-main-6:\\drawable-hdpi\\list_red_single.9.png"
- },
- {
- "merged": "C:\\Users\\86139\\.gradle\\daemon\\8.1\\net.micode.notes.app-merged_res-4:\\drawable-hdpi_list_yellow_down.9.png.flat",
- "source": "C:\\Users\\86139\\.gradle\\daemon\\8.1\\net.micode.notes.app-main-6:\\drawable-hdpi\\list_yellow_down.9.png"
- },
- {
- "merged": "C:\\Users\\86139\\.gradle\\daemon\\8.1\\net.micode.notes.app-merged_res-4:\\layout_widget_4x.xml.flat",
- "source": "C:\\Users\\86139\\.gradle\\daemon\\8.1\\net.micode.notes.app-main-6:\\layout\\widget_4x.xml"
- },
- {
- "merged": "C:\\Users\\86139\\.gradle\\daemon\\8.1\\net.micode.notes.app-merged_res-4:\\menu_note_list.xml.flat",
- "source": "C:\\Users\\86139\\.gradle\\daemon\\8.1\\net.micode.notes.app-main-6:\\menu\\note_list.xml"
- },
- {
- "merged": "C:\\Users\\86139\\.gradle\\daemon\\8.1\\net.micode.notes.app-merged_res-4:\\drawable-hdpi_bg_color_btn_mask.png.flat",
- "source": "C:\\Users\\86139\\.gradle\\daemon\\8.1\\net.micode.notes.app-main-6:\\drawable-hdpi\\bg_color_btn_mask.png"
- },
- {
- "merged": "C:\\Users\\86139\\.gradle\\daemon\\8.1\\net.micode.notes.app-merged_res-4:\\drawable-hdpi_list_green_down.9.png.flat",
- "source": "C:\\Users\\86139\\.gradle\\daemon\\8.1\\net.micode.notes.app-main-6:\\drawable-hdpi\\list_green_down.9.png"
- },
- {
- "merged": "C:\\Users\\86139\\.gradle\\daemon\\8.1\\net.micode.notes.app-merged_res-4:\\layout_settings_header.xml.flat",
- "source": "C:\\Users\\86139\\.gradle\\daemon\\8.1\\net.micode.notes.app-main-6:\\layout\\settings_header.xml"
- },
- {
- "merged": "C:\\Users\\86139\\.gradle\\daemon\\8.1\\net.micode.notes.app-merged_res-4:\\drawable-hdpi_title_alert.png.flat",
- "source": "C:\\Users\\86139\\.gradle\\daemon\\8.1\\net.micode.notes.app-main-6:\\drawable-hdpi\\title_alert.png"
- },
- {
- "merged": "C:\\Users\\86139\\.gradle\\daemon\\8.1\\net.micode.notes.app-merged_res-4:\\drawable-hdpi_delete.png.flat",
- "source": "C:\\Users\\86139\\.gradle\\daemon\\8.1\\net.micode.notes.app-main-6:\\drawable-hdpi\\delete.png"
- },
- {
- "merged": "C:\\Users\\86139\\.gradle\\daemon\\8.1\\net.micode.notes.app-merged_res-4:\\drawable-hdpi_call_record.png.flat",
- "source": "C:\\Users\\86139\\.gradle\\daemon\\8.1\\net.micode.notes.app-main-6:\\drawable-hdpi\\call_record.png"
- },
- {
- "merged": "C:\\Users\\86139\\.gradle\\daemon\\8.1\\net.micode.notes.app-merged_res-4:\\drawable-hdpi_list_red_middle.9.png.flat",
- "source": "C:\\Users\\86139\\.gradle\\daemon\\8.1\\net.micode.notes.app-main-6:\\drawable-hdpi\\list_red_middle.9.png"
- },
- {
- "merged": "C:\\Users\\86139\\.gradle\\daemon\\8.1\\net.micode.notes.app-merged_res-4:\\layout_note_list_footer.xml.flat",
- "source": "C:\\Users\\86139\\.gradle\\daemon\\8.1\\net.micode.notes.app-main-6:\\layout\\note_list_footer.xml"
- },
- {
- "merged": "C:\\Users\\86139\\.gradle\\daemon\\8.1\\net.micode.notes.app-merged_res-4:\\menu_call_note_edit.xml.flat",
- "source": "C:\\Users\\86139\\.gradle\\daemon\\8.1\\net.micode.notes.app-main-6:\\menu\\call_note_edit.xml"
- },
- {
- "merged": "C:\\Users\\86139\\.gradle\\daemon\\8.1\\net.micode.notes.app-merged_res-4:\\layout_widget_2x.xml.flat",
- "source": "C:\\Users\\86139\\.gradle\\daemon\\8.1\\net.micode.notes.app-main-6:\\layout\\widget_2x.xml"
- },
- {
- "merged": "C:\\Users\\86139\\.gradle\\daemon\\8.1\\net.micode.notes.app-merged_res-4:\\drawable-hdpi_menu_move.png.flat",
- "source": "C:\\Users\\86139\\.gradle\\daemon\\8.1\\net.micode.notes.app-main-6:\\drawable-hdpi\\menu_move.png"
- },
- {
- "merged": "C:\\Users\\86139\\.gradle\\daemon\\8.1\\net.micode.notes.app-merged_res-4:\\drawable-hdpi_widget_4x_blue.png.flat",
- "source": "C:\\Users\\86139\\.gradle\\daemon\\8.1\\net.micode.notes.app-main-6:\\drawable-hdpi\\widget_4x_blue.png"
- },
- {
- "merged": "C:\\Users\\86139\\.gradle\\daemon\\8.1\\net.micode.notes.app-merged_res-4:\\drawable-hdpi_menu_delete.png.flat",
- "source": "C:\\Users\\86139\\.gradle\\daemon\\8.1\\net.micode.notes.app-main-6:\\drawable-hdpi\\menu_delete.png"
- },
- {
- "merged": "C:\\Users\\86139\\.gradle\\daemon\\8.1\\net.micode.notes.app-merged_res-4:\\drawable-hdpi_list_blue_middle.9.png.flat",
- "source": "C:\\Users\\86139\\.gradle\\daemon\\8.1\\net.micode.notes.app-main-6:\\drawable-hdpi\\list_blue_middle.9.png"
- },
- {
- "merged": "C:\\Users\\86139\\.gradle\\daemon\\8.1\\net.micode.notes.app-merged_res-4:\\drawable-hdpi_list_white_middle.9.png.flat",
- "source": "C:\\Users\\86139\\.gradle\\daemon\\8.1\\net.micode.notes.app-main-6:\\drawable-hdpi\\list_white_middle.9.png"
- },
- {
- "merged": "C:\\Users\\86139\\.gradle\\daemon\\8.1\\net.micode.notes.app-merged_res-4:\\drawable-hdpi_edit_yellow.9.png.flat",
- "source": "C:\\Users\\86139\\.gradle\\daemon\\8.1\\net.micode.notes.app-main-6:\\drawable-hdpi\\edit_yellow.9.png"
- },
- {
- "merged": "C:\\Users\\86139\\.gradle\\daemon\\8.1\\net.micode.notes.app-merged_res-4:\\drawable-hdpi_edit_white.9.png.flat",
- "source": "C:\\Users\\86139\\.gradle\\daemon\\8.1\\net.micode.notes.app-main-6:\\drawable-hdpi\\edit_white.9.png"
- },
- {
- "merged": "C:\\Users\\86139\\.gradle\\daemon\\8.1\\net.micode.notes.app-merged_res-4:\\drawable-hdpi_search_result.png.flat",
- "source": "C:\\Users\\86139\\.gradle\\daemon\\8.1\\net.micode.notes.app-main-6:\\drawable-hdpi\\search_result.png"
- },
- {
- "merged": "C:\\Users\\86139\\.gradle\\daemon\\8.1\\net.micode.notes.app-merged_res-4:\\drawable-hdpi_font_super.png.flat",
- "source": "C:\\Users\\86139\\.gradle\\daemon\\8.1\\net.micode.notes.app-main-6:\\drawable-hdpi\\font_super.png"
- },
- {
- "merged": "C:\\Users\\86139\\.gradle\\daemon\\8.1\\net.micode.notes.app-merged_res-4:\\drawable-hdpi_widget_2x_blue.png.flat",
- "source": "C:\\Users\\86139\\.gradle\\daemon\\8.1\\net.micode.notes.app-main-6:\\drawable-hdpi\\widget_2x_blue.png"
- },
- {
- "merged": "C:\\Users\\86139\\.gradle\\daemon\\8.1\\net.micode.notes.app-merged_res-4:\\layout_note_item.xml.flat",
- "source": "C:\\Users\\86139\\.gradle\\daemon\\8.1\\net.micode.notes.app-main-6:\\layout\\note_item.xml"
- },
- {
- "merged": "C:\\Users\\86139\\.gradle\\daemon\\8.1\\net.micode.notes.app-merged_res-4:\\drawable-hdpi_a2.png.flat",
- "source": "C:\\Users\\86139\\.gradle\\daemon\\8.1\\net.micode.notes.app-main-6:\\drawable-hdpi\\a2.png"
- },
- {
- "merged": "C:\\Users\\86139\\.gradle\\daemon\\8.1\\net.micode.notes.app-merged_res-4:\\layout_note_list_dropdown_menu.xml.flat",
- "source": "C:\\Users\\86139\\.gradle\\daemon\\8.1\\net.micode.notes.app-main-6:\\layout\\note_list_dropdown_menu.xml"
- },
- {
- "merged": "C:\\Users\\86139\\.gradle\\daemon\\8.1\\net.micode.notes.app-merged_res-4:\\drawable-hdpi_edit_title_white.9.png.flat",
- "source": "C:\\Users\\86139\\.gradle\\daemon\\8.1\\net.micode.notes.app-main-6:\\drawable-hdpi\\edit_title_white.9.png"
- },
- {
- "merged": "C:\\Users\\86139\\.gradle\\daemon\\8.1\\net.micode.notes.app-merged_res-4:\\drawable_new_note.xml.flat",
- "source": "C:\\Users\\86139\\.gradle\\daemon\\8.1\\net.micode.notes.app-main-6:\\drawable\\new_note.xml"
- },
- {
- "merged": "C:\\Users\\86139\\.gradle\\daemon\\8.1\\net.micode.notes.app-merged_res-4:\\drawable-hdpi_note_edit_color_selector_panel.png.flat",
- "source": "C:\\Users\\86139\\.gradle\\daemon\\8.1\\net.micode.notes.app-main-6:\\drawable-hdpi\\note_edit_color_selector_panel.png"
- },
- {
- "merged": "C:\\Users\\86139\\.gradle\\daemon\\8.1\\net.micode.notes.app-merged_res-4:\\drawable-hdpi_widget_2x_green.png.flat",
- "source": "C:\\Users\\86139\\.gradle\\daemon\\8.1\\net.micode.notes.app-main-6:\\drawable-hdpi\\widget_2x_green.png"
- },
- {
- "merged": "net.micode.notes.app-merged_res-4:/drawable-hdpi_gao.png.flat",
- "source": "net.micode.notes.app-main-6:/drawable-hdpi/gao.png"
- },
- {
- "merged": "C:\\Users\\86139\\.gradle\\daemon\\8.1\\net.micode.notes.app-merged_res-4:\\drawable-hdpi_widget_2x_yellow.png.flat",
- "source": "C:\\Users\\86139\\.gradle\\daemon\\8.1\\net.micode.notes.app-main-6:\\drawable-hdpi\\widget_2x_yellow.png"
- },
- {
- "merged": "C:\\Users\\86139\\.gradle\\daemon\\8.1\\net.micode.notes.app-merged_res-4:\\xml_widget_4x_info.xml.flat",
- "source": "C:\\Users\\86139\\.gradle\\daemon\\8.1\\net.micode.notes.app-main-6:\\xml\\widget_4x_info.xml"
- },
- {
- "merged": "C:\\Users\\86139\\.gradle\\daemon\\8.1\\net.micode.notes.app-merged_res-4:\\xml_preferences.xml.flat",
- "source": "C:\\Users\\86139\\.gradle\\daemon\\8.1\\net.micode.notes.app-main-6:\\xml\\preferences.xml"
- },
- {
- "merged": "C:\\Users\\86139\\.gradle\\daemon\\8.1\\net.micode.notes.app-merged_res-4:\\drawable-hdpi_list_red_up.9.png.flat",
- "source": "C:\\Users\\86139\\.gradle\\daemon\\8.1\\net.micode.notes.app-main-6:\\drawable-hdpi\\list_red_up.9.png"
- },
- {
- "merged": "C:\\Users\\86139\\.gradle\\daemon\\8.1\\net.micode.notes.app-merged_res-4:\\xml_searchable.xml.flat",
- "source": "C:\\Users\\86139\\.gradle\\daemon\\8.1\\net.micode.notes.app-main-6:\\xml\\searchable.xml"
- },
- {
- "merged": "C:\\Users\\86139\\.gradle\\daemon\\8.1\\net.micode.notes.app-merged_res-4:\\layout_note_edit.xml.flat",
- "source": "C:\\Users\\86139\\.gradle\\daemon\\8.1\\net.micode.notes.app-main-6:\\layout\\note_edit.xml"
- },
- {
- "merged": "C:\\Users\\86139\\.gradle\\daemon\\8.1\\net.micode.notes.app-merged_res-4:\\drawable-hdpi_edit_red.9.png.flat",
- "source": "C:\\Users\\86139\\.gradle\\daemon\\8.1\\net.micode.notes.app-main-6:\\drawable-hdpi\\edit_red.9.png"
- },
- {
- "merged": "C:\\Users\\86139\\.gradle\\daemon\\8.1\\net.micode.notes.app-merged_res-4:\\drawable-hdpi_list_background.png.flat",
- "source": "C:\\Users\\86139\\.gradle\\daemon\\8.1\\net.micode.notes.app-main-6:\\drawable-hdpi\\list_background.png"
- },
- {
- "merged": "C:\\Users\\86139\\.gradle\\daemon\\8.1\\net.micode.notes.app-merged_res-4:\\layout_account_dialog_title.xml.flat",
- "source": "C:\\Users\\86139\\.gradle\\daemon\\8.1\\net.micode.notes.app-main-6:\\layout\\account_dialog_title.xml"
- },
- {
- "merged": "C:\\Users\\86139\\.gradle\\daemon\\8.1\\net.micode.notes.app-merged_res-4:\\drawable-hdpi_list_green_single.9.png.flat",
- "source": "C:\\Users\\86139\\.gradle\\daemon\\8.1\\net.micode.notes.app-main-6:\\drawable-hdpi\\list_green_single.9.png"
- },
- {
- "merged": "C:\\Users\\86139\\.gradle\\daemon\\8.1\\net.micode.notes.app-merged_res-4:\\drawable-hdpi_edit_title_red.9.png.flat",
- "source": "C:\\Users\\86139\\.gradle\\daemon\\8.1\\net.micode.notes.app-main-6:\\drawable-hdpi\\edit_title_red.9.png"
- },
- {
- "merged": "C:\\Users\\86139\\.gradle\\daemon\\8.1\\net.micode.notes.app-merged_res-4:\\drawable-hdpi_bg_btn_set_color.png.flat",
- "source": "C:\\Users\\86139\\.gradle\\daemon\\8.1\\net.micode.notes.app-main-6:\\drawable-hdpi\\bg_btn_set_color.png"
- },
- {
- "merged": "C:\\Users\\86139\\.gradle\\daemon\\8.1\\net.micode.notes.app-merged_res-4:\\drawable-hdpi_font_size_selector_bg.9.png.flat",
- "source": "C:\\Users\\86139\\.gradle\\daemon\\8.1\\net.micode.notes.app-main-6:\\drawable-hdpi\\font_size_selector_bg.9.png"
- },
- {
- "merged": "C:\\Users\\86139\\.gradle\\daemon\\8.1\\net.micode.notes.app-merged_res-4:\\drawable-hdpi_dropdown_icon.9.png.flat",
- "source": "C:\\Users\\86139\\.gradle\\daemon\\8.1\\net.micode.notes.app-main-6:\\drawable-hdpi\\dropdown_icon.9.png"
- },
- {
- "merged": "C:\\Users\\86139\\.gradle\\daemon\\8.1\\net.micode.notes.app-merged_res-4:\\drawable-hdpi_widget_4x_yellow.png.flat",
- "source": "C:\\Users\\86139\\.gradle\\daemon\\8.1\\net.micode.notes.app-main-6:\\drawable-hdpi\\widget_4x_yellow.png"
- },
- {
- "merged": "C:\\Users\\86139\\.gradle\\daemon\\8.1\\net.micode.notes.app-merged_res-4:\\drawable-hdpi_list_footer_bg.9.png.flat",
- "source": "C:\\Users\\86139\\.gradle\\daemon\\8.1\\net.micode.notes.app-main-6:\\drawable-hdpi\\list_footer_bg.9.png"
- },
- {
- "merged": "C:\\Users\\86139\\.gradle\\daemon\\8.1\\net.micode.notes.app-merged_res-4:\\drawable-hdpi_widget_4x_green.png.flat",
- "source": "C:\\Users\\86139\\.gradle\\daemon\\8.1\\net.micode.notes.app-main-6:\\drawable-hdpi\\widget_4x_green.png"
- },
- {
- "merged": "C:\\Users\\86139\\.gradle\\daemon\\8.1\\net.micode.notes.app-merged_res-4:\\raw_introduction.flat",
- "source": "C:\\Users\\86139\\.gradle\\daemon\\8.1\\net.micode.notes.app-main-6:\\raw\\introduction"
- },
- {
- "merged": "C:\\Users\\86139\\.gradle\\daemon\\8.1\\net.micode.notes.app-merged_res-4:\\drawable-hdpi_list_white_up.9.png.flat",
- "source": "C:\\Users\\86139\\.gradle\\daemon\\8.1\\net.micode.notes.app-main-6:\\drawable-hdpi\\list_white_up.9.png"
- },
- {
- "merged": "C:\\Users\\86139\\.gradle\\daemon\\8.1\\net.micode.notes.app-merged_res-4:\\drawable-hdpi_list_white_down.9.png.flat",
- "source": "C:\\Users\\86139\\.gradle\\daemon\\8.1\\net.micode.notes.app-main-6:\\drawable-hdpi\\list_white_down.9.png"
- },
- {
- "merged": "C:\\Users\\86139\\.gradle\\daemon\\8.1\\net.micode.notes.app-merged_res-4:\\color_primary_text_dark.xml.flat",
- "source": "C:\\Users\\86139\\.gradle\\daemon\\8.1\\net.micode.notes.app-main-6:\\color\\primary_text_dark.xml"
- },
- {
- "merged": "C:\\Users\\86139\\.gradle\\daemon\\8.1\\net.micode.notes.app-merged_res-4:\\drawable-hdpi_new_note_normal.png.flat",
- "source": "C:\\Users\\86139\\.gradle\\daemon\\8.1\\net.micode.notes.app-main-6:\\drawable-hdpi\\new_note_normal.png"
- },
- {
- "merged": "C:\\Users\\86139\\.gradle\\daemon\\8.1\\net.micode.notes.app-merged_res-4:\\drawable-hdpi_list_folder.9.png.flat",
- "source": "C:\\Users\\86139\\.gradle\\daemon\\8.1\\net.micode.notes.app-main-6:\\drawable-hdpi\\list_folder.9.png"
- },
- {
- "merged": "C:\\Users\\86139\\.gradle\\daemon\\8.1\\net.micode.notes.app-merged_res-4:\\drawable-hdpi_list_green_up.9.png.flat",
- "source": "C:\\Users\\86139\\.gradle\\daemon\\8.1\\net.micode.notes.app-main-6:\\drawable-hdpi\\list_green_up.9.png"
- },
- {
- "merged": "C:\\Users\\86139\\.gradle\\daemon\\8.1\\net.micode.notes.app-merged_res-4:\\drawable-hdpi_widget_4x_white.png.flat",
- "source": "C:\\Users\\86139\\.gradle\\daemon\\8.1\\net.micode.notes.app-main-6:\\drawable-hdpi\\widget_4x_white.png"
- },
- {
- "merged": "C:\\Users\\86139\\.gradle\\daemon\\8.1\\net.micode.notes.app-merged_res-4:\\drawable-hdpi_widget_2x_red.png.flat",
- "source": "C:\\Users\\86139\\.gradle\\daemon\\8.1\\net.micode.notes.app-main-6:\\drawable-hdpi\\widget_2x_red.png"
- },
- {
- "merged": "C:\\Users\\86139\\.gradle\\daemon\\8.1\\net.micode.notes.app-merged_res-4:\\drawable-hdpi_clock.png.flat",
- "source": "C:\\Users\\86139\\.gradle\\daemon\\8.1\\net.micode.notes.app-main-6:\\drawable-hdpi\\clock.png"
- },
- {
- "merged": "C:\\Users\\86139\\.gradle\\daemon\\8.1\\net.micode.notes.app-merged_res-4:\\menu_note_list_dropdown.xml.flat",
- "source": "C:\\Users\\86139\\.gradle\\daemon\\8.1\\net.micode.notes.app-main-6:\\menu\\note_list_dropdown.xml"
- },
- {
- "merged": "C:\\Users\\86139\\.gradle\\daemon\\8.1\\net.micode.notes.app-merged_res-4:\\layout_note_list.xml.flat",
- "source": "C:\\Users\\86139\\.gradle\\daemon\\8.1\\net.micode.notes.app-main-6:\\layout\\note_list.xml"
- },
- {
- "merged": "C:\\Users\\86139\\.gradle\\daemon\\8.1\\net.micode.notes.app-merged_res-4:\\drawable-hdpi_edit_title_green.9.png.flat",
- "source": "C:\\Users\\86139\\.gradle\\daemon\\8.1\\net.micode.notes.app-main-6:\\drawable-hdpi\\edit_title_green.9.png"
- },
- {
- "merged": "C:\\Users\\86139\\.gradle\\daemon\\8.1\\net.micode.notes.app-merged_res-4:\\drawable-hdpi_list_green_middle.9.png.flat",
- "source": "C:\\Users\\86139\\.gradle\\daemon\\8.1\\net.micode.notes.app-main-6:\\drawable-hdpi\\list_green_middle.9.png"
- },
- {
- "merged": "C:\\Users\\86139\\.gradle\\daemon\\8.1\\net.micode.notes.app-merged_res-4:\\drawable-hdpi_font_normal.png.flat",
- "source": "C:\\Users\\86139\\.gradle\\daemon\\8.1\\net.micode.notes.app-main-6:\\drawable-hdpi\\font_normal.png"
- },
- {
- "merged": "C:\\Users\\86139\\.gradle\\daemon\\8.1\\net.micode.notes.app-merged_res-4:\\drawable-hdpi_list_yellow_middle.9.png.flat",
- "source": "C:\\Users\\86139\\.gradle\\daemon\\8.1\\net.micode.notes.app-main-6:\\drawable-hdpi\\list_yellow_middle.9.png"
- },
- {
- "merged": "C:\\Users\\86139\\.gradle\\daemon\\8.1\\net.micode.notes.app-merged_res-4:\\drawable-hdpi_list_blue_up.9.png.flat",
- "source": "C:\\Users\\86139\\.gradle\\daemon\\8.1\\net.micode.notes.app-main-6:\\drawable-hdpi\\list_blue_up.9.png"
- },
- {
- "merged": "C:\\Users\\86139\\.gradle\\daemon\\8.1\\net.micode.notes.app-merged_res-4:\\drawable-hdpi_font_large.png.flat",
- "source": "C:\\Users\\86139\\.gradle\\daemon\\8.1\\net.micode.notes.app-main-6:\\drawable-hdpi\\font_large.png"
- },
- {
- "merged": "C:\\Users\\86139\\.gradle\\daemon\\8.1\\net.micode.notes.app-merged_res-4:\\drawable-hdpi_a1.png.flat",
- "source": "C:\\Users\\86139\\.gradle\\daemon\\8.1\\net.micode.notes.app-main-6:\\drawable-hdpi\\a1.png"
- },
- {
- "merged": "C:\\Users\\86139\\.gradle\\daemon\\8.1\\net.micode.notes.app-merged_res-4:\\drawable-hdpi_a4.png.flat",
- "source": "C:\\Users\\86139\\.gradle\\daemon\\8.1\\net.micode.notes.app-main-6:\\drawable-hdpi\\a4.png"
- },
- {
- "merged": "C:\\Users\\86139\\.gradle\\daemon\\8.1\\net.micode.notes.app-merged_res-4:\\drawable-hdpi_g780.jpg.flat",
- "source": "C:\\Users\\86139\\.gradle\\daemon\\8.1\\net.micode.notes.app-main-6:\\drawable-hdpi\\g780.jpg"
- }
-]
\ No newline at end of file
diff --git a/src/src/app/build/intermediates/navigation_json/debug/navigation.json b/src/src/app/build/intermediates/navigation_json/debug/navigation.json
deleted file mode 100644
index 0637a08..0000000
--- a/src/src/app/build/intermediates/navigation_json/debug/navigation.json
+++ /dev/null
@@ -1 +0,0 @@
-[]
\ No newline at end of file
diff --git a/src/src/app/build/intermediates/packaged_manifests/debug/AndroidManifest.xml b/src/src/app/build/intermediates/packaged_manifests/debug/AndroidManifest.xml
deleted file mode 100644
index df53d07..0000000
--- a/src/src/app/build/intermediates/packaged_manifests/debug/AndroidManifest.xml
+++ /dev/null
@@ -1,151 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/src/src/app/build/intermediates/packaged_manifests/debug/output-metadata.json b/src/src/app/build/intermediates/packaged_manifests/debug/output-metadata.json
deleted file mode 100644
index eea66e3..0000000
--- a/src/src/app/build/intermediates/packaged_manifests/debug/output-metadata.json
+++ /dev/null
@@ -1,20 +0,0 @@
-{
- "version": 3,
- "artifactType": {
- "type": "PACKAGED_MANIFESTS",
- "kind": "Directory"
- },
- "applicationId": "net.micode.notes",
- "variantName": "debug",
- "elements": [
- {
- "type": "SINGLE",
- "filters": [],
- "attributes": [],
- "versionCode": 1,
- "versionName": "0.1",
- "outputFile": "AndroidManifest.xml"
- }
- ],
- "elementType": "File"
-}
\ No newline at end of file
diff --git a/src/src/app/build/intermediates/packaged_res/debug/color/primary_text_dark.xml b/src/src/app/build/intermediates/packaged_res/debug/color/primary_text_dark.xml
deleted file mode 100644
index ef83740..0000000
--- a/src/src/app/build/intermediates/packaged_res/debug/color/primary_text_dark.xml
+++ /dev/null
@@ -1,31 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/src/src/app/build/intermediates/packaged_res/debug/color/secondary_text_dark.xml b/src/src/app/build/intermediates/packaged_res/debug/color/secondary_text_dark.xml
deleted file mode 100644
index 81fad1e..0000000
--- a/src/src/app/build/intermediates/packaged_res/debug/color/secondary_text_dark.xml
+++ /dev/null
@@ -1,21 +0,0 @@
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/src/src/app/build/intermediates/packaged_res/debug/drawable-hdpi-v4/a1.png b/src/src/app/build/intermediates/packaged_res/debug/drawable-hdpi-v4/a1.png
deleted file mode 100644
index 58bd44e..0000000
Binary files a/src/src/app/build/intermediates/packaged_res/debug/drawable-hdpi-v4/a1.png and /dev/null differ
diff --git a/src/src/app/build/intermediates/packaged_res/debug/drawable-hdpi-v4/a2.png b/src/src/app/build/intermediates/packaged_res/debug/drawable-hdpi-v4/a2.png
deleted file mode 100644
index 36e9607..0000000
Binary files a/src/src/app/build/intermediates/packaged_res/debug/drawable-hdpi-v4/a2.png and /dev/null differ
diff --git a/src/src/app/build/intermediates/packaged_res/debug/drawable-hdpi-v4/a3.png b/src/src/app/build/intermediates/packaged_res/debug/drawable-hdpi-v4/a3.png
deleted file mode 100644
index cedbc02..0000000
Binary files a/src/src/app/build/intermediates/packaged_res/debug/drawable-hdpi-v4/a3.png and /dev/null differ
diff --git a/src/src/app/build/intermediates/packaged_res/debug/drawable-hdpi-v4/a4.png b/src/src/app/build/intermediates/packaged_res/debug/drawable-hdpi-v4/a4.png
deleted file mode 100644
index b13ab4a..0000000
Binary files a/src/src/app/build/intermediates/packaged_res/debug/drawable-hdpi-v4/a4.png and /dev/null differ
diff --git a/src/src/app/build/intermediates/packaged_res/debug/drawable-hdpi-v4/bg_btn_set_color.png b/src/src/app/build/intermediates/packaged_res/debug/drawable-hdpi-v4/bg_btn_set_color.png
deleted file mode 100644
index 5eb5d44..0000000
Binary files a/src/src/app/build/intermediates/packaged_res/debug/drawable-hdpi-v4/bg_btn_set_color.png and /dev/null differ
diff --git a/src/src/app/build/intermediates/packaged_res/debug/drawable-hdpi-v4/bg_color_btn_mask.png b/src/src/app/build/intermediates/packaged_res/debug/drawable-hdpi-v4/bg_color_btn_mask.png
deleted file mode 100644
index 100db77..0000000
Binary files a/src/src/app/build/intermediates/packaged_res/debug/drawable-hdpi-v4/bg_color_btn_mask.png and /dev/null differ
diff --git a/src/src/app/build/intermediates/packaged_res/debug/drawable-hdpi-v4/call_record.png b/src/src/app/build/intermediates/packaged_res/debug/drawable-hdpi-v4/call_record.png
deleted file mode 100644
index fb88ca4..0000000
Binary files a/src/src/app/build/intermediates/packaged_res/debug/drawable-hdpi-v4/call_record.png and /dev/null differ
diff --git a/src/src/app/build/intermediates/packaged_res/debug/drawable-hdpi-v4/clock.png b/src/src/app/build/intermediates/packaged_res/debug/drawable-hdpi-v4/clock.png
deleted file mode 100644
index 5f2ae9a..0000000
Binary files a/src/src/app/build/intermediates/packaged_res/debug/drawable-hdpi-v4/clock.png and /dev/null differ
diff --git a/src/src/app/build/intermediates/packaged_res/debug/drawable-hdpi-v4/delete.png b/src/src/app/build/intermediates/packaged_res/debug/drawable-hdpi-v4/delete.png
deleted file mode 100644
index 643de3e..0000000
Binary files a/src/src/app/build/intermediates/packaged_res/debug/drawable-hdpi-v4/delete.png and /dev/null differ
diff --git a/src/src/app/build/intermediates/packaged_res/debug/drawable-hdpi-v4/dropdown_icon.9.png b/src/src/app/build/intermediates/packaged_res/debug/drawable-hdpi-v4/dropdown_icon.9.png
deleted file mode 100644
index 5525025..0000000
Binary files a/src/src/app/build/intermediates/packaged_res/debug/drawable-hdpi-v4/dropdown_icon.9.png and /dev/null differ
diff --git a/src/src/app/build/intermediates/packaged_res/debug/drawable-hdpi-v4/edit_blue.9.png b/src/src/app/build/intermediates/packaged_res/debug/drawable-hdpi-v4/edit_blue.9.png
deleted file mode 100644
index 55a1856..0000000
Binary files a/src/src/app/build/intermediates/packaged_res/debug/drawable-hdpi-v4/edit_blue.9.png and /dev/null differ
diff --git a/src/src/app/build/intermediates/packaged_res/debug/drawable-hdpi-v4/edit_green.9.png b/src/src/app/build/intermediates/packaged_res/debug/drawable-hdpi-v4/edit_green.9.png
deleted file mode 100644
index 2cb2d60..0000000
Binary files a/src/src/app/build/intermediates/packaged_res/debug/drawable-hdpi-v4/edit_green.9.png and /dev/null differ
diff --git a/src/src/app/build/intermediates/packaged_res/debug/drawable-hdpi-v4/edit_red.9.png b/src/src/app/build/intermediates/packaged_res/debug/drawable-hdpi-v4/edit_red.9.png
deleted file mode 100644
index bae944a..0000000
Binary files a/src/src/app/build/intermediates/packaged_res/debug/drawable-hdpi-v4/edit_red.9.png and /dev/null differ
diff --git a/src/src/app/build/intermediates/packaged_res/debug/drawable-hdpi-v4/edit_title_blue.9.png b/src/src/app/build/intermediates/packaged_res/debug/drawable-hdpi-v4/edit_title_blue.9.png
deleted file mode 100644
index 96e6092..0000000
Binary files a/src/src/app/build/intermediates/packaged_res/debug/drawable-hdpi-v4/edit_title_blue.9.png and /dev/null differ
diff --git a/src/src/app/build/intermediates/packaged_res/debug/drawable-hdpi-v4/edit_title_green.9.png b/src/src/app/build/intermediates/packaged_res/debug/drawable-hdpi-v4/edit_title_green.9.png
deleted file mode 100644
index 08d8644..0000000
Binary files a/src/src/app/build/intermediates/packaged_res/debug/drawable-hdpi-v4/edit_title_green.9.png and /dev/null differ
diff --git a/src/src/app/build/intermediates/packaged_res/debug/drawable-hdpi-v4/edit_title_red.9.png b/src/src/app/build/intermediates/packaged_res/debug/drawable-hdpi-v4/edit_title_red.9.png
deleted file mode 100644
index 9c430e5..0000000
Binary files a/src/src/app/build/intermediates/packaged_res/debug/drawable-hdpi-v4/edit_title_red.9.png and /dev/null differ
diff --git a/src/src/app/build/intermediates/packaged_res/debug/drawable-hdpi-v4/edit_title_white.9.png b/src/src/app/build/intermediates/packaged_res/debug/drawable-hdpi-v4/edit_title_white.9.png
deleted file mode 100644
index 19e8d95..0000000
Binary files a/src/src/app/build/intermediates/packaged_res/debug/drawable-hdpi-v4/edit_title_white.9.png and /dev/null differ
diff --git a/src/src/app/build/intermediates/packaged_res/debug/drawable-hdpi-v4/edit_title_yellow.9.png b/src/src/app/build/intermediates/packaged_res/debug/drawable-hdpi-v4/edit_title_yellow.9.png
deleted file mode 100644
index bf8f580..0000000
Binary files a/src/src/app/build/intermediates/packaged_res/debug/drawable-hdpi-v4/edit_title_yellow.9.png and /dev/null differ
diff --git a/src/src/app/build/intermediates/packaged_res/debug/drawable-hdpi-v4/edit_white.9.png b/src/src/app/build/intermediates/packaged_res/debug/drawable-hdpi-v4/edit_white.9.png
deleted file mode 100644
index 918f7a6..0000000
Binary files a/src/src/app/build/intermediates/packaged_res/debug/drawable-hdpi-v4/edit_white.9.png and /dev/null differ
diff --git a/src/src/app/build/intermediates/packaged_res/debug/drawable-hdpi-v4/edit_yellow.9.png b/src/src/app/build/intermediates/packaged_res/debug/drawable-hdpi-v4/edit_yellow.9.png
deleted file mode 100644
index 10cb642..0000000
Binary files a/src/src/app/build/intermediates/packaged_res/debug/drawable-hdpi-v4/edit_yellow.9.png and /dev/null differ
diff --git a/src/src/app/build/intermediates/packaged_res/debug/drawable-hdpi-v4/font_large.png b/src/src/app/build/intermediates/packaged_res/debug/drawable-hdpi-v4/font_large.png
deleted file mode 100644
index 78cf2e6..0000000
Binary files a/src/src/app/build/intermediates/packaged_res/debug/drawable-hdpi-v4/font_large.png and /dev/null differ
diff --git a/src/src/app/build/intermediates/packaged_res/debug/drawable-hdpi-v4/font_normal.png b/src/src/app/build/intermediates/packaged_res/debug/drawable-hdpi-v4/font_normal.png
deleted file mode 100644
index 9de7ced..0000000
Binary files a/src/src/app/build/intermediates/packaged_res/debug/drawable-hdpi-v4/font_normal.png and /dev/null differ
diff --git a/src/src/app/build/intermediates/packaged_res/debug/drawable-hdpi-v4/font_size_selector_bg.9.png b/src/src/app/build/intermediates/packaged_res/debug/drawable-hdpi-v4/font_size_selector_bg.9.png
deleted file mode 100644
index be8e64c..0000000
Binary files a/src/src/app/build/intermediates/packaged_res/debug/drawable-hdpi-v4/font_size_selector_bg.9.png and /dev/null differ
diff --git a/src/src/app/build/intermediates/packaged_res/debug/drawable-hdpi-v4/font_small.png b/src/src/app/build/intermediates/packaged_res/debug/drawable-hdpi-v4/font_small.png
deleted file mode 100644
index d3ff104..0000000
Binary files a/src/src/app/build/intermediates/packaged_res/debug/drawable-hdpi-v4/font_small.png and /dev/null differ
diff --git a/src/src/app/build/intermediates/packaged_res/debug/drawable-hdpi-v4/font_super.png b/src/src/app/build/intermediates/packaged_res/debug/drawable-hdpi-v4/font_super.png
deleted file mode 100644
index 85b13a1..0000000
Binary files a/src/src/app/build/intermediates/packaged_res/debug/drawable-hdpi-v4/font_super.png and /dev/null differ
diff --git a/src/src/app/build/intermediates/packaged_res/debug/drawable-hdpi-v4/g780.jpg b/src/src/app/build/intermediates/packaged_res/debug/drawable-hdpi-v4/g780.jpg
deleted file mode 100644
index d0edc03..0000000
Binary files a/src/src/app/build/intermediates/packaged_res/debug/drawable-hdpi-v4/g780.jpg and /dev/null differ
diff --git a/src/src/app/build/intermediates/packaged_res/debug/drawable-hdpi-v4/gao.png b/src/src/app/build/intermediates/packaged_res/debug/drawable-hdpi-v4/gao.png
deleted file mode 100644
index d2a5ae8..0000000
Binary files a/src/src/app/build/intermediates/packaged_res/debug/drawable-hdpi-v4/gao.png and /dev/null differ
diff --git a/src/src/app/build/intermediates/packaged_res/debug/drawable-hdpi-v4/icon_app.png b/src/src/app/build/intermediates/packaged_res/debug/drawable-hdpi-v4/icon_app.png
deleted file mode 100644
index 418aadc..0000000
Binary files a/src/src/app/build/intermediates/packaged_res/debug/drawable-hdpi-v4/icon_app.png and /dev/null differ
diff --git a/src/src/app/build/intermediates/packaged_res/debug/drawable-hdpi-v4/list_background.png b/src/src/app/build/intermediates/packaged_res/debug/drawable-hdpi-v4/list_background.png
deleted file mode 100644
index 087e1f9..0000000
Binary files a/src/src/app/build/intermediates/packaged_res/debug/drawable-hdpi-v4/list_background.png and /dev/null differ
diff --git a/src/src/app/build/intermediates/packaged_res/debug/drawable-hdpi-v4/list_blue_down.9.png b/src/src/app/build/intermediates/packaged_res/debug/drawable-hdpi-v4/list_blue_down.9.png
deleted file mode 100644
index b88eebf..0000000
Binary files a/src/src/app/build/intermediates/packaged_res/debug/drawable-hdpi-v4/list_blue_down.9.png and /dev/null differ
diff --git a/src/src/app/build/intermediates/packaged_res/debug/drawable-hdpi-v4/list_blue_middle.9.png b/src/src/app/build/intermediates/packaged_res/debug/drawable-hdpi-v4/list_blue_middle.9.png
deleted file mode 100644
index 96b1c8b..0000000
Binary files a/src/src/app/build/intermediates/packaged_res/debug/drawable-hdpi-v4/list_blue_middle.9.png and /dev/null differ
diff --git a/src/src/app/build/intermediates/packaged_res/debug/drawable-hdpi-v4/list_blue_single.9.png b/src/src/app/build/intermediates/packaged_res/debug/drawable-hdpi-v4/list_blue_single.9.png
deleted file mode 100644
index d7e7206..0000000
Binary files a/src/src/app/build/intermediates/packaged_res/debug/drawable-hdpi-v4/list_blue_single.9.png and /dev/null differ
diff --git a/src/src/app/build/intermediates/packaged_res/debug/drawable-hdpi-v4/list_blue_up.9.png b/src/src/app/build/intermediates/packaged_res/debug/drawable-hdpi-v4/list_blue_up.9.png
deleted file mode 100644
index 632e88c..0000000
Binary files a/src/src/app/build/intermediates/packaged_res/debug/drawable-hdpi-v4/list_blue_up.9.png and /dev/null differ
diff --git a/src/src/app/build/intermediates/packaged_res/debug/drawable-hdpi-v4/list_folder.9.png b/src/src/app/build/intermediates/packaged_res/debug/drawable-hdpi-v4/list_folder.9.png
deleted file mode 100644
index 829f61b..0000000
Binary files a/src/src/app/build/intermediates/packaged_res/debug/drawable-hdpi-v4/list_folder.9.png and /dev/null differ
diff --git a/src/src/app/build/intermediates/packaged_res/debug/drawable-hdpi-v4/list_footer_bg.9.png b/src/src/app/build/intermediates/packaged_res/debug/drawable-hdpi-v4/list_footer_bg.9.png
deleted file mode 100644
index 5325c25..0000000
Binary files a/src/src/app/build/intermediates/packaged_res/debug/drawable-hdpi-v4/list_footer_bg.9.png and /dev/null differ
diff --git a/src/src/app/build/intermediates/packaged_res/debug/drawable-hdpi-v4/list_green_down.9.png b/src/src/app/build/intermediates/packaged_res/debug/drawable-hdpi-v4/list_green_down.9.png
deleted file mode 100644
index 64a39d9..0000000
Binary files a/src/src/app/build/intermediates/packaged_res/debug/drawable-hdpi-v4/list_green_down.9.png and /dev/null differ
diff --git a/src/src/app/build/intermediates/packaged_res/debug/drawable-hdpi-v4/list_green_middle.9.png b/src/src/app/build/intermediates/packaged_res/debug/drawable-hdpi-v4/list_green_middle.9.png
deleted file mode 100644
index 897325a..0000000
Binary files a/src/src/app/build/intermediates/packaged_res/debug/drawable-hdpi-v4/list_green_middle.9.png and /dev/null differ
diff --git a/src/src/app/build/intermediates/packaged_res/debug/drawable-hdpi-v4/list_green_single.9.png b/src/src/app/build/intermediates/packaged_res/debug/drawable-hdpi-v4/list_green_single.9.png
deleted file mode 100644
index c83405f..0000000
Binary files a/src/src/app/build/intermediates/packaged_res/debug/drawable-hdpi-v4/list_green_single.9.png and /dev/null differ
diff --git a/src/src/app/build/intermediates/packaged_res/debug/drawable-hdpi-v4/list_green_up.9.png b/src/src/app/build/intermediates/packaged_res/debug/drawable-hdpi-v4/list_green_up.9.png
deleted file mode 100644
index 141f9e1..0000000
Binary files a/src/src/app/build/intermediates/packaged_res/debug/drawable-hdpi-v4/list_green_up.9.png and /dev/null differ
diff --git a/src/src/app/build/intermediates/packaged_res/debug/drawable-hdpi-v4/list_red_down.9.png b/src/src/app/build/intermediates/packaged_res/debug/drawable-hdpi-v4/list_red_down.9.png
deleted file mode 100644
index 4224309..0000000
Binary files a/src/src/app/build/intermediates/packaged_res/debug/drawable-hdpi-v4/list_red_down.9.png and /dev/null differ
diff --git a/src/src/app/build/intermediates/packaged_res/debug/drawable-hdpi-v4/list_red_middle.9.png b/src/src/app/build/intermediates/packaged_res/debug/drawable-hdpi-v4/list_red_middle.9.png
deleted file mode 100644
index 9988f17..0000000
Binary files a/src/src/app/build/intermediates/packaged_res/debug/drawable-hdpi-v4/list_red_middle.9.png and /dev/null differ
diff --git a/src/src/app/build/intermediates/packaged_res/debug/drawable-hdpi-v4/list_red_single.9.png b/src/src/app/build/intermediates/packaged_res/debug/drawable-hdpi-v4/list_red_single.9.png
deleted file mode 100644
index 587c348..0000000
Binary files a/src/src/app/build/intermediates/packaged_res/debug/drawable-hdpi-v4/list_red_single.9.png and /dev/null differ
diff --git a/src/src/app/build/intermediates/packaged_res/debug/drawable-hdpi-v4/list_red_up.9.png b/src/src/app/build/intermediates/packaged_res/debug/drawable-hdpi-v4/list_red_up.9.png
deleted file mode 100644
index 46b4757..0000000
Binary files a/src/src/app/build/intermediates/packaged_res/debug/drawable-hdpi-v4/list_red_up.9.png and /dev/null differ
diff --git a/src/src/app/build/intermediates/packaged_res/debug/drawable-hdpi-v4/list_white_down.9.png b/src/src/app/build/intermediates/packaged_res/debug/drawable-hdpi-v4/list_white_down.9.png
deleted file mode 100644
index 29f9d8c..0000000
Binary files a/src/src/app/build/intermediates/packaged_res/debug/drawable-hdpi-v4/list_white_down.9.png and /dev/null differ
diff --git a/src/src/app/build/intermediates/packaged_res/debug/drawable-hdpi-v4/list_white_middle.9.png b/src/src/app/build/intermediates/packaged_res/debug/drawable-hdpi-v4/list_white_middle.9.png
deleted file mode 100644
index 77a4ab4..0000000
Binary files a/src/src/app/build/intermediates/packaged_res/debug/drawable-hdpi-v4/list_white_middle.9.png and /dev/null differ
diff --git a/src/src/app/build/intermediates/packaged_res/debug/drawable-hdpi-v4/list_white_single.9.png b/src/src/app/build/intermediates/packaged_res/debug/drawable-hdpi-v4/list_white_single.9.png
deleted file mode 100644
index 3e79189..0000000
Binary files a/src/src/app/build/intermediates/packaged_res/debug/drawable-hdpi-v4/list_white_single.9.png and /dev/null differ
diff --git a/src/src/app/build/intermediates/packaged_res/debug/drawable-hdpi-v4/list_white_up.9.png b/src/src/app/build/intermediates/packaged_res/debug/drawable-hdpi-v4/list_white_up.9.png
deleted file mode 100644
index e23cd5c..0000000
Binary files a/src/src/app/build/intermediates/packaged_res/debug/drawable-hdpi-v4/list_white_up.9.png and /dev/null differ
diff --git a/src/src/app/build/intermediates/packaged_res/debug/drawable-hdpi-v4/list_yellow_down.9.png b/src/src/app/build/intermediates/packaged_res/debug/drawable-hdpi-v4/list_yellow_down.9.png
deleted file mode 100644
index 31cfc1e..0000000
Binary files a/src/src/app/build/intermediates/packaged_res/debug/drawable-hdpi-v4/list_yellow_down.9.png and /dev/null differ
diff --git a/src/src/app/build/intermediates/packaged_res/debug/drawable-hdpi-v4/list_yellow_middle.9.png b/src/src/app/build/intermediates/packaged_res/debug/drawable-hdpi-v4/list_yellow_middle.9.png
deleted file mode 100644
index b6549b2..0000000
Binary files a/src/src/app/build/intermediates/packaged_res/debug/drawable-hdpi-v4/list_yellow_middle.9.png and /dev/null differ
diff --git a/src/src/app/build/intermediates/packaged_res/debug/drawable-hdpi-v4/list_yellow_single.9.png b/src/src/app/build/intermediates/packaged_res/debug/drawable-hdpi-v4/list_yellow_single.9.png
deleted file mode 100644
index 3faf507..0000000
Binary files a/src/src/app/build/intermediates/packaged_res/debug/drawable-hdpi-v4/list_yellow_single.9.png and /dev/null differ
diff --git a/src/src/app/build/intermediates/packaged_res/debug/drawable-hdpi-v4/list_yellow_up.9.png b/src/src/app/build/intermediates/packaged_res/debug/drawable-hdpi-v4/list_yellow_up.9.png
deleted file mode 100644
index 4ae791c..0000000
Binary files a/src/src/app/build/intermediates/packaged_res/debug/drawable-hdpi-v4/list_yellow_up.9.png and /dev/null differ
diff --git a/src/src/app/build/intermediates/packaged_res/debug/drawable-hdpi-v4/menu_delete.png b/src/src/app/build/intermediates/packaged_res/debug/drawable-hdpi-v4/menu_delete.png
deleted file mode 100644
index ccdfc4b..0000000
Binary files a/src/src/app/build/intermediates/packaged_res/debug/drawable-hdpi-v4/menu_delete.png and /dev/null differ
diff --git a/src/src/app/build/intermediates/packaged_res/debug/drawable-hdpi-v4/menu_move.png b/src/src/app/build/intermediates/packaged_res/debug/drawable-hdpi-v4/menu_move.png
deleted file mode 100644
index 1140b71..0000000
Binary files a/src/src/app/build/intermediates/packaged_res/debug/drawable-hdpi-v4/menu_move.png and /dev/null differ
diff --git a/src/src/app/build/intermediates/packaged_res/debug/drawable-hdpi-v4/new_note_normal.png b/src/src/app/build/intermediates/packaged_res/debug/drawable-hdpi-v4/new_note_normal.png
deleted file mode 100644
index e24e0d1..0000000
Binary files a/src/src/app/build/intermediates/packaged_res/debug/drawable-hdpi-v4/new_note_normal.png and /dev/null differ
diff --git a/src/src/app/build/intermediates/packaged_res/debug/drawable-hdpi-v4/new_note_pressed.png b/src/src/app/build/intermediates/packaged_res/debug/drawable-hdpi-v4/new_note_pressed.png
deleted file mode 100644
index c748936..0000000
Binary files a/src/src/app/build/intermediates/packaged_res/debug/drawable-hdpi-v4/new_note_pressed.png and /dev/null differ
diff --git a/src/src/app/build/intermediates/packaged_res/debug/drawable-hdpi-v4/note_edit_color_selector_panel.png b/src/src/app/build/intermediates/packaged_res/debug/drawable-hdpi-v4/note_edit_color_selector_panel.png
deleted file mode 100644
index fc49552..0000000
Binary files a/src/src/app/build/intermediates/packaged_res/debug/drawable-hdpi-v4/note_edit_color_selector_panel.png and /dev/null differ
diff --git a/src/src/app/build/intermediates/packaged_res/debug/drawable-hdpi-v4/search_result.png b/src/src/app/build/intermediates/packaged_res/debug/drawable-hdpi-v4/search_result.png
deleted file mode 100644
index ff2befd..0000000
Binary files a/src/src/app/build/intermediates/packaged_res/debug/drawable-hdpi-v4/search_result.png and /dev/null differ
diff --git a/src/src/app/build/intermediates/packaged_res/debug/drawable-hdpi-v4/selected.png b/src/src/app/build/intermediates/packaged_res/debug/drawable-hdpi-v4/selected.png
deleted file mode 100644
index b889bef..0000000
Binary files a/src/src/app/build/intermediates/packaged_res/debug/drawable-hdpi-v4/selected.png and /dev/null differ
diff --git a/src/src/app/build/intermediates/packaged_res/debug/drawable-hdpi-v4/title_alert.png b/src/src/app/build/intermediates/packaged_res/debug/drawable-hdpi-v4/title_alert.png
deleted file mode 100644
index 544ee9c..0000000
Binary files a/src/src/app/build/intermediates/packaged_res/debug/drawable-hdpi-v4/title_alert.png and /dev/null differ
diff --git a/src/src/app/build/intermediates/packaged_res/debug/drawable-hdpi-v4/title_bar_bg.9.png b/src/src/app/build/intermediates/packaged_res/debug/drawable-hdpi-v4/title_bar_bg.9.png
deleted file mode 100644
index eb6bff0..0000000
Binary files a/src/src/app/build/intermediates/packaged_res/debug/drawable-hdpi-v4/title_bar_bg.9.png and /dev/null differ
diff --git a/src/src/app/build/intermediates/packaged_res/debug/drawable-hdpi-v4/widget_2x_blue.png b/src/src/app/build/intermediates/packaged_res/debug/drawable-hdpi-v4/widget_2x_blue.png
deleted file mode 100644
index a1707f4..0000000
Binary files a/src/src/app/build/intermediates/packaged_res/debug/drawable-hdpi-v4/widget_2x_blue.png and /dev/null differ
diff --git a/src/src/app/build/intermediates/packaged_res/debug/drawable-hdpi-v4/widget_2x_green.png b/src/src/app/build/intermediates/packaged_res/debug/drawable-hdpi-v4/widget_2x_green.png
deleted file mode 100644
index f86886c..0000000
Binary files a/src/src/app/build/intermediates/packaged_res/debug/drawable-hdpi-v4/widget_2x_green.png and /dev/null differ
diff --git a/src/src/app/build/intermediates/packaged_res/debug/drawable-hdpi-v4/widget_2x_red.png b/src/src/app/build/intermediates/packaged_res/debug/drawable-hdpi-v4/widget_2x_red.png
deleted file mode 100644
index 0e66c29..0000000
Binary files a/src/src/app/build/intermediates/packaged_res/debug/drawable-hdpi-v4/widget_2x_red.png and /dev/null differ
diff --git a/src/src/app/build/intermediates/packaged_res/debug/drawable-hdpi-v4/widget_2x_white.png b/src/src/app/build/intermediates/packaged_res/debug/drawable-hdpi-v4/widget_2x_white.png
deleted file mode 100644
index 5f0619a..0000000
Binary files a/src/src/app/build/intermediates/packaged_res/debug/drawable-hdpi-v4/widget_2x_white.png and /dev/null differ
diff --git a/src/src/app/build/intermediates/packaged_res/debug/drawable-hdpi-v4/widget_2x_yellow.png b/src/src/app/build/intermediates/packaged_res/debug/drawable-hdpi-v4/widget_2x_yellow.png
deleted file mode 100644
index 12d1c2b..0000000
Binary files a/src/src/app/build/intermediates/packaged_res/debug/drawable-hdpi-v4/widget_2x_yellow.png and /dev/null differ
diff --git a/src/src/app/build/intermediates/packaged_res/debug/drawable-hdpi-v4/widget_4x_blue.png b/src/src/app/build/intermediates/packaged_res/debug/drawable-hdpi-v4/widget_4x_blue.png
deleted file mode 100644
index 9183738..0000000
Binary files a/src/src/app/build/intermediates/packaged_res/debug/drawable-hdpi-v4/widget_4x_blue.png and /dev/null differ
diff --git a/src/src/app/build/intermediates/packaged_res/debug/drawable-hdpi-v4/widget_4x_green.png b/src/src/app/build/intermediates/packaged_res/debug/drawable-hdpi-v4/widget_4x_green.png
deleted file mode 100644
index fa8b452..0000000
Binary files a/src/src/app/build/intermediates/packaged_res/debug/drawable-hdpi-v4/widget_4x_green.png and /dev/null differ
diff --git a/src/src/app/build/intermediates/packaged_res/debug/drawable-hdpi-v4/widget_4x_red.png b/src/src/app/build/intermediates/packaged_res/debug/drawable-hdpi-v4/widget_4x_red.png
deleted file mode 100644
index 62de074..0000000
Binary files a/src/src/app/build/intermediates/packaged_res/debug/drawable-hdpi-v4/widget_4x_red.png and /dev/null differ
diff --git a/src/src/app/build/intermediates/packaged_res/debug/drawable-hdpi-v4/widget_4x_white.png b/src/src/app/build/intermediates/packaged_res/debug/drawable-hdpi-v4/widget_4x_white.png
deleted file mode 100644
index a37d67c..0000000
Binary files a/src/src/app/build/intermediates/packaged_res/debug/drawable-hdpi-v4/widget_4x_white.png and /dev/null differ
diff --git a/src/src/app/build/intermediates/packaged_res/debug/drawable-hdpi-v4/widget_4x_yellow.png b/src/src/app/build/intermediates/packaged_res/debug/drawable-hdpi-v4/widget_4x_yellow.png
deleted file mode 100644
index d7c5fa4..0000000
Binary files a/src/src/app/build/intermediates/packaged_res/debug/drawable-hdpi-v4/widget_4x_yellow.png and /dev/null differ
diff --git a/src/src/app/build/intermediates/packaged_res/debug/drawable/new_note.xml b/src/src/app/build/intermediates/packaged_res/debug/drawable/new_note.xml
deleted file mode 100644
index f385747..0000000
--- a/src/src/app/build/intermediates/packaged_res/debug/drawable/new_note.xml
+++ /dev/null
@@ -1,34 +0,0 @@
-
-
-
-
-
-
-
-
diff --git a/src/src/app/build/intermediates/packaged_res/debug/layout/account_dialog_title.xml b/src/src/app/build/intermediates/packaged_res/debug/layout/account_dialog_title.xml
deleted file mode 100644
index 7717112..0000000
--- a/src/src/app/build/intermediates/packaged_res/debug/layout/account_dialog_title.xml
+++ /dev/null
@@ -1,43 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/src/src/app/build/intermediates/packaged_res/debug/layout/add_account_text.xml b/src/src/app/build/intermediates/packaged_res/debug/layout/add_account_text.xml
deleted file mode 100644
index c799178..0000000
--- a/src/src/app/build/intermediates/packaged_res/debug/layout/add_account_text.xml
+++ /dev/null
@@ -1,32 +0,0 @@
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/src/src/app/build/intermediates/packaged_res/debug/layout/datetime_picker.xml b/src/src/app/build/intermediates/packaged_res/debug/layout/datetime_picker.xml
deleted file mode 100644
index f10d592..0000000
--- a/src/src/app/build/intermediates/packaged_res/debug/layout/datetime_picker.xml
+++ /dev/null
@@ -1,56 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/src/src/app/build/intermediates/packaged_res/debug/layout/dialog_edit_text.xml b/src/src/app/build/intermediates/packaged_res/debug/layout/dialog_edit_text.xml
deleted file mode 100644
index 361b39a..0000000
--- a/src/src/app/build/intermediates/packaged_res/debug/layout/dialog_edit_text.xml
+++ /dev/null
@@ -1,23 +0,0 @@
-
-
-
-
-
\ No newline at end of file
diff --git a/src/src/app/build/intermediates/packaged_res/debug/layout/folder_list_item.xml b/src/src/app/build/intermediates/packaged_res/debug/layout/folder_list_item.xml
deleted file mode 100644
index 77e8148..0000000
--- a/src/src/app/build/intermediates/packaged_res/debug/layout/folder_list_item.xml
+++ /dev/null
@@ -1,29 +0,0 @@
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/src/src/app/build/intermediates/packaged_res/debug/layout/note_edit.xml b/src/src/app/build/intermediates/packaged_res/debug/layout/note_edit.xml
deleted file mode 100644
index 0ad08d4..0000000
--- a/src/src/app/build/intermediates/packaged_res/debug/layout/note_edit.xml
+++ /dev/null
@@ -1,465 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/src/src/app/build/intermediates/packaged_res/debug/layout/note_edit_list_item.xml b/src/src/app/build/intermediates/packaged_res/debug/layout/note_edit_list_item.xml
deleted file mode 100644
index a885f9c..0000000
--- a/src/src/app/build/intermediates/packaged_res/debug/layout/note_edit_list_item.xml
+++ /dev/null
@@ -1,39 +0,0 @@
-
-
-
-
-
-
-
-
-
-
diff --git a/src/src/app/build/intermediates/packaged_res/debug/layout/note_item.xml b/src/src/app/build/intermediates/packaged_res/debug/layout/note_item.xml
deleted file mode 100644
index d541f6a..0000000
--- a/src/src/app/build/intermediates/packaged_res/debug/layout/note_item.xml
+++ /dev/null
@@ -1,78 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/src/src/app/build/intermediates/packaged_res/debug/layout/note_list.xml b/src/src/app/build/intermediates/packaged_res/debug/layout/note_list.xml
deleted file mode 100644
index 227c36e..0000000
--- a/src/src/app/build/intermediates/packaged_res/debug/layout/note_list.xml
+++ /dev/null
@@ -1,57 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/src/src/app/build/intermediates/packaged_res/debug/layout/note_list_dropdown_menu.xml b/src/src/app/build/intermediates/packaged_res/debug/layout/note_list_dropdown_menu.xml
deleted file mode 100644
index 3fa271d..0000000
--- a/src/src/app/build/intermediates/packaged_res/debug/layout/note_list_dropdown_menu.xml
+++ /dev/null
@@ -1,32 +0,0 @@
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/src/src/app/build/intermediates/packaged_res/debug/layout/note_list_footer.xml b/src/src/app/build/intermediates/packaged_res/debug/layout/note_list_footer.xml
deleted file mode 100644
index 5ca7b22..0000000
--- a/src/src/app/build/intermediates/packaged_res/debug/layout/note_list_footer.xml
+++ /dev/null
@@ -1,24 +0,0 @@
-
-
-
-
-
\ No newline at end of file
diff --git a/src/src/app/build/intermediates/packaged_res/debug/layout/settings_header.xml b/src/src/app/build/intermediates/packaged_res/debug/layout/settings_header.xml
deleted file mode 100644
index 5eb8c50..0000000
--- a/src/src/app/build/intermediates/packaged_res/debug/layout/settings_header.xml
+++ /dev/null
@@ -1,41 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/src/src/app/build/intermediates/packaged_res/debug/layout/widget_2x.xml b/src/src/app/build/intermediates/packaged_res/debug/layout/widget_2x.xml
deleted file mode 100644
index 55970ce..0000000
--- a/src/src/app/build/intermediates/packaged_res/debug/layout/widget_2x.xml
+++ /dev/null
@@ -1,37 +0,0 @@
-
-
-
-
-
-
-
-
diff --git a/src/src/app/build/intermediates/packaged_res/debug/layout/widget_4x.xml b/src/src/app/build/intermediates/packaged_res/debug/layout/widget_4x.xml
deleted file mode 100644
index dc9bb51..0000000
--- a/src/src/app/build/intermediates/packaged_res/debug/layout/widget_4x.xml
+++ /dev/null
@@ -1,39 +0,0 @@
-
-
-
-
-
-
-
-
-
-
diff --git a/src/src/app/build/intermediates/packaged_res/debug/menu/call_note_edit.xml b/src/src/app/build/intermediates/packaged_res/debug/menu/call_note_edit.xml
deleted file mode 100644
index 02c0528..0000000
--- a/src/src/app/build/intermediates/packaged_res/debug/menu/call_note_edit.xml
+++ /dev/null
@@ -1,48 +0,0 @@
-
-
-
-
-
diff --git a/src/src/app/build/intermediates/packaged_res/debug/menu/call_record_folder.xml b/src/src/app/build/intermediates/packaged_res/debug/menu/call_record_folder.xml
deleted file mode 100644
index c664346..0000000
--- a/src/src/app/build/intermediates/packaged_res/debug/menu/call_record_folder.xml
+++ /dev/null
@@ -1,23 +0,0 @@
-
-
-
-
-
diff --git a/src/src/app/build/intermediates/packaged_res/debug/menu/note_edit.xml b/src/src/app/build/intermediates/packaged_res/debug/menu/note_edit.xml
deleted file mode 100644
index 72ad2a5..0000000
--- a/src/src/app/build/intermediates/packaged_res/debug/menu/note_edit.xml
+++ /dev/null
@@ -1,72 +0,0 @@
-
-
-
-
-
-
\ No newline at end of file
diff --git a/src/src/app/build/intermediates/packaged_res/debug/menu/note_list.xml b/src/src/app/build/intermediates/packaged_res/debug/menu/note_list.xml
deleted file mode 100644
index 9a61ba2..0000000
--- a/src/src/app/build/intermediates/packaged_res/debug/menu/note_list.xml
+++ /dev/null
@@ -1,53 +0,0 @@
-
-
-
-
-
diff --git a/src/src/app/build/intermediates/packaged_res/debug/menu/note_list_dropdown.xml b/src/src/app/build/intermediates/packaged_res/debug/menu/note_list_dropdown.xml
deleted file mode 100644
index 7cbaadc..0000000
--- a/src/src/app/build/intermediates/packaged_res/debug/menu/note_list_dropdown.xml
+++ /dev/null
@@ -1,20 +0,0 @@
-
-
-
-
-
\ No newline at end of file
diff --git a/src/src/app/build/intermediates/packaged_res/debug/menu/note_list_options.xml b/src/src/app/build/intermediates/packaged_res/debug/menu/note_list_options.xml
deleted file mode 100644
index daac008..0000000
--- a/src/src/app/build/intermediates/packaged_res/debug/menu/note_list_options.xml
+++ /dev/null
@@ -1,31 +0,0 @@
-
-
-
-
-
\ No newline at end of file
diff --git a/src/src/app/build/intermediates/packaged_res/debug/menu/sub_folder.xml b/src/src/app/build/intermediates/packaged_res/debug/menu/sub_folder.xml
deleted file mode 100644
index b00de26..0000000
--- a/src/src/app/build/intermediates/packaged_res/debug/menu/sub_folder.xml
+++ /dev/null
@@ -1,24 +0,0 @@
-
-
-
-
-
\ No newline at end of file
diff --git a/src/src/app/build/intermediates/packaged_res/debug/raw-zh-rCN/introduction b/src/src/app/build/intermediates/packaged_res/debug/raw-zh-rCN/introduction
deleted file mode 100644
index 7188359..0000000
--- a/src/src/app/build/intermediates/packaged_res/debug/raw-zh-rCN/introduction
+++ /dev/null
@@ -1,7 +0,0 @@
-欢迎使用MIUI便签!
-
- 无论从软件中直接添加,还是从桌面拖出widget,MIUI便签能让你快速建立和保存便签;
-
- 除了调整文字大小、便签背景、文件夹等基础功能外,你会发现MIUI便签也提供了清单模式、便签提醒、软件加密、导出到SD卡、同步google task的高级功能,让你的生活记录更加美好和安全;
-
- 来分享你的使用体验吧:http://www.miui.com/index.php
diff --git a/src/src/app/build/intermediates/packaged_res/debug/raw/introduction b/src/src/app/build/intermediates/packaged_res/debug/raw/introduction
deleted file mode 100644
index 269cf7b..0000000
--- a/src/src/app/build/intermediates/packaged_res/debug/raw/introduction
+++ /dev/null
@@ -1 +0,0 @@
-Welcome to use MIUI notes!
\ No newline at end of file
diff --git a/src/src/app/build/intermediates/packaged_res/debug/values-zh-rCN/values-zh-rCN.xml b/src/src/app/build/intermediates/packaged_res/debug/values-zh-rCN/values-zh-rCN.xml
deleted file mode 100644
index c9078bb..0000000
--- a/src/src/app/build/intermediates/packaged_res/debug/values-zh-rCN/values-zh-rCN.xml
+++ /dev/null
@@ -1,116 +0,0 @@
-
-
-
- 短信
- 邮件
-
-
- %1$s 条符合“%2$s”的搜索结果
-
- 确认删除文件夹及所包含的便签吗?
- 确认要删除该条便签吗?
- 确认要删除所选的 %d 条便签吗?
- 删除
- 便签
- 便签2x2
- 便签4x4
- 删除
- 通话便签
- 你不能撤销了
- 取消
- 设置
- 成功删除提醒
- 不能为空便签设置闹钟提醒
- 不能将空便签发送到桌面
- 要查看的便签不存在
- 导出文本时发生错误,请检查SD卡
- SD卡被占用,不能操作
- 同步已取消
- 同步失败,发生内部错误
- 同步失败,请检查网络和帐号设置
- 导出失败
- 文件夹 %1$s 已存在,请重新命名
- yyyyMMdd
- MM月dd日 kk:mm
- 已将文本文件(%1$s)输出至SD卡(%2$s)目录
- 已将所选 %1$d 条便签移到 %2$s 文件夹
- 您还没有输入任何内容
- 请输入名称
- delete_passcode
- set_passcode
- 已添加到桌面
- 提醒我
- 新建文件夹
- 删除
- 取消全选
- 导出文本
- 修改文件夹名称
- 刪除文件夹
- 查看文件夹
- 大
- 正常
- 选择字体
- 文字大小
- 小
- 超大
- 进入清单模式
- 移动到文件夹
- 上一级文件夹
- 退出清单模式
- 删除提醒
- 撤销
- 搜索
- 全选
- 没有选中项,操作无效
- 选中了 %d 项
- 发送到桌面
- 设置
- 分享
- 同步
- 取消同步
- 选择文件夹
- 读便签
- 已过期
- 发送邮件
- 打开地图
- 呼叫电话
- 浏览网页
- 查看
- 知道了
- 新建便签
- ...
- 与google task同步便签记录
- 同步账号
- 添加账号
- 新建便签背景颜色随机
- 取消同步
- 立即同步
- 当前帐号 %1$s
- 如更换同步帐号,过去的帐号同步信息将被清空,再次切换的同时可能会造成数据重复
- 请选择google帐号,便签将与该帐号的google task内容同步。
- 同步便签
- 上次同步于 %1$s
- 取消
- 更换账号
- 删除账号
- 设置
- 正在同步中,不能修改同步帐号
- 同步帐号已设置为%1$s
- 便签
- 搜索便签
- 正在搜索便签
- 便签中的文字
- 创建提醒
- 导出成功
- 与%1$s同步成功
- 正在获取服务器便签列表...
- 登录%1$s...
- 正在同步本地便签...
- 同步已取消
- 同步失败
- 同步成功
- 同步便签...
- 提示
- 没有关联内容,点击新建便签。
- 访客模式下,便签内容不可见
-
\ No newline at end of file
diff --git a/src/src/app/build/intermediates/packaged_res/debug/values-zh-rTW/values-zh-rTW.xml b/src/src/app/build/intermediates/packaged_res/debug/values-zh-rTW/values-zh-rTW.xml
deleted file mode 100644
index dc1174a..0000000
--- a/src/src/app/build/intermediates/packaged_res/debug/values-zh-rTW/values-zh-rTW.xml
+++ /dev/null
@@ -1,110 +0,0 @@
-
-
-
- 短信
- 郵件
-
-
- %1$s 條符合”%2$s“的搜尋結果
-
- 確認刪除檔夾及所包含的便簽嗎?
- 确认要删除該條便籤嗎?
- 确认要刪除所選的 %d 條便籤嗎?
- 刪除
- 便簽
- 便簽2x2
- 便簽4x4
- 刪除
- 通話便籤
- 取消
- 設置
- 成功刪除提醒
- 不能爲空便籤設置鬧鐘提醒
- 不能將空便籤發送到桌面
- 要查看的便籤不存在
- 導出TXT時發生錯誤,請檢查SD卡
- SD卡被佔用,不能操作
- 同步已取消
- 同步失敗,發生內部錯誤
- 同步失敗,請檢查網絡和帳號設置
- 導出失敗
- 文件夾 %1$s 已存在,請重新命名
- yyyyMMdd
- MM月dd日 kk:mm
- 已將文本文件(%1$s)導出至SD(%2$s)目錄
- 已將所選 %1$d 便籤移到 %2$s 文件夾
- 請輸入名稱
- delete_passcode
- set_passcode
- 已添加到桌面
- 提醒我
- 新建文件夾
- 刪除
- 取消全選
- 導出文本
- 修改文件夾名稱
- 刪除文件夾
- 查看文件夾
- 大
- 正常
- 文字大小
- 小
- 超大
- 進入清單模式
- 移動到文件夾
- 上一級文件夾
- 退出清單模式
- 刪除提醒
- 搜尋
- 全選
- 沒有選中項,操作無效
- 選中了 %d 項
- 發送到桌面
- 設置
- 分享
- 同步
- 取消同步
- 選擇文件夾
- 已過期
- 發送郵件
- 打開地圖
- 呼叫電話
- 浏覽網頁
- 查看
- 知道了
- 新建便簽
- ...
- 与google task同步便簽記錄
- 同步賬號
- 添加賬號
- 新建便籤背景顏色隨機
- 取消同步
- 立即同步
- 當前帳號 %1$s
- 如更換同步帳號,過去的帳號同步信息將被清空,再次切換的同時可能會造成數據重復
- 請選擇google帳號,便簽將與該帳號的google task內容同步。
- 同步便簽
- 上次同步于 %1$s
- 取消
- 更換賬號
- 刪除賬號
- 設置
- 正在同步中,不能修改同步帳號
- 同步帳號已設置為%1$s
- 便籤
- 搜索便籤
- 正在搜索便籤
- 便籤中的文字
- 創建提醒
- 導出成功
- 與%1$s同步成功
- 正在獲取服務器便籤列表...
- 登陸%1$s...
- 正在同步本地便籤...
- 同步已取消
- 同步失敗
- 同步成功
- 同步便簽...
- 沒有關聯內容,點擊新建便簽。
- 訪客模式下,便籤內容不可見
-
\ No newline at end of file
diff --git a/src/src/app/build/intermediates/packaged_res/debug/values/values.xml b/src/src/app/build/intermediates/packaged_res/debug/values/values.xml
deleted file mode 100644
index 1328cfd..0000000
--- a/src/src/app/build/intermediates/packaged_res/debug/values/values.xml
+++ /dev/null
@@ -1,180 +0,0 @@
-
-
-
- -%s
- --%s
- --%s
- --%s
-
-
- Messaging
- Email
-
- #335b5b5b
- 26sp
- 20sp
- 17sp
- 14sp
- 33sp
-
-
- %1$s result for \"%2$s\"
-
- %1$s results for \"%2$s\"
-
- Confirm to delete folder and its notes?
- Confirm to delete this note?
- Confirm to delete the selected %d notes?
- Delete selected notes
- Notes
- Notes 2x2
- Notes 4x4
- Delete
- Call notes
- You can not revoke
- cancel
- set
- Delete reminder successfully
- Sorry, can not set clock on empty note
- Sorry, can not send and empty note to home
- The note is not exist
- Export failed, please check SD card
- SD card busy, not available now
- Sync is canceled
- Sync failed, internal error occurs
- Sync failed, please check network and account settings
- Export fail
- notes_%s.txt
- /MIUI/notes/
- The folder %1$s exist, please rename
- yyyyMMdd
- MMMd kk:mm
- Export text file (%1$s) to SD (%2$s) directory
- (%d)
- Have moved selected %1$d notes to %2$s folder
- You have not input anything
- Input name
- delete_passcode
- set_passcode
- Note added to home
- Remind me
- g780
- gao
- New Folder
- Delete
- Deselect all
- Export text
- Change folder name
- Delete folder
- View folder
- Large
- Medium
- font_select
- Font size
- Small
- Super
- Enter check list
- Move to folder
- Parent folder
- Leave check list
- Delete reminder
- Revoke
- Search
- Select all
- Nothing selected, the operation is invalid
- %d selected
- Send to home
- Settings
- Share
- Sync
- Cancel syncing
- Select folder
- Read notes
- Expired
- Send email
- Open map
- Call
- Browse web
- Take a look
- Got it
- Add note
- ...
- Sync notes with google task
- Sync account
- Add account
- New note background color random
- Cancel syncing
- Sync immediately
- Current account %1$s
- All sync related information will be deleted, which may result in duplicated items sometime
- Please select a google account. Local notes will be synced with google task.
- Sync notes
- Last sync time %1$s
- yyyy-MM-dd hh:mm:ss
- Cancel
- Change sync account
- Remove sync account
- Settings
- Cannot change the account because sync is in progress
- %1$s has been set as the sync account
- Notes
- Search notes
- Searching Notes
- Text in your notes
- Set reminder
- Export successful
- Sync is successful with account %1$s
- Getting remote note list...
- Logging into %1$s...
- Synchronize local notes with Google Task...
- Sync is canceled
- Sync is failed
- Sync is successful
- Syncing notes...
- Tips
- No associated note found, click to create associated note.
- Privacy mode,can not see note content
-
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/src/src/app/build/intermediates/packaged_res/debug/xml/preferences.xml b/src/src/app/build/intermediates/packaged_res/debug/xml/preferences.xml
deleted file mode 100644
index fe58f8f..0000000
--- a/src/src/app/build/intermediates/packaged_res/debug/xml/preferences.xml
+++ /dev/null
@@ -1,30 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/src/src/app/build/intermediates/packaged_res/debug/xml/searchable.xml b/src/src/app/build/intermediates/packaged_res/debug/xml/searchable.xml
deleted file mode 100644
index bf74f14..0000000
--- a/src/src/app/build/intermediates/packaged_res/debug/xml/searchable.xml
+++ /dev/null
@@ -1,27 +0,0 @@
-
-
-
-
-
diff --git a/src/src/app/build/intermediates/packaged_res/debug/xml/widget_2x_info.xml b/src/src/app/build/intermediates/packaged_res/debug/xml/widget_2x_info.xml
deleted file mode 100644
index ac8b225..0000000
--- a/src/src/app/build/intermediates/packaged_res/debug/xml/widget_2x_info.xml
+++ /dev/null
@@ -1,23 +0,0 @@
-
-
-
-
-
-
diff --git a/src/src/app/build/intermediates/packaged_res/debug/xml/widget_4x_info.xml b/src/src/app/build/intermediates/packaged_res/debug/xml/widget_4x_info.xml
deleted file mode 100644
index cf79f9c..0000000
--- a/src/src/app/build/intermediates/packaged_res/debug/xml/widget_4x_info.xml
+++ /dev/null
@@ -1,23 +0,0 @@
-
-
-
-
-
-
diff --git a/src/src/app/build/intermediates/processed_res/debug/out/output-metadata.json b/src/src/app/build/intermediates/processed_res/debug/out/output-metadata.json
deleted file mode 100644
index 1eefece..0000000
--- a/src/src/app/build/intermediates/processed_res/debug/out/output-metadata.json
+++ /dev/null
@@ -1,20 +0,0 @@
-{
- "version": 3,
- "artifactType": {
- "type": "PROCESSED_RES",
- "kind": "Directory"
- },
- "applicationId": "net.micode.notes",
- "variantName": "debug",
- "elements": [
- {
- "type": "SINGLE",
- "filters": [],
- "attributes": [],
- "versionCode": 1,
- "versionName": "0.1",
- "outputFile": "resources-debug.ap_"
- }
- ],
- "elementType": "File"
-}
\ No newline at end of file
diff --git a/src/src/app/build/intermediates/processed_res/debug/out/resources-debug.ap_ b/src/src/app/build/intermediates/processed_res/debug/out/resources-debug.ap_
deleted file mode 100644
index 4ee3193..0000000
Binary files a/src/src/app/build/intermediates/processed_res/debug/out/resources-debug.ap_ and /dev/null differ
diff --git a/src/src/app/build/intermediates/project_dex_archive/debug/out/302b9309047f088d55a54ee8b3df65fdbfbebf7ace218426b86fb4f1cf3bbce6_5.jar b/src/src/app/build/intermediates/project_dex_archive/debug/out/302b9309047f088d55a54ee8b3df65fdbfbebf7ace218426b86fb4f1cf3bbce6_5.jar
deleted file mode 100644
index 999ddf7..0000000
Binary files a/src/src/app/build/intermediates/project_dex_archive/debug/out/302b9309047f088d55a54ee8b3df65fdbfbebf7ace218426b86fb4f1cf3bbce6_5.jar and /dev/null differ
diff --git a/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/data/Contact.dex b/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/data/Contact.dex
deleted file mode 100644
index 4a6ddbd..0000000
Binary files a/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/data/Contact.dex and /dev/null differ
diff --git a/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/data/Notes$CallNote.dex b/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/data/Notes$CallNote.dex
deleted file mode 100644
index 0c85f3e..0000000
Binary files a/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/data/Notes$CallNote.dex and /dev/null differ
diff --git a/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/data/Notes$DataColumns.dex b/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/data/Notes$DataColumns.dex
deleted file mode 100644
index 2b0d946..0000000
Binary files a/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/data/Notes$DataColumns.dex and /dev/null differ
diff --git a/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/data/Notes$DataConstants.dex b/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/data/Notes$DataConstants.dex
deleted file mode 100644
index ff9c0f6..0000000
Binary files a/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/data/Notes$DataConstants.dex and /dev/null differ
diff --git a/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/data/Notes$NoteColumns.dex b/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/data/Notes$NoteColumns.dex
deleted file mode 100644
index d5476b5..0000000
Binary files a/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/data/Notes$NoteColumns.dex and /dev/null differ
diff --git a/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/data/Notes$TextNote.dex b/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/data/Notes$TextNote.dex
deleted file mode 100644
index 6e9f543..0000000
Binary files a/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/data/Notes$TextNote.dex and /dev/null differ
diff --git a/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/data/Notes.dex b/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/data/Notes.dex
deleted file mode 100644
index 43a77a8..0000000
Binary files a/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/data/Notes.dex and /dev/null differ
diff --git a/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/data/NotesDatabaseHelper$TABLE.dex b/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/data/NotesDatabaseHelper$TABLE.dex
deleted file mode 100644
index 6b4a469..0000000
Binary files a/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/data/NotesDatabaseHelper$TABLE.dex and /dev/null differ
diff --git a/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/data/NotesDatabaseHelper.dex b/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/data/NotesDatabaseHelper.dex
deleted file mode 100644
index 869025a..0000000
Binary files a/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/data/NotesDatabaseHelper.dex and /dev/null differ
diff --git a/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/data/NotesProvider.dex b/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/data/NotesProvider.dex
deleted file mode 100644
index f560443..0000000
Binary files a/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/data/NotesProvider.dex and /dev/null differ
diff --git a/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/gtask/data/MetaData.dex b/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/gtask/data/MetaData.dex
deleted file mode 100644
index 2a5626c..0000000
Binary files a/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/gtask/data/MetaData.dex and /dev/null differ
diff --git a/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/gtask/data/Node.dex b/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/gtask/data/Node.dex
deleted file mode 100644
index 64af024..0000000
Binary files a/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/gtask/data/Node.dex and /dev/null differ
diff --git a/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/gtask/data/SqlData.dex b/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/gtask/data/SqlData.dex
deleted file mode 100644
index 1c402ad..0000000
Binary files a/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/gtask/data/SqlData.dex and /dev/null differ
diff --git a/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/gtask/data/SqlNote.dex b/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/gtask/data/SqlNote.dex
deleted file mode 100644
index 374ea0b..0000000
Binary files a/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/gtask/data/SqlNote.dex and /dev/null differ
diff --git a/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/gtask/data/Task.dex b/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/gtask/data/Task.dex
deleted file mode 100644
index 002bd35..0000000
Binary files a/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/gtask/data/Task.dex and /dev/null differ
diff --git a/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/gtask/data/TaskList.dex b/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/gtask/data/TaskList.dex
deleted file mode 100644
index 36c1fd2..0000000
Binary files a/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/gtask/data/TaskList.dex and /dev/null differ
diff --git a/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/gtask/exception/ActionFailureException.dex b/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/gtask/exception/ActionFailureException.dex
deleted file mode 100644
index 1ca0339..0000000
Binary files a/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/gtask/exception/ActionFailureException.dex and /dev/null differ
diff --git a/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/gtask/exception/NetworkFailureException.dex b/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/gtask/exception/NetworkFailureException.dex
deleted file mode 100644
index d28e54b..0000000
Binary files a/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/gtask/exception/NetworkFailureException.dex and /dev/null differ
diff --git a/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/gtask/remote/GTaskASyncTask$1.dex b/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/gtask/remote/GTaskASyncTask$1.dex
deleted file mode 100644
index 9fbbc13..0000000
Binary files a/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/gtask/remote/GTaskASyncTask$1.dex and /dev/null differ
diff --git a/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/gtask/remote/GTaskASyncTask$OnCompleteListener.dex b/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/gtask/remote/GTaskASyncTask$OnCompleteListener.dex
deleted file mode 100644
index 64d96b3..0000000
Binary files a/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/gtask/remote/GTaskASyncTask$OnCompleteListener.dex and /dev/null differ
diff --git a/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/gtask/remote/GTaskASyncTask.dex b/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/gtask/remote/GTaskASyncTask.dex
deleted file mode 100644
index b9b54df..0000000
Binary files a/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/gtask/remote/GTaskASyncTask.dex and /dev/null differ
diff --git a/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/gtask/remote/GTaskClient.dex b/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/gtask/remote/GTaskClient.dex
deleted file mode 100644
index ff4a12d..0000000
Binary files a/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/gtask/remote/GTaskClient.dex and /dev/null differ
diff --git a/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/gtask/remote/GTaskManager.dex b/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/gtask/remote/GTaskManager.dex
deleted file mode 100644
index 9e151ad..0000000
Binary files a/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/gtask/remote/GTaskManager.dex and /dev/null differ
diff --git a/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/gtask/remote/GTaskSyncService$1.dex b/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/gtask/remote/GTaskSyncService$1.dex
deleted file mode 100644
index 66da673..0000000
Binary files a/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/gtask/remote/GTaskSyncService$1.dex and /dev/null differ
diff --git a/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/gtask/remote/GTaskSyncService.dex b/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/gtask/remote/GTaskSyncService.dex
deleted file mode 100644
index e0ca8b3..0000000
Binary files a/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/gtask/remote/GTaskSyncService.dex and /dev/null differ
diff --git a/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/model/Note$NoteData.dex b/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/model/Note$NoteData.dex
deleted file mode 100644
index 2135b9c..0000000
Binary files a/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/model/Note$NoteData.dex and /dev/null differ
diff --git a/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/model/Note.dex b/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/model/Note.dex
deleted file mode 100644
index c08f504..0000000
Binary files a/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/model/Note.dex and /dev/null differ
diff --git a/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/model/WorkingNote$NoteSettingChangedListener.dex b/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/model/WorkingNote$NoteSettingChangedListener.dex
deleted file mode 100644
index 5fd517e..0000000
Binary files a/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/model/WorkingNote$NoteSettingChangedListener.dex and /dev/null differ
diff --git a/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/model/WorkingNote.dex b/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/model/WorkingNote.dex
deleted file mode 100644
index 893546a..0000000
Binary files a/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/model/WorkingNote.dex and /dev/null differ
diff --git a/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/tool/BackupUtils$TextExport.dex b/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/tool/BackupUtils$TextExport.dex
deleted file mode 100644
index b295dcf..0000000
Binary files a/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/tool/BackupUtils$TextExport.dex and /dev/null differ
diff --git a/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/tool/BackupUtils.dex b/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/tool/BackupUtils.dex
deleted file mode 100644
index 9d50a1f..0000000
Binary files a/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/tool/BackupUtils.dex and /dev/null differ
diff --git a/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/tool/DataUtils.dex b/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/tool/DataUtils.dex
deleted file mode 100644
index 65b41f6..0000000
Binary files a/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/tool/DataUtils.dex and /dev/null differ
diff --git a/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/tool/GTaskStringUtils.dex b/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/tool/GTaskStringUtils.dex
deleted file mode 100644
index 7b39c5c..0000000
Binary files a/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/tool/GTaskStringUtils.dex and /dev/null differ
diff --git a/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/tool/ResourceParser$NoteBgResources.dex b/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/tool/ResourceParser$NoteBgResources.dex
deleted file mode 100644
index 22fa0e5..0000000
Binary files a/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/tool/ResourceParser$NoteBgResources.dex and /dev/null differ
diff --git a/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/tool/ResourceParser$NoteItemBgResources.dex b/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/tool/ResourceParser$NoteItemBgResources.dex
deleted file mode 100644
index 0876d41..0000000
Binary files a/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/tool/ResourceParser$NoteItemBgResources.dex and /dev/null differ
diff --git a/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/tool/ResourceParser$TextAppearanceResources.dex b/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/tool/ResourceParser$TextAppearanceResources.dex
deleted file mode 100644
index b2fe5e3..0000000
Binary files a/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/tool/ResourceParser$TextAppearanceResources.dex and /dev/null differ
diff --git a/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/tool/ResourceParser$WidgetBgResources.dex b/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/tool/ResourceParser$WidgetBgResources.dex
deleted file mode 100644
index fea1c58..0000000
Binary files a/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/tool/ResourceParser$WidgetBgResources.dex and /dev/null differ
diff --git a/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/tool/ResourceParser.dex b/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/tool/ResourceParser.dex
deleted file mode 100644
index 730200c..0000000
Binary files a/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/tool/ResourceParser.dex and /dev/null differ
diff --git a/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/ui/AlarmAlertActivity.dex b/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/ui/AlarmAlertActivity.dex
deleted file mode 100644
index a16813b..0000000
Binary files a/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/ui/AlarmAlertActivity.dex and /dev/null differ
diff --git a/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/ui/AlarmInitReceiver.dex b/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/ui/AlarmInitReceiver.dex
deleted file mode 100644
index ee61991..0000000
Binary files a/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/ui/AlarmInitReceiver.dex and /dev/null differ
diff --git a/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/ui/AlarmReceiver.dex b/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/ui/AlarmReceiver.dex
deleted file mode 100644
index 4a9833f..0000000
Binary files a/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/ui/AlarmReceiver.dex and /dev/null differ
diff --git a/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/ui/DateTimePicker$1.dex b/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/ui/DateTimePicker$1.dex
deleted file mode 100644
index b535b9e..0000000
Binary files a/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/ui/DateTimePicker$1.dex and /dev/null differ
diff --git a/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/ui/DateTimePicker$2.dex b/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/ui/DateTimePicker$2.dex
deleted file mode 100644
index f0acd5e..0000000
Binary files a/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/ui/DateTimePicker$2.dex and /dev/null differ
diff --git a/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/ui/DateTimePicker$3.dex b/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/ui/DateTimePicker$3.dex
deleted file mode 100644
index c7c6f17..0000000
Binary files a/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/ui/DateTimePicker$3.dex and /dev/null differ
diff --git a/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/ui/DateTimePicker$4.dex b/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/ui/DateTimePicker$4.dex
deleted file mode 100644
index 753040c..0000000
Binary files a/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/ui/DateTimePicker$4.dex and /dev/null differ
diff --git a/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/ui/DateTimePicker$OnDateTimeChangedListener.dex b/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/ui/DateTimePicker$OnDateTimeChangedListener.dex
deleted file mode 100644
index e26f40f..0000000
Binary files a/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/ui/DateTimePicker$OnDateTimeChangedListener.dex and /dev/null differ
diff --git a/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/ui/DateTimePicker.dex b/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/ui/DateTimePicker.dex
deleted file mode 100644
index 736f30b..0000000
Binary files a/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/ui/DateTimePicker.dex and /dev/null differ
diff --git a/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/ui/DateTimePickerDialog$1.dex b/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/ui/DateTimePickerDialog$1.dex
deleted file mode 100644
index 379d253..0000000
Binary files a/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/ui/DateTimePickerDialog$1.dex and /dev/null differ
diff --git a/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/ui/DateTimePickerDialog$OnDateTimeSetListener.dex b/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/ui/DateTimePickerDialog$OnDateTimeSetListener.dex
deleted file mode 100644
index b8ecb0a..0000000
Binary files a/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/ui/DateTimePickerDialog$OnDateTimeSetListener.dex and /dev/null differ
diff --git a/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/ui/DateTimePickerDialog.dex b/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/ui/DateTimePickerDialog.dex
deleted file mode 100644
index e677e2b..0000000
Binary files a/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/ui/DateTimePickerDialog.dex and /dev/null differ
diff --git a/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/ui/DropdownMenu$1.dex b/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/ui/DropdownMenu$1.dex
deleted file mode 100644
index a355446..0000000
Binary files a/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/ui/DropdownMenu$1.dex and /dev/null differ
diff --git a/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/ui/DropdownMenu.dex b/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/ui/DropdownMenu.dex
deleted file mode 100644
index cfd9d91..0000000
Binary files a/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/ui/DropdownMenu.dex and /dev/null differ
diff --git a/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/ui/FoldersListAdapter$FolderListItem.dex b/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/ui/FoldersListAdapter$FolderListItem.dex
deleted file mode 100644
index 740dba7..0000000
Binary files a/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/ui/FoldersListAdapter$FolderListItem.dex and /dev/null differ
diff --git a/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/ui/FoldersListAdapter.dex b/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/ui/FoldersListAdapter.dex
deleted file mode 100644
index 99fc361..0000000
Binary files a/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/ui/FoldersListAdapter.dex and /dev/null differ
diff --git a/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/ui/NoteEditActivity$1.dex b/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/ui/NoteEditActivity$1.dex
deleted file mode 100644
index a57af7c..0000000
Binary files a/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/ui/NoteEditActivity$1.dex and /dev/null differ
diff --git a/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/ui/NoteEditActivity$10.dex b/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/ui/NoteEditActivity$10.dex
deleted file mode 100644
index fb460d5..0000000
Binary files a/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/ui/NoteEditActivity$10.dex and /dev/null differ
diff --git a/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/ui/NoteEditActivity$11.dex b/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/ui/NoteEditActivity$11.dex
deleted file mode 100644
index 20bb45b..0000000
Binary files a/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/ui/NoteEditActivity$11.dex and /dev/null differ
diff --git a/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/ui/NoteEditActivity$12.dex b/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/ui/NoteEditActivity$12.dex
deleted file mode 100644
index 675df34..0000000
Binary files a/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/ui/NoteEditActivity$12.dex and /dev/null differ
diff --git a/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/ui/NoteEditActivity$13.dex b/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/ui/NoteEditActivity$13.dex
deleted file mode 100644
index c6da2d5..0000000
Binary files a/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/ui/NoteEditActivity$13.dex and /dev/null differ
diff --git a/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/ui/NoteEditActivity$14.dex b/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/ui/NoteEditActivity$14.dex
deleted file mode 100644
index 90ddcce..0000000
Binary files a/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/ui/NoteEditActivity$14.dex and /dev/null differ
diff --git a/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/ui/NoteEditActivity$15.dex b/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/ui/NoteEditActivity$15.dex
deleted file mode 100644
index c53822e..0000000
Binary files a/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/ui/NoteEditActivity$15.dex and /dev/null differ
diff --git a/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/ui/NoteEditActivity$16.dex b/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/ui/NoteEditActivity$16.dex
deleted file mode 100644
index c711f16..0000000
Binary files a/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/ui/NoteEditActivity$16.dex and /dev/null differ
diff --git a/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/ui/NoteEditActivity$17.dex b/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/ui/NoteEditActivity$17.dex
deleted file mode 100644
index 5e00513..0000000
Binary files a/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/ui/NoteEditActivity$17.dex and /dev/null differ
diff --git a/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/ui/NoteEditActivity$2.dex b/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/ui/NoteEditActivity$2.dex
deleted file mode 100644
index 6aa3086..0000000
Binary files a/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/ui/NoteEditActivity$2.dex and /dev/null differ
diff --git a/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/ui/NoteEditActivity$3.dex b/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/ui/NoteEditActivity$3.dex
deleted file mode 100644
index e758c81..0000000
Binary files a/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/ui/NoteEditActivity$3.dex and /dev/null differ
diff --git a/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/ui/NoteEditActivity$4.dex b/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/ui/NoteEditActivity$4.dex
deleted file mode 100644
index 3bb58b9..0000000
Binary files a/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/ui/NoteEditActivity$4.dex and /dev/null differ
diff --git a/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/ui/NoteEditActivity$5.dex b/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/ui/NoteEditActivity$5.dex
deleted file mode 100644
index 3930afc..0000000
Binary files a/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/ui/NoteEditActivity$5.dex and /dev/null differ
diff --git a/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/ui/NoteEditActivity$6.dex b/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/ui/NoteEditActivity$6.dex
deleted file mode 100644
index cfa2c7b..0000000
Binary files a/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/ui/NoteEditActivity$6.dex and /dev/null differ
diff --git a/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/ui/NoteEditActivity$7.dex b/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/ui/NoteEditActivity$7.dex
deleted file mode 100644
index 139ac8b..0000000
Binary files a/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/ui/NoteEditActivity$7.dex and /dev/null differ
diff --git a/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/ui/NoteEditActivity$8.dex b/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/ui/NoteEditActivity$8.dex
deleted file mode 100644
index 0f20544..0000000
Binary files a/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/ui/NoteEditActivity$8.dex and /dev/null differ
diff --git a/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/ui/NoteEditActivity$9.dex b/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/ui/NoteEditActivity$9.dex
deleted file mode 100644
index f4eb8cc..0000000
Binary files a/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/ui/NoteEditActivity$9.dex and /dev/null differ
diff --git a/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/ui/NoteEditActivity$HeadViewHolder.dex b/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/ui/NoteEditActivity$HeadViewHolder.dex
deleted file mode 100644
index 8b90416..0000000
Binary files a/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/ui/NoteEditActivity$HeadViewHolder.dex and /dev/null differ
diff --git a/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/ui/NoteEditActivity.dex b/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/ui/NoteEditActivity.dex
deleted file mode 100644
index deedcc9..0000000
Binary files a/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/ui/NoteEditActivity.dex and /dev/null differ
diff --git a/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/ui/NoteEditText$1.dex b/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/ui/NoteEditText$1.dex
deleted file mode 100644
index 097218f..0000000
Binary files a/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/ui/NoteEditText$1.dex and /dev/null differ
diff --git a/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/ui/NoteEditText$OnTextViewChangeListener.dex b/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/ui/NoteEditText$OnTextViewChangeListener.dex
deleted file mode 100644
index ff32b28..0000000
Binary files a/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/ui/NoteEditText$OnTextViewChangeListener.dex and /dev/null differ
diff --git a/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/ui/NoteEditText.dex b/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/ui/NoteEditText.dex
deleted file mode 100644
index 9cb7cad..0000000
Binary files a/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/ui/NoteEditText.dex and /dev/null differ
diff --git a/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/ui/NoteItemData.dex b/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/ui/NoteItemData.dex
deleted file mode 100644
index c66805f..0000000
Binary files a/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/ui/NoteItemData.dex and /dev/null differ
diff --git a/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/ui/NotesListActivity$1.dex b/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/ui/NotesListActivity$1.dex
deleted file mode 100644
index ee303c5..0000000
Binary files a/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/ui/NotesListActivity$1.dex and /dev/null differ
diff --git a/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/ui/NotesListActivity$2.dex b/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/ui/NotesListActivity$2.dex
deleted file mode 100644
index 2d6c690..0000000
Binary files a/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/ui/NotesListActivity$2.dex and /dev/null differ
diff --git a/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/ui/NotesListActivity$3.dex b/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/ui/NotesListActivity$3.dex
deleted file mode 100644
index a027228..0000000
Binary files a/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/ui/NotesListActivity$3.dex and /dev/null differ
diff --git a/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/ui/NotesListActivity$4.dex b/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/ui/NotesListActivity$4.dex
deleted file mode 100644
index ba530ee..0000000
Binary files a/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/ui/NotesListActivity$4.dex and /dev/null differ
diff --git a/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/ui/NotesListActivity$5.dex b/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/ui/NotesListActivity$5.dex
deleted file mode 100644
index ea30cbe..0000000
Binary files a/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/ui/NotesListActivity$5.dex and /dev/null differ
diff --git a/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/ui/NotesListActivity$6.dex b/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/ui/NotesListActivity$6.dex
deleted file mode 100644
index e3a0464..0000000
Binary files a/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/ui/NotesListActivity$6.dex and /dev/null differ
diff --git a/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/ui/NotesListActivity$7.dex b/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/ui/NotesListActivity$7.dex
deleted file mode 100644
index 7cb63b6..0000000
Binary files a/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/ui/NotesListActivity$7.dex and /dev/null differ
diff --git a/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/ui/NotesListActivity$8.dex b/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/ui/NotesListActivity$8.dex
deleted file mode 100644
index 5191dba..0000000
Binary files a/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/ui/NotesListActivity$8.dex and /dev/null differ
diff --git a/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/ui/NotesListActivity$9.dex b/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/ui/NotesListActivity$9.dex
deleted file mode 100644
index c460d0a..0000000
Binary files a/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/ui/NotesListActivity$9.dex and /dev/null differ
diff --git a/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/ui/NotesListActivity$BackgroundQueryHandler.dex b/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/ui/NotesListActivity$BackgroundQueryHandler.dex
deleted file mode 100644
index 6b3c811..0000000
Binary files a/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/ui/NotesListActivity$BackgroundQueryHandler.dex and /dev/null differ
diff --git a/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/ui/NotesListActivity$ListEditState.dex b/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/ui/NotesListActivity$ListEditState.dex
deleted file mode 100644
index 83194ec..0000000
Binary files a/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/ui/NotesListActivity$ListEditState.dex and /dev/null differ
diff --git a/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/ui/NotesListActivity$ModeCallback$1.dex b/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/ui/NotesListActivity$ModeCallback$1.dex
deleted file mode 100644
index 3547f03..0000000
Binary files a/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/ui/NotesListActivity$ModeCallback$1.dex and /dev/null differ
diff --git a/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/ui/NotesListActivity$ModeCallback$2.dex b/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/ui/NotesListActivity$ModeCallback$2.dex
deleted file mode 100644
index fea62f2..0000000
Binary files a/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/ui/NotesListActivity$ModeCallback$2.dex and /dev/null differ
diff --git a/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/ui/NotesListActivity$ModeCallback.dex b/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/ui/NotesListActivity$ModeCallback.dex
deleted file mode 100644
index 7b3af31..0000000
Binary files a/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/ui/NotesListActivity$ModeCallback.dex and /dev/null differ
diff --git a/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/ui/NotesListActivity$NewNoteOnTouchListener.dex b/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/ui/NotesListActivity$NewNoteOnTouchListener.dex
deleted file mode 100644
index a6d8979..0000000
Binary files a/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/ui/NotesListActivity$NewNoteOnTouchListener.dex and /dev/null differ
diff --git a/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/ui/NotesListActivity$OnListItemClickListener.dex b/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/ui/NotesListActivity$OnListItemClickListener.dex
deleted file mode 100644
index 04b62ec..0000000
Binary files a/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/ui/NotesListActivity$OnListItemClickListener.dex and /dev/null differ
diff --git a/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/ui/NotesListActivity.dex b/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/ui/NotesListActivity.dex
deleted file mode 100644
index ba95eb1..0000000
Binary files a/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/ui/NotesListActivity.dex and /dev/null differ
diff --git a/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/ui/NotesListAdapter$AppWidgetAttribute.dex b/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/ui/NotesListAdapter$AppWidgetAttribute.dex
deleted file mode 100644
index b2e4069..0000000
Binary files a/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/ui/NotesListAdapter$AppWidgetAttribute.dex and /dev/null differ
diff --git a/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/ui/NotesListAdapter.dex b/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/ui/NotesListAdapter.dex
deleted file mode 100644
index 3456bf5..0000000
Binary files a/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/ui/NotesListAdapter.dex and /dev/null differ
diff --git a/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/ui/NotesListItem.dex b/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/ui/NotesListItem.dex
deleted file mode 100644
index 990465b..0000000
Binary files a/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/ui/NotesListItem.dex and /dev/null differ
diff --git a/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/ui/NotesPreferenceActivity$1.dex b/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/ui/NotesPreferenceActivity$1.dex
deleted file mode 100644
index 7f8339b..0000000
Binary files a/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/ui/NotesPreferenceActivity$1.dex and /dev/null differ
diff --git a/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/ui/NotesPreferenceActivity$2.dex b/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/ui/NotesPreferenceActivity$2.dex
deleted file mode 100644
index c665855..0000000
Binary files a/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/ui/NotesPreferenceActivity$2.dex and /dev/null differ
diff --git a/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/ui/NotesPreferenceActivity$3.dex b/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/ui/NotesPreferenceActivity$3.dex
deleted file mode 100644
index afc2167..0000000
Binary files a/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/ui/NotesPreferenceActivity$3.dex and /dev/null differ
diff --git a/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/ui/NotesPreferenceActivity$4.dex b/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/ui/NotesPreferenceActivity$4.dex
deleted file mode 100644
index c75dcff..0000000
Binary files a/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/ui/NotesPreferenceActivity$4.dex and /dev/null differ
diff --git a/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/ui/NotesPreferenceActivity$5.dex b/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/ui/NotesPreferenceActivity$5.dex
deleted file mode 100644
index 5a37d5a..0000000
Binary files a/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/ui/NotesPreferenceActivity$5.dex and /dev/null differ
diff --git a/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/ui/NotesPreferenceActivity$6.dex b/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/ui/NotesPreferenceActivity$6.dex
deleted file mode 100644
index d79be5e..0000000
Binary files a/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/ui/NotesPreferenceActivity$6.dex and /dev/null differ
diff --git a/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/ui/NotesPreferenceActivity$7.dex b/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/ui/NotesPreferenceActivity$7.dex
deleted file mode 100644
index 92aba60..0000000
Binary files a/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/ui/NotesPreferenceActivity$7.dex and /dev/null differ
diff --git a/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/ui/NotesPreferenceActivity$8.dex b/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/ui/NotesPreferenceActivity$8.dex
deleted file mode 100644
index f42000d..0000000
Binary files a/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/ui/NotesPreferenceActivity$8.dex and /dev/null differ
diff --git a/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/ui/NotesPreferenceActivity$GTaskReceiver.dex b/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/ui/NotesPreferenceActivity$GTaskReceiver.dex
deleted file mode 100644
index 4303e64..0000000
Binary files a/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/ui/NotesPreferenceActivity$GTaskReceiver.dex and /dev/null differ
diff --git a/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/ui/NotesPreferenceActivity.dex b/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/ui/NotesPreferenceActivity.dex
deleted file mode 100644
index 3fc4977..0000000
Binary files a/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/ui/NotesPreferenceActivity.dex and /dev/null differ
diff --git a/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/widget/NoteWidgetProvider.dex b/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/widget/NoteWidgetProvider.dex
deleted file mode 100644
index ea0e4da..0000000
Binary files a/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/widget/NoteWidgetProvider.dex and /dev/null differ
diff --git a/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/widget/NoteWidgetProvider_2x.dex b/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/widget/NoteWidgetProvider_2x.dex
deleted file mode 100644
index 8310109..0000000
Binary files a/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/widget/NoteWidgetProvider_2x.dex and /dev/null differ
diff --git a/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/widget/NoteWidgetProvider_4x.dex b/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/widget/NoteWidgetProvider_4x.dex
deleted file mode 100644
index d5d0f8d..0000000
Binary files a/src/src/app/build/intermediates/project_dex_archive/debug/out/net/micode/notes/widget/NoteWidgetProvider_4x.dex and /dev/null differ
diff --git a/src/src/app/build/intermediates/runtime_symbol_list/debug/R.txt b/src/src/app/build/intermediates/runtime_symbol_list/debug/R.txt
deleted file mode 100644
index 9a2553f..0000000
--- a/src/src/app/build/intermediates/runtime_symbol_list/debug/R.txt
+++ /dev/null
@@ -1,315 +0,0 @@
-int array format_for_exported_note 0x7f010000
-int array menu_share_ways 0x7f010001
-int color primary_text_dark 0x7f020000
-int color secondary_text_dark 0x7f020001
-int color user_query_highlight 0x7f020002
-int dimen text_font_size_large 0x7f030000
-int dimen text_font_size_medium 0x7f030001
-int dimen text_font_size_normal 0x7f030002
-int dimen text_font_size_small 0x7f030003
-int dimen text_font_size_super 0x7f030004
-int drawable a1 0x7f040000
-int drawable a2 0x7f040001
-int drawable a3 0x7f040002
-int drawable a4 0x7f040003
-int drawable bg_btn_set_color 0x7f040004
-int drawable bg_color_btn_mask 0x7f040005
-int drawable call_record 0x7f040006
-int drawable clock 0x7f040007
-int drawable delete 0x7f040008
-int drawable dropdown_icon 0x7f040009
-int drawable edit_blue 0x7f04000a
-int drawable edit_green 0x7f04000b
-int drawable edit_red 0x7f04000c
-int drawable edit_title_blue 0x7f04000d
-int drawable edit_title_green 0x7f04000e
-int drawable edit_title_red 0x7f04000f
-int drawable edit_title_white 0x7f040010
-int drawable edit_title_yellow 0x7f040011
-int drawable edit_white 0x7f040012
-int drawable edit_yellow 0x7f040013
-int drawable font_large 0x7f040014
-int drawable font_normal 0x7f040015
-int drawable font_size_selector_bg 0x7f040016
-int drawable font_small 0x7f040017
-int drawable font_super 0x7f040018
-int drawable g780 0x7f040019
-int drawable gao 0x7f04001a
-int drawable icon_app 0x7f04001b
-int drawable list_background 0x7f04001c
-int drawable list_blue_down 0x7f04001d
-int drawable list_blue_middle 0x7f04001e
-int drawable list_blue_single 0x7f04001f
-int drawable list_blue_up 0x7f040020
-int drawable list_folder 0x7f040021
-int drawable list_footer_bg 0x7f040022
-int drawable list_green_down 0x7f040023
-int drawable list_green_middle 0x7f040024
-int drawable list_green_single 0x7f040025
-int drawable list_green_up 0x7f040026
-int drawable list_red_down 0x7f040027
-int drawable list_red_middle 0x7f040028
-int drawable list_red_single 0x7f040029
-int drawable list_red_up 0x7f04002a
-int drawable list_white_down 0x7f04002b
-int drawable list_white_middle 0x7f04002c
-int drawable list_white_single 0x7f04002d
-int drawable list_white_up 0x7f04002e
-int drawable list_yellow_down 0x7f04002f
-int drawable list_yellow_middle 0x7f040030
-int drawable list_yellow_single 0x7f040031
-int drawable list_yellow_up 0x7f040032
-int drawable menu_delete 0x7f040033
-int drawable menu_move 0x7f040034
-int drawable new_note 0x7f040035
-int drawable new_note_normal 0x7f040036
-int drawable new_note_pressed 0x7f040037
-int drawable note_edit_color_selector_panel 0x7f040038
-int drawable notification 0x7f040039
-int drawable search_result 0x7f04003a
-int drawable selected 0x7f04003b
-int drawable title_alert 0x7f04003c
-int drawable title_bar_bg 0x7f04003d
-int drawable widget_2x_blue 0x7f04003e
-int drawable widget_2x_green 0x7f04003f
-int drawable widget_2x_red 0x7f040040
-int drawable widget_2x_white 0x7f040041
-int drawable widget_2x_yellow 0x7f040042
-int drawable widget_4x_blue 0x7f040043
-int drawable widget_4x_green 0x7f040044
-int drawable widget_4x_red 0x7f040045
-int drawable widget_4x_white 0x7f040046
-int drawable widget_4x_yellow 0x7f040047
-int id account_dialog_subtitle 0x7f050000
-int id account_dialog_title 0x7f050001
-int id action_bold 0x7f050002
-int id action_italic 0x7f050003
-int id action_other 0x7f050004
-int id action_select_all 0x7f050005
-int id add_img_btn 0x7f050006
-int id add_img_menu_move 0x7f050007
-int id amPm 0x7f050008
-int id btn_new_note 0x7f050009
-int id btn_set_bg_color 0x7f05000a
-int id cb_edit_item 0x7f05000b
-int id date 0x7f05000c
-int id delete 0x7f05000d
-int id et_edit_text 0x7f05000e
-int id et_foler_name 0x7f05000f
-int id font_size_selector 0x7f050010
-int id hour 0x7f050011
-int id iv_alert_icon 0x7f050012
-int id iv_bg_blue 0x7f050013
-int id iv_bg_blue_select 0x7f050014
-int id iv_bg_green 0x7f050015
-int id iv_bg_green_select 0x7f050016
-int id iv_bg_red 0x7f050017
-int id iv_bg_red_select 0x7f050018
-int id iv_bg_white 0x7f050019
-int id iv_bg_white_select 0x7f05001a
-int id iv_bg_yellow 0x7f05001b
-int id iv_bg_yellow_select 0x7f05001c
-int id iv_large_select 0x7f05001d
-int id iv_medium_select 0x7f05001e
-int id iv_small_select 0x7f05001f
-int id iv_super_select 0x7f050020
-int id ll_font_large 0x7f050021
-int id ll_font_normal 0x7f050022
-int id ll_font_small 0x7f050023
-int id ll_font_super 0x7f050024
-int id menu_alert 0x7f050025
-int id menu_bg_g780 0x7f050026
-int id menu_bg_gao 0x7f050027
-int id menu_delete 0x7f050028
-int id menu_delete_key 0x7f05004c
-int id menu_delete_passcode 0x7f050029
-int id menu_delete_remind 0x7f05002a
-int id menu_export_text 0x7f05002b
-int id menu_font_select 0x7f050050
-int id menu_font_size 0x7f05002c
-int id menu_list_mode 0x7f05002d
-int id menu_new_folder 0x7f05002e
-int id menu_new_note 0x7f05002f
-int id menu_revoke 0x7f050052
-int id menu_search 0x7f050030
-int id menu_send_to_desktop 0x7f050031
-int id menu_set_key 0x7f05004d
-int id menu_set_passcode 0x7f050032
-int id menu_setting 0x7f050033
-int id menu_share 0x7f050034
-int id menu_sync 0x7f050035
-int id menu_voice_read 0x7f05004f
-int id minute 0x7f050036
-int id move 0x7f050037
-int id navigation_bar 0x7f050038
-int id no_change 0x7f05004e
-int id note_bg_color_selector 0x7f050039
-int id note_edit_list 0x7f05003a
-int id note_edit_view 0x7f05003b
-int id note_item 0x7f05003c
-int id note_title 0x7f05003d
-int id notes_list 0x7f05003e
-int id prefenerece_sync_status_textview 0x7f05003f
-int id preference_sync_button 0x7f050040
-int id selection_menu 0x7f050041
-int id sv_note_edit 0x7f050042
-int id text_num 0x7f050051
-int id tv_alert_date 0x7f050043
-int id tv_folder_name 0x7f050044
-int id tv_modified_date 0x7f050045
-int id tv_name 0x7f050046
-int id tv_time 0x7f050047
-int id tv_title 0x7f050048
-int id tv_title_bar 0x7f050049
-int id widget_bg_image 0x7f05004a
-int id widget_text 0x7f05004b
-int layout account_dialog_title 0x7f060000
-int layout add_account_text 0x7f060001
-int layout datetime_picker 0x7f060002
-int layout dialog_edit_text 0x7f060003
-int layout folder_list_item 0x7f060004
-int layout note_edit 0x7f060005
-int layout note_edit_list_item 0x7f060006
-int layout note_item 0x7f060007
-int layout note_list 0x7f060008
-int layout note_list_dropdown_menu 0x7f060009
-int layout note_list_footer 0x7f06000a
-int layout settings_header 0x7f06000b
-int layout widget_2x 0x7f06000c
-int layout widget_4x 0x7f06000d
-int menu call_note_edit 0x7f070000
-int menu call_record_folder 0x7f070001
-int menu note_edit 0x7f070002
-int menu note_list 0x7f070003
-int menu note_list_dropdown 0x7f070004
-int menu note_list_options 0x7f070005
-int menu sub_folder 0x7f070006
-int plurals search_results_title 0x7f080000
-int raw introduction 0x7f090000
-int string alert_message_delete_folder 0x7f0a0000
-int string alert_message_delete_note 0x7f0a0001
-int string alert_message_delete_notes 0x7f0a0002
-int string alert_title_delete 0x7f0a0003
-int string app_name 0x7f0a0004
-int string app_widget2x2 0x7f0a0005
-int string app_widget4x4 0x7f0a0006
-int string button_delete 0x7f0a0007
-int string call_record_folder_name 0x7f0a0008
-int string can_not_revoke 0x7f0a006c
-int string datetime_dialog_cancel 0x7f0a0009
-int string datetime_dialog_ok 0x7f0a000a
-int string delete_remind_time_message 0x7f0a000b
-int string error_note_empty_for_clock 0x7f0a000c
-int string error_note_empty_for_send_to_desktop 0x7f0a000d
-int string error_note_not_exist 0x7f0a000e
-int string error_sdcard_export 0x7f0a000f
-int string error_sdcard_unmounted 0x7f0a0010
-int string error_sync_cancelled 0x7f0a0011
-int string error_sync_internal 0x7f0a0012
-int string error_sync_network 0x7f0a0013
-int string failed_sdcard_export 0x7f0a0014
-int string file_name_txt_format 0x7f0a0015
-int string file_path 0x7f0a0016
-int string folder_exist 0x7f0a0017
-int string format_date_ymd 0x7f0a0018
-int string format_datetime_mdhm 0x7f0a0019
-int string format_exported_file_location 0x7f0a001a
-int string format_folder_files_count 0x7f0a001b
-int string format_move_notes_to_folder 0x7f0a001c
-int string have_not_input_anything 0x7f0a006d
-int string hint_foler_name 0x7f0a001d
-int string ic_delete_passcode 0x7f0a001e
-int string ic_set_passcode 0x7f0a001f
-int string info_note_enter_desktop 0x7f0a0020
-int string menu_alert 0x7f0a0021
-int string menu_bg_g780 0x7f0a0022
-int string menu_bg_gao 0x7f0a0023
-int string menu_create_folder 0x7f0a0024
-int string menu_delete 0x7f0a0025
-int string menu_deselect_all 0x7f0a0026
-int string menu_export_text 0x7f0a0027
-int string menu_folder_change_name 0x7f0a0028
-int string menu_folder_delete 0x7f0a0029
-int string menu_folder_view 0x7f0a002a
-int string menu_font_large 0x7f0a002b
-int string menu_font_normal 0x7f0a002c
-int string menu_font_select 0x7f0a006b
-int string menu_font_size 0x7f0a002d
-int string menu_font_small 0x7f0a002e
-int string menu_font_super 0x7f0a002f
-int string menu_list_mode 0x7f0a0030
-int string menu_move 0x7f0a0031
-int string menu_move_parent_folder 0x7f0a0032
-int string menu_normal_mode 0x7f0a0033
-int string menu_remove_remind 0x7f0a0034
-int string menu_revoke 0x7f0a006e
-int string menu_search 0x7f0a0035
-int string menu_select_all 0x7f0a0036
-int string menu_select_none 0x7f0a0037
-int string menu_select_title 0x7f0a0038
-int string menu_send_to_desktop 0x7f0a0039
-int string menu_setting 0x7f0a003a
-int string menu_share 0x7f0a003b
-int string menu_sync 0x7f0a003c
-int string menu_sync_cancel 0x7f0a003d
-int string menu_title_select_folder 0x7f0a003e
-int string menu_voice_read 0x7f0a006a
-int string note_alert_expired 0x7f0a003f
-int string note_link_email 0x7f0a0040
-int string note_link_other 0x7f0a0041
-int string note_link_tel 0x7f0a0042
-int string note_link_web 0x7f0a0043
-int string notealert_enter 0x7f0a0044
-int string notealert_ok 0x7f0a0045
-int string notelist_menu_new 0x7f0a0046
-int string notelist_string_info 0x7f0a0047
-int string preferences_account_summary 0x7f0a0048
-int string preferences_account_title 0x7f0a0049
-int string preferences_add_account 0x7f0a004a
-int string preferences_bg_random_appear_title 0x7f0a004b
-int string preferences_button_sync_cancel 0x7f0a004c
-int string preferences_button_sync_immediately 0x7f0a004d
-int string preferences_dialog_change_account_title 0x7f0a004e
-int string preferences_dialog_change_account_warn_msg 0x7f0a004f
-int string preferences_dialog_select_account_tips 0x7f0a0050
-int string preferences_dialog_select_account_title 0x7f0a0051
-int string preferences_last_sync_time 0x7f0a0052
-int string preferences_last_sync_time_format 0x7f0a0053
-int string preferences_menu_cancel 0x7f0a0054
-int string preferences_menu_change_account 0x7f0a0055
-int string preferences_menu_remove_account 0x7f0a0056
-int string preferences_title 0x7f0a0057
-int string preferences_toast_cannot_change_account 0x7f0a0058
-int string preferences_toast_success_set_accout 0x7f0a0059
-int string search 0x7f0a005a
-int string search_hint 0x7f0a005b
-int string search_label 0x7f0a005c
-int string search_setting_description 0x7f0a005d
-int string set_remind_time_message 0x7f0a005e
-int string success_sdcard_export 0x7f0a005f
-int string success_sync_account 0x7f0a0060
-int string sync_progress_init_list 0x7f0a0061
-int string sync_progress_login 0x7f0a0062
-int string sync_progress_syncing 0x7f0a0063
-int string ticker_cancel 0x7f0a0064
-int string ticker_fail 0x7f0a0065
-int string ticker_success 0x7f0a0066
-int string ticker_syncing 0x7f0a0067
-int string tips_of_revoke 0x7f0a006f
-int string widget_havenot_content 0x7f0a0068
-int string widget_under_visit_mode 0x7f0a0069
-int style HighlightTextAppearancePrimary 0x7f0b0000
-int style HighlightTextAppearanceSecondary 0x7f0b0001
-int style NoteActionBarStyle 0x7f0b0002
-int style NoteTheme 0x7f0b0003
-int style TextAppearanceLarge 0x7f0b0004
-int style TextAppearanceMedium 0x7f0b0005
-int style TextAppearanceNormal 0x7f0b0006
-int style TextAppearancePrimaryItem 0x7f0b0007
-int style TextAppearanceSecondaryItem 0x7f0b0008
-int style TextAppearanceSuper 0x7f0b0009
-int style TextAppearanceUnderMenuIcon 0x7f0b000a
-int xml preferences 0x7f0c0000
-int xml searchable 0x7f0c0001
-int xml widget_2x_info 0x7f0c0002
-int xml widget_4x_info 0x7f0c0003
diff --git a/src/src/app/build/intermediates/signing_config_versions/debug/signing-config-versions.json b/src/src/app/build/intermediates/signing_config_versions/debug/signing-config-versions.json
deleted file mode 100644
index 1920ca8..0000000
--- a/src/src/app/build/intermediates/signing_config_versions/debug/signing-config-versions.json
+++ /dev/null
@@ -1 +0,0 @@
-{"enableV1Signing":true,"enableV2Signing":false,"enableV3Signing":false,"enableV4Signing":false}
\ No newline at end of file
diff --git a/src/src/app/build/intermediates/source_set_path_map/debug/file-map.txt b/src/src/app/build/intermediates/source_set_path_map/debug/file-map.txt
deleted file mode 100644
index be7be65..0000000
--- a/src/src/app/build/intermediates/source_set_path_map/debug/file-map.txt
+++ /dev/null
@@ -1,7 +0,0 @@
-net.micode.notes.app-pngs-0 D:\note1\app\build\generated\res\pngs\debug
-net.micode.notes.app-resValues-1 D:\note1\app\build\generated\res\resValues\debug
-net.micode.notes.app-packageDebugResources-2 D:\note1\app\build\intermediates\incremental\debug\packageDebugResources\merged.dir
-net.micode.notes.app-packageDebugResources-3 D:\note1\app\build\intermediates\incremental\debug\packageDebugResources\stripped.dir
-net.micode.notes.app-merged_res-4 D:\note1\app\build\intermediates\merged_res\debug
-net.micode.notes.app-debug-5 D:\note1\app\src\debug\res
-net.micode.notes.app-main-6 D:\note1\app\src\main\res
diff --git a/src/src/app/build/intermediates/stable_resource_ids_file/debug/stableIds.txt b/src/src/app/build/intermediates/stable_resource_ids_file/debug/stableIds.txt
deleted file mode 100644
index 03ff5d9..0000000
--- a/src/src/app/build/intermediates/stable_resource_ids_file/debug/stableIds.txt
+++ /dev/null
@@ -1,315 +0,0 @@
-net.micode.notes:string/preferences_menu_change_account = 0x7f0a0055
-net.micode.notes:string/menu_revoke = 0x7f0a006e
-net.micode.notes:string/menu_sync = 0x7f0a003c
-net.micode.notes:id/move = 0x7f050037
-net.micode.notes:string/menu_font_select = 0x7f0a006b
-net.micode.notes:string/tips_of_revoke = 0x7f0a006f
-net.micode.notes:string/search_hint = 0x7f0a005b
-net.micode.notes:string/search = 0x7f0a005a
-net.micode.notes:string/search_setting_description = 0x7f0a005d
-net.micode.notes:string/note_link_other = 0x7f0a0041
-net.micode.notes:string/preferences_last_sync_time = 0x7f0a0052
-net.micode.notes:string/preferences_title = 0x7f0a0057
-net.micode.notes:style/HighlightTextAppearanceSecondary = 0x7f0b0001
-net.micode.notes:string/error_sdcard_unmounted = 0x7f0a0010
-net.micode.notes:xml/preferences = 0x7f0c0000
-net.micode.notes:string/preferences_toast_success_set_accout = 0x7f0a0059
-net.micode.notes:string/menu_setting = 0x7f0a003a
-net.micode.notes:string/preferences_dialog_change_account_title = 0x7f0a004e
-net.micode.notes:id/navigation_bar = 0x7f050038
-net.micode.notes:string/widget_under_visit_mode = 0x7f0a0069
-net.micode.notes:string/menu_export_text = 0x7f0a0027
-net.micode.notes:drawable/edit_title_white = 0x7f040010
-net.micode.notes:string/menu_normal_mode = 0x7f0a0033
-net.micode.notes:id/account_dialog_subtitle = 0x7f050000
-net.micode.notes:string/menu_send_to_desktop = 0x7f0a0039
-net.micode.notes:string/menu_create_folder = 0x7f0a0024
-net.micode.notes:id/menu_send_to_desktop = 0x7f050031
-net.micode.notes:style/TextAppearanceMedium = 0x7f0b0005
-net.micode.notes:id/preference_sync_button = 0x7f050040
-net.micode.notes:string/menu_font_size = 0x7f0a002d
-net.micode.notes:string/info_note_enter_desktop = 0x7f0a0020
-net.micode.notes:string/menu_deselect_all = 0x7f0a0026
-net.micode.notes:menu/note_list = 0x7f070003
-net.micode.notes:string/menu_folder_change_name = 0x7f0a0028
-net.micode.notes:string/menu_sync_cancel = 0x7f0a003d
-net.micode.notes:string/note_alert_expired = 0x7f0a003f
-net.micode.notes:dimen/text_font_size_large = 0x7f030000
-net.micode.notes:id/ll_font_super = 0x7f050024
-net.micode.notes:id/menu_list_mode = 0x7f05002d
-net.micode.notes:style/TextAppearanceSuper = 0x7f0b0009
-net.micode.notes:string/menu_bg_gao = 0x7f0a0023
-net.micode.notes:string/note_link_tel = 0x7f0a0042
-net.micode.notes:string/datetime_dialog_cancel = 0x7f0a0009
-net.micode.notes:layout/note_item = 0x7f060007
-net.micode.notes:menu/sub_folder = 0x7f070006
-net.micode.notes:string/sync_progress_login = 0x7f0a0062
-net.micode.notes:string/menu_font_normal = 0x7f0a002c
-net.micode.notes:string/menu_font_small = 0x7f0a002e
-net.micode.notes:drawable/widget_4x_blue = 0x7f040043
-net.micode.notes:string/preferences_account_title = 0x7f0a0049
-net.micode.notes:string/menu_remove_remind = 0x7f0a0034
-net.micode.notes:string/menu_font_large = 0x7f0a002b
-net.micode.notes:string/menu_bg_g780 = 0x7f0a0022
-net.micode.notes:string/ic_delete_passcode = 0x7f0a001e
-net.micode.notes:id/menu_setting = 0x7f050033
-net.micode.notes:id/menu_bg_gao = 0x7f050027
-net.micode.notes:string/format_folder_files_count = 0x7f0a001b
-net.micode.notes:xml/searchable = 0x7f0c0001
-net.micode.notes:string/note_link_email = 0x7f0a0040
-net.micode.notes:string/preferences_dialog_change_account_warn_msg = 0x7f0a004f
-net.micode.notes:string/menu_select_all = 0x7f0a0036
-net.micode.notes:style/TextAppearanceLarge = 0x7f0b0004
-net.micode.notes:string/menu_search = 0x7f0a0035
-net.micode.notes:id/menu_font_select = 0x7f050050
-net.micode.notes:id/tv_alert_date = 0x7f050043
-net.micode.notes:string/menu_voice_read = 0x7f0a006a
-net.micode.notes:id/note_bg_color_selector = 0x7f050039
-net.micode.notes:string/format_exported_file_location = 0x7f0a001a
-net.micode.notes:string/ic_set_passcode = 0x7f0a001f
-net.micode.notes:style/TextAppearancePrimaryItem = 0x7f0b0007
-net.micode.notes:xml/widget_2x_info = 0x7f0c0002
-net.micode.notes:xml/widget_4x_info = 0x7f0c0003
-net.micode.notes:string/set_remind_time_message = 0x7f0a005e
-net.micode.notes:string/notealert_enter = 0x7f0a0044
-net.micode.notes:string/delete_remind_time_message = 0x7f0a000b
-net.micode.notes:string/success_sdcard_export = 0x7f0a005f
-net.micode.notes:string/format_move_notes_to_folder = 0x7f0a001c
-net.micode.notes:string/can_not_revoke = 0x7f0a006c
-net.micode.notes:string/preferences_account_summary = 0x7f0a0048
-net.micode.notes:string/format_date_ymd = 0x7f0a0018
-net.micode.notes:drawable/widget_4x_yellow = 0x7f040047
-net.micode.notes:drawable/widget_2x_red = 0x7f040040
-net.micode.notes:string/file_name_txt_format = 0x7f0a0015
-net.micode.notes:string/failed_sdcard_export = 0x7f0a0014
-net.micode.notes:string/menu_select_none = 0x7f0a0037
-net.micode.notes:id/notes_list = 0x7f05003e
-net.micode.notes:string/error_sync_network = 0x7f0a0013
-net.micode.notes:string/menu_share = 0x7f0a003b
-net.micode.notes:drawable/widget_4x_green = 0x7f040044
-net.micode.notes:style/TextAppearanceSecondaryItem = 0x7f0b0008
-net.micode.notes:string/error_sdcard_export = 0x7f0a000f
-net.micode.notes:id/menu_delete_key = 0x7f05004c
-net.micode.notes:id/menu_delete_passcode = 0x7f050029
-net.micode.notes:string/preferences_menu_remove_account = 0x7f0a0056
-net.micode.notes:string/button_delete = 0x7f0a0007
-net.micode.notes:style/TextAppearanceNormal = 0x7f0b0006
-net.micode.notes:id/iv_bg_yellow_select = 0x7f05001c
-net.micode.notes:drawable/widget_2x_yellow = 0x7f040042
-net.micode.notes:id/amPm = 0x7f050008
-net.micode.notes:string/success_sync_account = 0x7f0a0060
-net.micode.notes:string/note_link_web = 0x7f0a0043
-net.micode.notes:id/menu_sync = 0x7f050035
-net.micode.notes:string/menu_move_parent_folder = 0x7f0a0032
-net.micode.notes:string/notealert_ok = 0x7f0a0045
-net.micode.notes:string/error_note_empty_for_clock = 0x7f0a000c
-net.micode.notes:id/tv_title = 0x7f050048
-net.micode.notes:string/app_name = 0x7f0a0004
-net.micode.notes:string/app_widget2x2 = 0x7f0a0005
-net.micode.notes:string/ticker_fail = 0x7f0a0065
-net.micode.notes:string/preferences_dialog_select_account_tips = 0x7f0a0050
-net.micode.notes:string/search_label = 0x7f0a005c
-net.micode.notes:string/alert_title_delete = 0x7f0a0003
-net.micode.notes:string/widget_havenot_content = 0x7f0a0068
-net.micode.notes:string/alert_message_delete_note = 0x7f0a0001
-net.micode.notes:string/alert_message_delete_folder = 0x7f0a0000
-net.micode.notes:string/format_datetime_mdhm = 0x7f0a0019
-net.micode.notes:string/preferences_add_account = 0x7f0a004a
-net.micode.notes:raw/introduction = 0x7f090000
-net.micode.notes:menu/call_record_folder = 0x7f070001
-net.micode.notes:string/datetime_dialog_ok = 0x7f0a000a
-net.micode.notes:drawable/menu_move = 0x7f040034
-net.micode.notes:id/menu_search = 0x7f050030
-net.micode.notes:string/ticker_syncing = 0x7f0a0067
-net.micode.notes:menu/call_note_edit = 0x7f070000
-net.micode.notes:string/preferences_last_sync_time_format = 0x7f0a0053
-net.micode.notes:style/TextAppearanceUnderMenuIcon = 0x7f0b000a
-net.micode.notes:id/menu_revoke = 0x7f050052
-net.micode.notes:drawable/list_red_middle = 0x7f040028
-net.micode.notes:layout/widget_2x = 0x7f06000c
-net.micode.notes:layout/widget_4x = 0x7f06000d
-net.micode.notes:layout/note_list_dropdown_menu = 0x7f060009
-net.micode.notes:string/error_sync_cancelled = 0x7f0a0011
-net.micode.notes:drawable/list_red_single = 0x7f040029
-net.micode.notes:string/ticker_cancel = 0x7f0a0064
-net.micode.notes:drawable/icon_app = 0x7f04001b
-net.micode.notes:layout/note_list = 0x7f060008
-net.micode.notes:string/sync_progress_init_list = 0x7f0a0061
-net.micode.notes:layout/add_account_text = 0x7f060001
-net.micode.notes:id/btn_new_note = 0x7f050009
-net.micode.notes:id/widget_text = 0x7f05004b
-net.micode.notes:id/widget_bg_image = 0x7f05004a
-net.micode.notes:string/menu_folder_delete = 0x7f0a0029
-net.micode.notes:id/tv_name = 0x7f050046
-net.micode.notes:id/account_dialog_title = 0x7f050001
-net.micode.notes:id/tv_folder_name = 0x7f050044
-net.micode.notes:color/primary_text_dark = 0x7f020000
-net.micode.notes:id/tv_time = 0x7f050047
-net.micode.notes:id/selection_menu = 0x7f050041
-net.micode.notes:id/ll_font_small = 0x7f050023
-net.micode.notes:id/menu_share = 0x7f050034
-net.micode.notes:string/menu_move = 0x7f0a0031
-net.micode.notes:id/date = 0x7f05000c
-net.micode.notes:id/note_item = 0x7f05003c
-net.micode.notes:style/HighlightTextAppearancePrimary = 0x7f0b0000
-net.micode.notes:drawable/font_size_selector_bg = 0x7f040016
-net.micode.notes:id/note_edit_view = 0x7f05003b
-net.micode.notes:string/preferences_dialog_select_account_title = 0x7f0a0051
-net.micode.notes:id/menu_font_size = 0x7f05002c
-net.micode.notes:id/menu_bg_g780 = 0x7f050026
-net.micode.notes:drawable/list_white_middle = 0x7f04002c
-net.micode.notes:string/preferences_button_sync_cancel = 0x7f0a004c
-net.micode.notes:id/menu_alert = 0x7f050025
-net.micode.notes:string/error_note_not_exist = 0x7f0a000e
-net.micode.notes:string/error_note_empty_for_send_to_desktop = 0x7f0a000d
-net.micode.notes:id/minute = 0x7f050036
-net.micode.notes:id/ll_font_normal = 0x7f050022
-net.micode.notes:id/no_change = 0x7f05004e
-net.micode.notes:id/hour = 0x7f050011
-net.micode.notes:id/ll_font_large = 0x7f050021
-net.micode.notes:id/iv_super_select = 0x7f050020
-net.micode.notes:string/preferences_button_sync_immediately = 0x7f0a004d
-net.micode.notes:string/ticker_success = 0x7f0a0066
-net.micode.notes:id/iv_medium_select = 0x7f05001e
-net.micode.notes:id/iv_large_select = 0x7f05001d
-net.micode.notes:drawable/bg_btn_set_color = 0x7f040004
-net.micode.notes:id/iv_bg_yellow = 0x7f05001b
-net.micode.notes:layout/account_dialog_title = 0x7f060000
-net.micode.notes:id/iv_bg_red_select = 0x7f050018
-net.micode.notes:drawable/menu_delete = 0x7f040033
-net.micode.notes:string/notelist_menu_new = 0x7f0a0046
-net.micode.notes:id/iv_bg_red = 0x7f050017
-net.micode.notes:id/iv_bg_green_select = 0x7f050016
-net.micode.notes:id/menu_new_note = 0x7f05002f
-net.micode.notes:drawable/list_green_single = 0x7f040025
-net.micode.notes:id/iv_alert_icon = 0x7f050012
-net.micode.notes:string/preferences_toast_cannot_change_account = 0x7f0a0058
-net.micode.notes:id/et_edit_text = 0x7f05000e
-net.micode.notes:string/app_widget4x4 = 0x7f0a0006
-net.micode.notes:drawable/title_bar_bg = 0x7f04003d
-net.micode.notes:id/add_img_menu_move = 0x7f050007
-net.micode.notes:layout/note_edit = 0x7f060005
-net.micode.notes:id/action_other = 0x7f050004
-net.micode.notes:id/font_size_selector = 0x7f050010
-net.micode.notes:color/user_query_highlight = 0x7f020002
-net.micode.notes:drawable/delete = 0x7f040008
-net.micode.notes:id/iv_bg_blue = 0x7f050013
-net.micode.notes:id/action_bold = 0x7f050002
-net.micode.notes:string/menu_select_title = 0x7f0a0038
-net.micode.notes:drawable/list_red_down = 0x7f040027
-net.micode.notes:string/menu_title_select_folder = 0x7f0a003e
-net.micode.notes:string/hint_foler_name = 0x7f0a001d
-net.micode.notes:id/menu_delete = 0x7f050028
-net.micode.notes:id/add_img_btn = 0x7f050006
-net.micode.notes:menu/note_list_dropdown = 0x7f070004
-net.micode.notes:drawable/list_footer_bg = 0x7f040022
-net.micode.notes:string/menu_delete = 0x7f0a0025
-net.micode.notes:drawable/edit_red = 0x7f04000c
-net.micode.notes:string/preferences_menu_cancel = 0x7f0a0054
-net.micode.notes:drawable/widget_2x_white = 0x7f040041
-net.micode.notes:drawable/list_background = 0x7f04001c
-net.micode.notes:string/alert_message_delete_notes = 0x7f0a0002
-net.micode.notes:drawable/widget_2x_blue = 0x7f04003e
-net.micode.notes:layout/folder_list_item = 0x7f060004
-net.micode.notes:id/action_italic = 0x7f050003
-net.micode.notes:drawable/search_result = 0x7f04003a
-net.micode.notes:drawable/selected = 0x7f04003b
-net.micode.notes:plurals/search_results_title = 0x7f080000
-net.micode.notes:drawable/edit_title_green = 0x7f04000e
-net.micode.notes:style/NoteTheme = 0x7f0b0003
-net.micode.notes:id/iv_bg_blue_select = 0x7f050014
-net.micode.notes:drawable/notification = 0x7f040039
-net.micode.notes:drawable/new_note_normal = 0x7f040036
-net.micode.notes:drawable/edit_white = 0x7f040012
-net.micode.notes:drawable/widget_2x_green = 0x7f04003f
-net.micode.notes:id/iv_bg_white = 0x7f050019
-net.micode.notes:drawable/bg_color_btn_mask = 0x7f040005
-net.micode.notes:drawable/list_yellow_up = 0x7f040032
-net.micode.notes:menu/note_edit = 0x7f070002
-net.micode.notes:id/iv_bg_green = 0x7f050015
-net.micode.notes:drawable/list_white_down = 0x7f04002b
-net.micode.notes:drawable/list_white_up = 0x7f04002e
-net.micode.notes:drawable/list_white_single = 0x7f04002d
-net.micode.notes:drawable/edit_title_red = 0x7f04000f
-net.micode.notes:id/tv_title_bar = 0x7f050049
-net.micode.notes:drawable/list_red_up = 0x7f04002a
-net.micode.notes:id/delete = 0x7f05000d
-net.micode.notes:layout/note_edit_list_item = 0x7f060006
-net.micode.notes:string/call_record_folder_name = 0x7f0a0008
-net.micode.notes:drawable/list_green_up = 0x7f040026
-net.micode.notes:array/menu_share_ways = 0x7f010001
-net.micode.notes:drawable/font_small = 0x7f040017
-net.micode.notes:id/btn_set_bg_color = 0x7f05000a
-net.micode.notes:id/prefenerece_sync_status_textview = 0x7f05003f
-net.micode.notes:id/et_foler_name = 0x7f05000f
-net.micode.notes:string/folder_exist = 0x7f0a0017
-net.micode.notes:id/note_edit_list = 0x7f05003a
-net.micode.notes:drawable/new_note = 0x7f040035
-net.micode.notes:id/menu_delete_remind = 0x7f05002a
-net.micode.notes:drawable/note_edit_color_selector_panel = 0x7f040038
-net.micode.notes:id/menu_export_text = 0x7f05002b
-net.micode.notes:menu/note_list_options = 0x7f070005
-net.micode.notes:drawable/widget_4x_white = 0x7f040046
-net.micode.notes:array/format_for_exported_note = 0x7f010000
-net.micode.notes:id/action_select_all = 0x7f050005
-net.micode.notes:string/menu_folder_view = 0x7f0a002a
-net.micode.notes:drawable/dropdown_icon = 0x7f040009
-net.micode.notes:string/notelist_string_info = 0x7f0a0047
-net.micode.notes:drawable/list_blue_single = 0x7f04001f
-net.micode.notes:dimen/text_font_size_normal = 0x7f030002
-net.micode.notes:layout/dialog_edit_text = 0x7f060003
-net.micode.notes:drawable/g780 = 0x7f040019
-net.micode.notes:color/secondary_text_dark = 0x7f020001
-net.micode.notes:drawable/list_folder = 0x7f040021
-net.micode.notes:drawable/list_green_middle = 0x7f040024
-net.micode.notes:drawable/a2 = 0x7f040001
-net.micode.notes:string/sync_progress_syncing = 0x7f0a0063
-net.micode.notes:drawable/font_normal = 0x7f040015
-net.micode.notes:drawable/list_blue_up = 0x7f040020
-net.micode.notes:id/note_title = 0x7f05003d
-net.micode.notes:drawable/gao = 0x7f04001a
-net.micode.notes:drawable/clock = 0x7f040007
-net.micode.notes:id/iv_small_select = 0x7f05001f
-net.micode.notes:drawable/list_blue_down = 0x7f04001d
-net.micode.notes:string/menu_alert = 0x7f0a0021
-net.micode.notes:string/error_sync_internal = 0x7f0a0012
-net.micode.notes:drawable/title_alert = 0x7f04003c
-net.micode.notes:drawable/list_green_down = 0x7f040023
-net.micode.notes:string/file_path = 0x7f0a0016
-net.micode.notes:drawable/font_large = 0x7f040014
-net.micode.notes:drawable/edit_yellow = 0x7f040013
-net.micode.notes:drawable/list_yellow_down = 0x7f04002f
-net.micode.notes:id/menu_set_passcode = 0x7f050032
-net.micode.notes:id/menu_voice_read = 0x7f05004f
-net.micode.notes:dimen/text_font_size_super = 0x7f030004
-net.micode.notes:drawable/list_yellow_single = 0x7f040031
-net.micode.notes:id/cb_edit_item = 0x7f05000b
-net.micode.notes:drawable/font_super = 0x7f040018
-net.micode.notes:drawable/edit_title_blue = 0x7f04000d
-net.micode.notes:id/tv_modified_date = 0x7f050045
-net.micode.notes:drawable/a4 = 0x7f040003
-net.micode.notes:id/menu_set_key = 0x7f05004d
-net.micode.notes:drawable/edit_blue = 0x7f04000a
-net.micode.notes:string/menu_list_mode = 0x7f0a0030
-net.micode.notes:drawable/list_yellow_middle = 0x7f040030
-net.micode.notes:drawable/list_blue_middle = 0x7f04001e
-net.micode.notes:dimen/text_font_size_medium = 0x7f030001
-net.micode.notes:drawable/new_note_pressed = 0x7f040037
-net.micode.notes:id/menu_new_folder = 0x7f05002e
-net.micode.notes:string/have_not_input_anything = 0x7f0a006d
-net.micode.notes:id/sv_note_edit = 0x7f050042
-net.micode.notes:id/text_num = 0x7f050051
-net.micode.notes:drawable/call_record = 0x7f040006
-net.micode.notes:drawable/edit_green = 0x7f04000b
-net.micode.notes:layout/settings_header = 0x7f06000b
-net.micode.notes:style/NoteActionBarStyle = 0x7f0b0002
-net.micode.notes:dimen/text_font_size_small = 0x7f030003
-net.micode.notes:string/preferences_bg_random_appear_title = 0x7f0a004b
-net.micode.notes:drawable/a3 = 0x7f040002
-net.micode.notes:drawable/a1 = 0x7f040000
-net.micode.notes:string/menu_font_super = 0x7f0a002f
-net.micode.notes:drawable/widget_4x_red = 0x7f040045
-net.micode.notes:id/iv_bg_white_select = 0x7f05001a
-net.micode.notes:drawable/edit_title_yellow = 0x7f040011
-net.micode.notes:layout/datetime_picker = 0x7f060002
-net.micode.notes:layout/note_list_footer = 0x7f06000a
diff --git a/src/src/app/build/intermediates/variant_model/debug/variant_model.json b/src/src/app/build/intermediates/variant_model/debug/variant_model.json
deleted file mode 100644
index fbfb74a..0000000
Binary files a/src/src/app/build/intermediates/variant_model/debug/variant_model.json and /dev/null differ
diff --git a/src/src/app/build/outputs/logs/manifest-merger-debug-report.txt b/src/src/app/build/outputs/logs/manifest-merger-debug-report.txt
deleted file mode 100644
index e280af9..0000000
--- a/src/src/app/build/outputs/logs/manifest-merger-debug-report.txt
+++ /dev/null
@@ -1,224 +0,0 @@
--- Merging decision tree log ---
-manifest
-ADDED from D:\note1\app\src\main\AndroidManifest.xml:18:1-150:12
-INJECTED from D:\note1\app\src\main\AndroidManifest.xml:18:1-150:12
-INJECTED from D:\note1\app\src\main\AndroidManifest.xml:18:1-150:12
-INJECTED from D:\note1\app\src\main\AndroidManifest.xml:18:1-150:12
- package
- ADDED from D:\note1\app\src\main\AndroidManifest.xml:19:5-31
- INJECTED from D:\note1\app\src\main\AndroidManifest.xml
- android:versionName
- ADDED from D:\note1\app\src\main\AndroidManifest.xml:21:5-30
- INJECTED from D:\note1\app\src\main\AndroidManifest.xml
- xmlns:android
- ADDED from D:\note1\app\src\main\AndroidManifest.xml:18:11-69
- android:versionCode
- ADDED from D:\note1\app\src\main\AndroidManifest.xml:20:5-28
- INJECTED from D:\note1\app\src\main\AndroidManifest.xml
-uses-sdk
-ADDED from D:\note1\app\src\main\AndroidManifest.xml:23:5-44
-INJECTED from D:\note1\app\src\main\AndroidManifest.xml:23:5-44
-INJECTED from D:\note1\app\src\main\AndroidManifest.xml:23:5-44
- android:targetSdkVersion
- INJECTED from D:\note1\app\src\main\AndroidManifest.xml
- android:minSdkVersion
- ADDED from D:\note1\app\src\main\AndroidManifest.xml:23:15-41
- INJECTED from D:\note1\app\src\main\AndroidManifest.xml
-uses-permission#android.permission.WRITE_EXTERNAL_STORAGE
-ADDED from D:\note1\app\src\main\AndroidManifest.xml:25:5-81
- android:name
- ADDED from D:\note1\app\src\main\AndroidManifest.xml:25:22-78
-uses-permission#com.android.launcher.permission.INSTALL_SHORTCUT
-ADDED from D:\note1\app\src\main\AndroidManifest.xml:26:5-88
- android:name
- ADDED from D:\note1\app\src\main\AndroidManifest.xml:26:22-85
-uses-permission#android.permission.INTERNET
-ADDED from D:\note1\app\src\main\AndroidManifest.xml:27:5-67
- android:name
- ADDED from D:\note1\app\src\main\AndroidManifest.xml:27:22-64
-uses-permission#android.permission.READ_CONTACTS
-ADDED from D:\note1\app\src\main\AndroidManifest.xml:28:5-72
- android:name
- ADDED from D:\note1\app\src\main\AndroidManifest.xml:28:22-69
-uses-permission#android.permission.MANAGE_ACCOUNTS
-ADDED from D:\note1\app\src\main\AndroidManifest.xml:29:5-74
- android:name
- ADDED from D:\note1\app\src\main\AndroidManifest.xml:29:22-71
-uses-permission#android.permission.AUTHENTICATE_ACCOUNTS
-ADDED from D:\note1\app\src\main\AndroidManifest.xml:30:5-80
- android:name
- ADDED from D:\note1\app\src\main\AndroidManifest.xml:30:22-77
-uses-permission#android.permission.GET_ACCOUNTS
-ADDED from D:\note1\app\src\main\AndroidManifest.xml:31:5-71
- android:name
- ADDED from D:\note1\app\src\main\AndroidManifest.xml:31:22-68
-uses-permission#android.permission.USE_CREDENTIALS
-ADDED from D:\note1\app\src\main\AndroidManifest.xml:32:5-74
- android:name
- ADDED from D:\note1\app\src\main\AndroidManifest.xml:32:22-71
-uses-permission#android.permission.RECEIVE_BOOT_COMPLETED
-ADDED from D:\note1\app\src\main\AndroidManifest.xml:33:5-81
- android:name
- ADDED from D:\note1\app\src\main\AndroidManifest.xml:33:22-78
-application
-ADDED from D:\note1\app\src\main\AndroidManifest.xml:35:5-149:19
- android:label
- ADDED from D:\note1\app\src\main\AndroidManifest.xml:37:9-41
- android:icon
- ADDED from D:\note1\app\src\main\AndroidManifest.xml:36:9-42
-activity#net.micode.notes.ui.NotesListActivity
-ADDED from D:\note1\app\src\main\AndroidManifest.xml:38:9-51:20
- android:label
- ADDED from D:\note1\app\src\main\AndroidManifest.xml:41:13-45
- android:launchMode
- ADDED from D:\note1\app\src\main\AndroidManifest.xml:42:13-43
- android:windowSoftInputMode
- ADDED from D:\note1\app\src\main\AndroidManifest.xml:45:13-52
- android:uiOptions
- ADDED from D:\note1\app\src\main\AndroidManifest.xml:44:13-37
- android:configChanges
- ADDED from D:\note1\app\src\main\AndroidManifest.xml:40:13-74
- android:theme
- ADDED from D:\note1\app\src\main\AndroidManifest.xml:43:13-45
- android:name
- ADDED from D:\note1\app\src\main\AndroidManifest.xml:39:13-49
-intent-filter#action:name:android.intent.action.MAIN+category:name:android.intent.category.LAUNCHER
-ADDED from D:\note1\app\src\main\AndroidManifest.xml:47:13-50:29
-action#android.intent.action.MAIN
-ADDED from D:\note1\app\src\main\AndroidManifest.xml:48:17-69
- android:name
- ADDED from D:\note1\app\src\main\AndroidManifest.xml:48:25-66
-category#android.intent.category.LAUNCHER
-ADDED from D:\note1\app\src\main\AndroidManifest.xml:49:17-77
- android:name
- ADDED from D:\note1\app\src\main\AndroidManifest.xml:49:27-74
-activity#net.micode.notes.ui.NoteEditActivity
-ADDED from D:\note1\app\src\main\AndroidManifest.xml:53:9-81:20
- android:launchMode
- ADDED from D:\note1\app\src\main\AndroidManifest.xml:56:13-43
- android:configChanges
- ADDED from D:\note1\app\src\main\AndroidManifest.xml:55:13-74
- android:theme
- ADDED from D:\note1\app\src\main\AndroidManifest.xml:57:13-45
- android:name
- ADDED from D:\note1\app\src\main\AndroidManifest.xml:54:13-48
-intent-filter#action:name:android.intent.action.VIEW+category:name:android.intent.category.DEFAULT+data:mimeType:vnd.android.cursor.item/call_note+data:mimeType:vnd.android.cursor.item/text_note
-ADDED from D:\note1\app\src\main\AndroidManifest.xml:59:13-64:29
-action#android.intent.action.VIEW
-ADDED from D:\note1\app\src\main\AndroidManifest.xml:60:17-69
- android:name
- ADDED from D:\note1\app\src\main\AndroidManifest.xml:60:25-66
-category#android.intent.category.DEFAULT
-ADDED from D:\note1\app\src\main\AndroidManifest.xml:61:17-76
- android:name
- ADDED from D:\note1\app\src\main\AndroidManifest.xml:61:27-73
-data
-ADDED from D:\note1\app\src\main\AndroidManifest.xml:62:17-78
- android:mimeType
- ADDED from D:\note1\app\src\main\AndroidManifest.xml:62:23-75
-intent-filter#action:name:android.intent.action.INSERT_OR_EDIT+category:name:android.intent.category.DEFAULT+data:mimeType:vnd.android.cursor.item/call_note+data:mimeType:vnd.android.cursor.item/text_note
-ADDED from D:\note1\app\src\main\AndroidManifest.xml:66:13-71:29
-action#android.intent.action.INSERT_OR_EDIT
-ADDED from D:\note1\app\src\main\AndroidManifest.xml:67:17-79
- android:name
- ADDED from D:\note1\app\src\main\AndroidManifest.xml:67:25-76
-intent-filter#action:name:android.intent.action.SEARCH+category:name:android.intent.category.DEFAULT
-ADDED from D:\note1\app\src\main\AndroidManifest.xml:73:13-76:29
-action#android.intent.action.SEARCH
-ADDED from D:\note1\app\src\main\AndroidManifest.xml:74:17-71
- android:name
- ADDED from D:\note1\app\src\main\AndroidManifest.xml:74:25-68
-meta-data#android.app.searchable
-ADDED from D:\note1\app\src\main\AndroidManifest.xml:78:13-80:54
- android:resource
- ADDED from D:\note1\app\src\main\AndroidManifest.xml:80:17-51
- android:name
- ADDED from D:\note1\app\src\main\AndroidManifest.xml:79:17-54
-provider#net.micode.notes.data.NotesProvider
-ADDED from D:\note1\app\src\main\AndroidManifest.xml:83:9-86:43
- android:authorities
- ADDED from D:\note1\app\src\main\AndroidManifest.xml:85:13-47
- android:multiprocess
- ADDED from D:\note1\app\src\main\AndroidManifest.xml:86:13-40
- android:name
- ADDED from D:\note1\app\src\main\AndroidManifest.xml:84:13-63
-receiver#net.micode.notes.widget.NoteWidgetProvider_2x
-ADDED from D:\note1\app\src\main\AndroidManifest.xml:88:9-100:20
- android:label
- ADDED from D:\note1\app\src\main\AndroidManifest.xml:90:13-50
- android:name
- ADDED from D:\note1\app\src\main\AndroidManifest.xml:89:13-57
-intent-filter#action:name:android.appwidget.action.APPWIDGET_DELETED+action:name:android.appwidget.action.APPWIDGET_UPDATE+action:name:android.intent.action.PRIVACY_MODE_CHANGED
-ADDED from D:\note1\app\src\main\AndroidManifest.xml:91:13-95:29
-action#android.appwidget.action.APPWIDGET_UPDATE
-ADDED from D:\note1\app\src\main\AndroidManifest.xml:92:17-84
- android:name
- ADDED from D:\note1\app\src\main\AndroidManifest.xml:92:25-81
-action#android.appwidget.action.APPWIDGET_DELETED
-ADDED from D:\note1\app\src\main\AndroidManifest.xml:93:17-85
- android:name
- ADDED from D:\note1\app\src\main\AndroidManifest.xml:93:25-82
-action#android.intent.action.PRIVACY_MODE_CHANGED
-ADDED from D:\note1\app\src\main\AndroidManifest.xml:94:17-85
- android:name
- ADDED from D:\note1\app\src\main\AndroidManifest.xml:94:25-82
-meta-data#android.appwidget.provider
-ADDED from D:\note1\app\src\main\AndroidManifest.xml:97:13-99:58
- android:resource
- ADDED from D:\note1\app\src\main\AndroidManifest.xml:99:17-55
- android:name
- ADDED from D:\note1\app\src\main\AndroidManifest.xml:98:17-58
-receiver#net.micode.notes.widget.NoteWidgetProvider_4x
-ADDED from D:\note1\app\src\main\AndroidManifest.xml:101:9-114:20
- android:label
- ADDED from D:\note1\app\src\main\AndroidManifest.xml:103:13-50
- android:name
- ADDED from D:\note1\app\src\main\AndroidManifest.xml:102:13-57
-receiver#net.micode.notes.ui.AlarmInitReceiver
-ADDED from D:\note1\app\src\main\AndroidManifest.xml:116:9-120:20
- android:name
- ADDED from D:\note1\app\src\main\AndroidManifest.xml:116:19-55
-intent-filter#action:name:android.intent.action.BOOT_COMPLETED
-ADDED from D:\note1\app\src\main\AndroidManifest.xml:117:13-119:29
-action#android.intent.action.BOOT_COMPLETED
-ADDED from D:\note1\app\src\main\AndroidManifest.xml:118:17-79
- android:name
- ADDED from D:\note1\app\src\main\AndroidManifest.xml:118:25-76
-receiver#net.micode.notes.ui.AlarmReceiver
-ADDED from D:\note1\app\src\main\AndroidManifest.xml:122:9-125:20
- android:process
- ADDED from D:\note1\app\src\main\AndroidManifest.xml:124:13-38
- android:name
- ADDED from D:\note1\app\src\main\AndroidManifest.xml:123:13-61
-activity#net.micode.notes.ui.AlarmAlertActivity
-ADDED from D:\note1\app\src\main\AndroidManifest.xml:127:9-132:20
- android:label
- ADDED from D:\note1\app\src\main\AndroidManifest.xml:129:13-45
- android:launchMode
- ADDED from D:\note1\app\src\main\AndroidManifest.xml:130:13-48
- android:theme
- ADDED from D:\note1\app\src\main\AndroidManifest.xml:131:13-75
- android:name
- ADDED from D:\note1\app\src\main\AndroidManifest.xml:128:13-50
-activity#net.micode.notes.ui.NotesPreferenceActivity
-ADDED from D:\note1\app\src\main\AndroidManifest.xml:134:9-139:20
- android:label
- ADDED from D:\note1\app\src\main\AndroidManifest.xml:136:13-54
- android:launchMode
- ADDED from D:\note1\app\src\main\AndroidManifest.xml:137:13-43
- android:theme
- ADDED from D:\note1\app\src\main\AndroidManifest.xml:138:13-60
- android:name
- ADDED from D:\note1\app\src\main\AndroidManifest.xml:135:13-71
-service#net.micode.notes.gtask.remote.GTaskSyncService
-ADDED from D:\note1\app\src\main\AndroidManifest.xml:141:9-144:19
- android:exported
- ADDED from D:\note1\app\src\main\AndroidManifest.xml:143:13-37
- android:name
- ADDED from D:\note1\app\src\main\AndroidManifest.xml:142:13-74
-meta-data#android.app.default_searchable
-ADDED from D:\note1\app\src\main\AndroidManifest.xml:146:9-148:52
- android:value
- ADDED from D:\note1\app\src\main\AndroidManifest.xml:148:13-49
- android:name
- ADDED from D:\note1\app\src\main\AndroidManifest.xml:147:13-58
diff --git a/src/src/app/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/AlarmAlertActivity.class.uniqueId19 b/src/src/app/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/AlarmAlertActivity.class.uniqueId19
deleted file mode 100644
index 1c2c702..0000000
Binary files a/src/src/app/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/AlarmAlertActivity.class.uniqueId19 and /dev/null differ
diff --git a/src/src/app/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/NoteEditActivity$1.class.uniqueId2 b/src/src/app/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/NoteEditActivity$1.class.uniqueId2
deleted file mode 100644
index b4a7aaa..0000000
Binary files a/src/src/app/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/NoteEditActivity$1.class.uniqueId2 and /dev/null differ
diff --git a/src/src/app/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/NoteEditActivity$10.class.uniqueId28 b/src/src/app/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/NoteEditActivity$10.class.uniqueId28
deleted file mode 100644
index af1d549..0000000
Binary files a/src/src/app/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/NoteEditActivity$10.class.uniqueId28 and /dev/null differ
diff --git a/src/src/app/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/NoteEditActivity$11.class.uniqueId9 b/src/src/app/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/NoteEditActivity$11.class.uniqueId9
deleted file mode 100644
index 87a8396..0000000
Binary files a/src/src/app/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/NoteEditActivity$11.class.uniqueId9 and /dev/null differ
diff --git a/src/src/app/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/NoteEditActivity$12.class.uniqueId36 b/src/src/app/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/NoteEditActivity$12.class.uniqueId36
deleted file mode 100644
index 843c919..0000000
Binary files a/src/src/app/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/NoteEditActivity$12.class.uniqueId36 and /dev/null differ
diff --git a/src/src/app/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/NoteEditActivity$13.class.uniqueId15 b/src/src/app/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/NoteEditActivity$13.class.uniqueId15
deleted file mode 100644
index 5d7779e..0000000
Binary files a/src/src/app/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/NoteEditActivity$13.class.uniqueId15 and /dev/null differ
diff --git a/src/src/app/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/NoteEditActivity$14.class.uniqueId5 b/src/src/app/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/NoteEditActivity$14.class.uniqueId5
deleted file mode 100644
index 18b9466..0000000
Binary files a/src/src/app/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/NoteEditActivity$14.class.uniqueId5 and /dev/null differ
diff --git a/src/src/app/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/NoteEditActivity$15.class.uniqueId20 b/src/src/app/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/NoteEditActivity$15.class.uniqueId20
deleted file mode 100644
index a51c0ff..0000000
Binary files a/src/src/app/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/NoteEditActivity$15.class.uniqueId20 and /dev/null differ
diff --git a/src/src/app/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/NoteEditActivity$2.class.uniqueId30 b/src/src/app/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/NoteEditActivity$2.class.uniqueId30
deleted file mode 100644
index bfad9a3..0000000
Binary files a/src/src/app/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/NoteEditActivity$2.class.uniqueId30 and /dev/null differ
diff --git a/src/src/app/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/NoteEditActivity$3.class.uniqueId12 b/src/src/app/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/NoteEditActivity$3.class.uniqueId12
deleted file mode 100644
index d539a44..0000000
Binary files a/src/src/app/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/NoteEditActivity$3.class.uniqueId12 and /dev/null differ
diff --git a/src/src/app/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/NoteEditActivity$4.class.uniqueId34 b/src/src/app/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/NoteEditActivity$4.class.uniqueId34
deleted file mode 100644
index 7287632..0000000
Binary files a/src/src/app/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/NoteEditActivity$4.class.uniqueId34 and /dev/null differ
diff --git a/src/src/app/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/NoteEditActivity$5.class.uniqueId14 b/src/src/app/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/NoteEditActivity$5.class.uniqueId14
deleted file mode 100644
index 18d86dc..0000000
Binary files a/src/src/app/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/NoteEditActivity$5.class.uniqueId14 and /dev/null differ
diff --git a/src/src/app/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/NoteEditActivity$6.class.uniqueId0 b/src/src/app/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/NoteEditActivity$6.class.uniqueId0
deleted file mode 100644
index 3471115..0000000
Binary files a/src/src/app/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/NoteEditActivity$6.class.uniqueId0 and /dev/null differ
diff --git a/src/src/app/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/NoteEditActivity$7.class.uniqueId35 b/src/src/app/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/NoteEditActivity$7.class.uniqueId35
deleted file mode 100644
index 95cbe66..0000000
Binary files a/src/src/app/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/NoteEditActivity$7.class.uniqueId35 and /dev/null differ
diff --git a/src/src/app/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/NoteEditActivity$8.class.uniqueId13 b/src/src/app/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/NoteEditActivity$8.class.uniqueId13
deleted file mode 100644
index eda91e8..0000000
Binary files a/src/src/app/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/NoteEditActivity$8.class.uniqueId13 and /dev/null differ
diff --git a/src/src/app/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/NoteEditActivity$9.class.uniqueId31 b/src/src/app/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/NoteEditActivity$9.class.uniqueId31
deleted file mode 100644
index 18e336d..0000000
Binary files a/src/src/app/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/NoteEditActivity$9.class.uniqueId31 and /dev/null differ
diff --git a/src/src/app/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/NoteEditActivity$HeadViewHolder.class.uniqueId10 b/src/src/app/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/NoteEditActivity$HeadViewHolder.class.uniqueId10
deleted file mode 100644
index 1f4f026..0000000
Binary files a/src/src/app/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/NoteEditActivity$HeadViewHolder.class.uniqueId10 and /dev/null differ
diff --git a/src/src/app/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/NoteEditActivity.class.uniqueId18 b/src/src/app/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/NoteEditActivity.class.uniqueId18
deleted file mode 100644
index fb640e0..0000000
Binary files a/src/src/app/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/NoteEditActivity.class.uniqueId18 and /dev/null differ
diff --git a/src/src/app/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/NoteItemData.class.uniqueId24 b/src/src/app/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/NoteItemData.class.uniqueId24
deleted file mode 100644
index 47c6986..0000000
Binary files a/src/src/app/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/NoteItemData.class.uniqueId24 and /dev/null differ
diff --git a/src/src/app/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/NoteWidgetProvider.class.uniqueId27 b/src/src/app/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/NoteWidgetProvider.class.uniqueId27
deleted file mode 100644
index a00281f..0000000
Binary files a/src/src/app/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/NoteWidgetProvider.class.uniqueId27 and /dev/null differ
diff --git a/src/src/app/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/NotesListActivity$1.class.uniqueId16 b/src/src/app/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/NotesListActivity$1.class.uniqueId16
deleted file mode 100644
index ae9244f..0000000
Binary files a/src/src/app/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/NotesListActivity$1.class.uniqueId16 and /dev/null differ
diff --git a/src/src/app/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/NotesListActivity$2.class.uniqueId4 b/src/src/app/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/NotesListActivity$2.class.uniqueId4
deleted file mode 100644
index 70299f5..0000000
Binary files a/src/src/app/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/NotesListActivity$2.class.uniqueId4 and /dev/null differ
diff --git a/src/src/app/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/NotesListActivity$3.class.uniqueId21 b/src/src/app/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/NotesListActivity$3.class.uniqueId21
deleted file mode 100644
index e952b8c..0000000
Binary files a/src/src/app/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/NotesListActivity$3.class.uniqueId21 and /dev/null differ
diff --git a/src/src/app/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/NotesListActivity$4.class.uniqueId7 b/src/src/app/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/NotesListActivity$4.class.uniqueId7
deleted file mode 100644
index ae17758..0000000
Binary files a/src/src/app/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/NotesListActivity$4.class.uniqueId7 and /dev/null differ
diff --git a/src/src/app/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/NotesListActivity$5.class.uniqueId25 b/src/src/app/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/NotesListActivity$5.class.uniqueId25
deleted file mode 100644
index cf9cee6..0000000
Binary files a/src/src/app/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/NotesListActivity$5.class.uniqueId25 and /dev/null differ
diff --git a/src/src/app/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/NotesListActivity$6.class.uniqueId22 b/src/src/app/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/NotesListActivity$6.class.uniqueId22
deleted file mode 100644
index 8e474d2..0000000
Binary files a/src/src/app/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/NotesListActivity$6.class.uniqueId22 and /dev/null differ
diff --git a/src/src/app/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/NotesListActivity$7.class.uniqueId1 b/src/src/app/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/NotesListActivity$7.class.uniqueId1
deleted file mode 100644
index d21739a..0000000
Binary files a/src/src/app/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/NotesListActivity$7.class.uniqueId1 and /dev/null differ
diff --git a/src/src/app/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/NotesListActivity$8.class.uniqueId17 b/src/src/app/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/NotesListActivity$8.class.uniqueId17
deleted file mode 100644
index 7a5850a..0000000
Binary files a/src/src/app/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/NotesListActivity$8.class.uniqueId17 and /dev/null differ
diff --git a/src/src/app/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/NotesListActivity$9.class.uniqueId11 b/src/src/app/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/NotesListActivity$9.class.uniqueId11
deleted file mode 100644
index 8dbbc7e..0000000
Binary files a/src/src/app/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/NotesListActivity$9.class.uniqueId11 and /dev/null differ
diff --git a/src/src/app/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/NotesListActivity$BackgroundQueryHandler.class.uniqueId23 b/src/src/app/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/NotesListActivity$BackgroundQueryHandler.class.uniqueId23
deleted file mode 100644
index fadd4fc..0000000
Binary files a/src/src/app/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/NotesListActivity$BackgroundQueryHandler.class.uniqueId23 and /dev/null differ
diff --git a/src/src/app/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/NotesListActivity$ListEditState.class.uniqueId6 b/src/src/app/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/NotesListActivity$ListEditState.class.uniqueId6
deleted file mode 100644
index 2edab7b..0000000
Binary files a/src/src/app/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/NotesListActivity$ListEditState.class.uniqueId6 and /dev/null differ
diff --git a/src/src/app/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/NotesListActivity$ModeCallback$1.class.uniqueId8 b/src/src/app/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/NotesListActivity$ModeCallback$1.class.uniqueId8
deleted file mode 100644
index e0b44ff..0000000
Binary files a/src/src/app/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/NotesListActivity$ModeCallback$1.class.uniqueId8 and /dev/null differ
diff --git a/src/src/app/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/NotesListActivity$ModeCallback$2.class.uniqueId32 b/src/src/app/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/NotesListActivity$ModeCallback$2.class.uniqueId32
deleted file mode 100644
index 5e68562..0000000
Binary files a/src/src/app/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/NotesListActivity$ModeCallback$2.class.uniqueId32 and /dev/null differ
diff --git a/src/src/app/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/NotesListActivity$ModeCallback.class.uniqueId33 b/src/src/app/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/NotesListActivity$ModeCallback.class.uniqueId33
deleted file mode 100644
index 70b4274..0000000
Binary files a/src/src/app/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/NotesListActivity$ModeCallback.class.uniqueId33 and /dev/null differ
diff --git a/src/src/app/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/NotesListActivity$NewNoteOnTouchListener.class.uniqueId26 b/src/src/app/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/NotesListActivity$NewNoteOnTouchListener.class.uniqueId26
deleted file mode 100644
index 1e7b9f0..0000000
Binary files a/src/src/app/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/NotesListActivity$NewNoteOnTouchListener.class.uniqueId26 and /dev/null differ
diff --git a/src/src/app/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/NotesListActivity$OnListItemClickListener.class.uniqueId29 b/src/src/app/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/NotesListActivity$OnListItemClickListener.class.uniqueId29
deleted file mode 100644
index 00b8846..0000000
Binary files a/src/src/app/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/NotesListActivity$OnListItemClickListener.class.uniqueId29 and /dev/null differ
diff --git a/src/src/app/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/NotesListActivity.class.uniqueId3 b/src/src/app/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/NotesListActivity.class.uniqueId3
deleted file mode 100644
index 55fc394..0000000
Binary files a/src/src/app/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/NotesListActivity.class.uniqueId3 and /dev/null differ
diff --git a/src/src/app/build/tmp/compileDebugJavaWithJavac/previous-compilation-data.bin b/src/src/app/build/tmp/compileDebugJavaWithJavac/previous-compilation-data.bin
deleted file mode 100644
index e438ef2..0000000
Binary files a/src/src/app/build/tmp/compileDebugJavaWithJavac/previous-compilation-data.bin and /dev/null differ
diff --git a/src/src/app/src/main/AndroidManifest.xml b/src/src/app/src/main/AndroidManifest.xml
deleted file mode 100644
index 8fee695..0000000
--- a/src/src/app/src/main/AndroidManifest.xml
+++ /dev/null
@@ -1,150 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/src/src/app/src/main/assets/font/FZSTK.TTF b/src/src/app/src/main/assets/font/FZSTK.TTF
deleted file mode 100644
index e69de29..0000000
diff --git a/src/src/app/src/main/assets/font/STXINGKA.TTF b/src/src/app/src/main/assets/font/STXINGKA.TTF
deleted file mode 100644
index e69de29..0000000
diff --git a/src/src/app/src/main/assets/font/mingliub.ttc b/src/src/app/src/main/assets/font/mingliub.ttc
deleted file mode 100644
index e69de29..0000000
diff --git a/src/src/app/src/main/assets/font/simhei.ttf b/src/src/app/src/main/assets/font/simhei.ttf
deleted file mode 100644
index e69de29..0000000
diff --git a/src/src/app/src/main/java/net/micode/notes/data/Contact.java b/src/src/app/src/main/java/net/micode/notes/data/Contact.java
deleted file mode 100644
index 149cd8d..0000000
--- a/src/src/app/src/main/java/net/micode/notes/data/Contact.java
+++ /dev/null
@@ -1,83 +0,0 @@
-// 版权声明和许可信息,表明该代码由 "The MiCode Open Source Community" 提供,并且使用了Apache License 2.0。
-/*
- * Copyright (c) 2010-2011, The MiCode Open Source Community (www.micode.net)
- *
- * Licensed under the Apache License, Version 2.0 (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; // 导入HashMap类,用于创建缓存
-
-// 定义了Contact类,用于从系统联系人获取信息
-public class Contact {
- // 类级别的缓存变量,存储电话号码和对应的联系人名称
- private static HashMap sContactCache;
- // 用于日志输出的标签
- private static final String TAG = "Contact";
-
- // 编写SQL查询语句的一部分,用于查询电话号码
- 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 = '+')";
-
- // 获取联系人名称的静态方法
- public static String getContact(Context context, String phoneNumber) {
- // 如果缓存为空,则初始化它
- if(sContactCache == null) {
- sContactCache = new HashMap();
- }
-
- // 检查缓存是否已有该号码的联系人名称
- if(sContactCache.containsKey(phoneNumber)) {
- // 如果有,直接返回该名称
- return sContactCache.get(phoneNumber);
- }
-
- // 替换查询中的占位符以构造完整的查询语句
- 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);
-
- // 如果查询返回了结果
- 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;
- }
- }
-}
\ No newline at end of file
diff --git a/src/src/app/src/main/java/net/micode/notes/data/Notes.java b/src/src/app/src/main/java/net/micode/notes/data/Notes.java
deleted file mode 100644
index ef910f2..0000000
--- a/src/src/app/src/main/java/net/micode/notes/data/Notes.java
+++ /dev/null
@@ -1,292 +0,0 @@
-/*
- * 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.net.Uri;
-/**
- * 笔记相关的常量和数据字段
- */
-// 定义一个名为Notes的公共类
-public class Notes {
- // 定义一些静态常量,如授权信息、标签和类型
- // 内容提供者的权限
- public static final String AUTHORITY = "micode_notes";
-
- // 日志标签
- public static final String TAG = "Notes";
-
- // 笔记类型常量
- public static final int TYPE_NOTE = 0; // 普通笔记
- public static final int TYPE_FOLDER = 1; // 文件夹
- public static final int TYPE_SYSTEM = 2; // 系统类型
-
- // 系统文件夹的标识符
- public static final int ID_ROOT_FOLDER = 0; // 默认文件夹
- public static final int ID_TEMPARAY_FOLDER = -1; // 临时文件夹,存放无文件夹归属的笔记
- public static final int ID_CALL_RECORD_FOLDER = -2; // 存放通话记录的文件夹
- public static final int ID_TRASH_FOLER = -3; // 垃圾箱文件夹
-
- // 传递给Intent的额外数据的键
- public static final String INTENT_EXTRA_ALERT_DATE = "net.micode.notes.alert_date"; // 提醒日期
- public static final String INTENT_EXTRA_BACKGROUND_ID = "net.micode.notes.background_color_id"; // 背景颜色ID
- public static final String INTENT_EXTRA_WIDGET_ID = "net.micode.notes.widget_id"; // Widget的ID
- public static final String INTENT_EXTRA_WIDGET_TYPE = "net.micode.notes.widget_type"; // Widget类型
- public static final String INTENT_EXTRA_FOLDER_ID = "net.micode.notes.folder_id"; // 文件夹ID
- public static final String INTENT_EXTRA_CALL_DATE = "net.micode.notes.call_date"; // 通话日期
-
- // Widget类型常量
- public static final int TYPE_WIDGET_INVALIDE = -1; // 无效的Widget类型
- public static final int TYPE_WIDGET_2X = 0; // 2x大小的Widget
- public static final int TYPE_WIDGET_4X = 1; // 4x大小的Widget
-
- // 笔记数据常量类
- public static class DataConstants {
- public static final String NOTE = TextNote.CONTENT_ITEM_TYPE; // 文本笔记的内容类型
- public static final String CALL_NOTE = CallNote.CONTENT_ITEM_TYPE; // 通话记录的内容类型
- }
-
-
- /**
- * 用于查询所有笔记和文件夹的 Uri
- */
- public static final Uri CONTENT_NOTE_URI = Uri.parse("content://" + AUTHORITY + "/note");
-
- /**
- * 用于查询数据的 Uri
- */
- public static final Uri CONTENT_DATA_URI = Uri.parse("content://" + AUTHORITY + "/data");
-
- public interface NoteColumns {
- /**
- * 行的唯一标识符
- *
类型: 整数 (长整型)
- */
- public static final String ID = "_id";
-
- /**
- * 笔记或文件夹的父级 ID
- *
类型: 整数 (长整型)
- */
- public static final String PARENT_ID = "parent_id";
-
- /**
- * 笔记或文件夹的创建日期
- *
类型: 整数 (长整型)
- */
- public static final String CREATED_DATE = "created_date";
-
- /**
- * 最近修改日期
- *
类型: 整数 (长整型)
- */
- public static final String MODIFIED_DATE = "modified_date";
-
- /**
- * 提醒日期
- *
类型: 整数 (长整型)
- */
- public static final String ALERTED_DATE = "alert_date";
-
- /**
- * 文件夹的名称或笔记的文本内容
- *
类型: 文本
- */
- public static final String SNIPPET = "snippet";
- public static final String PASSCODE = "passcode";//定义九宫格解锁,目前未更新
- public static final String PASSWORD="password";//便签密码
- public static final String CHANGE="change";//只读模式
- /**
- * 笔记的小部件 ID
- *
类型: 整数 (长整型)
- */
- public static final String WIDGET_ID = "widget_id";
-
- /**
- * 笔记的小部件类型
- *
类型: 整数 (长整型)
- */
- public static final String WIDGET_TYPE = "widget_type";
-
- /**
- * 笔记的背景颜色 ID
- *
- */
- public static final String HAS_ATTACHMENT = "has_attachment";
-
- /**
- * 笔记的文件夹笔记计数
- *
类型: 整数 (长整型)
- */
- public static final String NOTES_COUNT = "notes_count";
-
- /**
- * 文件类型:文件夹或笔记
- *
类型: 整数
- */
- public static final String TYPE = "type";
-
- /**
- * 最后同步的 ID
- *
类型: 整数 (长整型)
- */
- public static final String SYNC_ID = "sync_id";
-
- /**
- * 本地是否修改的标记
- *
类型: 整数
- */
- public static final String LOCAL_MODIFIED = "local_modified";
-
- /**
- * 移动到临时文件夹之前的原始父级 ID
- *
类型: 整数
- */
- public static final String ORIGIN_PARENT_ID = "origin_parent_id";
-
- /**
- * GTask 的 ID
- *
类型: 文本
- */
- public static final String GTASK_ID = "gtask_id";
-
- /**
- * 版本代码
- *
类型: 整数 (长整型)
- */
- public static final String VERSION = "version";
- }
-
- /**
- * 用于定义数据表的列名称和相关常量
- */
- public interface DataColumns {
- /**
- * 行的唯一标识符
- *
类型: 整数 (长整型)
- */
- public static final String ID = "_id";
-
- /**
- * 项目表示的 MIME 类型
- *
类型: 文本
- */
- public static final String MIME_TYPE = "mime_type";
-
- /**
- * 指向所属笔记的引用 ID
- *
类型: 整数 (长整型)
- */
- public static final String NOTE_ID = "note_id";
-
- /**
- * 笔记或文件夹的创建日期
- *
类型: 整数 (长整型)
- */
- public static final String CREATED_DATE = "created_date";
-
- /**
- * 最近修改日期
- *
类型: 整数 (长整型)
- */
- public static final String MODIFIED_DATE = "modified_date";
-
- /**
- * 数据的内容
- *
类型: 文本
- */
- public static final String CONTENT = "content";
-
- /**
- * 通用数据列,其含义取决于 {@link #MIME_TYPE},用于整数数据类型
- *
类型: 整数
- */
- public static final String DATA1 = "data1";
-
- /**
- * 通用数据列,其含义取决于 {@link #MIME_TYPE},用于整数数据类型
- *
类型: 整数
- */
- public static final String DATA2 = "data2";
-
- /**
- * 通用数据列,其含义取决于 {@link #MIME_TYPE},用于文本数据类型
- *
类型: 文本
- */
- public static final String DATA3 = "data3";
-
- /**
- * 通用数据列,其含义取决于 {@link #MIME_TYPE},用于文本数据类型
- *
类型: 文本
- */
- public static final String DATA4 = "data4";
-
- /**
- * 通用数据列,其含义取决于 {@link #MIME_TYPE},用于文本数据类型
- *
类型: 文本
- */
- public static final String DATA5 = "data5";
- }
-
- /**
- * 文本笔记类,实现了 DataColumns 接口
- */
- public static final class TextNote implements DataColumns {
- /**
- * 指示文本是否处于待办事项模式的模式
- *
类型: 整数 1:待办事项模式 0: 普通模式
- */
- public static final String MODE = DATA1;
-
- public static final int MODE_CHECK_LIST = 1;
-
- public static final String CONTENT_TYPE = "vnd.android.cursor.dir/text_note";
-
- public static final String CONTENT_ITEM_TYPE = "vnd.android.cursor.item/text_note";
-
- public static final Uri CONTENT_URI = Uri.parse("content://" + AUTHORITY + "/text_note");
- }
-
- /**
- * 通话笔记类,实现了 DataColumns 接口
- */
- public static final class CallNote implements DataColumns {
- /**
- * 通话记录的日期
- *
类型: 整数 (长整型)
- */
- public static final String CALL_DATE = DATA1;
-
- /**
- * 通话记录的电话号码
- *
类型: 文本
- */
- public static final String PHONE_NUMBER = DATA3;
-
- public static final String CONTENT_TYPE = "vnd.android.cursor.dir/call_note";
-
- public static final String CONTENT_ITEM_TYPE = "vnd.android.cursor.item/call_note";
-
- public static final Uri CONTENT_URI = Uri.parse("content://" + AUTHORITY + "/call_note");
- }
-}
\ No newline at end of file
diff --git a/src/src/app/src/main/java/net/micode/notes/data/NotesDatabaseHelper.java b/src/src/app/src/main/java/net/micode/notes/data/NotesDatabaseHelper.java
deleted file mode 100644
index 9b7107c..0000000
--- a/src/src/app/src/main/java/net/micode/notes/data/NotesDatabaseHelper.java
+++ /dev/null
@@ -1,441 +0,0 @@
-/*
- * 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.ContentValues;
-import android.content.Context;
-import android.database.sqlite.SQLiteDatabase;
-import android.database.sqlite.SQLiteOpenHelper;
-import android.util.Log;
-
-import net.micode.notes.data.Notes.DataColumns;
-import net.micode.notes.data.Notes.DataConstants;
-import net.micode.notes.data.Notes.NoteColumns;
-
-/**
- * 数据库帮助类,用于管理小米便签应用中的数据库
- */
-public class NotesDatabaseHelper extends SQLiteOpenHelper {
- /**
- * 数据库的名称
- */
- private static final String DB_NAME = "note.db";
- /**
- * 数据库的版本号
- */
- private static final int DB_VERSION = 5;//在这里,我们将数据库更新到第五代,加入了PASSWORD,CHANGE
-
-
- /**
- * 内部接口,用于定义数据库中的表名
- */
- public interface TABLE {
- /**
- * 笔记表
- */
- public static final String NOTE = "note";
-
- /**
- * 数据表
- */
- public static final String DATA = "data";
- }
-
- // 声明数据库帮助类的标签
- private static final String TAG = "NotesDatabaseHelper";
-
- // 单例模式实例
- private static NotesDatabaseHelper mInstance;
-
- // 创建笔记表的 SQL 语句
- private static final String CREATE_NOTE_TABLE_SQL =
- "CREATE TABLE " + TABLE.NOTE + "(" +
- NoteColumns.ID + " INTEGER PRIMARY KEY," +
- NoteColumns.PARENT_ID + " INTEGER NOT NULL DEFAULT 0," +
- NoteColumns.ALERTED_DATE + " INTEGER NOT NULL DEFAULT 0," +
- NoteColumns.BG_COLOR_ID + " INTEGER NOT NULL DEFAULT 0," +
- NoteColumns.CREATED_DATE + " INTEGER NOT NULL DEFAULT (strftime('%s','now') * 1000)," +
- NoteColumns.HAS_ATTACHMENT + " INTEGER NOT NULL DEFAULT 0," +
- NoteColumns.MODIFIED_DATE + " INTEGER NOT NULL DEFAULT (strftime('%s','now') * 1000)," +
- NoteColumns.NOTES_COUNT + " INTEGER NOT NULL DEFAULT 0," +
- NoteColumns.SNIPPET + " TEXT NOT NULL DEFAULT ''," +
- NoteColumns.TYPE + " INTEGER NOT NULL DEFAULT 0," +
- NoteColumns.WIDGET_ID + " INTEGER NOT NULL DEFAULT 0," +
- NoteColumns.WIDGET_TYPE + " INTEGER NOT NULL DEFAULT -1," +
- NoteColumns.SYNC_ID + " INTEGER NOT NULL DEFAULT 0," +
- NoteColumns.LOCAL_MODIFIED + " INTEGER NOT NULL DEFAULT 0," +
- NoteColumns.ORIGIN_PARENT_ID + " INTEGER NOT NULL DEFAULT 0," +
- NoteColumns.GTASK_ID + " TEXT NOT NULL DEFAULT ''," +
- NoteColumns.PASSCODE + " TEXT NOT NULL DEFAULT '',"+
- NoteColumns.VERSION + " INTEGER NOT NULL DEFAULT 0"+
- NoteColumns.PASSWORD+"TEXT NOT NULL DEFAULT 1"+
- NoteColumns.CHANGE+"TEXT NOT NULL DEFAULT 1"+
- ")";
-//此处更新了数据库
-// 创建数据表的 SQL 语句
-private static final String CREATE_DATA_TABLE_SQL =
- "CREATE TABLE " + TABLE.DATA + "(" +
- DataColumns.ID + " INTEGER PRIMARY KEY," +
- DataColumns.MIME_TYPE + " TEXT NOT NULL," +
- DataColumns.NOTE_ID + " INTEGER NOT NULL DEFAULT 0," +
- NoteColumns.CREATED_DATE + " INTEGER NOT NULL DEFAULT (strftime('%s','now') * 1000)," +
- NoteColumns.MODIFIED_DATE + " INTEGER NOT NULL DEFAULT (strftime('%s','now') * 1000)," +
- DataColumns.CONTENT + " TEXT NOT NULL DEFAULT ''," +
- DataColumns.DATA1 + " INTEGER," +
- DataColumns.DATA2 + " INTEGER," +
- DataColumns.DATA3 + " TEXT NOT NULL DEFAULT ''," +
- DataColumns.DATA4 + " TEXT NOT NULL DEFAULT ''," +
- DataColumns.DATA5 + " TEXT NOT NULL DEFAULT ''" +
- ")";
-
- // 创建数据表中的笔记 ID 索引的 SQL 语句
- private static final String CREATE_DATA_NOTE_ID_INDEX_SQL =
- "CREATE INDEX IF NOT EXISTS note_id_index ON " +
- TABLE.DATA + "(" + DataColumns.NOTE_ID + ");";
-
- // 当将笔记移动到文件夹时,增加文件夹的笔记计数
- private static final String NOTE_INCREASE_FOLDER_COUNT_ON_UPDATE_TRIGGER =
- "CREATE TRIGGER increase_folder_count_on_update " +
- " AFTER UPDATE OF " + NoteColumns.PARENT_ID + " ON " + TABLE.NOTE +
- " BEGIN " +
- " UPDATE " + TABLE.NOTE +
- " SET " + NoteColumns.NOTES_COUNT + "=" + NoteColumns.NOTES_COUNT + " + 1" +
- " WHERE " + NoteColumns.ID + "=new." + NoteColumns.PARENT_ID + ";" +
- " END";
-
- // 当从文件夹中移除笔记时,减少文件夹的笔记计数
- private static final String NOTE_DECREASE_FOLDER_COUNT_ON_UPDATE_TRIGGER =
- "CREATE TRIGGER decrease_folder_count_on_update " +
- " AFTER UPDATE OF " + NoteColumns.PARENT_ID + " ON " + TABLE.NOTE +
- " BEGIN " +
- " UPDATE " + TABLE.NOTE +
- " SET " + NoteColumns.NOTES_COUNT + "=" + NoteColumns.NOTES_COUNT + "-1" +
- " WHERE " + NoteColumns.ID + "=old." + NoteColumns.PARENT_ID +
- " AND " + NoteColumns.NOTES_COUNT + ">0" + ";" +
- " END";
-
- // 当向文件夹中插入新笔记时,增加文件夹的笔记计数
- private static final String NOTE_INCREASE_FOLDER_COUNT_ON_INSERT_TRIGGER =
- "CREATE TRIGGER increase_folder_count_on_insert " +
- " AFTER INSERT ON " + TABLE.NOTE +
- " BEGIN " +
- " UPDATE " + TABLE.NOTE +
- " SET " + NoteColumns.NOTES_COUNT + "=" + NoteColumns.NOTES_COUNT + " + 1" +
- " WHERE " + NoteColumns.ID + "=new." + NoteColumns.PARENT_ID + ";" +
- " END";
- /**
- * 在删除文件夹中的笔记时减少笔记计数
- */
- private static final String NOTE_DECREASE_FOLDER_COUNT_ON_DELETE_TRIGGER =
- "CREATE TRIGGER decrease_folder_count_on_delete " +
- " AFTER DELETE ON " + TABLE.NOTE +
- " BEGIN " +
- " UPDATE " + TABLE.NOTE +
- " SET " + NoteColumns.NOTES_COUNT + "=" + NoteColumns.NOTES_COUNT + "-1" +
- " WHERE " + NoteColumns.ID + "=old." + NoteColumns.PARENT_ID +
- " AND " + NoteColumns.NOTES_COUNT + ">0;" +
- " END";
-
- /**
- * 在使用类型为{@link DataConstants#NOTE}的数据插入时更新笔记内容
- */
- private static final String DATA_UPDATE_NOTE_CONTENT_ON_INSERT_TRIGGER =
- "CREATE TRIGGER update_note_content_on_insert " +
- " AFTER INSERT ON " + TABLE.DATA +
- " WHEN new." + DataColumns.MIME_TYPE + "='" + DataConstants.NOTE + "'" +
- " BEGIN" +
- " UPDATE " + TABLE.NOTE +
- " SET " + NoteColumns.SNIPPET + "=new." + DataColumns.CONTENT +
- " WHERE " + NoteColumns.ID + "=new." + DataColumns.NOTE_ID + ";" +
- " END";
-
- /**
- * 在使用类型为{@link DataConstants#NOTE}的数据更改时更新笔记内容
- */
- private static final String DATA_UPDATE_NOTE_CONTENT_ON_UPDATE_TRIGGER =
- "CREATE TRIGGER update_note_content_on_update " +
- " AFTER UPDATE ON " + TABLE.DATA +
- " WHEN old." + DataColumns.MIME_TYPE + "='" + DataConstants.NOTE + "'" +
- " BEGIN" +
- " UPDATE " + TABLE.NOTE +
- " SET " + NoteColumns.SNIPPET + "=new." + DataColumns.CONTENT +
- " WHERE " + NoteColumns.ID + "=new." + DataColumns.NOTE_ID + ";" +
- " END";
-
- /**
- * 在删除类型为{@link DataConstants#NOTE}的数据时更新笔记内容
- */
- private static final String DATA_UPDATE_NOTE_CONTENT_ON_DELETE_TRIGGER =
- "CREATE TRIGGER update_note_content_on_delete " +
- " AFTER delete ON " + TABLE.DATA +
- " WHEN old." + DataColumns.MIME_TYPE + "='" + DataConstants.NOTE + "'" +
- " BEGIN" +
- " UPDATE " + TABLE.NOTE +
- " SET " + NoteColumns.SNIPPET + "=''" +
- " WHERE " + NoteColumns.ID + "=old." + DataColumns.NOTE_ID + ";" +
- " END";
-
- /**
- * 删除属于已删除笔记的数据
- */
- private static final String NOTE_DELETE_DATA_ON_DELETE_TRIGGER =
- "CREATE TRIGGER delete_data_on_delete " +
- " AFTER DELETE ON " + TABLE.NOTE +
- " BEGIN" +
- " DELETE FROM " + TABLE.DATA +
- " WHERE " + DataColumns.NOTE_ID + "=old." + NoteColumns.ID + ";" +
- " END";
-
- /**
- * 删除属于已删除文件夹的笔记
- */
- private static final String FOLDER_DELETE_NOTES_ON_DELETE_TRIGGER =
- "CREATE TRIGGER folder_delete_notes_on_delete " +
- " AFTER DELETE ON " + TABLE.NOTE +
- " BEGIN" +
- " DELETE FROM " + TABLE.NOTE +
- " WHERE " + NoteColumns.PARENT_ID + "=old." + NoteColumns.ID + ";" +
- " END";
-
- /**
- * 将属于已移至垃圾箱文件夹的笔记移动
- */
- private static final String FOLDER_MOVE_NOTES_ON_TRASH_TRIGGER =
- "CREATE TRIGGER folder_move_notes_on_trash " +
- " AFTER UPDATE ON " + TABLE.NOTE +
- " WHEN new." + NoteColumns.PARENT_ID + "=" + Notes.ID_TRASH_FOLER +
- " BEGIN" +
- " UPDATE " + TABLE.NOTE +
- " SET " + NoteColumns.PARENT_ID + "=" + Notes.ID_TRASH_FOLER +
- " WHERE " + NoteColumns.PARENT_ID + "=old." + NoteColumns.ID + ";" +
- " END";
-
- public NotesDatabaseHelper(Context context) {
- super(context, DB_NAME, null, DB_VERSION);
- }
-
- public void createNoteTable(SQLiteDatabase db) {
- db.execSQL(CREATE_NOTE_TABLE_SQL);
- reCreateNoteTableTriggers(db);
- createSystemFolder(db);
- Log.d(TAG, "note table has been created");
- }
-
- /**
- * 重新创建笔记表相关的触发器
- *
- * @param db SQLiteDatabase 实例
- */
- private void reCreateNoteTableTriggers(SQLiteDatabase db) {
- // 删除旧的触发器
- db.execSQL("DROP TRIGGER IF EXISTS increase_folder_count_on_update");
- db.execSQL("DROP TRIGGER IF EXISTS decrease_folder_count_on_update");
- db.execSQL("DROP TRIGGER IF EXISTS decrease_folder_count_on_delete");
- db.execSQL("DROP TRIGGER IF EXISTS delete_data_on_delete");
- db.execSQL("DROP TRIGGER IF EXISTS increase_folder_count_on_insert");
- db.execSQL("DROP TRIGGER IF EXISTS folder_delete_notes_on_delete");
- db.execSQL("DROP TRIGGER IF EXISTS folder_move_notes_on_trash");
-
- // 创建新的触发器
- db.execSQL(NOTE_INCREASE_FOLDER_COUNT_ON_UPDATE_TRIGGER);
- db.execSQL(NOTE_DECREASE_FOLDER_COUNT_ON_UPDATE_TRIGGER);
- db.execSQL(NOTE_DECREASE_FOLDER_COUNT_ON_DELETE_TRIGGER);
- db.execSQL(NOTE_DELETE_DATA_ON_DELETE_TRIGGER);
- db.execSQL(NOTE_INCREASE_FOLDER_COUNT_ON_INSERT_TRIGGER);
- db.execSQL(FOLDER_DELETE_NOTES_ON_DELETE_TRIGGER);
- db.execSQL(FOLDER_MOVE_NOTES_ON_TRASH_TRIGGER);
- }
-
- /**
- * 创建系统文件夹,包括通话记录文件夹、根文件夹、临时文件夹和垃圾箱文件夹
- *
- * @param db SQLiteDatabase 实例
- */
- private void createSystemFolder(SQLiteDatabase db) {
- ContentValues values = new ContentValues();
-
- // 创建通话记录文件夹
- values.put(NoteColumns.ID, Notes.ID_CALL_RECORD_FOLDER);
- values.put(NoteColumns.TYPE, Notes.TYPE_SYSTEM);
- db.insert(TABLE.NOTE, null, values);
-
- // 创建根文件夹
- values.clear();
- values.put(NoteColumns.ID, Notes.ID_ROOT_FOLDER);
- values.put(NoteColumns.TYPE, Notes.TYPE_SYSTEM);
- db.insert(TABLE.NOTE, null, values);
-
- // 创建临时文件夹
- values.clear();
- values.put(NoteColumns.ID, Notes.ID_TEMPARAY_FOLDER);
- values.put(NoteColumns.TYPE, Notes.TYPE_SYSTEM);
- db.insert(TABLE.NOTE, null, values);
-
- // 创建垃圾箱文件夹
- values.clear();
- values.put(NoteColumns.ID, Notes.ID_TRASH_FOLER);
- values.put(NoteColumns.TYPE, Notes.TYPE_SYSTEM);
- db.insert(TABLE.NOTE, null, values);
- }
-
- /**
- * 创建数据表,并重新创建数据表相关的触发器
- *
- * @param db SQLiteDatabase 实例
- */
- public void createDataTable(SQLiteDatabase db) {
- // 创建数据表
- db.execSQL(CREATE_DATA_TABLE_SQL);
- // 重新创建数据表相关的触发器
- reCreateDataTableTriggers(db);
- db.execSQL(CREATE_DATA_NOTE_ID_INDEX_SQL);
- Log.d(TAG, "data table has been created");
- }
-
- /**
- * 重新创建数据表相关的触发器
- *
- * @param db SQLiteDatabase 实例
- */
- private void reCreateDataTableTriggers(SQLiteDatabase db) {
- // 删除旧的触发器
- db.execSQL("DROP TRIGGER IF EXISTS update_note_content_on_insert");
- db.execSQL("DROP TRIGGER IF EXISTS update_note_content_on_update");
- db.execSQL("DROP TRIGGER IF EXISTS update_note_content_on_delete");
-
- // 创建新的触发器
- db.execSQL(DATA_UPDATE_NOTE_CONTENT_ON_INSERT_TRIGGER);
- db.execSQL(DATA_UPDATE_NOTE_CONTENT_ON_UPDATE_TRIGGER);
- db.execSQL(DATA_UPDATE_NOTE_CONTENT_ON_DELETE_TRIGGER);
- }
-
- /**
- * 获取数据库帮助类的实例,采用单例模式
- *
- * @param context 上下文环境
- * @return NotesDatabaseHelper 实例
- */
- static synchronized NotesDatabaseHelper getInstance(Context context) {
- if (mInstance == null) {
- mInstance = new NotesDatabaseHelper(context);
- }
- return mInstance;
- }
-
- @Override
- public void onCreate(SQLiteDatabase db) {
- // 创建笔记表和数据表
- createNoteTable(db);
- createDataTable(db);
- }
-
- @Override
- /**
- * 执行数据库升级操作。
- *
- * @param db 数据库对象
- * @param oldVersion 旧版本号
- * @param newVersion 新版本号
- */
- public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
- boolean reCreateTriggers = false; // 是否重新创建触发器
- boolean skipV2 = false; // 是否跳过 V2 版本
-
- if (oldVersion == 1) { // 如果旧版本号为 1
- upgradeToV2(db); // 升级到 V2 版本
- // 跳过 V2 版本,直接升级到 V3 版本
- skipV2 = true;
- oldVersion++;
- }
-
- if (oldVersion == 2 && !skipV2) { // 如果旧版本号为 2 并且不跳过 V2 版本
- upgradeToV3(db); // 升级到 V3 版本
- reCreateTriggers = true; // 需要重新创建触发器
- oldVersion++;
- }
-
- if (oldVersion == 3) { // 如果旧版本号为 3
- upgradeToV4(db); // 升级到 V4 版本
- oldVersion++;
- }
- if (oldVersion == 4) {// 如果旧版本号为 4
- System.out.println("version 4");
- upgradeToV5(db);// 升级到 V5 版本
- oldVersion++;
-// 若版本较低,则升级
- }
-
- // 重新创建触发器
- if (reCreateTriggers) {
- reCreateNoteTableTriggers(db); // 重新创建笔记表的触发器
- reCreateDataTableTriggers(db); // 重新创建数据表的触发器
- }
-
- // 版本不匹配,抛出异常
- if (oldVersion != newVersion) {
- throw new IllegalStateException("Upgrade notes database to version " + newVersion + " fails");
- }
- }
- /**
- * 数据库升级到v2版本的操作
- *
- * @param db SQLiteDatabase 实例
- */
- private void upgradeToV2(SQLiteDatabase db) {
- // 删除旧的表
- db.execSQL("DROP TABLE IF EXISTS " + TABLE.NOTE);
- db.execSQL("DROP TABLE IF EXISTS " + TABLE.DATA);
- // 重新创建笔记表和数据表
- createNoteTable(db);
- createDataTable(db);
- }
-
- /**
- * 升级数据库到 V3 版本。
- *
- * @param db 数据库对象
- */
- private void upgradeToV3(SQLiteDatabase db) {
- db.execSQL("DROP TRIGGER IF EXISTS update_note_modified_date_on_insert"); // 删除插入时更新修改日期的触发器
- db.execSQL("DROP TRIGGER IF EXISTS update_note_modified_date_on_delete"); // 删除删除时更新修改日期的触发器
- db.execSQL("DROP TRIGGER IF EXISTS update_note_modified_date_on_update"); // 删除更新时更新修改日期的触发器
- db.execSQL("ALTER TABLE " + TABLE.NOTE + " ADD COLUMN " + NoteColumns.GTASK_ID + " TEXT NOT NULL DEFAULT ''"); // 向 Note 表中添加 GTASK_ID 列
- ContentValues values = new ContentValues();
- values.put(NoteColumns.ID, Notes.ID_TRASH_FOLER); // 设置垃圾箱的 ID
- values.put(NoteColumns.TYPE, Notes.TYPE_SYSTEM); // 设置垃圾箱的类型为系统类型
- db.insert(TABLE.NOTE, null, values); // 向 Note 表中插入垃圾箱数据
- }
-
- /**
- * 数据库升级到v4版本的操作
- *
- * @param db SQLiteDatabase 实例
- */
- private void upgradeToV4(SQLiteDatabase db) {
- // 增加一个版本号的字段
- db.execSQL("ALTER TABLE " + TABLE.NOTE + " ADD COLUMN " + NoteColumns.VERSION + " INTEGER NOT NULL DEFAULT 0");
- }
- private void upgradeToV5(SQLiteDatabase db){
- db.execSQL("ALTER TABLE " + TABLE.NOTE + " ADD COLUMN " + NoteColumns.PASSWORD
- + " INTEGER NOT NULL DEFAULT 1");
- db.execSQL("ALTER TABLE " + TABLE.NOTE + " ADD COLUMN " + NoteColumns.CHANGE
- + " INTEGER NOT NULL DEFAULT 1");
- //更新版本,在数据库内加上新的行
- }
-}
diff --git a/src/src/app/src/main/java/net/micode/notes/data/NotesProvider.java b/src/src/app/src/main/java/net/micode/notes/data/NotesProvider.java
deleted file mode 100644
index 794755c..0000000
--- a/src/src/app/src/main/java/net/micode/notes/data/NotesProvider.java
+++ /dev/null
@@ -1,372 +0,0 @@
-/*
- * 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.app.SearchManager;
-import android.content.ContentProvider;
-import android.content.ContentUris;
-import android.content.ContentValues;
-import android.content.Intent;
-import android.content.UriMatcher;
-import android.database.Cursor;
-import android.database.sqlite.SQLiteDatabase;
-import android.net.Uri;
-import android.text.TextUtils;
-import android.util.Log;
-
-import net.micode.notes.R;
-import net.micode.notes.data.Notes.DataColumns;
-import net.micode.notes.data.Notes.NoteColumns;
-import net.micode.notes.data.NotesDatabaseHelper.TABLE;
-
-
-public class NotesProvider extends ContentProvider {
- /**
- * 模块依赖注释
- * 该类对应的模块依赖了Notes和SearchManager模块
- */
- private static final UriMatcher mMatcher;
-
- /**
- * 数据成员注释
- * 用于辅助对URI进行匹配,以便进行相应的操作
- */
- private NotesDatabaseHelper mHelper;
-
- /**
- * 数据成员注释
- * 用于标识日志输出的tag
- */
- private static final String TAG = "NotesProvider";
-
- /**
- * 接口注释
- * 定义了不同URI对应的编号,用于在匹配时进行标识
- */
- private static final int URI_NOTE = 1;
- private static final int URI_NOTE_ITEM = 2;
- private static final int URI_DATA = 3;
- private static final int URI_DATA_ITEM = 4;
- private static final int URI_SEARCH = 5;
- private static final int URI_SEARCH_SUGGEST = 6;
-
- /**
- * 实现注释
- * 初始化UriMatcher,并为不同的URI添加相应的匹配规则
- */
- static {
- mMatcher = new UriMatcher(UriMatcher.NO_MATCH);
- mMatcher.addURI(Notes.AUTHORITY, "note", URI_NOTE);
- mMatcher.addURI(Notes.AUTHORITY, "note/#", URI_NOTE_ITEM);
- mMatcher.addURI(Notes.AUTHORITY, "data", URI_DATA);
- mMatcher.addURI(Notes.AUTHORITY, "data/#", URI_DATA_ITEM);
- mMatcher.addURI(Notes.AUTHORITY, "search", URI_SEARCH);
- mMatcher.addURI(Notes.AUTHORITY, SearchManager.SUGGEST_URI_PATH_QUERY, URI_SEARCH_SUGGEST);
- mMatcher.addURI(Notes.AUTHORITY, SearchManager.SUGGEST_URI_PATH_QUERY + "/*", URI_SEARCH_SUGGEST);
- }
-
- /**
- * 实现注释
- * 定义了用于搜索结果的投影,包括需要显示的字段
- */
- private static final String NOTES_SEARCH_PROJECTION = NoteColumns.ID + ","
- + NoteColumns.ID + " AS " + SearchManager.SUGGEST_COLUMN_INTENT_EXTRA_DATA + ","
- + "TRIM(REPLACE(" + NoteColumns.SNIPPET + ", x'0A','')) AS " + SearchManager.SUGGEST_COLUMN_TEXT_1 + ","
- + "TRIM(REPLACE(" + NoteColumns.SNIPPET + ", x'0A','')) AS " + SearchManager.SUGGEST_COLUMN_TEXT_2 + ","
- + R.drawable.search_result + " AS " + SearchManager.SUGGEST_COLUMN_ICON_1 + ","
- + "'" + Intent.ACTION_VIEW + "' AS " + SearchManager.SUGGEST_COLUMN_INTENT_ACTION + ","
- + "'" + Notes.TextNote.CONTENT_TYPE + "' AS " + SearchManager.SUGGEST_COLUMN_INTENT_DATA;
-
- /**
- * 实现注释
- * 查询的SQL语句,用于搜索匹配的笔记
- */
- private static String NOTES_SNIPPET_SEARCH_QUERY = "SELECT " + NOTES_SEARCH_PROJECTION
- + " FROM " + TABLE.NOTE
- + " WHERE " + NoteColumns.SNIPPET + " LIKE ?"
- + " AND " + NoteColumns.PARENT_ID + "<>" + Notes.ID_TRASH_FOLER
- + " AND " + NoteColumns.TYPE + "=" + Notes.TYPE_NOTE;
-
- /**
- * 实现注释
- * 重写Provider的onCreate方法,初始化mHelper
- */
- @Override
- public boolean onCreate() {
- mHelper = NotesDatabaseHelper.getInstance(getContext());
- return true;
- }
-
- /**
- * 执行查询操作,根据指定的条件在数据库中进行查询,并返回 Cursor 对象。
- *
- * @param uri 查询的 URI
- * @param projection 返回的列
- * @param selection 查询条件
- * @param selectionArgs 查询条件的参数
- * @param sortOrder 排序方式
- * @return 查询结果的 Cursor 对象
- */
- @Override
- public Cursor query(Uri uri, String[] projection, String selection, String[] selectionArgs,
- String sortOrder) {
- Cursor c = null; // 查询结果的 Cursor 对象
- SQLiteDatabase db = mHelper.getReadableDatabase(); // 获取可读的数据库对象
- String id = null; // ID 变量
-
- switch (mMatcher.match(uri)) {
- case URI_NOTE:
- c = db.query(TABLE.NOTE, projection, selection, selectionArgs, null, null, sortOrder);
- break;
- case URI_NOTE_ITEM:
- id = uri.getPathSegments().get(1); // 获取 URI 中的 ID
- c = db.query(TABLE.NOTE, projection, NoteColumns.ID + "=" + id
- + parseSelection(selection), selectionArgs, null, null, sortOrder);
- break;
- case URI_DATA:
- c = db.query(TABLE.DATA, projection, selection, selectionArgs, null, null, sortOrder);
- break;
- case URI_DATA_ITEM:
- id = uri.getPathSegments().get(1); // 获取 URI 中的 ID
- c = db.query(TABLE.DATA, projection, DataColumns.ID + "=" + id
- + parseSelection(selection), selectionArgs, null, null, sortOrder);
- break;
- case URI_SEARCH:
- case URI_SEARCH_SUGGEST:
- // 检查是否指定了排序方式、返回的列,如果指定了则抛出异常
- if (sortOrder != null || projection != null) {
- throw new IllegalArgumentException(
- "do not specify sortOrder, selection, selectionArgs, or projection" + "with this query");
- }
-
- String searchString = null; // 搜索字符串
-
- if (mMatcher.match(uri) == URI_SEARCH_SUGGEST) {
- if (uri.getPathSegments().size() > 1) { // 如果 URI 包含多个 segment
- searchString = uri.getPathSegments().get(1); // 获取第二个 segment
- }
- } else {
- searchString = uri.getQueryParameter("pattern"); // 获取 pattern 参数
- }
-
- if (TextUtils.isEmpty(searchString)) { // 如果搜索字符串为空,则返回空
- return null;
- }
-
- try {
- searchString = String.format("%%%s%%", searchString); // 格式化搜索字符串
- c = db.rawQuery(NOTES_SNIPPET_SEARCH_QUERY,
- new String[] { searchString }); // 执行原始查询操作
- } catch (IllegalStateException ex) {
- Log.e(TAG, "got exception: " + ex.toString()); // 捕获异常并记录日志
- }
- break;
- default:
- throw new IllegalArgumentException("Unknown URI " + uri); // 未知的 URI,抛出异常
- }
-
- if (c != null) {
- c.setNotificationUri(getContext().getContentResolver(), uri); // 设置查询结果的通知 URI
- }
- return c; // 返回查询结果的 Cursor 对象
- }
-
- /**
- * 执行插入操作,向数据库中插入数据,并返回插入的记录的URI。
- *
- * @param uri 插入的 URI
- * @param values 需要插入的数据
- * @return 插入记录的 URI
- */
- @Override
- public Uri insert(Uri uri, ContentValues values) {
- SQLiteDatabase db = mHelper.getWritableDatabase(); // 获取可写数据库引用
- long dataId = 0, noteId = 0, insertedId = 0; // 数据ID和笔记ID的初始化
-
- switch (mMatcher.match(uri)) { // 根据URI匹配进行不同操作
- case URI_NOTE: // 笔记URI
- insertedId = noteId = db.insert(TABLE.NOTE, null, values); // 向笔记表中插入数据并获取插入的ID
- break;
- case URI_DATA: // 数据URI
- if (values.containsKey(DataColumns.NOTE_ID)) {
- noteId = values.getAsLong(DataColumns.NOTE_ID); // 获取数据对应的笔记ID
- } else {
- Log.d(TAG, "Wrong data format without note id:" + values.toString()); // 记录错误日志
- }
- insertedId = dataId = db.insert(TABLE.DATA, null, values); // 向数据表中插入数据并获取插入的ID
- break;
- default:
- throw new IllegalArgumentException("Unknown URI " + uri); // 抛出未知URI异常
- }
-
- // 通知笔记URI发生了变化
- if (noteId > 0) {
- getContext().getContentResolver().notifyChange(
- ContentUris.withAppendedId(Notes.CONTENT_NOTE_URI, noteId), null);
- }
-
- // 通知数据URI发生了变化
- if (dataId > 0) {
- getContext().getContentResolver().notifyChange(
- ContentUris.withAppendedId(Notes.CONTENT_DATA_URI, dataId), null);
- }
-
- return ContentUris.withAppendedId(uri, insertedId); // 返回插入的URI
- }
-
-
- /**
- * 执行删除操作,根据指定的条件在数据库中进行删除,并返回受影响的行数。
- *
- * @param uri 删除的 URI
- * @param selection 删除条件
- * @param selectionArgs 删除条件的参数
- * @return 删除受影响的行数
- */
- @Override
- public int delete(Uri uri, String selection, String[] selectionArgs) {
- int count = 0; // 记录删除的行数
- String id = null; // ID字符串
- SQLiteDatabase db = mHelper.getWritableDatabase(); // 获取可写数据库引用
- boolean deleteData = false; // 是否删除数据的标志位
-
- switch (mMatcher.match(uri)) { // 根据URI匹配执行不同操作
- case URI_NOTE: // 笔记URI
- selection = "(" + selection + ") AND " + NoteColumns.ID + ">0 "; // 构建查询语句
- count = db.delete(TABLE.NOTE, selection, selectionArgs); // 删除符合条件的笔记
- break;
- case URI_NOTE_ITEM: // 单个笔记URI
- id = uri.getPathSegments().get(1); // 获取URI中的笔记ID
- long noteId = Long.valueOf(id); // 转换成长整型
- if (noteId <= 0) {
- break; // 若ID小于等于0,则跳出
- }
- count = db.delete(TABLE.NOTE, NoteColumns.ID + "=" + id + parseSelection(selection), selectionArgs); // 删除指定ID的笔记
- break;
- case URI_DATA: // 数据URI
- count = db.delete(TABLE.DATA, selection, selectionArgs); // 删除符合条件的数据
- deleteData = true; // 设置删除数据的标志位
- break;
- case URI_DATA_ITEM: // 单个数据URI
- id = uri.getPathSegments().get(1); // 获取URI中的数据ID
- count = db.delete(TABLE.DATA, DataColumns.ID + "=" + id + parseSelection(selection), selectionArgs); // 删除指定ID的数据
- deleteData = true; // 设置删除数据的标志位
- break;
- default:
- throw new IllegalArgumentException("Unknown URI " + uri); // 抛出未知URI异常
- }
-
- if (count > 0) { // 若删除成功
- if (deleteData) {
- getContext().getContentResolver().notifyChange(Notes.CONTENT_NOTE_URI, null); // 通知笔记URI变化
- }
- getContext().getContentResolver().notifyChange(uri, null); // 通知URI变化
- }
- return count; // 返回删除行数
- }
-
- /**
- * 执行更新操作,更新数据库中的数据,并返回受影响的行数。
- *
- * @param uri 更新的 URI
- * @param values 需要更新的数据
- * @param selection 更新的约束条件
- * @param selectionArgs 更新的约束条件参数
- * @return 受影响的行数
- */
- @Override
- public int update(Uri uri, ContentValues values, String selection, String[] selectionArgs) {
- int count = 0; // 记录更新行数
- String id = null; // ID字符串
- SQLiteDatabase db = mHelper.getWritableDatabase(); // 获取可写数据库引用
- boolean updateData = false; // 是否更新数据的标志位
-
- switch (mMatcher.match(uri)) { // 根据URI匹配执行不同操作
- case URI_NOTE: // 笔记URI
- increaseNoteVersion(-1, selection, selectionArgs); // 更新笔记版本号
- count = db.update(TABLE.NOTE, values, selection, selectionArgs); // 更新符合条件的笔记数据
- break;
- case URI_NOTE_ITEM: // 单个笔记URI
- id = uri.getPathSegments().get(1); // 获取URI中的笔记ID
- increaseNoteVersion(Long.valueOf(id), selection, selectionArgs); // 更新笔记版本号
- count = db.update(TABLE.NOTE, values, NoteColumns.ID + "=" + id + parseSelection(selection), selectionArgs); // 更新指定ID的笔记数据
- break;
- case URI_DATA: // 数据URI
- count = db.update(TABLE.DATA, values, selection, selectionArgs); // 更新符合条件的数据
- updateData = true; // 设置更新数据的标志位
- break;
- case URI_DATA_ITEM: // 单个数据URI
- id = uri.getPathSegments().get(1); // 获取URI中的数据ID
- count = db.update(TABLE.DATA, values, DataColumns.ID + "=" + id + parseSelection(selection), selectionArgs); // 更新指定ID的数据
- updateData = true; // 设置更新数据的标志位
- break;
- default:
- throw new IllegalArgumentException("Unknown URI " + uri); // 抛出未知URI异常
- }
-
- if (count > 0) { // 若更新成功
- if (updateData) {
- getContext().getContentResolver().notifyChange(Notes.CONTENT_NOTE_URI, null); // 通知笔记URI变化
- }
- getContext().getContentResolver().notifyChange(uri, null); // 通知URI变化
- }
- return count; // 返回更新行数
- }
- private String parseSelection(String selection) {
- return (!TextUtils.isEmpty(selection) ? " AND (" + selection + ')' : "");
- }
-
- /**
- * 更新笔记的版本号。
- *
- * @param id 笔记ID
- * @param selection 更新的约束条件
- * @param selectionArgs 更新的约束条件参数
- */
- private void increaseNoteVersion(long id, String selection, String[] selectionArgs) {
- StringBuilder sql = new StringBuilder(120);
- sql.append("UPDATE ");
- sql.append(TABLE.NOTE);
- sql.append(" SET ");
- sql.append(NoteColumns.VERSION);
- sql.append("=" + NoteColumns.VERSION + "+1 ");
-
- if (id > 0 || !TextUtils.isEmpty(selection)) {
- sql.append(" WHERE ");
- }
- if (id > 0) {
- sql.append(NoteColumns.ID + "=" + String.valueOf(id));
- }
- if (!TextUtils.isEmpty(selection)) {
- String selectString = id > 0 ? parseSelection(selection) : selection;
- for (String args : selectionArgs) {
- selectString = selectString.replaceFirst("\\?", args);
- }
- sql.append(selectString);
- }
-
- mHelper.getWritableDatabase().execSQL(sql.toString());
- }
-
- @Override
- public String getType(Uri uri) {
- // TODO Auto-generated method stub
- return null;
- }
-
-}
diff --git a/src/src/app/src/main/java/net/micode/notes/gtask/data/MetaData.java b/src/src/app/src/main/java/net/micode/notes/gtask/data/MetaData.java
deleted file mode 100644
index 6e30464..0000000
--- a/src/src/app/src/main/java/net/micode/notes/gtask/data/MetaData.java
+++ /dev/null
@@ -1,146 +0,0 @@
-/*
- * 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.gtask.data;
-
-import android.database.Cursor;
-import android.util.Log;
-
-import net.micode.notes.tool.GTaskStringUtils;
-
-import org.json.JSONException;
-import org.json.JSONObject;
-
-
-/**
- * 元数据类,继承自任务类。
- */
-public class MetaData extends Task {
- private final static String TAG = MetaData.class.getSimpleName(); // 类型标签
-
- private String mRelatedGid = null; // 相关 GTask 的 GID
-
- /**
- * 设置元数据信息,将关联 GTask 的 GID 存入 metaInfo 中
- *
- * @param gid 关联 GTask 的 GID
- * @param metaInfo 元数据信息 JSON 对象
- */
- public void setMeta(String gid, JSONObject metaInfo) {
- try {
- // 将关联 GTask 的 GID 存入元数据信息中
- metaInfo.put(GTaskStringUtils.META_HEAD_GTASK_ID, gid);
- } catch (JSONException e) {
- // 捕获异常,并记录日志
- Log.e(TAG, "failed to put related gid");
- }
-
- // 将元数据信息转换为字符串,并设置为笔记内容
- setNotes(metaInfo.toString());
-
- // 设置笔记名称为元数据的默认名称
- setName(GTaskStringUtils.META_NOTE_NAME);
- }
-
- /**
- * 获取相关 GTask 的 GID
- *
- * @return 相关 GTask 的 GID
- */
- public String getRelatedGid() {
- return mRelatedGid;
- }
-
- /**
- * 判断是否需要保存
- *
- * @return 是否需要保存
- */
- @Override
- public boolean isWorthSaving() {
- return getNotes() != null; // 判定是否笔记内容不为空
- }
-
- /**
- * 从远端 JSON 对象中获取内容并设置实例属性
- *
- * @param js 远端 JSON 对象
- */
- @Override
- public void setContentByRemoteJSON(JSONObject js) {
- // 调用父类的方法设置实例属性
- super.setContentByRemoteJSON(js);
-
- // 如果笔记内容不为空
- if (getNotes() != null) {
- try {
- // 将笔记内容转换为 JSON 对象
- JSONObject metaInfo = new JSONObject(getNotes().trim());
- // 从 JSON 对象中获取关联 GTask 的 GID,并存入实例属性 mRelatedGid
- mRelatedGid = metaInfo.getString(GTaskStringUtils.META_HEAD_GTASK_ID);
- } catch (JSONException e) {
- // 捕获异常,并记录日志
- Log.w(TAG, "failed to get related gid");
- mRelatedGid = null;
- }
- }
- }
-
- /**
- * 从本地 JSON 对象中获取内容并设置实例属性
- *
- * 注意:此方法不应该被调用
- *
- *
- * @param js 本地 JSON 对象
- * @throws IllegalAccessError 不应该调用此方法
- */
- @Override
- public void setContentByLocalJSON(JSONObject js) {
- // this function should not be called
- throw new IllegalAccessError("MetaData:setContentByLocalJSON should not be called");
- }
-
- /**
- * 获取内容的本地 JSON 对象表示
- *
- * 注意:此方法不应该被调用
- *
- *
- * @return 本地 JSON 对象
- * @throws IllegalAccessError 不应该调用此方法
- */
- @Override
- public JSONObject getLocalJSONFromContent() {
- throw new IllegalAccessError("MetaData:getLocalJSONFromContent should not be called");
- }
-
- /**
- * 获取同步操作
- *
- * 注意:此方法不应该被调用
- *
- *
- * @param c Cursor 对象
- * @return 同步操作
- * @throws IllegalAccessError 不应该调用此方法
- */
- @Override
- public int getSyncAction(Cursor c) {
- throw new IllegalAccessError("MetaData:getSyncAction should not be called");
- }
-
-}
\ No newline at end of file
diff --git a/src/src/app/src/main/java/net/micode/notes/gtask/data/Node.java b/src/src/app/src/main/java/net/micode/notes/gtask/data/Node.java
deleted file mode 100644
index 67c53e6..0000000
--- a/src/src/app/src/main/java/net/micode/notes/gtask/data/Node.java
+++ /dev/null
@@ -1,176 +0,0 @@
-/*
- * 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.
- */
-/*
- * 接口注释:
- * Node 类是抽象节点类,用于表示应用程序中的节点。
- */
-
-/*
- * 数据成员注释:
- * 1. mGid: 节点的全局唯一标识
- * 2. mName: 节点的名称
- * 3. mLastModified: 节点最后修改时间
- * 4. mDeleted: 节点是否被标记为已删除
- */
-
-/*
- * 实现注释:
- * 1. getCreateAction(int actionId): 获取创建操作的 JSON 对象表示
- * 2. getUpdateAction(int actionId): 获取更新操作的 JSON 对象表示
- * 3. setContentByRemoteJSON(JSONObject js): 从远端 JSON 对象中获取内容并设置实例属性
- * 4. setContentByLocalJSON(JSONObject js): 从本地 JSON 对象中获取内容并设置实例属性
- * 5. getLocalJSONFromContent(): 获取内容的本地 JSON 对象表示
- * 6. getSyncAction(Cursor c): 获取同步操作
- * 7. setGid(String gid): 设置节点的全局唯一标识
- * 8. setName(String name): 设置节点的名称
- * 9. setLastModified(long lastModified): 设置节点的最后修改时间
- * 10. setDeleted(boolean deleted): 设置节点是否被标记为已删除
- * 11. getGid(): 获取节点的全局唯一标识
- * 12. getName(): 获取节点的名称
- * 13. getLastModified(): 获取节点的最后修改时间
- * 14. getDeleted(): 获取节点是否被标记为已删除
- */
-
-/*
- * 模块依赖注释:
- * 该类依赖于 android.database.Cursor 类和 org.json.JSONObject 类
- */
-package net.micode.notes.gtask.data;
-
-import android.database.Cursor;
-
-import org.json.JSONObject;
-
-public abstract class Node {
- // 同步操作常量
- public static final int SYNC_ACTION_NONE = 0;
- public static final int SYNC_ACTION_ADD_REMOTE = 1;
- public static final int SYNC_ACTION_ADD_LOCAL = 2;
- public static final int SYNC_ACTION_DEL_REMOTE = 3;
- public static final int SYNC_ACTION_DEL_LOCAL = 4;
- public static final int SYNC_ACTION_UPDATE_REMOTE = 5;
- public static final int SYNC_ACTION_UPDATE_LOCAL = 6;
- public static final int SYNC_ACTION_UPDATE_CONFLICT = 7;
- public static final int SYNC_ACTION_ERROR = 8;
-
- private String mGid; // 节点的全局唯一标识
- private String mName; // 节点的名称
- private long mLastModified; // 节点最后修改时间
- private boolean mDeleted; // 节点是否被标记为已删除
-
- public Node() {
- mGid = null;
- mName = "";
- mLastModified = 0;
- mDeleted = false;
- }
-
- // 获取创建操作的JSON对象表示
- public abstract JSONObject getCreateAction(int actionId);
-
- // 获取更新操作的JSON对象表示
- public abstract JSONObject getUpdateAction(int actionId);
-
- // 从远端JSON对象中获取内容并设置实例属性
- public abstract void setContentByRemoteJSON(JSONObject js);
-
- // 从本地JSON对象中获取内容并设置实例属性
- public abstract void setContentByLocalJSON(JSONObject js);
-
- // 获取内容的本地JSON对象表示
- public abstract JSONObject getLocalJSONFromContent();
-
- // 获取同步操作
- /**
- * 获取同步操作
- *
- * @param c Cursor 对象
- * @return 同步操作
- */
- public abstract int getSyncAction(Cursor c);
-
- /**
- * 设置 GTask 的 GID
- *
- * @param gid GTask 的 GID
- */
- public void setGid(String gid) {
- this.mGid = gid;
- }
-
- /**
- * 设置任务名称
- *
- * @param name 任务名称
- */
- public void setName(String name) {
- this.mName = name;
- }
-
- /**
- * 设置最后修改时间戳
- *
- * @param lastModified 最后修改时间戳
- */
- public void setLastModified(long lastModified) {
- this.mLastModified = lastModified;
- }
-
- /**
- * 设置删除状态
- *
- * @param deleted 删除状态
- */
- public void setDeleted(boolean deleted) {
- this.mDeleted = deleted;
- }
-
- /**
- * 获取 GTask 的 GID
- *
- * @return GTask 的 GID
- */
- public String getGid() {
- return this.mGid;
- }
-
- /**
- * 获取任务名称
- *
- * @return 任务名称
- */
- public String getName() {
- return this.mName;
- }
-
- /**
- * 获取最后修改时间戳
- *
- * @return 最后修改时间戳
- */
- public long getLastModified() {
- return this.mLastModified;
- }
-
- /**
- * 获取删除状态
- *
- * @return 删除状态
- */
- public boolean getDeleted() {
- return this.mDeleted;
- }
-}
\ No newline at end of file
diff --git a/src/src/app/src/main/java/net/micode/notes/gtask/data/SqlData.java b/src/src/app/src/main/java/net/micode/notes/gtask/data/SqlData.java
deleted file mode 100644
index f8f15ff..0000000
--- a/src/src/app/src/main/java/net/micode/notes/gtask/data/SqlData.java
+++ /dev/null
@@ -1,212 +0,0 @@
-/*
- * 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.gtask.data;
-
-import android.content.ContentResolver;
-import android.content.ContentUris;
-import android.content.ContentValues;
-import android.content.Context;
-import android.database.Cursor;
-import android.net.Uri;
-import android.util.Log;
-
-import net.micode.notes.data.Notes;
-import net.micode.notes.data.Notes.DataColumns;
-import net.micode.notes.data.Notes.DataConstants;
-import net.micode.notes.data.Notes.NoteColumns;
-import net.micode.notes.data.NotesDatabaseHelper.TABLE;
-import net.micode.notes.gtask.exception.ActionFailureException;
-
-import org.json.JSONException;
-import org.json.JSONObject;
-
-/*定义了一个sqlData类*/
-public class SqlData {
- private static final String TAG = SqlData.class.getSimpleName();
-
- // 无效ID
- private static final int INVALID_ID = -99999;
-
- // 数据列投影
- public static final String[] PROJECTION_DATA = new String[] {
- DataColumns.ID, DataColumns.MIME_TYPE, DataColumns.CONTENT, DataColumns.DATA1,
- DataColumns.DATA3
- };
-
- // 数据列索引
- public static final int DATA_ID_COLUMN = 0;
- public static final int DATA_MIME_TYPE_COLUMN = 1;
- public static final int DATA_CONTENT_COLUMN = 2;
- public static final int DATA_CONTENT_DATA_1_COLUMN = 3;
- public static final int DATA_CONTENT_DATA_3_COLUMN = 4;
-
- // 内容解析器
- private ContentResolver mContentResolver;
-
- // 是否创建数据标识
- private boolean mIsCreate;
-
- // 数据ID
- private long mDataId;
-
- // 数据MIME类型
- private String mDataMimeType;
-
- // 数据内容
- private String mDataContent;
-
- // 数据内容1
- private long mDataContentData1;
-
- // 数据内容3
- private String mDataContentData3;
-
- // 差异数据值
- private ContentValues mDiffDataValues;
-
- // 构造函数,初始化默认值
- public SqlData(Context context) {
- mContentResolver = context.getContentResolver();// 获取内容解析器
- mIsCreate = true;// 默认为创建数据
- mDataId = INVALID_ID; // 设置数据ID为无效ID
- mDataMimeType = DataConstants.NOTE; // 默认数据MIME类型为DataConstants.NOTE
- mDataContent = "";// 默认数据内容为空字符串
- mDataContentData1 = 0;// 默认数据内容1为0
- mDataContentData3 = "";// 默认数据内容3为空字符串
- mDiffDataValues = new ContentValues();// 创建一个差异数据值的 ContentValues 对象
- }
-
- // 构造函数,从Cursor加载数据
- public SqlData(Context context, Cursor c) {
- mContentResolver = context.getContentResolver();
- mIsCreate = false;
- loadFromCursor(c);
- mDiffDataValues = new ContentValues();
- }
-
- // 从Cursor加载数据
- private void loadFromCursor(Cursor c) {
- mDataId = c.getLong(DATA_ID_COLUMN); // 从游标获取数据 ID
- mDataMimeType = c.getString(DATA_MIME_TYPE_COLUMN); // 从游标获取数据的 MIME 类型
- mDataContent = c.getString(DATA_CONTENT_COLUMN); // 从游标获取数据内容
- mDataContentData1 = c.getLong(DATA_CONTENT_DATA_1_COLUMN); // 从游标获取数据内容的数据1
- mDataContentData3 = c.getString(DATA_CONTENT_DATA_3_COLUMN); // 从游标获取数据内容的数据3
- }
-
- // 设置内容
- public void setContent(JSONObject js) throws JSONException {
- // 提取JSON中的数据ID,若不存在则使用无效ID
- long dataId = js.has(DataColumns.ID) ? js.getLong(DataColumns.ID) : INVALID_ID;
- // 若是创建操作或数据ID不同,则将新数据放入差异值中
- if (mIsCreate || mDataId != dataId) {
- mDiffDataValues.put(DataColumns.ID, dataId);
- }
- mDataId = dataId;
-
- // 提取JSON中的数据MIME类型,若不存在则使用默认值
- String dataMimeType = js.has(DataColumns.MIME_TYPE) ? js.getString(DataColumns.MIME_TYPE)
- : DataConstants.NOTE;
- // 若是创建操作或MIME类型不同,则将新数据放入差异值中
- if (mIsCreate || !mDataMimeType.equals(dataMimeType)) {
- mDiffDataValues.put(DataColumns.MIME_TYPE, dataMimeType);
- }
- mDataMimeType = dataMimeType;
-
- // 提取JSON中的数据内容,若不存在则使用空字符串
- String dataContent = js.has(DataColumns.CONTENT) ? js.getString(DataColumns.CONTENT) : "";
- // 若是创建操作或内容不同,则将新数据放入差异值中
- if (mIsCreate || !mDataContent.equals(dataContent)) {
- mDiffDataValues.put(DataColumns.CONTENT, dataContent);
- }
- mDataContent = dataContent;
-
- // 提取JSON中的数据内容1,若不存在则使用默认值
- long dataContentData1 = js.has(DataColumns.DATA1) ? js.getLong(DataColumns.DATA1) : 0;
- // 若是创建操作或内容1不同,则将新数据放入差异值中
- if (mIsCreate || mDataContentData1 != dataContentData1) {
- mDiffDataValues.put(DataColumns.DATA1, dataContentData1);
- }
- mDataContentData1 = dataContentData1;
-
- // 提取JSON中的数据内容3,若不存在则使用空字符串
- String dataContentData3 = js.has(DataColumns.DATA3) ? js.getString(DataColumns.DATA3) : "";
- // 若是创建操作或内容3不同,则将新数据放入差异值中
- if (mIsCreate || !mDataContentData3.equals(dataContentData3)) {
- mDiffDataValues.put(DataColumns.DATA3, dataContentData3);
- }
- mDataContentData3 = dataContentData3;
- }
- public JSONObject getContent() throws JSONException {
- // 接口注释:获取数据内容
- if (mIsCreate) {
- Log.e(TAG, "it seems that we haven't created this in database yet");
- return null;
- }
- JSONObject js = new JSONObject();
- js.put(DataColumns.ID, mDataId);// 数据成员注释:数据Id
- js.put(DataColumns.MIME_TYPE, mDataMimeType);// 数据成员注释:数据类型
- js.put(DataColumns.CONTENT, mDataContent);// 数据成员注释:数据内容
- js.put(DataColumns.DATA1, mDataContentData1);// 数据成员注释:数据ContentData1
- js.put(DataColumns.DATA3, mDataContentData3);// 数据成员注释:数据ContentData3
- return js;
- }
-
- public void commit(long noteId, boolean validateVersion, long version) {
- // 实现注释:提交数据
- if (mIsCreate) {
- if (mDataId == INVALID_ID && mDiffDataValues.containsKey(DataColumns.ID)) {
- mDiffDataValues.remove(DataColumns.ID);
- }
-
- mDiffDataValues.put(DataColumns.NOTE_ID, noteId);
- Uri uri = mContentResolver.insert(Notes.CONTENT_DATA_URI, mDiffDataValues);
- try {
- mDataId = Long.valueOf(uri.getPathSegments().get(1));
- } catch (NumberFormatException e) {
- Log.e(TAG, "Get note id error :" + e.toString());
- throw new ActionFailureException("create note failed");
- }
- } else {
- if (mDiffDataValues.size() > 0) {
- int result = 0;
- if (!validateVersion) {
- // 模块依赖注释:更新数据
- result = mContentResolver.update(ContentUris.withAppendedId(
- Notes.CONTENT_DATA_URI, mDataId), mDiffDataValues, null, null);
- } else {
- result = mContentResolver.update(ContentUris.withAppendedId(
- Notes.CONTENT_DATA_URI, mDataId), mDiffDataValues,
- " ? in (SELECT " + NoteColumns.ID + " FROM " + TABLE.NOTE
- + " WHERE " + NoteColumns.VERSION + "=?)", new String[] {
- String.valueOf(noteId), String.valueOf(version)
- });
- }
- if (result == 0) {
- Log.w(TAG, "there is no update. maybe user updates note when syncing");
- }
- }
- }
-
- mDiffDataValues.clear();
- mIsCreate = false;
- }
-
- public long getId() {
- // 接口注释:获取数据Id
- return mDataId;
- }
-}
diff --git a/src/src/app/src/main/java/net/micode/notes/gtask/data/SqlNote.java b/src/src/app/src/main/java/net/micode/notes/gtask/data/SqlNote.java
deleted file mode 100644
index 28e4b17..0000000
--- a/src/src/app/src/main/java/net/micode/notes/gtask/data/SqlNote.java
+++ /dev/null
@@ -1,502 +0,0 @@
-/*
- * 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.gtask.data;
-
-import android.appwidget.AppWidgetManager;
-import android.content.ContentResolver;
-import android.content.ContentValues;
-import android.content.Context;
-import android.database.Cursor;
-import android.net.Uri;
-import android.util.Log;
-
-import net.micode.notes.data.Notes;
-import net.micode.notes.data.Notes.DataColumns;
-import net.micode.notes.data.Notes.NoteColumns;
-import net.micode.notes.gtask.exception.ActionFailureException;
-import net.micode.notes.tool.GTaskStringUtils;
-import net.micode.notes.tool.ResourceParser;
-
-import org.json.JSONArray;
-import org.json.JSONException;
-import org.json.JSONObject;
-
-import java.util.ArrayList;
-
-/**
- * 数据成员注释:SqlNote类负责与数据库中的笔记数据进行交互处理。
- */
-public class SqlNote {
- private static final String TAG = SqlNote.class.getSimpleName();
-
- private static final int INVALID_ID = -99999;
-
- // 定义查询笔记使用的投影列数组
- public static final String[] PROJECTION_NOTE = new String[] {
- // 以下依次对应列的含义
- NoteColumns.ID, NoteColumns.ALERTED_DATE, NoteColumns.BG_COLOR_ID,
- NoteColumns.CREATED_DATE, NoteColumns.HAS_ATTACHMENT, NoteColumns.MODIFIED_DATE,
- NoteColumns.NOTES_COUNT, NoteColumns.PARENT_ID, NoteColumns.SNIPPET, NoteColumns.TYPE,
- NoteColumns.WIDGET_ID, NoteColumns.WIDGET_TYPE, NoteColumns.SYNC_ID,
- NoteColumns.LOCAL_MODIFIED, NoteColumns.ORIGIN_PARENT_ID, NoteColumns.GTASK_ID,
- NoteColumns.VERSION
- };
-
- // 以下依次对应PROJECTION_NOTE中列的下标
- public static final int ID_COLUMN = 0;
- public static final int ALERTED_DATE_COLUMN = 1;
- public static final int BG_COLOR_ID_COLUMN = 2;
- public static final int CREATED_DATE_COLUMN = 3;
- public static final int HAS_ATTACHMENT_COLUMN = 4;
- public static final int MODIFIED_DATE_COLUMN = 5;
- public static final int NOTES_COUNT_COLUMN = 6;
- public static final int PARENT_ID_COLUMN = 7;
- public static final int SNIPPET_COLUMN = 8;
- public static final int TYPE_COLUMN = 9;
- public static final int WIDGET_ID_COLUMN = 10;
- public static final int WIDGET_TYPE_COLUMN = 11;
- public static final int SYNC_ID_COLUMN = 12;
- public static final int LOCAL_MODIFIED_COLUMN = 13;
- public static final int ORIGIN_PARENT_ID_COLUMN = 14;
- public static final int GTASK_ID_COLUMN = 15;
- public static final int VERSION_COLUMN = 16;
-
- private Context mContext;
-
- private ContentResolver mContentResolver;
-
- private boolean mIsCreate;
-
- private long mId;
- private long mAlertDate;
- private int mBgColorId;
- private long mCreatedDate;
- private int mHasAttachment;
- private long mModifiedDate;
- private long mParentId;
- private String mSnippet;
- private int mType;
- private int mWidgetId;
- private int mWidgetType;
- private long mOriginParent;
- private long mVersion;
- private ContentValues mDiffNoteValues;
- private ArrayList mDataList;
-
- /**
- * 接口注释:SqlNote类用于对笔记数据进行数据库操作的封装。
- *
- * @param context 上下文环境
- */
- public SqlNote(Context context) {
- mContext = context; // 上下文对象
- mContentResolver = context.getContentResolver(); // 获取内容解析器
- mIsCreate = true; // 是否是创建状态
- mId = INVALID_ID; // ID 设置为无效值
- mAlertDate = 0; // 提醒日期初始化为0
- mBgColorId = ResourceParser.getDefaultBgId(context); // 背景颜色ID初始化为默认背景颜色
- mCreatedDate = System.currentTimeMillis(); // 创建日期初始化为当前时间
- mHasAttachment = 0; // 是否有附件初始化为0 - 表示没有附件
- mModifiedDate = System.currentTimeMillis(); // 修改日期初始化为当前时间
- mParentId = 0; // 父级ID初始化为0
- mSnippet = ""; // 摘录初始化为空字符串
- mType = Notes.TYPE_NOTE; // 类型为普通笔记类型
- mWidgetId = AppWidgetManager.INVALID_APPWIDGET_ID; // 小部件ID初始化为无效ID
- mWidgetType = Notes.TYPE_WIDGET_INVALIDE; // 小部件类型初始化为无效类型
- mOriginParent = 0; // 原始父级ID初始化为0
- mVersion = 0; // 版本号初始化为0
- mDiffNoteValues = new ContentValues(); // 差异笔记值的容器
- mDataList = new ArrayList(); // 数据列表容器
- }
-
- /**
- * 实现注释:通过数据库游标加载SqlNote对象。
- *
- * @param context 上下文环境
- * @param c 数据库游标
- */
- public SqlNote(Context context, Cursor c) {
- mContext = context; // 上下文对象
- mContentResolver = context.getContentResolver(); // 获取内容解析器
- mIsCreate = false; // 是否是创建状态设置为false
- loadFromCursor(c); // 从游标加载数据
- mDataList = new ArrayList(); // 数据列表容器
- if (mType == Notes.TYPE_NOTE) // 如果类型为普通笔记类型
- loadDataContent(); // 加载数据内容
- mDiffNoteValues = new ContentValues(); // 差异笔记值的容器
- }
-
- /**
- * 实现注释:通过笔记ID加载SqlNote对象。
- *
- * @param context 上下文环境
- * @param id 笔记ID
- */
- public SqlNote(Context context, long id) {
- mContext = context; // 上下文对象
- mContentResolver = context.getContentResolver(); // 获取内容解析器
- mIsCreate = false; // 是否是创建状态设置为 false
- loadFromCursor(id); // 根据ID从游标加载数据
- mDataList = new ArrayList(); // 数据列表容器
- if (mType == Notes.TYPE_NOTE) // 如果类型为普通笔记类型
- loadDataContent(); // 加载数据内容
- mDiffNoteValues = new ContentValues(); // 差异笔记值的容器
- }
-
- // ...(未完)
-
- /**
- * 从Cursor中加载指定id的笔记数据。
- * @param id 笔记ID
- */
- private void loadFromCursor(long id) {
- Cursor c = null;
- try {
- // 通过查询URI和ID获取匹配的Cursor对象
- c = mContentResolver.query(Notes.CONTENT_NOTE_URI, PROJECTION_NOTE, "(_id=?)",
- new String[] { String.valueOf(id) }, null);
- if (c != null) {
- c.moveToNext();
- loadFromCursor(c);
- } else {
- Log.w(TAG, "loadFromCursor: cursor = null");
- }
- } finally {
- if (c != null)
- c.close();
- }
- }
-
- /**
- * 从Cursor中加载笔记数据并赋值给相应的成员变量。
- * @param c 笔记Cursor对象
- */
- private void loadFromCursor(Cursor c) {
- mId = c.getLong(ID_COLUMN); // 从游标中获取ID
- mAlertDate = c.getLong(ALERTED_DATE_COLUMN); // 从游标中获取提醒日期
- mBgColorId = c.getInt(BG_COLOR_ID_COLUMN); // 从游标中获取背景颜色ID
- mCreatedDate = c.getLong(CREATED_DATE_COLUMN); // 从游标中获取创建日期
- mHasAttachment = c.getInt(HAS_ATTACHMENT_COLUMN); // 从游标中获取是否有附件
- mModifiedDate = c.getLong(MODIFIED_DATE_COLUMN); // 从游标中获取修改日期
- mParentId = c.getLong(PARENT_ID_COLUMN); // 从游标中获取父级ID
- mSnippet = c.getString(SNIPPET_COLUMN); // 从游标中获取摘录
- mType = c.getInt(TYPE_COLUMN); // 从游标中获取类型
- mWidgetId = c.getInt(WIDGET_ID_COLUMN); // 从游标中获取小部件ID
- mWidgetType = c.getInt(WIDGET_TYPE_COLUMN); // 从游标中获取小部件类型
- mVersion = c.getLong(VERSION_COLUMN); // 从游标中获取版本号
- }
- /**
- * 加载笔记的附加数据。
- */
- private void loadDataContent() {
- Cursor c = null;
- mDataList.clear();
- try {
- // 通过查询URI和笔记ID获取匹配的笔记附加数据Cursor对象
- c = mContentResolver.query(Notes.CONTENT_DATA_URI, SqlData.PROJECTION_DATA,
- "(note_id=?)", new String[] { String.valueOf(mId) }, null);
- if (c != null) {
- if (c.getCount() == 0) {
- Log.w(TAG, "it seems that the note has not data");
- return;
- }
- // 遍历Cursor,构造SqlData对象并添加到附加数据列表中
- while (c.moveToNext()) {
- SqlData data = new SqlData(mContext, c);
- mDataList.add(data);
- }
- } else {
- Log.w(TAG, "loadDataContent: cursor = null");
- }
- } finally {
- if (c != null)
- c.close();
- }
- }
-
-
-
- /**
- * 设置笔记的内容,更新笔记的类型、小部件信息、原始父文件夹 ID 和附件数据
- *
- * @param js 包含笔记和数据的 JSON 对象
- * @return 设置是否成功的布尔值
- */
- // 数据成员注释:
- // mIsCreate:标记是否为创建新笔记的操作
- // mType:笔记的类型
- // mWidgetId:笔记的小部件 ID
- // mWidgetType:笔记的小部件类型
- // mOriginParent:笔记的原始父文件夹 ID
- // mDiffNoteValues:记录与原始笔记不同的属性和值的映射关系
- // mDataList:存储附件数据的列表
- // 实现注释:
- // 更新笔记属性:
- // 更新笔记的类型(如果有改变)
- // 更新笔记的小部件 ID(如果有改变)
- // 更新笔记的小部件类型(如果有改变)
- // 更新笔记的原始父文件夹 ID(如果有改变)
- // 遍历附件数据,处理每一项:
- // 如果附件数据已存在于 mDataList 中,则使用现有的 SqlData 对象
- // 否则,创建新的 SqlData 对象并添加到 mDataList 中
- // 设置附件数据的内容
-
- // 模块依赖注释:
- // 依赖的类:
- // JSONObject:JSON 对象类
- // JSONArray:JSON 数组类
- // SqlData:自定义的 SQL 数据类
- // 依赖的接口和方法:
- // AppWidgetManager.INVALID_APPWIDGET_ID:无效的小部件 ID 值
- // NoteColumns.TYPE:笔记类型在数据库中的列名
- // NoteColumns.WIDGET_ID:小部件 ID 在数据库中的列名
- // NoteColumns.WIDGET_TYPE:小部件类型在数据库中的列名
- // NoteColumns.ORIGIN_PARENT_ID:原始父文件夹 ID 在数据库中的列名
- // DataColumns.ID:附件数据 ID 在数据库中的列名
- // SqlData.setContent(data):设置附件数据的内容的方法
- public boolean setContent(JSONObject js) {
- try {
- // 提取笔记对象和数据数组
- JSONObject note = js.getJSONObject("note"); // 提取笔记对象
- JSONArray dataArray = js.getJSONArray("dataArray"); // 提取数据数组
-
- // 更新笔记的类型
- int type = note.has(NoteColumns.TYPE) ? note.getInt(NoteColumns.TYPE) : Notes.TYPE_NOTE;
- if (mIsCreate || mType != type) {
- mDiffNoteValues.put(NoteColumns.TYPE, type); // 将类型加入差异笔记值中
- }
- mType = type;
-
- // 更新笔记的小部件 ID
- int widgetId = note.has(NoteColumns.WIDGET_ID) ? note.getInt(NoteColumns.WIDGET_ID) : AppWidgetManager.INVALID_APPWIDGET_ID;
- if (mIsCreate || mWidgetId != widgetId) {
- mDiffNoteValues.put(NoteColumns.WIDGET_ID, widgetId); // 将小部件 ID 加入差异笔记值中
- }
- mWidgetId = widgetId;
-
- // 更新笔记的小部件类型
- int widgetType = note.has(NoteColumns.WIDGET_TYPE) ? note.getInt(NoteColumns.WIDGET_TYPE) : Notes.TYPE_WIDGET_INVALIDE;
- if (mIsCreate || mWidgetType != widgetType) {
- mDiffNoteValues.put(NoteColumns.WIDGET_TYPE, widgetType); // 将小部件类型加入差异笔记值中
- }
- mWidgetType = widgetType;
-
- // 更新笔记的原始父文件夹 ID
- long originParent = note.has(NoteColumns.ORIGIN_PARENT_ID) ? note.getLong(NoteColumns.ORIGIN_PARENT_ID) : 0;
- if (mIsCreate || mOriginParent != originParent) {
- mDiffNoteValues.put(NoteColumns.ORIGIN_PARENT_ID, originParent); // 将原始父文件夹 ID 加入差异笔记值中
- }
- mOriginParent = originParent;
-
- // 更新笔记的附件数据
- for (int i = 0; i < dataArray.length(); i++) {
- JSONObject data = dataArray.getJSONObject(i);
- SqlData sqlData = null;
- if (data.has(DataColumns.ID)) {
- long dataId = data.getLong(DataColumns.ID);
- for (SqlData temp : mDataList) {
- if (dataId == temp.getId()) {
- sqlData = temp;
- }
- }
- }
-
- if (sqlData == null) {
- sqlData = new SqlData(mContext);
- mDataList.add(sqlData);
- }
-
- // 设置附件数据的内容
- sqlData.setContent(data); // 设置附件数据的内容
- }
- } catch (JSONException e) {
- Log.e(TAG, e.toString());
- e.printStackTrace();
- return false; // 解析失败,返回 false
- }
- return true; // 解析成功,返回 true
- }
- /**
- * 获取笔记内容的 JSON 对象
- *
- * @return 笔记内容的 JSON 对象,或者返回 null 如果笔记未创建在数据库中
- */
- public JSONObject getContent() {
- try {
- JSONObject js = new JSONObject();
-
- if (mIsCreate) {
- Log.e(TAG, "在数据库中似乎还没有创建此笔记");
- return null;
- }
-
- JSONObject note = new JSONObject();
- if (mType == Notes.TYPE_NOTE) {
- // 数据成员注释:
- // NoteColumns.ID:笔记 ID
- // NoteColumns.ALERTED_DATE:提醒日期
- // NoteColumns.BG_COLOR_ID:背景颜色 ID
- // NoteColumns.CREATED_DATE:创建日期
- // NoteColumns.HAS_ATTACHMENT:是否有附件
- // NoteColumns.MODIFIED_DATE:修改日期
- // NoteColumns.PARENT_ID:父文件夹 ID
- // NoteColumns.SNIPPET:内容摘要
- // NoteColumns.TYPE:笔记类型
- // NoteColumns.WIDGET_ID:小部件 ID
- // NoteColumns.WIDGET_TYPE:小部件类型
- // NoteColumns.ORIGIN_PARENT_ID:原始父文件夹 ID
- note.put(NoteColumns.ID, mId);
- note.put(NoteColumns.ALERTED_DATE, mAlertDate);
- note.put(NoteColumns.BG_COLOR_ID, mBgColorId);
- note.put(NoteColumns.CREATED_DATE, mCreatedDate);
- note.put(NoteColumns.HAS_ATTACHMENT, mHasAttachment);
- note.put(NoteColumns.MODIFIED_DATE, mModifiedDate);
- note.put(NoteColumns.PARENT_ID, mParentId);
- note.put(NoteColumns.SNIPPET, mSnippet);
- note.put(NoteColumns.TYPE, mType);
- note.put(NoteColumns.WIDGET_ID, mWidgetId);
- note.put(NoteColumns.WIDGET_TYPE, mWidgetType);
- note.put(NoteColumns.ORIGIN_PARENT_ID, mOriginParent);
- js.put(GTaskStringUtils.META_HEAD_NOTE, note);
-
- JSONArray dataArray = new JSONArray();
- for (SqlData sqlData : mDataList) {
- JSONObject data = sqlData.getContent();
- if (data != null) {
- dataArray.put(data);
- }
- }
- js.put(GTaskStringUtils.META_HEAD_DATA, dataArray);
- } else if (mType == Notes.TYPE_FOLDER || mType == Notes.TYPE_SYSTEM) {
- // 数据成员注释:
- // NoteColumns.ID:笔记 ID
- // NoteColumns.TYPE:笔记类型
- // NoteColumns.SNIPPET:内容摘要
- note.put(NoteColumns.ID, mId);
- note.put(NoteColumns.TYPE, mType);
- note.put(NoteColumns.SNIPPET, mSnippet);
- js.put(GTaskStringUtils.META_HEAD_NOTE, note);
- }
-
- return js;
- } catch (JSONException e) {
- Log.e(TAG, e.toString());
- e.printStackTrace();
- }
- return null;
- }
-
- public void setParentId(long id) {
- mParentId = id;
- mDiffNoteValues.put(NoteColumns.PARENT_ID, id);
- }
-
- public void setGtaskId(String gid) {
- mDiffNoteValues.put(NoteColumns.GTASK_ID, gid);
- }
-
- public void setSyncId(long syncId) {
- mDiffNoteValues.put(NoteColumns.SYNC_ID, syncId);
- }
-
- public void resetLocalModified() {
- mDiffNoteValues.put(NoteColumns.LOCAL_MODIFIED, 0);
- }
-
- public long getId() {
- return mId;
- }
-
- public long getParentId() {
- return mParentId;
- }
-
- public String getSnippet() {
- return mSnippet;
- }
-
- public boolean isNoteType() {
- return mType == Notes.TYPE_NOTE;
- }
-
- /**
- * 提交操作,根据不同情况执行创建或更新操作
- *
- * @param validateVersion 是否验证版本
- */
- public void commit(boolean validateVersion) {
- if (mIsCreate) { // 如果是创建状态
- if (mId == INVALID_ID && mDiffNoteValues.containsKey(NoteColumns.ID)) {
- mDiffNoteValues.remove(NoteColumns.ID); // 移除差异笔记值中的 ID 键
- }
-
- Uri uri = mContentResolver.insert(Notes.CONTENT_NOTE_URI, mDiffNoteValues); // 将差异笔记值插入内容提供器
- try {
- mId = Long.valueOf(uri.getPathSegments().get(1)); // 从 URI 中获取插入的笔记 ID
- } catch (NumberFormatException e) {
- Log.e(TAG, "Get note id error :" + e.toString()); // 打印错误日志
- throw new ActionFailureException("create note failed"); // 抛出操作失败异常
- }
- if (mId == 0) {
- throw new IllegalStateException("Create thread id failed"); // 抛出非法状态异常
- }
-
- if (mType == Notes.TYPE_NOTE) { // 如果类型为普通笔记类型
- for (SqlData sqlData : mDataList) { // 遍历数据列表
- sqlData.commit(mId, false, -1); // 提交数据
- }
- }
- } else {
- if (mId <= 0 && mId != Notes.ID_ROOT_FOLDER && mId != Notes.ID_CALL_RECORD_FOLDER) {
- Log.e(TAG, "No such note"); // 打印错误日志
- throw new IllegalStateException("Try to update note with invalid id"); // 抛出非法状态异常
- }
- if (mDiffNoteValues.size() > 0) {
- mVersion++; // 版本号加一
- int result = 0;
- if (!validateVersion) {
- result = mContentResolver.update(Notes.CONTENT_NOTE_URI, mDiffNoteValues, "("
- + NoteColumns.ID + "=?)", new String[] {
- String.valueOf(mId)
- });
- } else {
- result = mContentResolver.update(Notes.CONTENT_NOTE_URI, mDiffNoteValues, "("
- + NoteColumns.ID + "=?) AND (" + NoteColumns.VERSION + "<=?)",
- new String[] {
- String.valueOf(mId), String.valueOf(mVersion)
- });
- }
- if (result == 0) {
- Log.w(TAG, "there is no update. maybe user updates note when syncing");
- }
- }
-
- if (mType == Notes.TYPE_NOTE) { // 如果类型为普通笔记类型
- for (SqlData sqlData : mDataList) { // 遍历数据列表
- sqlData.commit(mId, validateVersion, mVersion); // 提交数据
- }
- }
- }
-
- // 刷新本地信息
- loadFromCursor(mId);
- if (mType == Notes.TYPE_NOTE)
- loadDataContent();
-
- mDiffNoteValues.clear(); // 清空差异笔记值
- mIsCreate = false; // 设置为非创建状态
- }
-}
diff --git a/src/src/app/src/main/java/net/micode/notes/gtask/data/Task.java b/src/src/app/src/main/java/net/micode/notes/gtask/data/Task.java
deleted file mode 100644
index 37aab6a..0000000
--- a/src/src/app/src/main/java/net/micode/notes/gtask/data/Task.java
+++ /dev/null
@@ -1,447 +0,0 @@
-/*
- * 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.gtask.data;
-
-import android.database.Cursor;
-import android.text.TextUtils;
-import android.util.Log;
-
-import net.micode.notes.data.Notes;
-import net.micode.notes.data.Notes.DataColumns;
-import net.micode.notes.data.Notes.DataConstants;
-import net.micode.notes.data.Notes.NoteColumns;
-import net.micode.notes.gtask.exception.ActionFailureException;
-import net.micode.notes.tool.GTaskStringUtils;
-
-import org.json.JSONArray;
-import org.json.JSONException;
-import org.json.JSONObject;
-
-
-/**
- * 任务类,表示一个任务节点。
- */
-public class Task extends Node {
- private static final String TAG = Task.class.getSimpleName();
-
- private boolean mCompleted; // 标识任务是否已完成
-
- private String mNotes; // 任务的备注信息
-
- private JSONObject mMetaInfo; // 任务的附加元数据
-
- private Task mPriorSibling; // 任务列表中该任务的前一个任务节点
-
- private TaskList mParent; // 该任务的父任务列表
-
- /**
- * 构造函数,创建一个具有默认值的 Task 对象。
- */
- public Task() {
- super();
- mCompleted = false;
- mNotes = null;
- mPriorSibling = null;
- mParent = null;
- mMetaInfo = null;
- }
-
- /**
- * 生成创建任务的 JSON 对象。
- *
- * @param actionId 创建操作的 ID
- * @return 创建操作的 JSON 对象
- * @throws ActionFailureException 如果生成 JSON 对象失败
- */
- /**
- * 生成创建任务的 JSON 对象。
- *
- * @param actionId 创建操作的 ID
- * @return 创建操作的 JSON 对象
- * @throws ActionFailureException 如果生成 JSON 对象失败
- */
- public JSONObject getCreateAction(int actionId) throws ActionFailureException {
- JSONObject js = new JSONObject(); // 创建一个新的 JSON 对象
-
- try {
- // action_type
- js.put(GTaskStringUtils.GTASK_JSON_ACTION_TYPE, // 设置 JSON 对象中的 action_type 字段
- GTaskStringUtils.GTASK_JSON_ACTION_TYPE_CREATE);
-
- // action_id
- js.put(GTaskStringUtils.GTASK_JSON_ACTION_ID, actionId); // 设置 JSON 对象中的 action_id 字段
-
- // index
- js.put(GTaskStringUtils.GTASK_JSON_INDEX, mParent.getChildTaskIndex(this)); // 设置 JSON 对象中的 index 字段,调用 mParent 中的 getChildTaskIndex 方法获得任务的索引
-
- // entity_delta
- JSONObject entity = new JSONObject(); // 创建一个新的 JSON 对象 entity
- entity.put(GTaskStringUtils.GTASK_JSON_NAME, getName()); // 设置 entity 中的 name 字段为当前任务的名字
- entity.put(GTaskStringUtils.GTASK_JSON_CREATOR_ID, "null"); // 设置 entity 中的 creator_id 字段为 null
- entity.put(GTaskStringUtils.GTASK_JSON_ENTITY_TYPE, // 设置 entity 中的 entity_type 字段为类型为任务
- GTaskStringUtils.GTASK_JSON_TYPE_TASK);
- if (getNotes() != null) {
- entity.put(GTaskStringUtils.GTASK_JSON_NOTES, getNotes()); // 如果任务有备注信息,则设置 entity 中的 notes 字段为任务的备注信息
- }
- js.put(GTaskStringUtils.GTASK_JSON_ENTITY_DELTA, entity); // 将 entity 对象作为 JSON 对象的 entity_delta 字段的值
-
- // parent_id
- js.put(GTaskStringUtils.GTASK_JSON_PARENT_ID, mParent.getGid()); // 设置 JSON 对象中的 parent_id 字段为该任务的父任务列表的 gid
-
- // dest_parent_type
- js.put(GTaskStringUtils.GTASK_JSON_DEST_PARENT_TYPE, // 设置 JSON 对象中的 dest_parent_type 字段为组类型
- GTaskStringUtils.GTASK_JSON_TYPE_GROUP);
-
- // list_id
- js.put(GTaskStringUtils.GTASK_JSON_LIST_ID, mParent.getGid()); // 设置 JSON 对象中的 list_id 字段为该任务的父任务列表的 gid
-
- // prior_sibling_id
- if (mPriorSibling != null) {
- js.put(GTaskStringUtils.GTASK_JSON_PRIOR_SIBLING_ID, mPriorSibling.getGid()); // 如果存在前一个任务节点,则设置 prior_sibling_id 为前一个任务节点的 gid
- }
-
- } catch (JSONException e) {
- Log.e(TAG, e.toString()); // 打印错误日志
- e.printStackTrace(); // 输出异常信息
- throw new ActionFailureException("生成任务创建 JSON 对象失败"); // 抛出生成任务创建 JSON 对象失败的异常
- }
-
- return js; // 返回创建的 JSON 对象
- }
-
-
- /**
- * 生成更新任务的 JSON 对象。
- *
- * @param actionId 更新操作的 ID
- * @return 更新操作的 JSON 对象
- */
- public JSONObject getUpdateAction(int actionId) {
- JSONObject js = new JSONObject(); // 创建一个新的 JSON 对象
-
- try {
- // action_type
- js.put(GTaskStringUtils.GTASK_JSON_ACTION_TYPE, // 设置 JSON 对象中的 action_type 字段为更新操作类型
- GTaskStringUtils.GTASK_JSON_ACTION_TYPE_UPDATE);
-
- // action_id
- js.put(GTaskStringUtils.GTASK_JSON_ACTION_ID, actionId); // 设置 JSON 对象中的 action_id 字段为指定的操作 ID
-
- // id
- js.put(GTaskStringUtils.GTASK_JSON_ID, getGid()); // 设置 JSON 对象中的 id 字段为当前任务的 gid
-
- // entity_delta
- JSONObject entity = new JSONObject(); // 创建一个新的 JSON 对象 entity
- entity.put(GTaskStringUtils.GTASK_JSON_NAME, getName()); // 设置 entity 中的 name 字段为当前任务的名字
- if (getNotes() != null) {
- entity.put(GTaskStringUtils.GTASK_JSON_NOTES, getNotes()); // 如果任务有备注信息,则设置 entity 中的 notes 字段为任务的备注
- }
- entity.put(GTaskStringUtils.GTASK_JSON_DELETED, getDeleted()); // 设置 entity 中的 deleted 字段为当前任务的删除状态
- js.put(GTaskStringUtils.GTASK_JSON_ENTITY_DELTA, entity); // 将 entity 对象作为 JSON 对象的 entity_delta 字段的值
-
- } catch (JSONException e) {
- Log.e(TAG, e.toString()); // 打印错误日志
- e.printStackTrace(); // 输出异常信息
- throw new ActionFailureException("fail to generate task-update jsonobject"); // 抛出生成任务更新 JSON 对象失败的异常
- }
-
- return js; // 返回创建的 JSON 对象
- }
-
- /**
- * 从远程 JSON 对象设置内容。
- *
- * @param js 远程 JSON 对象
- */
- public void setContentByRemoteJSON(JSONObject js) {
- if (js != null) {
- try {
- // id
- if (js.has(GTaskStringUtils.GTASK_JSON_ID)) {
- setGid(js.getString(GTaskStringUtils.GTASK_JSON_ID)); // 如果 JSON 对象中包含 id 字段,则设置当前对象的 gid
- }
-
- // last_modified
- if (js.has(GTaskStringUtils.GTASK_JSON_LAST_MODIFIED)) {
- setLastModified(js.getLong(GTaskStringUtils.GTASK_JSON_LAST_MODIFIED)); // 如果 JSON 对象中包含 last_modified 字段,则设置当前对象的 last_modified
- }
-
- // name
- if (js.has(GTaskStringUtils.GTASK_JSON_NAME)) {
- setName(js.getString(GTaskStringUtils.GTASK_JSON_NAME)); // 如果 JSON 对象中包含 name 字段,则设置当前对象的 name
- }
-
- // notes
- if (js.has(GTaskStringUtils.GTASK_JSON_NOTES)) {
- setNotes(js.getString(GTaskStringUtils.GTASK_JSON_NOTES)); // 如果 JSON 对象中包含 notes 字段,则设置当前对象的 notes
- }
-
- // deleted
- if (js.has(GTaskStringUtils.GTASK_JSON_DELETED)) {
- setDeleted(js.getBoolean(GTaskStringUtils.GTASK_JSON_DELETED)); // 如果 JSON 对象中包含 deleted 字段,则设置当前对象的 deleted
- }
-
- // completed
- if (js.has(GTaskStringUtils.GTASK_JSON_COMPLETED)) {
- setCompleted(js.getBoolean(GTaskStringUtils.GTASK_JSON_COMPLETED)); // 如果 JSON 对象中包含 completed 字段,则设置当前对象的 completed
- }
- } catch (JSONException e) {
- Log.e(TAG, e.toString()); // 打印错误日志
- e.printStackTrace(); // 输出异常信息
- throw new ActionFailureException("fail to get task content from jsonobject"); // 抛出从 JSON 对象获取任务内容失败的异常
- }
- }
- }
-
- /**
- * 从本地 JSON 对象设置内容。
- *
- * @param js 本地 JSON 对象
- */
- public void setContentByLocalJSON(JSONObject js) {
- if (js == null || !js.has(GTaskStringUtils.META_HEAD_NOTE)
- || !js.has(GTaskStringUtils.META_HEAD_DATA)) {
- Log.w(TAG, "setContentByLocalJSON: nothing is avaiable"); // 如果本地 JSON 对象为空,或者缺少必要的元数据,记录警告日志并返回
- }
-
- try {
- JSONObject note = js.getJSONObject(GTaskStringUtils.META_HEAD_NOTE); // 获取元数据中的笔记信息
- JSONArray dataArray = js.getJSONArray(GTaskStringUtils.META_HEAD_DATA); // 获取元数据中的数据数组
-
- if (note.getInt(NoteColumns.TYPE) != Notes.TYPE_NOTE) {
- Log.e(TAG, "invalid type"); // 如果笔记类型不是普通笔记,记录错误日志并返回
- return;
- }
-
- for (int i = 0; i < dataArray.length(); i++) {
- JSONObject data = dataArray.getJSONObject(i); // 获取数组中的每个数据对象
- if (TextUtils.equals(data.getString(DataColumns.MIME_TYPE), DataConstants.NOTE)) {
- setName(data.getString(DataColumns.CONTENT)); // 如果数据的 MIME 类型是笔记,设置当前对象的名称为数据的内容并结束循环
- break;
- }
- }
-
- } catch (JSONException e) {
- Log.e(TAG, e.toString()); // 记录异常信息
- e.printStackTrace(); // 输出异常信息
- }
- }
- /**
- * 从内容生成本地 JSON 对象。
- *
- * @return 本地 JSON 对象
- */
- public JSONObject getLocalJSONFromContent() {
- String name = getName(); // 获取当前对象的名称
-
- try {
- if (mMetaInfo == null) {
- // 从网络创建的新任务
- if (name == null) {
- Log.w(TAG, "the note seems to be an empty one"); // 如果名称为空,记录警告日志并返回 null
- return null;
- }
-
- JSONObject js = new JSONObject(); // 创建新的 JSON 对象
- JSONObject note = new JSONObject(); // 创建笔记的 JSON 对象
- JSONArray dataArray = new JSONArray(); // 创建数据的 JSON 数组
- JSONObject data = new JSONObject(); // 创建数据的 JSON 对象
- data.put(DataColumns.CONTENT, name); // 设置数据的内容为名称
- dataArray.put(data); // 将数据添加到数据数组中
- js.put(GTaskStringUtils.META_HEAD_DATA, dataArray); // 将数据数组添加到 JSON 对象中的元数据中
- note.put(NoteColumns.TYPE, Notes.TYPE_NOTE); // 设置笔记类型为普通笔记
- js.put(GTaskStringUtils.META_HEAD_NOTE, note); // 将笔记添加到 JSON 对象中的元数据中
- return js; // 返回 JSON 对象
-
- } else {
- // 同步的任务
- JSONObject note = mMetaInfo.getJSONObject(GTaskStringUtils.META_HEAD_NOTE); // 获取元数据中的笔记信息
- JSONArray dataArray = mMetaInfo.getJSONArray(GTaskStringUtils.META_HEAD_DATA); // 获取元数据中的数据数组
-
- for (int i = 0; i < dataArray.length(); i++) {
- JSONObject data = dataArray.getJSONObject(i); // 获取数组中的每个数据对象
- if (TextUtils.equals(data.getString(DataColumns.MIME_TYPE), DataConstants.NOTE)) {
- data.put(DataColumns.CONTENT, getName()); // 如果数据的 MIME 类型是笔记,将内容设置为当前对象的名称并结束循环
- break;
- }
- }
-
- note.put(NoteColumns.TYPE, Notes.TYPE_NOTE); // 设置笔记类型为普通笔记
- return mMetaInfo; // 返回元数据 JSON 对象
-
- }
- } catch (JSONException e) {
- Log.e(TAG, e.toString()); // 记录异常信息
- e.printStackTrace(); // 输出异常信息
- return null; // 返回 null
- }
- }
-
- /**
- * 设置元数据信息。
- *
- * @param metaData 元数据对象
- */
- public void setMetaInfo(MetaData metaData) {
- if (metaData != null && metaData.getNotes() != null) { // 如果元数据不为空并且包含笔记信息
- try {
- mMetaInfo = new JSONObject(metaData.getNotes()); // 将笔记信息转换为 JSON 对象并赋给成员变量 mMetaInfo
- } catch (JSONException e) {
- Log.w(TAG, e.toString()); // 记录警告日志
- mMetaInfo = null; // 转换失败时将 mMetaInfo 设为 null
- }
- }
- }
-
- /**
- * 根据游标信息获取同步操作动作。
- *
- * @param c 数据库游标
- * @return 同步操作动作的整型值
- */
- public int getSyncAction(Cursor c) {
- try {
- JSONObject noteInfo = null;
- if (mMetaInfo != null && mMetaInfo.has(GTaskStringUtils.META_HEAD_NOTE)) { // 检查元数据中是否包含笔记信息
- noteInfo = mMetaInfo.getJSONObject(GTaskStringUtils.META_HEAD_NOTE); // 获取笔记信息的 JSON 对象
- }
-
- if (noteInfo == null) { // 如果笔记信息为 null,表示笔记元数据被删除
- Log.w(TAG, "it seems that note meta has been deleted"); // 记录警告日志
- return SYNC_ACTION_UPDATE_REMOTE; // 返回更新远程的操作动作
- }
-
- if (!noteInfo.has(NoteColumns.ID)) { // 如果笔记信息中不包含 ID
- Log.w(TAG, "remote note id seems to be deleted"); // 记录警告日志
- return SYNC_ACTION_UPDATE_LOCAL; // 返回更新本地的操作动作
- }
-
- // 验证笔记的 ID
- if (c.getLong(SqlNote.ID_COLUMN) != noteInfo.getLong(NoteColumns.ID)) { // 如果数据库游标中的 ID 与笔记信息中的 ID 不匹配
- Log.w(TAG, "note id doesn't match"); // 记录警告日志
- return SYNC_ACTION_UPDATE_LOCAL; // 返回更新本地的操作动作
- }
-
- if (c.getInt(SqlNote.LOCAL_MODIFIED_COLUMN) == 0) { // 如果本地未有更新
- if (c.getLong(SqlNote.SYNC_ID_COLUMN) == getLastModified()) { // 如果数据库游标中的最后修改时间与当前对象的最后修改时间相同
- return SYNC_ACTION_NONE; // 返回无操作的操作动作
- } else {
- return SYNC_ACTION_UPDATE_LOCAL; // 返回更新本地的操作动作
- }
- } else {
- // 验证 GTask ID
- if (!c.getString(SqlNote.GTASK_ID_COLUMN).equals(getGid())) { // 如果数据库游标中的 GTask ID 与当前对象的 GTask ID 不匹配
- Log.e(TAG, "gtask id doesn't match"); // 记录错误日志
- return SYNC_ACTION_ERROR; // 返回错误的操作动作
- }
- if (c.getLong(SqlNote.SYNC_ID_COLUMN) == getLastModified()) { // 如果数据库游标中的最后修改时间与当前对象的最后修改时间相同
- return SYNC_ACTION_UPDATE_REMOTE; // 返回更新远程的操作动作
- } else {
- return SYNC_ACTION_UPDATE_CONFLICT; // 返回更新冲突的操作动作
- }
- }
- } catch (Exception e) {
- Log.e(TAG, e.toString()); // 记录异常日志
- e.printStackTrace(); // 打印异常堆栈信息
- }
-
- return SYNC_ACTION_ERROR; // 返回错误的操作动作
- }
-
- /**
- * 检查任务是否值得保存。
- *
- * @return 如果任务值得保存返回 true,否则返回 false
- */
- public boolean isWorthSaving() {
- return mMetaInfo != null || (getName() != null && getName().trim().length() > 0)
- || (getNotes() != null && getNotes().trim().length() > 0); // 判断任务是否值得保存的条件
- }
-
- /**
- * 设置任务完成状态。
- *
- * @param completed 完成状态
- */
- public void setCompleted(boolean completed) {
- this.mCompleted = completed;
- }
-
- /**
- * 设置任务的笔记信息。
- *
- * @param notes 笔记信息
- */
- public void setNotes(String notes) {
- this.mNotes = notes;
- }
-
- /**
- * 设置任务的前一个兄弟节点。
- *
- * @param priorSibling 前一个兄弟节点
- */
- public void setPriorSibling(Task priorSibling) {
- this.mPriorSibling = priorSibling;
- }
-
- /**
- * 设置任务的父任务列表。
- *
- * @param parent 父任务列表
- */
- public void setParent(TaskList parent) {
- this.mParent = parent;
- }
-
- /**
- * 获取任务完成状态。
- *
- * @return 任务完成状态
- */
- public boolean getCompleted() {
- return this.mCompleted;
- }
-
- /**
- * 获取任务的笔记信息。
- *
- * @return 任务的笔记信息
- */
- public String getNotes() {
- return this.mNotes;
- }
-
- /**
- * 获取任务的前一个兄弟节点。
- *
- * @return 任务的前一个兄弟节点
- */
- public Task getPriorSibling() {
- return this.mPriorSibling;
- }
-
- /**
- * 获取任务的父任务列表。
- *
- * @return 任务的父任务列表
- */
- public TaskList getParent() {
- return this.mParent;
- }
-
-}
diff --git a/src/src/app/src/main/java/net/micode/notes/gtask/data/TaskList.java b/src/src/app/src/main/java/net/micode/notes/gtask/data/TaskList.java
deleted file mode 100644
index b8f7df1..0000000
--- a/src/src/app/src/main/java/net/micode/notes/gtask/data/TaskList.java
+++ /dev/null
@@ -1,447 +0,0 @@
-/*
- * 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.gtask.data;
-
-import android.database.Cursor;
-import android.util.Log;
-
-import net.micode.notes.data.Notes;
-import net.micode.notes.data.Notes.NoteColumns;
-import net.micode.notes.gtask.exception.ActionFailureException;
-import net.micode.notes.tool.GTaskStringUtils;
-
-import org.json.JSONException;
-import org.json.JSONObject;
-
-import java.util.ArrayList;
-
-
-/**
- * 任务列表类,继承自节点类
- */
-public class TaskList extends Node {
- private static final String TAG = TaskList.class.getSimpleName();
-
- private int mIndex; // 任务列表的索引值
-
- private ArrayList mChildren; // 子任务列表
-
- /**
- * 构造函数,初始化任务列表和索引值
- */
- public TaskList() {
- super();
- mChildren = new ArrayList();
- mIndex = 1;
- }
-
- /**
- * 获取创建任务列表的操作
- *
- * @param actionId 操作的 ID
- * @return JSON 对象,包含创建任务列表的操作信息
- * @throws ActionFailureException 当生成任务列表创建 JSON 对象失败时抛出异常
- */
- public JSONObject getCreateAction(int actionId) throws ActionFailureException {
- JSONObject js = new JSONObject();
-
- try {
- // action_type
- js.put(GTaskStringUtils.GTASK_JSON_ACTION_TYPE,
- GTaskStringUtils.GTASK_JSON_ACTION_TYPE_CREATE);
-
- // action_id
- js.put(GTaskStringUtils.GTASK_JSON_ACTION_ID, actionId);
-
- // index
- js.put(GTaskStringUtils.GTASK_JSON_INDEX, mIndex);
-
- // entity_delta
- JSONObject entity = new JSONObject();
- entity.put(GTaskStringUtils.GTASK_JSON_NAME, getName());
- entity.put(GTaskStringUtils.GTASK_JSON_CREATOR_ID, "null");
- entity.put(GTaskStringUtils.GTASK_JSON_ENTITY_TYPE,
- GTaskStringUtils.GTASK_JSON_TYPE_GROUP);
- js.put(GTaskStringUtils.GTASK_JSON_ENTITY_DELTA, entity);
-
- } catch (JSONException e) {
- Log.e(TAG, e.toString());
- e.printStackTrace();
- throw new ActionFailureException("fail to generate tasklist-create jsonobject");
- }
-
- return js;
- }
- /**
- * 获取更新任务列表的操作
- *
- * @param actionId 操作的 ID
- * @return JSON 对象,包含更新任务列表的操作信息
- * @throws ActionFailureException 当生成任务列表更新 JSON 对象失败时抛出异常
- */
- public JSONObject getUpdateAction(int actionId) throws ActionFailureException {
- JSONObject js = new JSONObject();
-
- try {
- // action_type
- js.put(GTaskStringUtils.GTASK_JSON_ACTION_TYPE,
- GTaskStringUtils.GTASK_JSON_ACTION_TYPE_UPDATE);
-
- // action_id
- js.put(GTaskStringUtils.GTASK_JSON_ACTION_ID, actionId);
-
- // id
- js.put(GTaskStringUtils.GTASK_JSON_ID, getGid());
-
- // entity_delta
- JSONObject entity = new JSONObject();
- entity.put(GTaskStringUtils.GTASK_JSON_NAME, getName());
- entity.put(GTaskStringUtils.GTASK_JSON_DELETED, getDeleted());
- js.put(GTaskStringUtils.GTASK_JSON_ENTITY_DELTA, entity);
-
- } catch (JSONException e) {
- Log.e(TAG, e.toString());
- e.printStackTrace();
- throw new ActionFailureException("fail to generate tasklist-update jsonobject");
- }
-
- return js;
- }
-
- /**
- * 通过远程JSON设置任务列表的内容
- *
- * @param js 远程传入的JSON对象
- */
- public void setContentByRemoteJSON(JSONObject js) {
- if (js != null) {
- try {
- // 从JSON对象中获取任务列表的ID并设置
- if (js.has(GTaskStringUtils.GTASK_JSON_ID)) {
- setGid(js.getString(GTaskStringUtils.GTASK_JSON_ID));
- }
-
- // 从JSON对象中获取任务列表的最后修改时间并设置
- if (js.has(GTaskStringUtils.GTASK_JSON_LAST_MODIFIED)) {
- setLastModified(js.getLong(GTaskStringUtils.GTASK_JSON_LAST_MODIFIED));
- }
-
- // 从JSON对象中获取任务列表的名称并设置
- if (js.has(GTaskStringUtils.GTASK_JSON_NAME)) {
- setName(js.getString(GTaskStringUtils.GTASK_JSON_NAME));
- }
-
- } catch (JSONException e) {
- Log.e(TAG, e.toString());
- e.printStackTrace();
- throw new ActionFailureException("fail to get tasklist content from jsonobject");
- }
- }
- }
-
- /**
- * 通过本地JSON设置任务列表的内容
- *
- * @param js 本地传入的JSON对象
- */
- public void setContentByLocalJSON(JSONObject js) {
- if (js == null || !js.has(GTaskStringUtils.META_HEAD_NOTE)) {
- Log.w(TAG, "setContentByLocalJSON: nothing is available");
- }
-
- try {
- JSONObject folder = js.getJSONObject(GTaskStringUtils.META_HEAD_NOTE);
-
- if (folder.getInt(NoteColumns.TYPE) == Notes.TYPE_FOLDER) {
- // 如果是文件夹类型的笔记,获取名称并设置为任务列表的名称
- String name = folder.getString(NoteColumns.SNIPPET);
- setName(GTaskStringUtils.MIUI_FOLDER_PREFFIX + name);
- } else if (folder.getInt(NoteColumns.TYPE) == Notes.TYPE_SYSTEM) {
- // 如果是系统类型的笔记
- if (folder.getLong(NoteColumns.ID) == Notes.ID_ROOT_FOLDER)
- setName(GTaskStringUtils.MIUI_FOLDER_PREFFIX + GTaskStringUtils.FOLDER_DEFAULT);
- else if (folder.getLong(NoteColumns.ID) == Notes.ID_CALL_RECORD_FOLDER)
- setName(GTaskStringUtils.MIUI_FOLDER_PREFFIX + GTaskStringUtils.FOLDER_CALL_NOTE);
- else
- Log.e(TAG, "invalid system folder");
- } else {
- Log.e(TAG, "error type");
- }
- } catch (JSONException e) {
- Log.e(TAG, e.toString());
- e.printStackTrace();
- }
- }
-
- /**
- * 从任务列表内容获取本地JSON对象
- *
- * @return 本地JSON对象
- */
- public JSONObject getLocalJSONFromContent() {
- try {
- JSONObject js = new JSONObject();
- JSONObject folder = new JSONObject();
-
- String folderName = getName();
- if (getName().startsWith(GTaskStringUtils.MIUI_FOLDER_PREFFIX))
- folderName = folderName.substring(GTaskStringUtils.MIUI_FOLDER_PREFFIX.length(), folderName.length());
-
- // 设置文件夹名称和类型到JSON对象中
- folder.put(NoteColumns.SNIPPET, folderName);
- if (folderName.equals(GTaskStringUtils.FOLDER_DEFAULT)
- || folderName.equals(GTaskStringUtils.FOLDER_CALL_NOTE))
- folder.put(NoteColumns.TYPE, Notes.TYPE_SYSTEM);
- else
- folder.put(NoteColumns.TYPE, Notes.TYPE_FOLDER);
-
- js.put(GTaskStringUtils.META_HEAD_NOTE, folder);
-
- return js;
- } catch (JSONException e) {
- Log.e(TAG, e.toString());
- e.printStackTrace();
- return null;
- }
- }
-
- /**
- * 获取同步操作类型
- *
- * @param c 游标对象,用于获取数据库中的字段值
- * @return 同步操作类型
- */
- public int getSyncAction(Cursor c) {
- try {
- if (c.getInt(SqlNote.LOCAL_MODIFIED_COLUMN) == 0) {
- // 没有本地更新
- if (c.getLong(SqlNote.SYNC_ID_COLUMN) == getLastModified()) {
- // 两边都没有更新
- return SYNC_ACTION_NONE;
- } else {
- // 应用远程更新到本地
- return SYNC_ACTION_UPDATE_LOCAL;
- }
- } else {
- // 验证 GTask ID 是否匹配
- if (!c.getString(SqlNote.GTASK_ID_COLUMN).equals(getGid())) {
- Log.e(TAG, "gtask id doesn't match");
- return SYNC_ACTION_ERROR;
- }
- if (c.getLong(SqlNote.SYNC_ID_COLUMN) == getLastModified()) {
- // 只有本地修改
- return SYNC_ACTION_UPDATE_REMOTE;
- } else {
- // 对于文件夹冲突,只应用本地修改
- return SYNC_ACTION_UPDATE_REMOTE;
- }
- }
- } catch (Exception e) {
- Log.e(TAG, e.toString());
- e.printStackTrace();
- }
-
- return SYNC_ACTION_ERROR;
- }
-
- public int getChildTaskCount() {
- return mChildren.size();
- }
-
- /**
- * 添加子任务
- *
- * @param task 要添加的子任务
- * @return 添加成功返回 true,否则返回 false
- */
- public boolean addChildTask(Task task) {
- boolean ret = false;
- if (task != null && !mChildren.contains(task)) {
- ret = mChildren.add(task);
- if (ret) {
- // 需要设置前一个兄弟和父任务
- task.setPriorSibling(mChildren.isEmpty() ? null : mChildren.get(mChildren.size() - 1));
- task.setParent(this);
- }
- }
- return ret;
- }
- /**
- * 添加指定位置的子任务
- *
- * @param task 要添加的子任务
- * @param index 要添加的位置
- * @return 添加成功返回 true,否则返回 false
- */
- public boolean addChildTask(Task task, int index) {
- if (index < 0 || index > mChildren.size()) {
- Log.e(TAG, "add child task: invalid index");
- return false;
- }
-
- int pos = mChildren.indexOf(task);
- if (task != null && pos == -1) {
- mChildren.add(index, task);
-
- // 更新任务列表
- Task preTask = null;
- Task afterTask = null;
- if (index != 0)
- preTask = mChildren.get(index - 1);
- if (index != mChildren.size() - 1)
- afterTask = mChildren.get(index + 1);
-
- task.setPriorSibling(preTask);
- if (afterTask != null)
- afterTask.setPriorSibling(task);
- }
-
- return true;
- }
-
- /**
- * 移除子任务
- *
- * @param task 要移除的子任务
- * @return 移除成功返回 true,否则返回 false
- */
- public boolean removeChildTask(Task task) {
- boolean ret = false;
- int index = mChildren.indexOf(task);
- if (index != -1) {
- ret = mChildren.remove(task);
-
- if (ret) {
- // 重置前一个兄弟和父任务
- task.setPriorSibling(null);
- task.setParent(null);
-
- // 更新任务列表
- if (index != mChildren.size()) {
- mChildren.get(index).setPriorSibling(index == 0 ? null : mChildren.get(index - 1));
- }
- }
- }
- return ret;
- }
-
- /**
- * 移动子任务到指定位置
- *
- * @param task 要移动的子任务
- * @param index 目标位置
- * @return 移动成功返回 true,否则返回 false
- */
- public boolean moveChildTask(Task task, int index) {
-
- if (index < 0 || index >= mChildren.size()) {
- Log.e(TAG, "move child task: invalid index");
- return false;
- }
-
- int pos = mChildren.indexOf(task);
- if (pos == -1) {
- Log.e(TAG, "move child task: the task should be in the list");
- return false;
- }
-
- if (pos == index)
- return true;
- return (removeChildTask(task) && addChildTask(task, index));
- }
-
- /**
- * 根据 gid 查找子任务
- *
- * @param gid 子任务的 gid
- * @return 找到的子任务,如果不存在则返回 null
- */
- public Task findChildTaskByGid(String gid) {
- for (int i = 0; i < mChildren.size(); i++) {
- Task t = mChildren.get(i);
- if (t.getGid().equals(gid)) {
- return t;
- }
- }
- return null;
- }
-
- /**
- * 获取子任务在列表中的索引
- *
- * @param task 子任务
- * @return 子任务在列表中的索引,如果不存在则返回 -1
- */
- public int getChildTaskIndex(Task task) {
- return mChildren.indexOf(task);
- }
-
- /**
- * 根据索引获取子任务
- *
- * @param index 索引
- * @return 索引对应的子任务,如果索引无效则返回 null
- */
- public Task getChildTaskByIndex(int index) {
- if (index < 0 || index >= mChildren.size()) {
- Log.e(TAG, "getTaskByIndex: invalid index");
- return null;
- }
- return mChildren.get(index);
- }
-
- /**
- * 根据 gid 获取子任务
- *
- * @param gid 子任务的 gid
- * @return 找到的子任务,如果不存在则返回 null
- */
- public Task getChildTaskByGid(String gid) {
- for (Task task : mChildren) {
- if (task.getGid().equals(gid))
- return task;
- }
- return null;
- }
-
- /**
- * 获取子任务列表
- *
- * @return 子任务列表
- */
- public ArrayList getChildTaskList() {
- return this.mChildren;
- }
-
- /**
- * 设置索引
- *
- * @param index 索引
- */
- public void setIndex(int index) {
- this.mIndex = index;
- }
-
- /**
- * 获取索引
- *
- * @return 索引
- */
- public int getIndex() {
- return this.mIndex;
- }
-}
diff --git a/src/src/app/src/main/java/net/micode/notes/gtask/exception/ActionFailureException.java b/src/src/app/src/main/java/net/micode/notes/gtask/exception/ActionFailureException.java
deleted file mode 100644
index c6e0637..0000000
--- a/src/src/app/src/main/java/net/micode/notes/gtask/exception/ActionFailureException.java
+++ /dev/null
@@ -1,53 +0,0 @@
-/*
- * 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.gtask.exception;
-
-/**
- * 表示操作失败的异常类
- */
-public class ActionFailureException extends RuntimeException {
- /**
- * 用于版本控制的序列化 ID
- */
- private static final long serialVersionUID = 4425249765923293627L;
-
- /**
- * 构造一个新的 ActionFailureException,不带详细信息
- */
- public ActionFailureException() {
- super();
- }
-
- /**
- * 构造一个新的 ActionFailureException,带详细信息
- *
- * @param paramString 异常详细信息
- */
- public ActionFailureException(String paramString) {
- super(paramString);
- }
-
- /**
- * 构造一个新的 ActionFailureException,带详细信息和原始异常
- *
- * @param paramString 异常详细信息
- * @param paramThrowable 原始异常
- */
- public ActionFailureException(String paramString, Throwable paramThrowable) {
- super(paramString, paramThrowable);
- }
-}
\ No newline at end of file
diff --git a/src/src/app/src/main/java/net/micode/notes/gtask/exception/NetworkFailureException.java b/src/src/app/src/main/java/net/micode/notes/gtask/exception/NetworkFailureException.java
deleted file mode 100644
index 4fa2c73..0000000
--- a/src/src/app/src/main/java/net/micode/notes/gtask/exception/NetworkFailureException.java
+++ /dev/null
@@ -1,53 +0,0 @@
-/*
- * 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.gtask.exception;
-
-/**
- * 表示网络操作失败的异常类
- */
-public class NetworkFailureException extends Exception {
- /**
- * 用于版本控制的序列化 ID
- */
- private static final long serialVersionUID = 2107610287180234136L;
-
- /**
- * 构造一个新的 NetworkFailureException,不带详细信息
- */
- public NetworkFailureException() {
- super();
- }
-
- /**
- * 构造一个新的 NetworkFailureException,带详细信息
- *
- * @param paramString 异常详细信息
- */
- public NetworkFailureException(String paramString) {
- super(paramString);
- }
-
- /**
- * 构造一个新的 NetworkFailureException,带详细信息和原始异常
- *
- * @param paramString 异常详细信息
- * @param paramThrowable 原始异常
- */
- public NetworkFailureException(String paramString, Throwable paramThrowable) {
- super(paramString, paramThrowable);
- }
-}
diff --git a/src/src/app/src/main/java/net/micode/notes/gtask/remote/GTaskASyncTask.java b/src/src/app/src/main/java/net/micode/notes/gtask/remote/GTaskASyncTask.java
deleted file mode 100644
index da4a67b..0000000
--- a/src/src/app/src/main/java/net/micode/notes/gtask/remote/GTaskASyncTask.java
+++ /dev/null
@@ -1,169 +0,0 @@
-
-/*
- * 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.gtask.remote;
-
-import android.app.Notification;
-import android.app.NotificationManager;
-import android.app.PendingIntent;
-import android.content.Context;
-import android.content.Intent;
-import android.os.AsyncTask;
-
-import net.micode.notes.R;
-import net.micode.notes.ui.NotesListActivity;
-import net.micode.notes.ui.NotesPreferenceActivity;
-
-/**
- * 用于执行GTask异步任务的类,继承自AsyncTask。
- */
-public class GTaskASyncTask extends AsyncTask {
-
- private static int GTASK_SYNC_NOTIFICATION_ID = 5234235; // GTask同步通知ID
-
- /**
- * 完成监听器接口
- */
- public interface OnCompleteListener {
- void onComplete();
- }
-
- private Context mContext;// 上下文对象
-
- private NotificationManager mNotifiManager;// 通知管理器
-
- private GTaskManager mTaskManager;// GTask管理器
-
- private OnCompleteListener mOnCompleteListener;// 完成监听器对象
-
- /**
- * 构造一个新的GTaskASyncTask对象
- *
- * @param context 上下文对象
- * @param listener 完成监听器
- */
- public GTaskASyncTask(Context context, OnCompleteListener listener) {
- mContext = context;
- mOnCompleteListener = listener;
- mNotifiManager = (NotificationManager) mContext.getSystemService(Context.NOTIFICATION_SERVICE);
- mTaskManager = GTaskManager.getInstance();
- }
-
- public void cancelSync() {
- mTaskManager.cancelSync();
- }
-
- public void publishProgess(String message) {
- publishProgress(new String[] {
- message
- });
- }
-
- /**
- * 显示通知
- *
- * @param tickerId 通知ID
- * @param content 通知内容
- */
- private void showNotification(int tickerId, String content) {
- // 创建一个通知对象
- Notification notification = new Notification(R.drawable.notification, mContext.getString(tickerId),
- System.currentTimeMillis());
- // 设置通知的默认行为为闪光灯提醒
- notification.defaults = Notification.DEFAULT_LIGHTS;
- // 设置通知的标志为自动取消
- notification.flags = Notification.FLAG_AUTO_CANCEL;
- PendingIntent pendingIntent;
- // 如果通知ID不是成功通知的ID
- if (tickerId != R.string.ticker_success) {
- // 创建一个启动设置偏好活动的PendingIntent
- pendingIntent = PendingIntent.getActivity(mContext, 0,
- new Intent(mContext, NotesPreferenceActivity.class), 0);
- } else {
- // 创建一个启动笔记列表活动的PendingIntent
- pendingIntent = PendingIntent.getActivity(mContext, 0,
- new Intent(mContext, NotesListActivity.class), 0);
- }
- // 设置通知的最新事件信息
- notification.setLatestEventInfo(mContext, mContext.getString(R.string.app_name), content, pendingIntent);
- // 发送通知
- mNotifiManager.notify(GTASK_SYNC_NOTIFICATION_ID, notification);
- }
-
- /**
- * 执行后台任务
- *
- * @param unused 未使用的参数
- * @return 任务执行结果
- */
- @Override
- protected Integer doInBackground(Void... unused) {
- // 发布登录同步进度消息
- publishProgess(mContext.getString(R.string.sync_progress_login,
- NotesPreferenceActivity.getSyncAccountName(mContext)));
- // 执行同步任务并返回结果
- return mTaskManager.sync(mContext, this);
- }
-
- /**
- * 更新进度时的处理
- *
- * @param progress 进度消息
- */
- @Override
- protected void onProgressUpdate(String... progress) {
- // 显示同步中通知
- showNotification(R.string.ticker_syncing, progress[0]);
- // 如果上下文是GTaskSyncService的实例,发送广播
- if (mContext instanceof GTaskSyncService) {
- ((GTaskSyncService) mContext).sendBroadcast(progress[0]);
- }
- }
-
- /**
- * 后台任务执行完成时的处理
- *
- * @param result 执行结果
- */
- @Override
- protected void onPostExecute(Integer result) {
- if (result == GTaskManager.STATE_SUCCESS) {
- // 显示成功通知
- showNotification(R.string.ticker_success, mContext.getString(
- R.string.success_sync_account, mTaskManager.getSyncAccount()));
- // 设置最后同步时间
- NotesPreferenceActivity.setLastSyncTime(mContext, System.currentTimeMillis());
- } else if (result == GTaskManager.STATE_NETWORK_ERROR) {
- // 显示网络错误通知
- showNotification(R.string.ticker_fail, mContext.getString(R.string.error_sync_network));
- } else if (result == GTaskManager.STATE_INTERNAL_ERROR) {
- // 显示内部错误通知
- showNotification(R.string.ticker_fail, mContext.getString(R.string.error_sync_internal));
- } else if (result == GTaskManager.STATE_SYNC_CANCELLED) {
- // 显示同步取消通知
- showNotification(R.string.ticker_cancel, mContext.getString(R.string.error_sync_cancelled));
- }
- // 如果存在完成监听器,则在新线程中执行完成操作
- if (mOnCompleteListener != null) {
- new Thread(new Runnable() {
- public void run() {
- mOnCompleteListener.onComplete();
- }
- }).start();
- }
- }
-}
diff --git a/src/src/app/src/main/java/net/micode/notes/gtask/remote/GTaskClient.java b/src/src/app/src/main/java/net/micode/notes/gtask/remote/GTaskClient.java
deleted file mode 100644
index 266bf46..0000000
--- a/src/src/app/src/main/java/net/micode/notes/gtask/remote/GTaskClient.java
+++ /dev/null
@@ -1,724 +0,0 @@
-/*
- * 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.gtask.remote;
-
-import android.accounts.Account;
-import android.accounts.AccountManager;
-import android.accounts.AccountManagerFuture;
-import android.app.Activity;
-import android.os.Bundle;
-import android.text.TextUtils;
-import android.util.Log;
-
-import net.micode.notes.gtask.data.Node;
-import net.micode.notes.gtask.data.Task;
-import net.micode.notes.gtask.data.TaskList;
-import net.micode.notes.gtask.exception.ActionFailureException;
-import net.micode.notes.gtask.exception.NetworkFailureException;
-import net.micode.notes.tool.GTaskStringUtils;
-import net.micode.notes.ui.NotesPreferenceActivity;
-
-import org.apache.http.HttpEntity;
-import org.apache.http.HttpResponse;
-import org.apache.http.client.ClientProtocolException;
-import org.apache.http.client.entity.UrlEncodedFormEntity;
-import org.apache.http.client.methods.HttpGet;
-import org.apache.http.client.methods.HttpPost;
-import org.apache.http.cookie.Cookie;
-import org.apache.http.impl.client.BasicCookieStore;
-import org.apache.http.impl.client.DefaultHttpClient;
-import org.apache.http.message.BasicNameValuePair;
-import org.apache.http.params.BasicHttpParams;
-import org.apache.http.params.HttpConnectionParams;
-import org.apache.http.params.HttpParams;
-import org.apache.http.params.HttpProtocolParams;
-import org.json.JSONArray;
-import org.json.JSONException;
-import org.json.JSONObject;
-
-import java.io.BufferedReader;
-import java.io.IOException;
-import java.io.InputStream;
-import java.io.InputStreamReader;
-import java.util.LinkedList;
-import java.util.List;
-import java.util.zip.GZIPInputStream;
-import java.util.zip.Inflater;
-import java.util.zip.InflaterInputStream;
-
-
-/**
- * GTaskClient类,用于管理Google任务的客户端
- */
-public class GTaskClient {
- // 日志标签
- private static final String TAG = GTaskClient.class.getSimpleName();
-
- // Google任务的基础URL
- private static final String GTASK_URL = "https://mail.google.com/tasks/";
-
- // 获取Google任务的URL
- private static final String GTASK_GET_URL = "https://mail.google.com/tasks/ig";
-
- // 提交Google任务的URL
- private static final String GTASK_POST_URL = "https://mail.google.com/tasks/r/ig";
-
- // GTaskClient的单例实例
- private static GTaskClient mInstance = null;
-
- // 默认的HTTP客户端
- private DefaultHttpClient mHttpClient;
-
- // 获取任务的URL
- private String mGetUrl;
-
- // 提交任务的URL
- private String mPostUrl;
-
- // 客户端版本号
- private long mClientVersion;
-
- // 登录状态
- private boolean mLoggedin;
-
- // 上次登录时间
- private long mLastLoginTime;
-
- // 操作ID
- private int mActionId;
-
- // 账户信息
- private Account mAccount;
-
- // 待更新的任务数组
- private JSONArray mUpdateArray;
- /**
- * 私有构造函数,初始化GTaskClient的实例
- */
- private GTaskClient() {
- mHttpClient = null; // HTTP客户端
- mGetUrl = GTASK_GET_URL; // 获取任务的URL
- mPostUrl = GTASK_POST_URL; // 提交任务的URL
- mClientVersion = -1; // 客户端版本号
- mLoggedin = false; // 登录状态
- mLastLoginTime = 0; // 上次登录时间
- mActionId = 1; // 操作ID
- mAccount = null; // 账户信息
- mUpdateArray = null; // 待更新的任务数组
- }
-
- /**
- * 获取GTaskClient的单例实例
- *
- * @return GTaskClient的单例实例
- */
- public static synchronized GTaskClient getInstance() {
- if (mInstance == null) {
- mInstance = new GTaskClient();
- }
- return mInstance;
- }
-
- /**
- * 登录Google账户
- *
- * @param activity 当前Activity
- * @return 登录成功返回true,否则返回false
- */
- public boolean login(Activity activity) {
- // 假设cookie在5分钟后过期,需要重新登录
- final long interval = 1000 * 60 * 5;
- if (mLastLoginTime + interval < System.currentTimeMillis()) {
- mLoggedin = false;
- }
-
- // 如果账户切换,则需要重新登录
- if (mLoggedin && !TextUtils.equals(getSyncAccount().name, NotesPreferenceActivity.getSyncAccountName(activity))) {
- mLoggedin = false;
- }
-
- if (mLoggedin) {
- Log.d(TAG, "already logged in");
- return true;
- }
-
- mLastLoginTime = System.currentTimeMillis();
- String authToken = loginGoogleAccount(activity, false);
- if (authToken == null) {
- Log.e(TAG, "login google account failed");
- return false;
- }
-
- // 如果是自定义域名,则使用自定义域名登录
- if (!(mAccount.name.toLowerCase().endsWith("gmail.com") || mAccount.name.toLowerCase().endsWith("googlemail.com"))) {
- StringBuilder url = new StringBuilder(GTASK_URL).append("a/");
- int index = mAccount.name.indexOf('@') + 1;
- String suffix = mAccount.name.substring(index);
- url.append(suffix + "/");
- mGetUrl = url.toString() + "ig";
- mPostUrl = url.toString() + "r/ig";
-
- if (tryToLoginGtask(activity, authToken)) {
- mLoggedin = true;
- }
- }
-
- // 尝试使用Google官方的URL进行登录
- if (!mLoggedin) {
- mGetUrl = GTASK_GET_URL;
- mPostUrl = GTASK_POST_URL;
- if (!tryToLoginGtask(activity, authToken)) {
- return false;
- }
- }
-
- mLoggedin = true;
- return true;
- }
-
- /**
- * 登录Google账户
- *
- * @param activity 当前Activity
- * @param invalidateToken 是否使token无效
- * @return 返回登录成功后的authToken,如果失败返回null
- */
- private String loginGoogleAccount(Activity activity, boolean invalidateToken) {
- String authToken;
- AccountManager accountManager = AccountManager.get(activity);
- Account[] accounts = accountManager.getAccountsByType("com.google");
-
- if (accounts.length == 0) {
- Log.e(TAG, "there is no available google account");
- return null;
- }
-
- String accountName = NotesPreferenceActivity.getSyncAccountName(activity);
- Account account = null;
- for (Account a : accounts) {
- if (a.name.equals(accountName)) {
- account = a;
- break;
- }
- }
- if (account != null) {
- mAccount = account;
- } else {
- Log.e(TAG, "unable to get an account with the same name in the settings");
- return null;
- }
-
- // 获取token
- AccountManagerFuture accountManagerFuture = accountManager.getAuthToken(account, "goanna_mobile", null, activity, null, null);
- try {
- Bundle authTokenBundle = accountManagerFuture.getResult();
- authToken = authTokenBundle.getString(AccountManager.KEY_AUTHTOKEN);
- if (invalidateToken) {
- accountManager.invalidateAuthToken("com.google", authToken);
- // 使token无效后再次尝试登录
- loginGoogleAccount(activity, false);
- }
- } catch (Exception e) {
- Log.e(TAG, "get auth token failed");
- authToken = null;
- }
-
- return authToken;
- }
-
- /**
- * 尝试登录Gtask
- *
- * @param activity 当前Activity
- * @param authToken 要使用的authToken
- * @return 登录成功返回true,否则返回false
- */
- private boolean tryToLoginGtask(Activity activity, String authToken) {
- if (!loginGtask(authToken)) {
- // 可能authToken已过期,现在让我们使token失效并重新尝试登录
- authToken = loginGoogleAccount(activity, true);
- if (authToken == null) {
- Log.e(TAG, "login google account failed");
- return false;
- }
-
- if (!loginGtask(authToken)) {
- Log.e(TAG, "login gtask failed");
- return false;
- }
- }
- return true;
- }
-
- /**
- * 登录GTask
- *
- * @param authToken 要使用的authToken
- * @return 登录成功返回true,否则返回false
- */
- private boolean loginGtask(String authToken) {
- int timeoutConnection = 10000;
- int timeoutSocket = 15000;
-
- // 设置HTTP连接和等待超时参数
- HttpParams httpParameters = new BasicHttpParams();
- HttpConnectionParams.setConnectionTimeout(httpParameters, timeoutConnection);
- HttpConnectionParams.setSoTimeout(httpParameters, timeoutSocket);
-
- // 创建HttpClient并设置Cookie存储
- mHttpClient = new DefaultHttpClient(httpParameters);
- BasicCookieStore localBasicCookieStore = new BasicCookieStore();
- mHttpClient.setCookieStore(localBasicCookieStore);
- HttpProtocolParams.setUseExpectContinue(mHttpClient.getParams(), false);
-
- // 登录GTask
- try {
- String loginUrl = mGetUrl + "?auth=" + authToken;
- HttpGet httpGet = new HttpGet(loginUrl);
- HttpResponse response = null;
- response = mHttpClient.execute(httpGet);
-
- // 获取Cookie
- List cookies = mHttpClient.getCookieStore().getCookies();
- boolean hasAuthCookie = false;
- for (Cookie cookie : cookies) {
- if (cookie.getName().contains("GTL")) {
- hasAuthCookie = true;
- }
- }
- if (!hasAuthCookie) {
- Log.w(TAG, "it seems that there is no auth cookie");
- }
-
- // 获取客户端版本
- String resString = getResponseContent(response.getEntity());
- String jsBegin = "_setup(";
- String jsEnd = ")}";
- int begin = resString.indexOf(jsBegin);
- int end = resString.lastIndexOf(jsEnd);
- String jsString = null;
- if (begin != -1 && end != -1 && begin < end) {
- jsString = resString.substring(begin + jsBegin.length(), end);
- }
- JSONObject js = new JSONObject(jsString);
- mClientVersion = js.getLong("v");
- } catch (JSONException e) {
- Log.e(TAG, e.toString());
- e.printStackTrace();
- return false;
- } catch (Exception e) {
- // 捕获所有异常
- Log.e(TAG, "httpget gtask_url failed");
- return false;
- }
-
- return true;
- }
-
- private int getActionId() {
- return mActionId++;
- }
-
- private HttpPost createHttpPost() {
- HttpPost httpPost = new HttpPost(mPostUrl);
- httpPost.setHeader("Content-Type", "application/x-www-form-urlencoded;charset=utf-8");
- httpPost.setHeader("AT", "1");
- return httpPost;
- }
-
- /**
- * 获取HTTP响应内容
- *
- * @param entity 响应实体对象
- * @return 响应内容字符串
- * @throws IOException 当读取响应内容时出现IO异常
- */
- private String getResponseContent(HttpEntity entity) throws IOException {
- // 获取内容的编码方式
- String contentEncoding = null;
- if (entity.getContentEncoding() != null) {
- contentEncoding = entity.getContentEncoding().getValue();
- Log.d(TAG, "encoding: " + contentEncoding);
- }
-
- // 获取响应内容的输入流
- InputStream input = entity.getContent();
- // 根据编码方式解压缩输入流
- if (contentEncoding != null && contentEncoding.equalsIgnoreCase("gzip")) {
- input = new GZIPInputStream(entity.getContent());
- } else if (contentEncoding != null && contentEncoding.equalsIgnoreCase("deflate")) {
- Inflater inflater = new Inflater(true);
- input = new InflaterInputStream(entity.getContent(), inflater);
- }
-
- try {
- InputStreamReader isr = new InputStreamReader(input);
- BufferedReader br = new BufferedReader(isr);
- StringBuilder sb = new StringBuilder();
-
- // 逐行读取响应内容并拼接为字符串
- while (true) {
- String buff = br.readLine();
- if (buff == null) {
- return sb.toString();
- }
- sb = sb.append(buff);
- }
- } finally {
- // 关闭输入流
- input.close();
- }
- }
-
- /**
- * 发起POST请求并获取JSON格式的响应
- *
- * @param js 待发送的JSON对象
- * @return 服务器响应的JSON对象
- * @throws NetworkFailureException 当网络操作失败时抛出此异常
- */
- private JSONObject postRequest(JSONObject js) throws NetworkFailureException {
- // 检查是否已登录
- if (!mLoggedin) {
- Log.e(TAG, "please login first");
- throw new ActionFailureException("not logged in");
- }
-
- // 创建HTTP POST请求
- HttpPost httpPost = createHttpPost();
- try {
- // 将JSON对象添加到POST请求中的参数中
- LinkedList list = new LinkedList();
- list.add(new BasicNameValuePair("r", js.toString()));
- UrlEncodedFormEntity entity = new UrlEncodedFormEntity(list, "UTF-8");
- httpPost.setEntity(entity);
-
- // 执行POST请求
- HttpResponse response = mHttpClient.execute(httpPost);
- // 获取响应内容并转换为JSON对象
- String jsString = getResponseContent(response.getEntity());
- return new JSONObject(jsString);
-
- } catch (ClientProtocolException e) {
- // 客户端协议异常,通常是因为无效的HTTP协议
- Log.e(TAG, e.toString());
- e.printStackTrace();
- throw new NetworkFailureException("postRequest failed");
- } catch (IOException e) {
- // IO异常,包括网络连接问题等
- Log.e(TAG, e.toString());
- e.printStackTrace();
- throw new NetworkFailureException("postRequest failed");
- } catch (JSONException e) {
- // JSON解析异常
- Log.e(TAG, e.toString());
- e.printStackTrace();
- throw new ActionFailureException("unable to convert response content to jsonobject");
- } catch (Exception e) {
- // 其他异常
- Log.e(TAG, e.toString());
- e.printStackTrace();
- throw new ActionFailureException("error occurs when posting request");
- }
- }
-
- /**
- * 创建任务
- *
- * @param task 待创建的任务对象
- * @throws NetworkFailureException 当网络操作失败时抛出此异常
- */
- public void createTask(Task task) throws NetworkFailureException {
- // 提交更新
- commitUpdate();
- try {
- // 创建POST请求的JSON对象
- JSONObject jsPost = new JSONObject();
- JSONArray actionList = new JSONArray();
-
- // 添加任务的创建动作到action_list中
- actionList.put(task.getCreateAction(getActionId()));
- jsPost.put(GTaskStringUtils.GTASK_JSON_ACTION_LIST, actionList);
-
- // 添加客户端版本号
- jsPost.put(GTaskStringUtils.GTASK_JSON_CLIENT_VERSION, mClientVersion);
-
- // 发起POST请求
- JSONObject jsResponse = postRequest(jsPost);
-
- // 处理响应数据
- JSONObject jsResult = (JSONObject) jsResponse.getJSONArray(
- GTaskStringUtils.GTASK_JSON_RESULTS).get(0);
- task.setGid(jsResult.getString(GTaskStringUtils.GTASK_JSON_NEW_ID));
-
- } catch (JSONException e) {
- // JSON解析异常
- Log.e(TAG, e.toString());
- e.printStackTrace();
- throw new ActionFailureException("create task: handling jsonobject failed");
- }
- }
- /**
- * 创建任务列表
- *
- * @param tasklist 待创建的任务列表对象
- * @throws NetworkFailureException 当网络操作失败时抛出此异常
- */
- public void createTaskList(TaskList tasklist) throws NetworkFailureException {
- // 提交更新
- commitUpdate();
- try {
- // 创建POST请求的JSON对象
- JSONObject jsPost = new JSONObject();
- JSONArray actionList = new JSONArray();
-
- // 添加任务列表的创建动作到action_list中
- actionList.put(tasklist.getCreateAction(getActionId()));
- jsPost.put(GTaskStringUtils.GTASK_JSON_ACTION_LIST, actionList);
-
- // 添加客户端版本号
- jsPost.put(GTaskStringUtils.GTASK_JSON_CLIENT_VERSION, mClientVersion);
-
- // 发起POST请求
- JSONObject jsResponse = postRequest(jsPost);
-
- // 处理响应数据
- JSONObject jsResult = (JSONObject) jsResponse.getJSONArray(
- GTaskStringUtils.GTASK_JSON_RESULTS).get(0);
- tasklist.setGid(jsResult.getString(GTaskStringUtils.GTASK_JSON_NEW_ID));
-
- } catch (JSONException e) {
- // JSON解析异常
- Log.e(TAG, e.toString());
- e.printStackTrace();
- throw new ActionFailureException("create tasklist: handling jsonobject failed");
- }
- }
-
- /**
- * 提交更新
- * @throws NetworkFailureException 当网络操作失败时抛出此异常
- */
- public void commitUpdate() throws NetworkFailureException {
- if (mUpdateArray != null) {
- try {
- JSONObject jsPost = new JSONObject();
-
- // 添加更新操作数组到action_list中
- jsPost.put(GTaskStringUtils.GTASK_JSON_ACTION_LIST, mUpdateArray);
-
- // 添加客户端版本号
- jsPost.put(GTaskStringUtils.GTASK_JSON_CLIENT_VERSION, mClientVersion);
-
- // 发起POST请求
- postRequest(jsPost);
- mUpdateArray = null;
- } catch (JSONException e) {
- // JSON解析异常
- Log.e(TAG, e.toString());
- e.printStackTrace();
- throw new ActionFailureException("commit update: handling jsonobject failed");
- }
- }
- }
- /**
- * 添加更新节点
- * @param node 待添加的更新节点对象
- * @throws NetworkFailureException 当网络操作失败时抛出此异常
- */
- public void addUpdateNode(Node node) throws NetworkFailureException {
- if (node != null) {
- // 处理更新操作数组长度超过限制的情况
- // 最大限制为10个
- if (mUpdateArray != null && mUpdateArray.length() > 10) {
- commitUpdate();
- }
-
- if (mUpdateArray == null)
- mUpdateArray = new JSONArray();
-
- // 添加更新操作到更新操作数组中
- mUpdateArray.put(node.getUpdateAction(getActionId()));
- }
- }
-
- /**
- * 移动任务到指定的任务列表
- * @param task 待移动的任务对象
- * @param preParent 移动前的父任务列表
- * @param curParent 移动后的父任务列表
- * @throws NetworkFailureException 当网络操作失败时抛出此异常
- */
- public void moveTask(Task task, TaskList preParent, TaskList curParent)
- throws NetworkFailureException {
- // 提交已有的更新操作
- commitUpdate();
- try {
- JSONObject jsPost = new JSONObject();
- JSONArray actionList = new JSONArray();
- JSONObject action = new JSONObject();
-
- // 设置移动操作的参数
- action.put(GTaskStringUtils.GTASK_JSON_ACTION_TYPE,
- GTaskStringUtils.GTASK_JSON_ACTION_TYPE_MOVE);
- action.put(GTaskStringUtils.GTASK_JSON_ACTION_ID, getActionId());
- action.put(GTaskStringUtils.GTASK_JSON_ID, task.getGid());
-
- // 判断是否在同一个任务列表内移动,并且不是第一个任务
- // 只在这种情况下添加prior_sibing_id参数
- if (preParent == curParent && task.getPriorSibling() != null) {
- action.put(GTaskStringUtils.GTASK_JSON_PRIOR_SIBLING_ID, task.getPriorSibling());
- }
-
- action.put(GTaskStringUtils.GTASK_JSON_SOURCE_LIST, preParent.getGid());
- action.put(GTaskStringUtils.GTASK_JSON_DEST_PARENT, curParent.getGid());
-
- // 判断是否在不同的任务列表之间移动
- // 只在这种情况下添加dest_list参数
- if (preParent != curParent) {
- action.put(GTaskStringUtils.GTASK_JSON_DEST_LIST, curParent.getGid());
- }
- actionList.put(action);
- jsPost.put(GTaskStringUtils.GTASK_JSON_ACTION_LIST, actionList);
-
- // 添加客户端版本号
- jsPost.put(GTaskStringUtils.GTASK_JSON_CLIENT_VERSION, mClientVersion);
-
- // 发起POST请求
- postRequest(jsPost);
-
- } catch (JSONException e) {
- // JSON解析异常
- Log.e(TAG, e.toString());
- e.printStackTrace();
- throw new ActionFailureException("move task: handling jsonobject failed");
- }
- }
-
- /**
- * 删除节点
- * @param node 待删除的节点对象
- * @throws NetworkFailureException 当网络操作失败时抛出此异常
- */
- public void deleteNode(Node node) throws NetworkFailureException {
- commitUpdate(); // 提交已有的更新操作
- try {
- JSONObject jsPost = new JSONObject();
- JSONArray actionList = new JSONArray();
-
- // 设置节点删除状态并添加删除操作到操作列表中
- node.setDeleted(true);
- actionList.put(node.getUpdateAction(getActionId()));
- jsPost.put(GTaskStringUtils.GTASK_JSON_ACTION_LIST, actionList); // 设置操作列表
-
- // 设置客户端版本号
- jsPost.put(GTaskStringUtils.GTASK_JSON_CLIENT_VERSION, mClientVersion);
-
- // 发起POST请求
- postRequest(jsPost);
- mUpdateArray = null; // 清空更新操作数组
- } catch (JSONException e) {
- Log.e(TAG, e.toString());
- e.printStackTrace();
- throw new ActionFailureException("delete node: handing jsonobject failed"); // 处理JSON对象失败时抛出异常
- }
- }
-
- /**
- * 获取任务列表
- * @return 任务列表的JSONArray
- * @throws NetworkFailureException 当网络操作失败时抛出此异常
- */
- public JSONArray getTaskLists() throws NetworkFailureException {
- if (!mLoggedin) {
- Log.e(TAG, "please login first");
- throw new ActionFailureException("not logged in");
- }
-
- // 发起HttpGet请求获取任务列表
- try {
- HttpGet httpGet = new HttpGet(mGetUrl);
- HttpResponse response = mHttpClient.execute(httpGet);
-
- // 解析响应内容并获取任务列表
- String resString = getResponseContent(response.getEntity());
- String jsBegin = "_setup(";
- String jsEnd = ")}";
- int begin = resString.indexOf(jsBegin);
- int end = resString.lastIndexOf(jsEnd);
- String jsString = null;
- if (begin != -1 && end != -1 && begin < end) {
- jsString = resString.substring(begin + jsBegin.length(), end);
- }
- JSONObject js = new JSONObject(jsString);
- return js.getJSONObject("t").getJSONArray(GTaskStringUtils.GTASK_JSON_LISTS);
- } catch (ClientProtocolException e) {
- Log.e(TAG, e.toString());
- e.printStackTrace();
- throw new NetworkFailureException("gettasklists: httpget failed");
- } catch (IOException e) {
- Log.e(TAG, e.toString());
- e.printStackTrace();
- throw new NetworkFailureException("gettasklists: httpget failed");
- } catch (JSONException e) {
- Log.e(TAG, e.toString());
- e.printStackTrace();
- throw new ActionFailureException("get task lists: handing jasonobject failed"); // 处理JSON对象失败时抛出异常
- }
- }
-
- /**
- * 获取任务列表
- *
- * @param listGid 列表的唯一标识符
- * @return 任务列表的JSONArray
- * @throws NetworkFailureException 当网络操作失败时抛出此异常
- */
- public JSONArray getTaskList(String listGid) throws NetworkFailureException {
- commitUpdate(); // 提交已有的更新操作
- try {
- JSONObject jsPost = new JSONObject(); // 创建请求JSON对象
- JSONArray actionList = new JSONArray(); // 创建操作列表JSON数组
- JSONObject action = new JSONObject(); // 创建操作JSON对象
-
- // 设置操作类型和其他参数,并将操作对象添加到操作列表中
- action.put(GTaskStringUtils.GTASK_JSON_ACTION_TYPE, GTaskStringUtils.GTASK_JSON_ACTION_TYPE_GETALL);
- action.put(GTaskStringUtils.GTASK_JSON_ACTION_ID, getActionId());
- action.put(GTaskStringUtils.GTASK_JSON_LIST_ID, listGid);
- action.put(GTaskStringUtils.GTASK_JSON_GET_DELETED, false);
- actionList.put(action);
- jsPost.put(GTaskStringUtils.GTASK_JSON_ACTION_LIST, actionList); // 设置操作列表到请求JSON对象中
-
- jsPost.put(GTaskStringUtils.GTASK_JSON_CLIENT_VERSION, mClientVersion); // 设置客户端版本号
-
- JSONObject jsResponse = postRequest(jsPost); // 发起POST请求并获取响应
- return jsResponse.getJSONArray(GTaskStringUtils.GTASK_JSON_TASKS); // 从响应中获取任务列表JSONArray
- } catch (JSONException e) {
- Log.e(TAG, e.toString());
- e.printStackTrace();
- throw new ActionFailureException("get task list: handing jsonobject failed"); // 处理JSON对象失败时抛出异常
- }
- }
-
- public Account getSyncAccount() {
- return mAccount;
- }
-
- public void resetUpdateArray() {
- mUpdateArray = null;
- }
-}
diff --git a/src/src/app/src/main/java/net/micode/notes/gtask/remote/GTaskManager.java b/src/src/app/src/main/java/net/micode/notes/gtask/remote/GTaskManager.java
deleted file mode 100644
index 3be9cf9..0000000
--- a/src/src/app/src/main/java/net/micode/notes/gtask/remote/GTaskManager.java
+++ /dev/null
@@ -1,896 +0,0 @@
-/*
- * 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.gtask.remote;
-
-import android.app.Activity;
-import android.content.ContentResolver;
-import android.content.ContentUris;
-import android.content.ContentValues;
-import android.content.Context;
-import android.database.Cursor;
-import android.util.Log;
-
-import net.micode.notes.R;
-import net.micode.notes.data.Notes;
-import net.micode.notes.data.Notes.DataColumns;
-import net.micode.notes.data.Notes.NoteColumns;
-import net.micode.notes.gtask.data.MetaData;
-import net.micode.notes.gtask.data.Node;
-import net.micode.notes.gtask.data.SqlNote;
-import net.micode.notes.gtask.data.Task;
-import net.micode.notes.gtask.data.TaskList;
-import net.micode.notes.gtask.exception.ActionFailureException;
-import net.micode.notes.gtask.exception.NetworkFailureException;
-import net.micode.notes.tool.DataUtils;
-import net.micode.notes.tool.GTaskStringUtils;
-
-import org.json.JSONArray;
-import org.json.JSONException;
-import org.json.JSONObject;
-
-import java.util.HashMap;
-import java.util.HashSet;
-import java.util.Iterator;
-import java.util.Map;
-
-
-public class GTaskManager {
-
- // 日志标签
- private static final String TAG = GTaskManager.class.getSimpleName();
-
- // 同步状态常量
- public static final int STATE_SUCCESS = 0;
- public static final int STATE_NETWORK_ERROR = 1;
- public static final int STATE_INTERNAL_ERROR = 2;
- public static final int STATE_SYNC_IN_PROGRESS = 3;
- public static final int STATE_SYNC_CANCELLED = 4;
-
- // 单例实例
- private static GTaskManager mInstance = null;
-
- // 当前的Activity
- private Activity mActivity;
-
- // 应用程序的上下文
- private Context mContext;
-
- // 用于访问应用程序的数据存储
- private ContentResolver mContentResolver;
-
- // 指示是否正在进行同步
- private boolean mSyncing;
-
- // 指示同步是否被取消
- private boolean mCancelled;
-
- // 已同步的任务列表的哈希映射
- private HashMap mGTaskListHashMap;
-
- // 已同步的任务的哈希映射
- private HashMap mGTaskHashMap;
-
- // 任务元数据的哈希映射
- private HashMap mMetaHashMap;
-
- // 元数据列表
- private TaskList mMetaList;
-
- // 本地已删除任务的ID集合
- private HashSet mLocalDeleteIdMap;
-
- // Google任务ID到本地任务ID的映射
- private HashMap mGidToNid;
-
- // 本地任务ID到Google任务ID的映射
- private HashMap mNidToGid;
-
- // 私有构造函数
- private GTaskManager() {
- mSyncing = false;
- mCancelled = false;
- mGTaskListHashMap = new HashMap();
- mGTaskHashMap = new HashMap();
- mMetaHashMap = new HashMap();
- mMetaList = null;
- mLocalDeleteIdMap = new HashSet();
- mGidToNid = new HashMap();
- mNidToGid = new HashMap();
- }
-
- // 获取GTaskManager的单例实例
- public static synchronized GTaskManager getInstance() {
- if (mInstance == null) {
- mInstance = new GTaskManager();
- }
- return mInstance;
- }
-
- public synchronized void setActivityContext(Activity activity) {
- // 用于获取 auth token 的活动上下文
- mActivity = activity;
- }
-
- // 同步方法,用于同步数据
- public int sync(Context context, GTaskASyncTask asyncTask) {
- if (mSyncing) {
- Log.d(TAG, "Sync is in progress"); // 打印日志,表示同步正在进行中
- return STATE_SYNC_IN_PROGRESS; // 返回同步状态为进行中
- }
- mContext = context;
- mContentResolver = mContext.getContentResolver();
- mSyncing = true; // 设置同步标志为 true
- mCancelled = false; // 设置取消标志为 false
- mGTaskListHashMap.clear(); // 清除任务列表哈希图
- mGTaskHashMap.clear(); // 清除任务哈希图
- mMetaHashMap.clear(); // 清除元数据哈希图
- mLocalDeleteIdMap.clear(); // 清除本地删除 id 映射
- mGidToNid.clear(); // 清除 gid 到 nid 的映射
- mNidToGid.clear(); // 清除 nid 到 gid 的映射
-
- try {
- GTaskClient client = GTaskClient.getInstance();
- client.resetUpdateArray(); // 重置更新数组
-
- // 登录 Google 任务
- if (!mCancelled) {
- if (!client.login(mActivity)) { // 如果登录任务失败
- throw new NetworkFailureException("login google task failed"); // 抛出网络失败异常
- }
- }
-
- // 从 Google 获取任务列表
- asyncTask.publishProgess(mContext.getString(R.string.sync_progress_init_list)); // 发布进度,初始化任务列表
- initGTaskList(); // 初始化任务列表
-
- // 执行内容同步任务
- asyncTask.publishProgess(mContext.getString(R.string.sync_progress_syncing)); // 发布进度,正在同步任务内容
- syncContent(); // 同步内容
- } catch (NetworkFailureException e) {
- Log.e(TAG, e.toString());
- return STATE_NETWORK_ERROR; // 返回网络错误状态
- } catch (ActionFailureException e) {
- Log.e(TAG, e.toString());
- return STATE_INTERNAL_ERROR; // 返回内部错误状态
- } catch (Exception e) {
- Log.e(TAG, e.toString());
- e.printStackTrace();
- return STATE_INTERNAL_ERROR; // 返回内部错误状态
- } finally {
- // 清除所有的哈希图和映射
- mGTaskListHashMap.clear();
- mGTaskHashMap.clear();
- mMetaHashMap.clear();
- mLocalDeleteIdMap.clear();
- mGidToNid.clear();
- mNidToGid.clear();
- // 设置同步标志为 false
- mSyncing = false;
- }
-
- return mCancelled ? STATE_SYNC_CANCELLED : STATE_SUCCESS; // 如果被取消,返回取消状态,否则返回成功状态
- }
-
- /**
- * 初始化 Google 任务列表
- *
- * @throws NetworkFailureException 网络请求失败异常
- */
- private void initGTaskList() throws NetworkFailureException {
- if (mCancelled)
- return;
- GTaskClient client = GTaskClient.getInstance();
- try {
- // 获取任务列表的 JSON 数组
- JSONArray jsTaskLists = client.getTaskLists();
-
- // 初始化元数据列表
- mMetaList = null;
- for (int i = 0; i < jsTaskLists.length(); i++) {
- JSONObject object = jsTaskLists.getJSONObject(i);
- String gid = object.getString(GTaskStringUtils.GTASK_JSON_ID);
- String name = object.getString(GTaskStringUtils.GTASK_JSON_NAME);
-
- // 根据名称判断是否是元数据列表
- if (name
- .equals(GTaskStringUtils.MIUI_FOLDER_PREFFIX + GTaskStringUtils.FOLDER_META)) {
- mMetaList = new TaskList();
- mMetaList.setContentByRemoteJSON(object);
-
- // 加载元数据
- JSONArray jsMetas = client.getTaskList(gid);
- for (int j = 0; j < jsMetas.length(); j++) {
- object = (JSONObject) jsMetas.getJSONObject(j);
- MetaData metaData = new MetaData();
- metaData.setContentByRemoteJSON(object);
- if (metaData.isWorthSaving()) {
- mMetaList.addChildTask(metaData);
- if (metaData.getGid() != null) {
- mMetaHashMap.put(metaData.getRelatedGid(), metaData);
- }
- }
- }
- }
- }
-
- // 若元数据列表不存在,则创建元数据列表
- if (mMetaList == null) {
- mMetaList = new TaskList();
- mMetaList.setName(GTaskStringUtils.MIUI_FOLDER_PREFFIX + GTaskStringUtils.FOLDER_META);
- GTaskClient.getInstance().createTaskList(mMetaList);
- }
-
- // 初始化任务列表
- for (int i = 0; i < jsTaskLists.length(); i++) {
- JSONObject object = jsTaskLists.getJSONObject(i);
- String gid = object.getString(GTaskStringUtils.GTASK_JSON_ID);
- String name = object.getString(GTaskStringUtils.GTASK_JSON_NAME);
-
- // 根据名称判断是否是任务列表
- if (name.startsWith(GTaskStringUtils.MIUI_FOLDER_PREFFIX)
- && !name.equals(GTaskStringUtils.MIUI_FOLDER_PREFFIX + GTaskStringUtils.FOLDER_META)) {
- TaskList tasklist = new TaskList();
- tasklist.setContentByRemoteJSON(object);
- mGTaskListHashMap.put(gid, tasklist);
- mGTaskHashMap.put(gid, tasklist);
-
- // 加载任务
- JSONArray jsTasks = client.getTaskList(gid);
- for (int j = 0; j < jsTasks.length(); j++) {
- object = (JSONObject) jsTasks.getJSONObject(j);
- gid = object.getString(GTaskStringUtils.GTASK_JSON_ID);
- Task task = new Task();
- task.setContentByRemoteJSON(object);
- if (task.isWorthSaving()) {
- task.setMetaInfo(mMetaHashMap.get(gid));
- tasklist.addChildTask(task);
- mGTaskHashMap.put(gid, task);
- }
- }
- }
- }
- } catch (JSONException e) {
- Log.e(TAG, e.toString());
- e.printStackTrace();
- throw new ActionFailureException("initGTaskList: handing JSONObject failed");
- }
- }
-
- /**
- * 同步内容方法,用于同步笔记内容到远程服务器
- * @throws NetworkFailureException 网络异常时抛出此异常
- */
- private void syncContent() throws NetworkFailureException {
- int syncType; // 同步操作类型
- Cursor c = null; // 数据查询游标
- String gid; // 笔记在远程服务器的唯一标识
- Node node; // 笔记对应的节点
-
- mLocalDeleteIdMap.clear(); // 清空本地已删除笔记的集合
-
- if (mCancelled) {
- return; // 如果取消了同步操作,直接返回
- }
-
- // 查询本地已删除的笔记
- try {
- c = mContentResolver.query(Notes.CONTENT_NOTE_URI, SqlNote.PROJECTION_NOTE,
- "(type<>? AND parent_id=?)", new String[] {
- String.valueOf(Notes.TYPE_SYSTEM), String.valueOf(Notes.ID_TRASH_FOLER)
- }, null);
- if (c != null) {
- while (c.moveToNext()) {
- gid = c.getString(SqlNote.GTASK_ID_COLUMN);
- node = mGTaskHashMap.get(gid);
- if (node != null) {
- mGTaskHashMap.remove(gid);
- doContentSync(Node.SYNC_ACTION_DEL_REMOTE, node, c); // 执行内容同步方法,删除远程服务器中对应的笔记
- }
-
- mLocalDeleteIdMap.add(c.getLong(SqlNote.ID_COLUMN)); // 将本地已删除笔记的 ID 添加到集合中
- }
- } else {
- Log.w(TAG, "failed to query trash folder");
- }
- } finally {
- if (c != null) {
- c.close(); // 关闭查询游标
- c = null; // 置空查询游标
- }
- }
-
- // 先同步文件夹
- syncFolder(); // 同步文件夹信息
-
- // 查询数据库中已存在的笔记
- try {
- c = mContentResolver.query(Notes.CONTENT_NOTE_URI, SqlNote.PROJECTION_NOTE,
- "(type=? AND parent_id<>?)", new String[] {
- String.valueOf(Notes.TYPE_NOTE), String.valueOf(Notes.ID_TRASH_FOLER)
- }, NoteColumns.TYPE + " DESC");
- if (c != null) {
- while (c.moveToNext()) {
- gid = c.getString(SqlNote.GTASK_ID_COLUMN);
- node = mGTaskHashMap.get(gid);
- if (node != null) {
- mGTaskHashMap.remove(gid);
- mGidToNid.put(gid, c.getLong(SqlNote.ID_COLUMN)); // 存储远程服务器 ID 到本地数据库 ID 的映射关系
- mNidToGid.put(c.getLong(SqlNote.ID_COLUMN), gid); // 存储本地数据库 ID 到远程服务器 ID 的映射关系
- syncType = node.getSyncAction(c); // 获取此笔记的同步操作类型
- } else {
- if (c.getString(SqlNote.GTASK_ID_COLUMN).trim().length() == 0) {
- // 本地添加
- syncType = Node.SYNC_ACTION_ADD_REMOTE; // 设置同步操作类型为向远程服务器添加笔记
- } else {
- // 远程删除
- syncType = Node.SYNC_ACTION_DEL_LOCAL; // 设置同步操作类型为从本地删除笔记
- }
- }
- doContentSync(syncType, node, c); // 执行内容同步方法,同步笔记内容
- }
- } else {
- Log.w(TAG, "failed to query existing note in database");
- }
-
- } finally {
- if (c != null) {
- c.close(); // 关闭查询游标
- c = null; // 置空查询游标
- }
- }
-
- // 遍历剩余的节点
- Iterator> iter = mGTaskHashMap.entrySet().iterator();
- while (iter.hasNext()) {
- Map.Entry entry = iter.next();
- node = entry.getValue();
- doContentSync(Node.SYNC_ACTION_ADD_LOCAL, node, null); // 执行内容同步方法,向远程服务器添加本地的剩余笔记
- }
-
- // 逐个检查取消标志位,因为可能在另一个线程中被设置
- // 清除本地已删除笔记表
- if (!mCancelled) { // 如果没有取消同步
- if (!DataUtils.batchDeleteNotes(mContentResolver, mLocalDeleteIdMap)) {
- throw new ActionFailureException("failed to batch-delete local deleted notes"); // 抛出操作失败异常,无法批量删除本地已删除笔记
- }
- }
-
- // 刷新本地同步 ID
- if (!mCancelled) { // 如果没有取消同步
- GTaskClient.getInstance().commitUpdate(); // 提交更新到远程服务器
- refreshLocalSyncId(); // 刷新本地同步 ID
- }
-
- }
-
- private void syncFolder() throws NetworkFailureException {
- Cursor c = null; // 数据成员注释: 创建一个游标实例
- String gid; // 数据成员注释: 定义字符串类型变量 gid
- Node node; // 数据成员注释: 定义 Node 类型的变量 node
- int syncType; // 数据成员注释: 定义整型变量 syncType
-
- if (mCancelled) { // 语句注释: 如果取消标志位为 true,则返回
- return;
- }
-
- // for root folder
- try {
- c = mContentResolver.query(ContentUris.withAppendedId(Notes.CONTENT_NOTE_URI,
- Notes.ID_ROOT_FOLDER), SqlNote.PROJECTION_NOTE, null, null, null); // 实现注释: 查询根文件夹的内容
- if (c != null) {
- c.moveToNext(); // 实现注释: 将游标移动到下一行
- gid = c.getString(SqlNote.GTASK_ID_COLUMN); // 实现注释: 获取游标列索引为 SqlNote.GTASK_ID_COLUMN 的字符串值
- node = mGTaskHashMap.get(gid); // 实现注释: 从哈希映射中获取 gid 对应的 Node 实例
- if (node != null) { // 语句注释: 如果 Node 存在
- mGTaskHashMap.remove(gid); // 实现注释: 从哈希映射中移除 gid 对应的 Node 实例
- mGidToNid.put(gid, (long) Notes.ID_ROOT_FOLDER); // 实现注释: 将 gid 映射到 Notes.ID_ROOT_FOLDER
- mNidToGid.put((long) Notes.ID_ROOT_FOLDER, gid); // 实现注释: 将 Notes.ID_ROOT_FOLDER 映射到 gid
- // for system folder, only update remote name if necessary
- if (!node.getName().equals(
- GTaskStringUtils.MIUI_FOLDER_PREFFIX + GTaskStringUtils.FOLDER_DEFAULT))
- doContentSync(Node.SYNC_ACTION_UPDATE_REMOTE, node, c); // 实现注释: 执行内容同步操作,更新远程名称
- } else {
- doContentSync(Node.SYNC_ACTION_ADD_REMOTE, node, c); // 实现注释: 执行内容同步操作,添加远程节点
- }
- } else {
- Log.w(TAG, "failed to query root folder"); // 实现注释: 记录日志,查询根目录失败
- }
- } finally {
- if (c != null) {
- c.close();
- c = null;
- }
- }
-
- // for call-note folder
- try {
- c = mContentResolver.query(Notes.CONTENT_NOTE_URI, SqlNote.PROJECTION_NOTE, "(_id=?)",
- new String[] {
- String.valueOf(Notes.ID_CALL_RECORD_FOLDER)
- }, null); // 实现注释: 查询通话记录文件夹的内容
- if (c != null) {
- if (c.moveToNext()) {
- gid = c.getString(SqlNote.GTASK_ID_COLUMN); // 实现注释: 获取游标列索引为 SqlNote.GTASK_ID_COLUMN 的字符串值
- node = mGTaskHashMap.get(gid); // 实现注释: 从哈希映射中获取 gid 对应的 Node 实例
- if (node != null) { // 实现注释: 如果 Node 存在
- mGTaskHashMap.remove(gid); // 实现注释: 从哈希映射中移除 gid 对应的 Node 实例
- mGidToNid.put(gid, (long) Notes.ID_CALL_RECORD_FOLDER); // 实现注释: 将 gid 映射到 Notes.ID_CALL_RECORD_FOLDER
- mNidToGid.put((long) Notes.ID_CALL_RECORD_FOLDER, gid); // 实现注释: 将 Notes.ID_CALL_RECORD_FOLDER 映射到 gid
- // for system folder, only update remote name if necessary
- if (!node.getName().equals(
- GTaskStringUtils.MIUI_FOLDER_PREFFIX
- + GTaskStringUtils.FOLDER_CALL_NOTE))
- doContentSync(Node.SYNC_ACTION_UPDATE_REMOTE, node, c); // 实现注释: 执行内容同步操作,更新远程名称
- } else {
- doContentSync(Node.SYNC_ACTION_ADD_REMOTE, node, c); // 实现注释: 执行内容同步操作,添加远程节点
- }
- }
- } else {
- Log.w(TAG, "failed to query call note folder"); // 实现注释: 记录日志,查询通话记录文件夹失败
- }
- } finally {
- if (c != null) {
- c.close();
- c = null;
- }
- }
-
- // for local existing folders
- try {
- c = mContentResolver.query(Notes.CONTENT_NOTE_URI, SqlNote.PROJECTION_NOTE,
- "(type=? AND parent_id<>?)", new String[] {
- String.valueOf(Notes.TYPE_FOLDER), String.valueOf(Notes.ID_TRASH_FOLER)
- }, NoteColumns.TYPE + " DESC"); // 实现注释: 查询本地已存在的文件夹的内容
- if (c != null) {
- while (c.moveToNext()) {
- gid = c.getString(SqlNote.GTASK_ID_COLUMN); // 实现注释: 获取游标列索引为 SqlNote.GTASK_ID_COLUMN 的字符串值
- node = mGTaskHashMap.get(gid); // 实现注释: 从哈希映射中获取 gid 对应的 Node 实例
- if (node != null) { // 实现注释: 如果 Node 存在
- mGTaskHashMap.remove(gid); // 实现注释: 从哈希映射中移除 gid 对应的 Node 实例
- mGidToNid.put(gid, c.getLong(SqlNote.ID_COLUMN)); // 实现注释: 将 gid 映射到游标列索引为 SqlNote.ID_COLUMN 的值
- mNidToGid.put(c.getLong(SqlNote.ID_COLUMN), gid); // 实现注释: 将游标列索引为 SqlNote.ID_COLUMN 的值映射到 gid
- syncType = node.getSyncAction(c); // 实现注释: 获取 Node 的同步操作类型
- } else {
- if (c.getString(SqlNote.GTASK_ID_COLUMN).trim().length() == 0) {
- // local add
- syncType = Node.SYNC_ACTION_ADD_REMOTE; // 实现注释: 本地添加
- } else {
- // remote delete
- syncType = Node.SYNC_ACTION_DEL_LOCAL; // 实现注释: 远程删除
- }
- }
- doContentSync(syncType, node, c); // 实现注释: 执行内容同步操作
- }
- } else {
- Log.w(TAG, "failed to query existing folder"); // 实现注释: 记录日志,查询已存在的文件夹失败
- }
- } finally {
- if (c != null) {
- c.close();
- c = null;
- }
- }
-
- // for remote add folders
- Iterator> iter = mGTaskListHashMap.entrySet().iterator(); // 实现注释: 获取迭代器实例
- while (iter.hasNext()) {
- Map.Entry entry = iter.next(); // 实现注释: 获取迭代器下一个键值对
- gid = entry.getKey(); // 实现注释: 获取键值对的键
- node = entry.getValue(); // 实现注释: 获取键值对的值
- if (mGTaskHashMap.containsKey(gid)) { // 实现注释: 如果哈希映射中包含 gid
- mGTaskHashMap.remove(gid); // 实现注释: 从哈希映射中移除 gid 对应的 Node 实例
- doContentSync(Node.SYNC_ACTION_ADD_LOCAL, node, null); // 实现注释: 执行内容同步操作,添加本地节点
- }
- }
-
- if (!mCancelled)
- GTaskClient.getInstance().commitUpdate(); // 实现注释: 提交更新操作
- }
-
- /**
- * 方法用于执行内容同步操作,根据不同的同步类型执行相应的操作。
- * @param syncType 同步类型,用于标识执行何种同步操作
- * @param node 待同步的节点对象
- * @param c 游标对象,用于操作数据库结果集
- * @throws NetworkFailureException 网络异常时抛出该异常
- */
- private void doContentSync(int syncType, Node node, Cursor c) throws NetworkFailureException {
- // 如果任务已取消,则直接返回
- if (mCancelled) {
- return;
- }
-
- MetaData meta;
- switch (syncType) {
- // 添加本地节点操作
- case Node.SYNC_ACTION_ADD_LOCAL:
- addLocalNode(node);
- break;
- // 添加远程节点操作
- case Node.SYNC_ACTION_ADD_REMOTE:
- addRemoteNode(node, c);
- break;
- // 删除本地节点操作
- case Node.SYNC_ACTION_DEL_LOCAL:
- // 获取与游标中的任务 ID 对应的元数据
- meta = mMetaHashMap.get(c.getString(SqlNote.GTASK_ID_COLUMN));
- // 如果元数据不为空,则通过 GTaskClient 删除节点
- if (meta != null) {
- GTaskClient.getInstance().deleteNode(meta);
- }
- // 将本地删除的任务 ID 添加到本地删除 ID 映射表中
- mLocalDeleteIdMap.add(c.getLong(SqlNote.ID_COLUMN));
- break;
- // 删除远程节点操作
- case Node.SYNC_ACTION_DEL_REMOTE:
- // 获取与节点的全局唯一标识符对应的元数据
- meta = mMetaHashMap.get(node.getGid());
- // 如果元数据不为空,则通过 GTaskClient 删除节点
- if (meta != null) {
- GTaskClient.getInstance().deleteNode(meta);
- }
- // 通过 GTaskClient 删除节点
- GTaskClient.getInstance().deleteNode(node);
- break;
- // 更新本地节点操作
- case Node.SYNC_ACTION_UPDATE_LOCAL:
- updateLocalNode(node, c);
- break;
- // 更新远程节点操作
- case Node.SYNC_ACTION_UPDATE_REMOTE:
- updateRemoteNode(node, c);
- break;
- // 更新冲突时的操作,当前实现简单地采用本地更新
- case Node.SYNC_ACTION_UPDATE_CONFLICT:
- // 可能合并两种修改,但目前仅简单地使用本地更新
- updateRemoteNode(node, c);
- break;
- // 无需执行任何同步操作
- case Node.SYNC_ACTION_NONE:
- break;
- // 同步操作错误或未知类型时抛出异常
- case Node.SYNC_ACTION_ERROR:
- default:
- throw new ActionFailureException("未知的同步操作类型");
- }
- }
-
- /**
- * 方法用于将本地节点添加到数据库中,并更新相关的元数据和映射信息。
- * @param node 待添加的本地节点对象
- * @throws NetworkFailureException 网络异常时抛出该异常
- */
- private void addLocalNode(Node node) throws NetworkFailureException {
- if (mCancelled) {
- return; // 如果任务已取消,则直接返回
- }
-
- SqlNote sqlNote; // 数据库操作对象
-
- // 根据节点类型进行不同的处理
- if (node instanceof TaskList) {
- // 如果节点是任务列表
- if (node.getName().equals(
- GTaskStringUtils.MIUI_FOLDER_PREFFIX + GTaskStringUtils.FOLDER_DEFAULT)) {
- // 如果节点是默认文件夹
- sqlNote = new SqlNote(mContext, Notes.ID_ROOT_FOLDER); // 创建根文件夹
- } else if (node.getName().equals(
- GTaskStringUtils.MIUI_FOLDER_PREFFIX + GTaskStringUtils.FOLDER_CALL_NOTE)) {
- // 如果节点是通话备忘录文件夹
- sqlNote = new SqlNote(mContext, Notes.ID_CALL_RECORD_FOLDER); // 创建通话备忘录文件夹
- } else {
- sqlNote = new SqlNote(mContext); // 创建一般的节点
- sqlNote.setContent(node.getLocalJSONFromContent()); // 设置节点内容数据
- sqlNote.setParentId(Notes.ID_ROOT_FOLDER); // 设置父节点为根文件夹
- }
- } else {
- // 如果节点是普通任务
- sqlNote = new SqlNote(mContext); // 创建一般的节点
- JSONObject js = node.getLocalJSONFromContent(); // 获取节点的本地 JSON 数据
- try {
- // 处理元数据中的ID冲突问题
- if (js.has(GTaskStringUtils.META_HEAD_NOTE)) {
- JSONObject note = js.getJSONObject(GTaskStringUtils.META_HEAD_NOTE);
- if (note.has(NoteColumns.ID)) {
- long id = note.getLong(NoteColumns.ID);
- if (DataUtils.existInNoteDatabase(mContentResolver, id)) {
- // 如果ID已存在于数据库中,则移除已存在的ID,在数据库中创建新的ID
- note.remove(NoteColumns.ID);
- }
- }
- }
-
- if (js.has(GTaskStringUtils.META_HEAD_DATA)) {
- JSONArray dataArray = js.getJSONArray(GTaskStringUtils.META_HEAD_DATA);
- for (int i = 0; i < dataArray.length(); i++) {
- JSONObject data = dataArray.getJSONObject(i);
- if (data.has(DataColumns.ID)) {
- long dataId = data.getLong(DataColumns.ID);
- if (DataUtils.existInDataDatabase(mContentResolver, dataId)) {
- // 如果ID已存在于数据库中,则移除已存在的ID,在数据库中创建新的ID
- data.remove(DataColumns.ID);
- }
- }
- }
- }
- } catch (JSONException e) {
- Log.w(TAG, e.toString());
- e.printStackTrace();
- }
- // 设置节点内容数据
- sqlNote.setContent(js);
-
- // 通过全局唯一标识符获取父节点的本地ID
- Long parentId = mGidToNid.get(((Task) node).getParent().getGid());
- if (parentId == null) {
- Log.e(TAG, "cannot find task's parent id locally");
- throw new ActionFailureException("cannot add local node");
- }
- sqlNote.setParentId(parentId.longValue()); // 设置父节点ID
- }
-
- // 设置节点的全局唯一标识符
- sqlNote.setGtaskId(node.getGid());
- // 将节点添加到数据库中
- sqlNote.commit(false);
-
- // 更新全局唯一标识符到本地ID的映射关系
- mGidToNid.put(node.getGid(), sqlNote.getId());
- mNidToGid.put(sqlNote.getId(), node.getGid());
-
- // 更新元数据信息
- updateRemoteMeta(node.getGid(), sqlNote);
- }
-
- /**
- * 更新本地节点信息,并将更新后的信息提交到数据库中。
- * @param node 待更新的节点对象
- * @param c 游标对象,用于更新本地节点信息
- * @throws NetworkFailureException 当网络异常时抛出该异常
- */
- private void updateLocalNode(Node node, Cursor c) throws NetworkFailureException {
- if (mCancelled) {
- return; // 如果任务已取消,则直接返回
- }
-
- SqlNote sqlNote; // 数据库操作对象
- // 更新本地节点信息
- sqlNote = new SqlNote(mContext, c); // 通过游标对象构造数据库操作对象
- sqlNote.setContent(node.getLocalJSONFromContent()); // 设置节点内容数据
-
- // 获取父节点的本地ID
- Long parentId = (node instanceof Task) ? mGidToNid.get(((Task) node).getParent().getGid())
- : new Long(Notes.ID_ROOT_FOLDER);
- if (parentId == null) {
- Log.e(TAG, "cannot find task's parent id locally");
- throw new ActionFailureException("cannot update local node");
- }
- sqlNote.setParentId(parentId.longValue()); // 设置父节点ID
- sqlNote.commit(true); // 提交更新后的信息到数据库
-
- // 更新元数据信息
- updateRemoteMeta(node.getGid(), sqlNote); // 更新远程元数据信息
- }
- /**
- * 添加远程节点,并更新本地数据和远程数据。
- * @param node 待添加的节点对象
- * @param c 游标对象,用于操作数据库
- * @throws NetworkFailureException 当网络异常时抛出该异常
- */
- private void addRemoteNode(Node node, Cursor c) throws NetworkFailureException {
- if (mCancelled) {
- return; // 如果任务已取消,则直接返回
- }
-
- SqlNote sqlNote = new SqlNote(mContext, c); // 数据库操作对象
- Node n; // 节点对象
-
- // 远程更新操作
- if (sqlNote.isNoteType()) { // 如果是笔记类型节点
- Task task = new Task(); // 创建任务对象
- task.setContentByLocalJSON(sqlNote.getContent()); // 通过本地JSON内容设置任务的内容
-
- String parentGid = mNidToGid.get(sqlNote.getParentId()); // 获取父节点的全局ID
- if (parentGid == null) {
- Log.e(TAG, "cannot find task's parent tasklist");
- throw new ActionFailureException("cannot add remote task");
- }
- mGTaskListHashMap.get(parentGid).addChildTask(task); // 将任务添加到对应的父任务列表中
-
- GTaskClient.getInstance().createTask(task); // 在远程创建任务
- n = (Node) task; // 将任务对象转换为节点对象
-
- // 添加元数据信息
- updateRemoteMeta(task.getGid(), sqlNote);
- } else { // 如果是文件夹类型节点
- TaskList tasklist = null; // 任务列表对象
-
- // 如果文件夹已存在,则跳过
- String folderName = GTaskStringUtils.MIUI_FOLDER_PREFFIX;
- if (sqlNote.getId() == Notes.ID_ROOT_FOLDER)
- folderName += GTaskStringUtils.FOLDER_DEFAULT;
- else if (sqlNote.getId() == Notes.ID_CALL_RECORD_FOLDER)
- folderName += GTaskStringUtils.FOLDER_CALL_NOTE;
- else
- folderName += sqlNote.getSnippet();
-
- Iterator> iter = mGTaskListHashMap.entrySet().iterator();
- while (iter.hasNext()) {
- Map.Entry entry = iter.next();
- String gid = entry.getKey();
- TaskList list = entry.getValue();
-
- if (list.getName().equals(folderName)) { // 如果文件夹已存在
- tasklist = list;
- if (mGTaskHashMap.containsKey(gid)) {
- mGTaskHashMap.remove(gid); // 移除对应的任务映射
- }
- break;
- }
- }
-
- // 如果文件夹不存在,则添加
- if (tasklist == null) {
- tasklist = new TaskList(); // 创建新的任务列表对象
- tasklist.setContentByLocalJSON(sqlNote.getContent()); // 通过本地JSON内容设置任务列表的内容
- GTaskClient.getInstance().createTaskList(tasklist); // 在远程创建任务列表
- mGTaskListHashMap.put(tasklist.getGid(), tasklist); // 将任务列表添加到任务列表哈希映射中
- }
- n = (Node) tasklist; // 将任务列表对象转换为节点对象
- }
-
- // 更新本地笔记信息
- sqlNote.setGtaskId(n.getGid()); // 设置笔记的全局ID
- sqlNote.commit(false); // 提交未修改的笔记信息到数据库
- sqlNote.resetLocalModified(); // 重置本地修改标志
- sqlNote.commit(true); // 提交更新后的笔记信息到数据库
-
- // 更新全局ID和本地ID的映射关系
- mGidToNid.put(n.getGid(), sqlNote.getId()); // 全局ID到本地ID的映射
- mNidToGid.put(sqlNote.getId(), n.getGid()); // 本地ID到全局ID的映射
- }
-
- /**
- * 更新远程节点信息并同步本地数据。
- * @param node 待更新的节点对象
- * @param c 游标对象,用于操作数据库
- * @throws NetworkFailureException 当网络异常时抛出该异常
- */
- private void updateRemoteNode(Node node, Cursor c) throws NetworkFailureException {
- if (mCancelled) {
- return; // 如果任务已取消,则直接返回
- }
-
- SqlNote sqlNote = new SqlNote(mContext, c); // 创建数据库操作对象
-
- // 更新远程节点
- node.setContentByLocalJSON(sqlNote.getContent()); // 通过本地JSON内容更新节点信息
- GTaskClient.getInstance().addUpdateNode(node); // 在远程更新节点信息
-
- // 更新元数据信息
- updateRemoteMeta(node.getGid(), sqlNote); // 更新远程元数据信息
-
- // 如果是任务类型节点,则进行移动操作
- if (sqlNote.isNoteType()) {
- Task task = (Task) node; // 强制类型转换为任务对象
- TaskList preParentList = task.getParent(); // 获取任务的原父任务列表
-
- String curParentGid = mNidToGid.get(sqlNote.getParentId()); // 获取当前父任务列表的全局ID
- if (curParentGid == null) {
- Log.e(TAG, "cannot find task's parent tasklist");
- throw new ActionFailureException("cannot update remote task");
- }
- TaskList curParentList = mGTaskListHashMap.get(curParentGid); // 获取当前父任务列表对象
-
- if (preParentList != curParentList) {
- preParentList.removeChildTask(task); // 从原父任务列表中移除任务
- curParentList.addChildTask(task); // 将任务添加到当前父任务列表中
- GTaskClient.getInstance().moveTask(task, preParentList, curParentList); // 在远程执行任务移动操作
- }
- }
-
- // 清除本地修改标记
- sqlNote.resetLocalModified(); // 重置本地修改标志
- sqlNote.commit(true); // 提交更新后的笔记信息到数据库
- }
-
- /**
- * 更新远程元数据信息。
- * @param gid 全局ID
- * @param sqlNote 笔记对象
- * @throws NetworkFailureException 当网络异常时抛出该异常
- */
- private void updateRemoteMeta(String gid, SqlNote sqlNote) throws NetworkFailureException {
- if (sqlNote != null && sqlNote.isNoteType()) {
- MetaData metaData = mMetaHashMap.get(gid); // 获取指定全局ID的元数据对象
- if (metaData != null) {
- metaData.setMeta(gid, sqlNote.getContent()); // 更新元数据信息
- GTaskClient.getInstance().addUpdateNode(metaData); // 在远程更新元数据信息
- } else {
- metaData = new MetaData(); // 创建新的元数据对象
- metaData.setMeta(gid, sqlNote.getContent()); // 设置元数据信息
- mMetaList.addChildTask(metaData); // 将元数据对象添加到元数据列表中
- mMetaHashMap.put(gid, metaData); // 在元数据哈希映射中添加元数据对象
- GTaskClient.getInstance().createTask(metaData); // 在远程创建元数据对象
- }
- }
- }
-
- /**
- * 刷新本地同步 ID。
- * @throws NetworkFailureException 当网络异常时抛出该异常
- */
- private void refreshLocalSyncId() throws NetworkFailureException {
- if (mCancelled) {
- return; // 如果任务已取消,则直接返回
- }
-
- // 获取最新的 GTask 列表
- mGTaskHashMap.clear(); // 清空 GTask 哈希映射
- mGTaskListHashMap.clear(); // 清空 GTask 列表哈希映射
- mMetaHashMap.clear(); // 清空元数据哈希映射
- initGTaskList(); // 初始化 GTask 列表
-
- Cursor c = null;
- try {
- // 查询本地笔记数据,排除系统类型和回收站中的笔记
- c = mContentResolver.query(Notes.CONTENT_NOTE_URI, SqlNote.PROJECTION_NOTE,
- "(type<>? AND parent_id<>?)", new String[] {
- String.valueOf(Notes.TYPE_SYSTEM), String.valueOf(Notes.ID_TRASH_FOLER)
- }, NoteColumns.TYPE + " DESC");
- if (c != null) {
- while (c.moveToNext()) {
- String gid = c.getString(SqlNote.GTASK_ID_COLUMN); // 获取 GTask ID
- Node node = mGTaskHashMap.get(gid); // 在 GTask 哈希映射中查找对应的节点
- if (node != null) {
- mGTaskHashMap.remove(gid); // 从 GTask 哈希映射中移除对应的节点
- ContentValues values = new ContentValues(); // 创建待更新的数值对象
- values.put(NoteColumns.SYNC_ID, node.getLastModified()); // 设置更新的同步 ID
- mContentResolver.update(ContentUris.withAppendedId(Notes.CONTENT_NOTE_URI,
- c.getLong(SqlNote.ID_COLUMN)), values, null, null); // 更新本地的同步 ID
- } else {
- Log.e(TAG, "something is missed"); // 输出错误日志
- throw new ActionFailureException(
- "some local items don't have gid after sync"); // 抛出同步过程中丢失 GID 的异常
- }
- }
- } else {
- Log.w(TAG, "failed to query local note to refresh sync id"); // 输出警告日志
- }
- } finally {
- if (c != null) {
- c.close(); // 关闭游标对象
- c = null; // 将游标对象置为 null
- }
- }
- }
-
- /**
- * 获取同步账户信息。
- * @return 返回同步账户名称
- */
- public String getSyncAccount() {
- return GTaskClient.getInstance().getSyncAccount().name; // 获取同步账户的名称
- }
-
- /**
- * 取消同步操作。
- */
- public void cancelSync() {
- mCancelled = true; // 将取消标志设置为 true
- }
-}
diff --git a/src/src/app/src/main/java/net/micode/notes/gtask/remote/GTaskSyncService.java b/src/src/app/src/main/java/net/micode/notes/gtask/remote/GTaskSyncService.java
deleted file mode 100644
index c9d892f..0000000
--- a/src/src/app/src/main/java/net/micode/notes/gtask/remote/GTaskSyncService.java
+++ /dev/null
@@ -1,147 +0,0 @@
-/*
- * 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.
- */
-
-/**
- * GTaskSyncService 是用于与 Google Tasks 同步任务的服务。
- */
-package net.micode.notes.gtask.remote;
-
-import android.app.Activity;
-import android.app.Service;
-import android.content.Context;
-import android.content.Intent;
-import android.os.Bundle;
-import android.os.IBinder;
-
-/**
- * GTaskSyncService 是用于与Google Tasks同步任务的服务。
- */
-public class GTaskSyncService extends Service {
- // 用于同步操作类型的动作字符串名称
- public final static String ACTION_STRING_NAME = "sync_action_type";
-
- // 用于同步操作的常量
- public final static int ACTION_START_SYNC = 0;
- public final static int ACTION_CANCEL_SYNC = 1;
- public final static int ACTION_INVALID = 2;
-
- // GTask 服务的广播名称
- public final static String GTASK_SERVICE_BROADCAST_NAME = "net.micode.notes.gtask.remote.gtask_sync_service";
-
- // 广播额外信息的键
- public final static String GTASK_SERVICE_BROADCAST_IS_SYNCING = "isSyncing";
- public final static String GTASK_SERVICE_BROADCAST_PROGRESS_MSG = "progressMsg";
-
- // 用于同步的 AsyncTask
- private static GTaskASyncTask mSyncTask = null;
-
- // 同步过程中的进度消息
- private static String mSyncProgress = "";
-
- // 开始同步过程
- private void startSync() {
- if (mSyncTask == null) {
- mSyncTask = new GTaskASyncTask(this, new GTaskASyncTask.OnCompleteListener() {
- public void onComplete() {
- mSyncTask = null;
- sendBroadcast("");
- stopSelf();
- }
- });
- sendBroadcast("");
- mSyncTask.execute();
- }
- }
-
- // 取消同步过程
- private void cancelSync() {
- if (mSyncTask != null) {
- mSyncTask.cancelSync();
- }
- }
-
- @Override
- public void onCreate() {
- mSyncTask = null;
- }
-
- @Override
- public int onStartCommand(Intent intent, int flags, int startId) {
- Bundle bundle = intent.getExtras();
- if (bundle != null && bundle.containsKey(ACTION_STRING_NAME)) {
- switch (bundle.getInt(ACTION_STRING_NAME, ACTION_INVALID)) {
- case ACTION_START_SYNC:
- startSync();
- break;
- case ACTION_CANCEL_SYNC:
- cancelSync();
- break;
- default:
- break;
- }
- return START_STICKY;
- }
- return super.onStartCommand(intent, flags, startId);
- }
-
- @Override
- public void onLowMemory() {
- if (mSyncTask != null) {
- mSyncTask.cancelSync();
- }
- }
-
- /**
- * onBind 方法在这个服务中没有被使用
- */
- public IBinder onBind(Intent intent) {
- return null;
- }
-
- // 发送带有同步状态和进度消息的广播
- public void sendBroadcast(String msg) {
- mSyncProgress = msg;
- Intent intent = new Intent(GTASK_SERVICE_BROADCAST_NAME);
- intent.putExtra(GTASK_SERVICE_BROADCAST_IS_SYNCING, mSyncTask != null);
- intent.putExtra(GTASK_SERVICE_BROADCAST_PROGRESS_MSG, msg);
- sendBroadcast(intent);
- }
-
- // 从 Activity 开始同步过程
- public static void startSync(Activity activity) {
- GTaskManager.getInstance().setActivityContext(activity);
- Intent intent = new Intent(activity, GTaskSyncService.class);
- intent.putExtra(GTaskSyncService.ACTION_STRING_NAME, GTaskSyncService.ACTION_START_SYNC);
- activity.startService(intent);
- }
-
- // 从 Context 取消同步过程
- public static void cancelSync(Context context) {
- Intent intent = new Intent(context, GTaskSyncService.class);
- intent.putExtra(GTaskSyncService.ACTION_STRING_NAME, GTaskSyncService.ACTION_CANCEL_SYNC);
- context.startService(intent);
- }
-
- // 检查当前是否正在同步
- public static boolean isSyncing() {
- return mSyncTask != null;
- }
-
- // 获取同步过程中的进度消息
- public static String getProgressString() {
- return mSyncProgress;
- }
-}
\ No newline at end of file
diff --git a/src/src/app/src/main/java/net/micode/notes/model/Note.java b/src/src/app/src/main/java/net/micode/notes/model/Note.java
deleted file mode 100644
index 5a47732..0000000
--- a/src/src/app/src/main/java/net/micode/notes/model/Note.java
+++ /dev/null
@@ -1,269 +0,0 @@
-/*
- * 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.
- */
-//单个便签项,提供了一个笔记模块的功能。包括管理和操作笔记的数据、插入、更新和查询笔记数据,并将数据存储到ContentResolver中
-package net.micode.notes.model;
-import android.content.ContentProviderOperation;//用于描述对内容提供者的单个操作,例如插入、更新或删除数据。
-import android.content.ContentProviderResult;// 用于存储一组内容提供者操作的结果。
-import android.content.ContentUris;//包含用于处理内容URI的实用方法,例如从URI中提取ID等。
-import android.content.ContentValues;// 用于存储键值对形式的数据,通常用于向内容提供者插入新数据或更新现有数据。
-import android.content.Context;//用于访问应用程序全局的上下文信息,例如应用程序资源和类加载器等。
-import android.content.OperationApplicationException;//当应用多个操作到内容提供者时,可能会抛出此异常,表示其中一个操作失败。
-import android.net.Uri;//代表一个统一资源标识符,用于定位数据的位置,常用于访问内容提供者中的数据。
-import android.os.RemoteException;//可能会在跨进程通信时抛出,表示远程过程调用发生错误。
-import android.util.Log;//用于在Android系统中记录日志信息,帮助开发者调试应用程序。
-//上面为标准库,下面为在notes.data包里的用法
-import net.micode.notes.data.Notes;//设置安卓应用程序中笔记和文件夹的一些基本参数和属性
-import net.micode.notes.data.Notes.CallNote;
-import net.micode.notes.data.Notes.DataColumns;
-import net.micode.notes.data.Notes.NoteColumns;
-import net.micode.notes.data.Notes.TextNote;
-
-import java.util.ArrayList;
-
-
-public class Note {
- private ContentValues mNoteDiffValues;//
- private NoteData mNoteData;//note数据
- private static final String TAG = "Note";
- /**
- * Create a new note id for adding a new note to databases
- */
- public static synchronized long getNewNoteId(Context context, long folderId) {
- // Create a new note in the database
- ContentValues values = new ContentValues();//新建values来保存信息
- long createdTime = System.currentTimeMillis();//以当前时间为创建时间
- values.put(NoteColumns.CREATED_DATE, createdTime);//创建时间
- values.put(NoteColumns.MODIFIED_DATE, createdTime);//修改时间
- values.put(NoteColumns.TYPE, Notes.TYPE_NOTE);//类型
- values.put(NoteColumns.LOCAL_MODIFIED, 1);//本地修改标志
- values.put(NoteColumns.PARENT_ID, folderId);//将数据写入数据库表格
- Uri uri = context.getContentResolver().insert(Notes.CONTENT_NOTE_URI, values);
- //ContentResolver()主要是实现外部应用对ContentProvider中的数据
- //进行添加、删除、修改和查询操作
-
- long noteId = 0;
- try {
- noteId = Long.valueOf(uri.getPathSegments().get(1));
-// uri.getPathSegments().get(1) 的作用是从 Uri 对象中获取路径的分段,并返回索引为 1 的分段内容。
-// 在这段代码中,通过调用 uri.getPathSegments() 方法获取到一个 List 对象,其中包含了 Uri 路径的各个分段内容。而后使用 get(1) 方法获取到索引为 1 的分段内容。
-// 根据代码的上下文,可以推测索引为 1 的分段内容代表新生成的笔记的 ID 号。因此,uri.getPathSegments().get(1) 的作用就是从 Uri 中解析出新生成的笔记的 ID 号,并将其作为一个长整型值返回给变量 noteId。
- } catch (NumberFormatException e) {
- Log.e(TAG, "Get note id error :" + e.toString());
- noteId = 0;
- }//try-catch异常处理
- if (noteId == -1) {
- throw new IllegalStateException("Wrong note id:" + noteId);
- }
- return noteId;//生成的新笔记的 ID 号
- }
-
- public Note() {
- mNoteDiffValues = new ContentValues();
- mNoteData = new NoteData();
- }//定义两个变量用来存储便签的数据,一个是存储便签属性、一个是存储便签内容
-
- public void setNoteValue(String key, String value) {//接受两个参数:key 和 value,分别表示属性的键和值。
- mNoteDiffValues.put(key, value);//将 key 和 value 存储到 mNoteDiffValues 对象中
- mNoteDiffValues.put(NoteColumns.LOCAL_MODIFIED, 1);
- mNoteDiffValues.put(NoteColumns.MODIFIED_DATE, System.currentTimeMillis());//修改时间为当前时间
- }//设置数据库表格的标签属性数据
-
- public void setTextData(String key, String value) {
- mNoteData.setTextData(key, value);
- }
- //设置数据库表格的标签文本内容的数据
- public void setTextDataId(long id) {
- mNoteData.setTextDataId(id);
- }
- //设置文本数据的ID
- public long getTextDataId() {
- return mNoteData.mTextDataId;
- }
- //得到文本数据的ID
-
- public void setCallDataId(long id) {
- mNoteData.setCallDataId(id);
- }
- //设置电话号码数据的ID
- public void setCallData(String key, String value) {
- mNoteData.setCallData(key, value);
- }
- //得到电话号码数据的ID
- public boolean isLocalModified() {
- return mNoteDiffValues.size() > 0 || mNoteData.isLocalModified();
- }//判断是否是本地修改
-
- public boolean syncNote(Context context, long noteId) {
- if (noteId <= 0) {//id<=0报错
- throw new IllegalArgumentException("Wrong note id:" + noteId);
- }
-
- if (!isLocalModified()) {
- return true;
- }
-
- /**
- * In theory, once data changed, the note should be updated on {@link NoteColumns#LOCAL_MODIFIED} and
- * {@link NoteColumns#MODIFIED_DATE}. For data safety, though update note fails, we also update the
- * note data info
- */
- if (context.getContentResolver().update(//更新数据库中的笔记数据。
- ContentUris.withAppendedId(Notes.CONTENT_NOTE_URI, noteId), mNoteDiffValues, null,
- null) == 0) {//笔记的 Uri,通过 ContentUris.withAppendedId(Notes.CONTENT_NOTE_URI, noteId) 获取到特定 ID 的笔记的 Uri。
- Log.e(TAG, "Update note error, should not happen");
- // Do not return, fall through
- }//如果更新操作返回的结果为 0(表示没有进行更新操作),则记录错误日志 "Update note error, should not happen",并且在注释中说明不要返回,而是继续执行后面的代码。
- mNoteDiffValues.clear();
-
- if (mNoteData.isLocalModified()
- && (mNoteData.pushIntoContentResolver(context, noteId) == null)) {
- return false;
- }
-
- return true;
- }//判断是否同步
-
- private class NoteData {//定义一个基本的便签内容的数据类,主要包含文本数据和电话号码数据
- private long mTextDataId;
-
- private ContentValues mTextDataValues;//文本数据
-
- private long mCallDataId;
-
- private ContentValues mCallDataValues;//电话号码数据
-
- private static final String TAG = "NoteData";
-
- public NoteData() {//初始化NoteData
- mTextDataValues = new ContentValues();
- mCallDataValues = new ContentValues();
- mTextDataId = 0;
- mCallDataId = 0;
- }
- // 函数实现部分
- boolean isLocalModified() {
- return mTextDataValues.size() > 0 || mCallDataValues.size() > 0;
- }//判断是否本地修改,即是否有新电话号码数据或文本数据
-
- void setTextDataId(long id) {
- if(id <= 0) {//id<=0报错
- throw new IllegalArgumentException("Text data id should larger than 0");
- }
- mTextDataId = id;
- }
-
- void setCallDataId(long id) {
- if (id <= 0) {
- throw new IllegalArgumentException("Call data id should larger than 0");
- }
- mCallDataId = id;
- }
-
- void setCallData(String key, String value) {
- mCallDataValues.put(key, value);
- mNoteDiffValues.put(NoteColumns.LOCAL_MODIFIED, 1);
- mNoteDiffValues.put(NoteColumns.MODIFIED_DATE, System.currentTimeMillis());
- }
-
- void setTextData(String key, String value) {
- mTextDataValues.put(key, value);
- mNoteDiffValues.put(NoteColumns.LOCAL_MODIFIED, 1);
- mNoteDiffValues.put(NoteColumns.MODIFIED_DATE, System.currentTimeMillis());
- }
-
- //下面函数的作用是将新的数据通过Uri的操作存储到数据库
- Uri pushIntoContentResolver(Context context, long noteId) {
- /**
- * Check for safety
- */
- if (noteId <= 0) {
- throw new IllegalArgumentException("Wrong note id:" + noteId);
- }//判断是否合法
-
- ArrayList operationList = new ArrayList();
- ContentProviderOperation.Builder builder = null;//数据库的操作列表
-
- if(mTextDataValues.size() > 0) {//有文本数据
- mTextDataValues.put(DataColumns.NOTE_ID, noteId);//如果有文本数据,首先将笔记的 ID(noteId)存储到 mTextDataValues 中
- if (mTextDataId == 0) {//如果是 0,表示当前没有对应的文本数据记录,需要进行插入操作。
- mTextDataValues.put(DataColumns.MIME_TYPE, TextNote.CONTENT_ITEM_TYPE);
- //在插入操作中,设置 mTextDataValues 的 MIME 类型为 TextNote.CONTENT_ITEM_TYPE,表示文本类型的数据。
- Uri uri = context.getContentResolver().insert(Notes.CONTENT_DATA_URI,
- mTextDataValues);//通过 context.getContentResolver().insert() 方法将 mTextDataValues 插入到 DataColumns 表中,并返回插入数据的 Uri。
- //尝试从插入返回的 Uri 中获取新插入数据的 ID,并将其转换为 Long 类型,并存储到 mTextDataId 中。若转换失败,记录错误日志并清空 mTextDataValues,然后返回 null。
- try {
- setTextDataId(Long.valueOf(uri.getPathSegments().get(1)));
- } catch (NumberFormatException e) {
- Log.e(TAG, "Insert new text data fail with noteId" + noteId);
- mTextDataValues.clear();
- return null;
- }
- } else {//如果 mTextDataId 不为 0,则表示已存在对应的文本数据记录,需要进行更新操作。
- builder = ContentProviderOperation.newUpdate(ContentUris.withAppendedId(
- Notes.CONTENT_DATA_URI, mTextDataId));//通过 ContentUris.withAppendedId() 获取特定 ID 的文本数据记录的 Uri,并设置更新值为 mTextDataValues。
- builder.withValues(mTextDataValues);
- operationList.add(builder.build());//将更新操作添加到 operationList 中。
- }
- mTextDataValues.clear();//清空 mTextDataValues。
- }//把文本数据存入DataColumns
-
- if(mCallDataValues.size() > 0) {//有电话号码。用于将电话号码数据存储到数据库的 DataColumns 表中
- mCallDataValues.put(DataColumns.NOTE_ID, noteId);//如果有电话号码数据,首先将笔记的 ID(noteId)存储到 mCallDataValues 中。
- if (mCallDataId == 0) {//判断 mCallDataId 是否为 0。如果是 0,表示当前没有对应的电话号码数据记录,需要进行插入操作。
- mCallDataValues.put(DataColumns.MIME_TYPE, CallNote.CONTENT_ITEM_TYPE);
- Uri uri = context.getContentResolver().insert(Notes.CONTENT_DATA_URI,
- mCallDataValues);
- //在插入操作中,设置 mCallDataValues 的 MIME 类型为 CallNote.CONTENT_ITEM_TYPE,表示电话号码类型的数据。
- // 然后通过 context.getContentResolver().insert() 方法将 mCallDataValues 插入到 DataColumns 表中,并返回插入数据的 Uri。
-
- //尝试从插入返回的 Uri 中获取新插入数据的 ID,并将其转换为 Long 类型,并存储到 mCallDataId 中。若转换失败,记录错误日志并清空 mCallDataValues,然后返回 null。
- try {
- setCallDataId(Long.valueOf(uri.getPathSegments().get(1)));
- } catch (NumberFormatException e) {
- Log.e(TAG, "Insert new call data fail with noteId" + noteId);
- mCallDataValues.clear();
- return null;
- }
- } else {//如果 mCallDataId 不为 0,则表示已存在对应的电话号码数据记录,需要进行更新操作。
- builder = ContentProviderOperation.newUpdate(ContentUris.withAppendedId(
- Notes.CONTENT_DATA_URI, mCallDataId));//创建一个 ContentProviderOperation.Builder 对象,通过 ContentUris.withAppendedId() 获取特定 ID 的电话号码数据记录的 Uri,并设置更新值为 mCallDataValues。
- builder.withValues(mCallDataValues);
- operationList.add(builder.build());////将更新操作添加到 operationList 中。
- }
- mCallDataValues.clear();//清空 mCallDataValues。
- }//把电话号码数据存入DataColumns
-//将电话号码数据与笔记关联起来,方便后续读取和展示。
-
-
- if (operationList.size() > 0) {//总长大于0
-// 在 try-catch 块中,捕获可能发生的 RemoteException 和 OperationApplicationException 异常。
- try {
- ContentProviderResult[] results = context.getContentResolver().applyBatch(
- Notes.AUTHORITY, operationList);
- return (results == null || results.length == 0 || results[0] == null) ? null
- : ContentUris.withAppendedId(Notes.CONTENT_NOTE_URI, noteId);
- } catch (RemoteException e) {
- Log.e(TAG, String.format("%s: %s", e.toString(), e.getMessage()));
- return null;
- } catch (OperationApplicationException e) {
- Log.e(TAG, String.format("%s: %s", e.toString(), e.getMessage()));
- return null;
- }
- }
- return null;
- }//存储过程中的异常处理
- }
-}
diff --git a/src/src/app/src/main/java/net/micode/notes/model/WorkingNote.java b/src/src/app/src/main/java/net/micode/notes/model/WorkingNote.java
deleted file mode 100644
index c16bbfc..0000000
--- a/src/src/app/src/main/java/net/micode/notes/model/WorkingNote.java
+++ /dev/null
@@ -1,449 +0,0 @@
-/*
- * 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.model;
-
-import android.appwidget.AppWidgetManager;//用于管理Android应用中的小部件。
-import android.content.ContentUris;//提供了用于处理内容URI的实用方法,用于获取数据的URI。
-import android.content.Context;//用于访问应用程序的全局信息和资源。
-import android.database.Cursor;//用于在数据库查询结果集中进行遍历和操作。
-import android.text.TextUtils;//提供了一些处理文本的实用方法,如判断字符串是否为空或空白。
-import android.util.Log;//用于在调试时输出日志信息。
-
-import net.micode.notes.data.Notes;
-import net.micode.notes.data.Notes.CallNote;
-import net.micode.notes.data.Notes.DataColumns;
-import net.micode.notes.data.Notes.DataConstants;
-import net.micode.notes.data.Notes.NoteColumns;
-import net.micode.notes.data.Notes.TextNote;
-import net.micode.notes.tool.ResourceParser.NoteBgResources;
-
-//定义WorkingNote
-public class WorkingNote {
- // Note for the working note
- private static String mPassword=null;
- private static Note mNote;
- // Note Id
- private long mNoteId;
- // Note content
- public String mContent;
- // Note mode
- private int mMode;
-
- //模式值,初始化为0
- private long mAlertDate;
- //警戒值
- private long mModifiedDate;
- //修改值
- private int mBgColorId;
- //颜色
- private int mWidgetId;
-//宽 ID
- private int mWidgetType;
- private long mFolderId;
-
- private Context mContext;
-
- private static final String TAG = "WorkingNote";
-
- private boolean mIsDeleted;
- //删除时改变
- private boolean mchange=true;//是否可写
-
- private NoteSettingChangedListener mNoteSettingStatusListener;
- //判断设置是否改变,默认为0
- private String mPasscode;
-
- // 声明 DATA_PROJECTION字符串数组
- public static final String[] DATA_PROJECTION = new String[] {
- DataColumns.ID,
- DataColumns.CONTENT,
- DataColumns.MIME_TYPE,
- DataColumns.DATA1,
- DataColumns.DATA2,
- DataColumns.DATA3,
- DataColumns.DATA4,
- };
- // 声明 NOTE_PROJECTION字符串数组
- public static final String[] NOTE_PROJECTION = new String[] {
- NoteColumns.PARENT_ID,
- NoteColumns.ALERTED_DATE,
- NoteColumns.BG_COLOR_ID,
- NoteColumns.WIDGET_ID,
- NoteColumns.WIDGET_TYPE,
- NoteColumns.MODIFIED_DATE
- };
-
- private static final int DATA_ID_COLUMN = 0;
-
- private static final int DATA_CONTENT_COLUMN = 1;
-
- private static final int DATA_MIME_TYPE_COLUMN = 2;
-
- private static final int DATA_MODE_COLUMN = 3;
-
- private static final int NOTE_PARENT_ID_COLUMN = 0;
-
- private static final int NOTE_ALERTED_DATE_COLUMN = 1;
-
- private static final int NOTE_BG_COLOR_ID_COLUMN = 2;
-
- private static final int NOTE_WIDGET_ID_COLUMN = 3;
-
- private static final int NOTE_WIDGET_TYPE_COLUMN = 4;
-
- private static final int NOTE_MODIFIED_DATE_COLUMN = 5;
- // WorkingNote的构造函数
- // New note construct
- private WorkingNote(Context context, long folderId) {
- mContext = context;
- mAlertDate = 0;
- mModifiedDate = System.currentTimeMillis();//将修改日期设置为当前时间的毫秒数。
- mFolderId = folderId;//将传入的文件夹 ID 赋值给 mFolderId。
- mNote = new Note();
- mNoteId = 0;
- mIsDeleted = false;
- mMode = 0;
- mWidgetType = Notes.TYPE_WIDGET_INVALIDE;//:将小部件类型设置为无效类型(Notes.TYPE_WIDGET_INVALIDE)。
- }
-
- // Existing note construct
- private WorkingNote(Context context, long noteId, long folderId) {
- mContext = context;
- mNoteId = noteId;
- mFolderId = folderId;
- mIsDeleted = false;
- mNote = new Note();
- loadNote();
- }
- // 通过数据库调用query函数找到第一个条目
- // 加载Note
-
-
- private void loadNote() {
-// 用游标访问数据库
- Cursor cursor = mContext.getContentResolver().query(
- ContentUris.withAppendedId(Notes.CONTENT_NOTE_URI, mNoteId), NOTE_PROJECTION, null,
- null, null);
- if (cursor != null) {
- if (cursor.moveToFirst()) {
- mFolderId = cursor.getLong(NOTE_PARENT_ID_COLUMN);
- mBgColorId = cursor.getInt(NOTE_BG_COLOR_ID_COLUMN);
- mWidgetId = cursor.getInt(NOTE_WIDGET_ID_COLUMN);
- mWidgetType = cursor.getInt(NOTE_WIDGET_TYPE_COLUMN);
- mAlertDate = cursor.getLong(NOTE_ALERTED_DATE_COLUMN);
- mModifiedDate = cursor.getLong(NOTE_MODIFIED_DATE_COLUMN);
-
- }
- cursor.close();
- // 若不存在,报错
- } else {
- Log.e(TAG, "No note with id:" + mNoteId);
- throw new IllegalArgumentException("Unable to find note with id " + mNoteId);
- }
- loadNoteData();
- }
- // 加载NoteData
- private void loadNoteData() {
- Cursor cursor = mContext.getContentResolver().query(Notes.CONTENT_DATA_URI, DATA_PROJECTION,
- DataColumns.NOTE_ID + "=?", new String[] {
- String.valueOf(mNoteId)
- }, null);
-//根据ID加载note
- if (cursor != null) { // 查到信息不为空
- if (cursor.moveToFirst()) { // 查看第一项是否存在
- do {
- String type = cursor.getString(DATA_MIME_TYPE_COLUMN);
- if (DataConstants.NOTE.equals(type)) {
- mContent = cursor.getString(DATA_CONTENT_COLUMN);
- mMode = cursor.getInt(DATA_MODE_COLUMN);
- mNote.setTextDataId(cursor.getLong(DATA_ID_COLUMN));
- } else if (DataConstants.CALL_NOTE.equals(type)) {
- mNote.setCallDataId(cursor.getLong(DATA_ID_COLUMN));
- } else {
- Log.d(TAG, "Wrong note type with type:" + type);
- }
- } while (cursor.moveToNext()); //查阅所有项,直到为空
- }
- cursor.close();
- } else { //没有便签则报错
- Log.e(TAG, "No data with id:" + mNoteId);
- throw new IllegalArgumentException("Unable to find note's data with id " + mNoteId);
- }
- }
-
- // 创建空的Note
- // 传参:context,文件夹id,widget,背景颜色
- public static WorkingNote createEmptyNote(Context context, long folderId, int widgetId,
- int widgetType, int defaultBgColorId) {
- WorkingNote note = new WorkingNote(context, folderId);
- note.setBgColorId(defaultBgColorId);// 设定颜色,widget
- note.setWidgetId(widgetId);
- note.setWidgetType(widgetType);
- return note;
- }
- //根据id加载note
- public static WorkingNote load(Context context, long id) {
- return new WorkingNote(context, id, 0);
- }
- //保存Note
- public synchronized boolean saveNote() {
- if(!mchange){//是否为只读模式
- return true;
- }
- if (isWorthSaving()) {////是否值得保存
- if (!existInDatabase()) {//是否存在数据库中
- if ((mNoteId = Note.getNewNoteId(mContext, mFolderId)) == 0) { //ID为0,报错
- Log.e(TAG, "Create new note fail with id:" + mNoteId);
- return false;
- }
- }
-
- mNote.syncNote(mContext, mNoteId);//保存
-
- /**
- * Update widget content if there exist any widget of this note
- */
- if (mWidgetId != AppWidgetManager.INVALID_APPWIDGET_ID
- && mWidgetType != Notes.TYPE_WIDGET_INVALIDE
- && mNoteSettingStatusListener != null) {
- mNoteSettingStatusListener.onWidgetChanged();// 状态变为已保存
-
- }
- return true;
- } else {
- return false;
- }
- }
-
- public boolean existInDatabase() {
- return mNoteId > 0;
- }
- //判断数据库是否存在该便签
- private boolean isWorthSaving() {
- // 被删除,或(不在数据库中 内容为空),或 本地已保存过
- if (mIsDeleted || (!existInDatabase() && TextUtils.isEmpty(mContent))
- || (existInDatabase() && !mNote.isLocalModified())) {
- return false;
- } else {
- return true;
- }
- }
- // 设置mNoteSettingStatusListener
- public void setOnSettingStatusChangedListener(NoteSettingChangedListener l) {
- mNoteSettingStatusListener = l;
- }
- // 设置AlertDate
- // 若 mAlertDate与data不同,则更改mAlertDate并设定NoteValue
-
- public void setAlertDate(long date, boolean set) {
- if (date != mAlertDate) {
- mAlertDate = date;
- mNote.setNoteValue(NoteColumns.ALERTED_DATE, String.valueOf(mAlertDate));
- }
- if (mNoteSettingStatusListener != null) {
- mNoteSettingStatusListener.onClockAlertChanged(date, set);
- }
- }
- // 设定删除标记
- public void markDeleted(boolean mark) {
- mIsDeleted = mark; //设定标记
- if (mWidgetId != AppWidgetManager.INVALID_APPWIDGET_ID
- && mWidgetType != Notes.TYPE_WIDGET_INVALIDE && mNoteSettingStatusListener != null) {
- mNoteSettingStatusListener.onWidgetChanged();
- // 调用mNoteSettingStatusListener的 onWidgetChanged方法
- }
- }
- // 设定背景颜色
- public void setBgColorId(int id) {
- if (id != mBgColorId) {
- mBgColorId = id;
- if (mNoteSettingStatusListener != null) {
- mNoteSettingStatusListener.onBackgroundColorChanged();
- }
- mNote.setNoteValue(NoteColumns.BG_COLOR_ID, String.valueOf(id));
- }
- }
- // 设定检查列表模式
- // 参数:mode
- public void setCheckListMode(int mode) {
- if (mMode != mode) { //设定条件 mMode != mode,才改变
- if (mNoteSettingStatusListener != null) {
- mNoteSettingStatusListener.onCheckListModeChanged(mMode, mode);
- }
- mMode = mode;
- mNote.setTextData(TextNote.MODE, String.valueOf(mMode));
- }
- }
- // 设定WidgetType
- // 参数:type
- public void setWidgetType(int type) {
- if (type != mWidgetType) {//设定条件 type != mWidgetType
- mWidgetType = type;
- mNote.setNoteValue(NoteColumns.WIDGET_TYPE, String.valueOf(mWidgetType));
- // 调用Note的setNoteValue方法更改WidgetType
- }
- }
- // 设定WidgetId
- // 参数:id
- public void setWidgetId(int id) {
- if (id != mWidgetId) {
- mWidgetId = id;
- mNote.setNoteValue(NoteColumns.WIDGET_ID, String.valueOf(mWidgetId));
- // 调用Note的setNoteValue方法更改WidgetId
-
- }
- }
- // 设定WorkingText
- // 参数:更改的text
- public void setWorkingText(String text) {
- if (!TextUtils.equals(mContent, text)) {//设定条件 mContent, text内容不同
- mContent = text;
- mNote.setTextData(DataColumns.CONTENT, mContent);
-
- // 调用Note的setTextData方法更改WorkingText
-
- }
- }
- // 转变mNote的CallData及CallNote信息
- // 参数:String phoneNumber, long callDate
- public void convertToCallNote(String phoneNumber, long callDate) {
- mNote.setCallData(CallNote.CALL_DATE, String.valueOf(callDate));
- mNote.setCallData(CallNote.PHONE_NUMBER, phoneNumber);
- mNote.setNoteValue(NoteColumns.PARENT_ID, String.valueOf(Notes.ID_CALL_RECORD_FOLDER));
- }
- // 判断是否有时钟题型
- public boolean hasClockAlert() {
- return (mAlertDate > 0);
- }
-
- // 获取Content
- public String getContent() {
- return mContent;
- }
-
- // 获取AlertDate
- public long getAlertDate() {
- return mAlertDate;
- }
-
- // 获取ModifiedDate
- public long getModifiedDate() {
- return mModifiedDate;
- }
-
- // 获取背景颜色来源id
- public int getBgColorResId() {
- return NoteBgResources.getNoteBgResource(mBgColorId);
- }
-
- // 获取背景颜色id
- public int getBgColorId() {
- return mBgColorId;
- }
-
- // 获取标题背景颜色id
- public int getTitleBgResId() {
- return NoteBgResources.getNoteTitleBgResource(mBgColorId);
- }
-
- // 获取CheckListMode
- public int getCheckListMode() {
- return mMode;
- }
-
- // 获取便签id
- public long getNoteId() {
- return mNoteId;
- }
-
-
- // 获取文件夹id
- public long getFolderId() {
- return mFolderId;
- }
-
- // 获取WidgetId
- public int getWidgetId() {
- return mWidgetId;
- }
-
- // 获取WidgetType
- public int getWidgetType() {
- return mWidgetType;
- }
- /**判断是否已经设置密码*/
- public boolean hasPasscode() {
- return !mPasscode.equals("");
- }
-
- /**设置便签访问密码,并存入数据库*/
- public void setPasscode(String passcode) {
- mPasscode = passcode;
- mNote.setNoteValue(NoteColumns.PASSCODE, passcode);
- }
- // 创建接口 NoteSettingChangedListener,便签更新监视
- // 为NoteEditActivity提供接口
- // 提供函数有
- /**获取设置的密码*/
- public String getPasscode() {
- return mPasscode;
- }
- public interface NoteSettingChangedListener {
- /**
- * Called when the background color of current note has just changed
- */
- void onBackgroundColorChanged();
-
- /**
- * Called when user set clock
- */
- void onClockAlertChanged(long date, boolean set);
-
- /**
- * Call when user create note from widget
- */
- void onWidgetChanged();
-
- /**
- * Call when switch between check list mode and normal mode
- * @param oldMode is previous mode before change
- * @param newMode is new mode
- */
- void onCheckListModeChanged(int oldMode, int newMode);
-
- }
- public static void setPassword(String password){
- //将该类的mPassword属性设置为新的访问密码
- mPassword = password;
- //将修改后的便签密码写入到便签数据库中
- mNote.setNoteValue(NoteColumns.PASSWORD,String.valueOf(mPassword));
- }
- public String getmPassword(){
-//返回便签密码
- return mPassword;
- }
- public void deletePassword(){
-// 将密码重新置为空
- mPassword=null;
- mNote.setNoteValue(NoteColumns.PASSWORD,String.valueOf(mPassword));
- }
- public void change(){
-// 改变可写状态
- mchange=!(mchange);
- mNote.setNoteValue(NoteColumns.CHANGE,String.valueOf(mchange));
- }
-}
diff --git a/src/src/app/src/main/java/net/micode/notes/tool/BackupUtils.java b/src/src/app/src/main/java/net/micode/notes/tool/BackupUtils.java
deleted file mode 100644
index 4fef28b..0000000
--- a/src/src/app/src/main/java/net/micode/notes/tool/BackupUtils.java
+++ /dev/null
@@ -1,353 +0,0 @@
-/*
- * 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.tool;
-
-import android.content.Context;//导入 Android 应用程序上下文(Context)类。
-import android.database.Cursor;//导入 Android 数据库查询结果集(Cursor)类。
-import android.os.Environment;//导入 Android 系统环境(Environment)类。
-import android.text.TextUtils;//导入 Android 文本工具(TextUtils)类。
-import android.text.format.DateFormat;//导入 Android 日期时间格式化(DateFormat)类。
-import android.util.Log;//导入 Android 日志(Log)类。
-
-import net.micode.notes.R;
-import net.micode.notes.data.Notes;
-import net.micode.notes.data.Notes.DataColumns;
-import net.micode.notes.data.Notes.DataConstants;
-import net.micode.notes.data.Notes.NoteColumns;
-
-import java.io.File;//导入 Java 的文件(File)类,用于表示文件和目录的抽象路径名。
-import java.io.FileNotFoundException;//导入 Java 的文件找不到异常(FileNotFoundException)类,用于处理文件未找到的异常情况。
-import java.io.FileOutputStream;//导入 Java 的文件输出流(FileOutputStream)类,用于将数据写入文件。
-import java.io.IOException;//导入 Java 的输入输出异常(IOException)类,用于处理输入输出操作中可能发生的异常情况。
-import java.io.PrintStream;//导入 Java 的打印流(PrintStream)类,用于向标准输出流打印输出。
-
-
-//备份的处理
-public class BackupUtils {
- private static final String TAG = "BackupUtils";//定义了一个私有的静态字符串常量 TAG,用于日志输出。
- // Singleton stuff
- private static BackupUtils sInstance;//定义了一个私有的静态成员变量 sInstance,表示单例对象。
-
- public static synchronized BackupUtils getInstance(Context context) {
- if (sInstance == null) {
- //如果当前备份不存在,则新声明一个
- sInstance = new BackupUtils(context);//并将传入的上下文参数赋值给它
-
- }
- return sInstance;//。最后返回 sInstance。
- }
-
- /**
- * Following states are signs to represents backup or restore
- * status
- */
- // Currently, the sdcard is not mounted SD卡没有被装入手机
- public static final int STATE_SD_CARD_UNMOUONTED = 0;
- // The backup file not exist 备份文件夹不存在
- public static final int STATE_BACKUP_FILE_NOT_EXIST = 1;
- // The data is not well formated, may be changed by other programs数据已被破坏,可能被修改
- public static final int STATE_DATA_DESTROIED = 2;
- // Some run-time exception which causes restore or backup fails超时异常
- public static final int STATE_SYSTEM_ERROR = 3;
- // Backup or restore success成功存储
- public static final int STATE_SUCCESS = 4;
- //备份或恢复成功。
- private TextExport mTextExport;//声明了一个私有成员变量 mTextExport,表示文本导出对象。
-
-
- //初始化函数
- private BackupUtils(Context context) {
- mTextExport = new TextExport(context);
- }//用于初始化 BackupUtils 对象
-
- //外部存储功能是否可用
- private static boolean externalStorageAvailable() {//外部存储功能是否可用
- return Environment.MEDIA_MOUNTED.equals(Environment.getExternalStorageState());
- }//用于检查外部存储是否可用。它通过比较外部存储的状态是否为 Environment.MEDIA_MOUNTED 来判断外部存储是否可用,并返回布尔值。
-
- //
- public int exportToText() {
- return mTextExport.exportToText();
- }
- //用于导出数据到文本文件。该方法调用了 mTextExport 对象的 exportToText() 方法,并返回结果。
- public String getExportedTextFileName() {
- return mTextExport.mFileName;
- }
- // 用于获取导出的文本文件名。该方法返回 mTextExport 对象的 mFileName 属性。
- public String getExportedTextFileDir() {
- return mTextExport.mFileDirectory;
- }
- // 用于获取导出的文本文件目录。该方法返回 mTextExport 对象的 mFileDirectory 属性。
- private static class TextExport {
- private static final String[] NOTE_PROJECTION = {
- NoteColumns.ID,//表示笔记的唯一标识符。
- NoteColumns.MODIFIED_DATE,//表示笔记的修改日期。
- NoteColumns.SNIPPET,//表示笔记的摘要或片段。
- NoteColumns.TYPE//表示笔记的类型。
- };
-
- private static final int NOTE_COLUMN_ID = 0;
-
- private static final int NOTE_COLUMN_MODIFIED_DATE = 1;
-
- private static final int NOTE_COLUMN_SNIPPET = 2;
-
- private static final String[] DATA_PROJECTION = {
- DataColumns.CONTENT,
- DataColumns.MIME_TYPE,
- DataColumns.DATA1,
- DataColumns.DATA2,
- DataColumns.DATA3,
- DataColumns.DATA4,
- };
-
- private static final int DATA_COLUMN_CONTENT = 0;
-
- private static final int DATA_COLUMN_MIME_TYPE = 1;
-
- private static final int DATA_COLUMN_CALL_DATE = 2;
-
- private static final int DATA_COLUMN_PHONE_NUMBER = 4;
-
- private final String [] TEXT_FORMAT;
- private static final int FORMAT_FOLDER_NAME = 0;
- private static final int FORMAT_NOTE_DATE = 1;
- private static final int FORMAT_NOTE_CONTENT = 2;
-
- private Context mContext;
- private String mFileName;
- private String mFileDirectory;
- //导出文本功能,将其作为字符串形式导出
- public TextExport(Context context) {
- TEXT_FORMAT = context.getResources().getStringArray(R.array.format_for_exported_note);
- mContext = context;
- mFileName = "";
- mFileDirectory = "";
- }
-
- private String getFormat(int id) {
- return TEXT_FORMAT[id];
- }
-
- /**
- * Export the folder identified by folder id to text
- */
- private void exportFolderToText(String folderId, PrintStream ps) {
- // Query notes belong to this folder通过查询parent id是文件夹id的note来选出制定ID文件夹下的Note
- Cursor notesCursor = mContext.getContentResolver().query(Notes.CONTENT_NOTE_URI,
- NOTE_PROJECTION, NoteColumns.PARENT_ID + "=?", new String[] {
- folderId
- }, null);
-
- if (notesCursor != null) {//有内容
- if (notesCursor.moveToFirst()) {
- do {
- // Print note's last modified date ps里面保存有这份note的日期
- ps.println(String.format(getFormat(FORMAT_NOTE_DATE), DateFormat.format(
- mContext.getString(R.string.format_datetime_mdhm),
- notesCursor.getLong(NOTE_COLUMN_MODIFIED_DATE))));
- // Query data belong to this note
- String noteId = notesCursor.getString(NOTE_COLUMN_ID);
- exportNoteToText(noteId, ps); //将文件导出到text
- } while (notesCursor.moveToNext());
- }
- notesCursor.close();
- }
- }
-
- /**
- * Export note identified by id to a print stream
- */
- private void exportNoteToText(String noteId, PrintStream ps) {
-// 通过 mContext.getContentResolver().query() 方法查询数据库,获取与指定笔记 ID 相关的数据。
- Cursor dataCursor = mContext.getContentResolver().query(Notes.CONTENT_DATA_URI,
- DATA_PROJECTION, DataColumns.NOTE_ID + "=?", new String[] {
- noteId
- }, null);
-
- if (dataCursor != null) {
- if (dataCursor.moveToFirst()) {
- do {
- String mimeType = dataCursor.getString(DATA_COLUMN_MIME_TYPE);
- if (DataConstants.CALL_NOTE.equals(mimeType)) {//是否类型相同
- // Print phone number
- // Print phone number
- String phoneNumber = dataCursor.getString(DATA_COLUMN_PHONE_NUMBER);
- long callDate = dataCursor.getLong(DATA_COLUMN_CALL_DATE);
- String location = dataCursor.getString(DATA_COLUMN_CONTENT);
-
- if (!TextUtils.isEmpty(phoneNumber)) {//判断是否为空字符
- ps.println(String.format(getFormat(FORMAT_NOTE_CONTENT),
- phoneNumber));
- }
- // Print call date
- ps.println(String.format(getFormat(FORMAT_NOTE_CONTENT), DateFormat
- .format(mContext.getString(R.string.format_datetime_mdhm),
- callDate)));
- // Print call attachment location
- if (!TextUtils.isEmpty(location)) {
- ps.println(String.format(getFormat(FORMAT_NOTE_CONTENT),
- location));
- }
- } else if (DataConstants.NOTE.equals(mimeType)) {
- String content = dataCursor.getString(DATA_COLUMN_CONTENT);
- if (!TextUtils.isEmpty(content)) {
- ps.println(String.format(getFormat(FORMAT_NOTE_CONTENT),
- content));
- }
- }
- } while (dataCursor.moveToNext());
- }
- dataCursor.close();
- }
- // print a line separator between note
- try {//如果在输出时发生异常,则会记录日志。
- ps.write(new byte[] {
- Character.LINE_SEPARATOR, Character.LETTER_NUMBER
- });
- } catch (IOException e) {
- Log.e(TAG, e.toString());
- }
- }
-
- /**
- * Note will be exported as text which is user readable
- */
- public int exportToText() {//总函数,调用上面的exportFolder和exportNote
- if (!externalStorageAvailable()) {
- Log.d(TAG, "Media was not mounted");
- return STATE_SD_CARD_UNMOUONTED;
- }
-
- PrintStream ps = getExportToTextPrintStream();
- if (ps == null) {
- Log.e(TAG, "get print stream error");
- return STATE_SYSTEM_ERROR;
- }
- // First export folder and its notes 导出文件夹,就是导出里面包含的便签
- Cursor folderCursor = mContext.getContentResolver().query(
- Notes.CONTENT_NOTE_URI,
- NOTE_PROJECTION,
- "(" + NoteColumns.TYPE + "=" + Notes.TYPE_FOLDER + " AND "
- + NoteColumns.PARENT_ID + "<>" + Notes.ID_TRASH_FOLER + ") OR "
- + NoteColumns.ID + "=" + Notes.ID_CALL_RECORD_FOLDER, null, null);
-
- if (folderCursor != null) {
- if (folderCursor.moveToFirst()) {
- do {
- // Print folder's name
- String folderName = "";
- if(folderCursor.getLong(NOTE_COLUMN_ID) == Notes.ID_CALL_RECORD_FOLDER) {
- folderName = mContext.getString(R.string.call_record_folder_name);
- } else {
- folderName = folderCursor.getString(NOTE_COLUMN_SNIPPET);
- }
- if (!TextUtils.isEmpty(folderName)) {
- ps.println(String.format(getFormat(FORMAT_FOLDER_NAME), folderName));
- }
- String folderId = folderCursor.getString(NOTE_COLUMN_ID);
- exportFolderToText(folderId, ps);
- } while (folderCursor.moveToNext());
- }
- folderCursor.close();
- }
-
- // Export notes in root's folder将根目录里的便签导出(由于不属于任何文件夹,因此无法通过文件夹导出来实现这一部分便签的导出)
- Cursor noteCursor = mContext.getContentResolver().query(
- Notes.CONTENT_NOTE_URI,
- NOTE_PROJECTION,
- NoteColumns.TYPE + "=" + +Notes.TYPE_NOTE + " AND " + NoteColumns.PARENT_ID
- + "=0", null, null);
-
- if (noteCursor != null) {
- if (noteCursor.moveToFirst()) {
- do {
- ps.println(String.format(getFormat(FORMAT_NOTE_DATE), DateFormat.format(
- mContext.getString(R.string.format_datetime_mdhm),
- noteCursor.getLong(NOTE_COLUMN_MODIFIED_DATE))));
- // Query data belong to this note
- String noteId = noteCursor.getString(NOTE_COLUMN_ID);
- exportNoteToText(noteId, ps);
- } while (noteCursor.moveToNext());
- }
- noteCursor.close();
- }
- ps.close();
-
- return STATE_SUCCESS;
- }
-
- /**
- * Get a print stream pointed to the file {@generateExportedTextFile}
- */
- private PrintStream getExportToTextPrintStream() {
- File file = generateFileMountedOnSDcard(mContext, R.string.file_path,
- R.string.file_name_txt_format);//导出后的文件路径
- if (file == null) {
- Log.e(TAG, "create file to exported failed");
- return null;
- }
- mFileName = file.getName();
- mFileDirectory = mContext.getString(R.string.file_path);
- PrintStream ps = null;
- try {
- FileOutputStream fos = new FileOutputStream(file);
- ps = new PrintStream(fos);
- } catch (FileNotFoundException e) {
- e.printStackTrace();
- return null;
- } catch (NullPointerException e) {
- e.printStackTrace();
- return null;
- }
- return ps;
- }
- }
-
- /**
- * Generate the text file to store imported data
- */
- private static File generateFileMountedOnSDcard(Context context, int filePathResId, int fileNameFormatResId) {
- StringBuilder sb = new StringBuilder();//创建一个 StringBuilder 对象 sb,用于构建文件的路径。
- sb.append(Environment.getExternalStorageDirectory()); //外部(SD卡)的存储路径
- sb.append(context.getString(filePathResId));//文件的存储路径
- File filedir = new File(sb.toString());//filedir应该就是用来存储路径信息
- sb.append(context.getString(
- fileNameFormatResId,
- DateFormat.format(context.getString(R.string.format_date_ymd),
- System.currentTimeMillis())));//将资源 ID 为 fileNameFormatResId 的字符串添加到 sb 中,该字符串是文件名的格式化模板,其中使用了当前时间进行格式化。
- File file = new File(sb.toString());
- try { //如果这些文件不存在,则新建
- if (!filedir.exists()) {
- filedir.mkdir();
- }
- if (!file.exists()) {
- file.createNewFile();
- }
- return file;
- } catch (SecurityException e) {
- e.printStackTrace();
- } catch (IOException e) {
- e.printStackTrace();
- }
-
-// try catch 异常处理
- return null;
- }
-}
-
-
diff --git a/src/src/app/src/main/java/net/micode/notes/tool/DataUtils.java b/src/src/app/src/main/java/net/micode/notes/tool/DataUtils.java
deleted file mode 100644
index cc1a787..0000000
--- a/src/src/app/src/main/java/net/micode/notes/tool/DataUtils.java
+++ /dev/null
@@ -1,306 +0,0 @@
-/*
- * 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.tool;
-
-import android.content.ContentProviderOperation;//导入 Android 内容提供者操作(ContentProviderOperation)类,用于操作内容提供者中的数据。
-import android.content.ContentProviderResult;//导入 Android 内容提供者结果(ContentProviderResult)类,用于存储内容提供者操作的结果。
-import android.content.ContentResolver;//导入 Android 内容解析器(ContentResolver)类,用于访问应用程序中的各种内容提供者。
-import android.content.ContentUris;//导入 Android 内容 URI(ContentUris)类,用于处理内容提供者的 URI。
-import android.content.ContentValues;//导入 Android 内容值(ContentValues)类,用于封装要插入或更新到内容提供者中的数据。
-import android.content.OperationApplicationException;//导入 Android 操作应用程序异常(OperationApplicationException)类,用于处理内容提供者操作时可能出现的异常情况。
-import android.database.Cursor;//导入 Android 数据库查询结果集(Cursor)类,用于表示数据库查询结果集。
-import android.os.RemoteException;//导入 Android 远程操作异常(RemoteException)类,用于处理远程操作时可能出现的异常情况。
-import android.util.Log;//导入 Android 日志(Log)类,用于记录调试信息。
-
-import net.micode.notes.data.Notes;
-import net.micode.notes.data.Notes.CallNote;
-import net.micode.notes.data.Notes.NoteColumns;
-import net.micode.notes.ui.NotesListAdapter.AppWidgetAttribute;
-
-import java.util.ArrayList;
-import java.util.HashSet;
-
-
-public class DataUtils {
- public static final String TAG = "DataUtils";
-
- //删除多个note
- public static boolean batchDeleteNotes(ContentResolver resolver, HashSet ids) {
- if (ids == null) {
- Log.d(TAG, "the ids is null");
- return true;
- }
- if (ids.size() == 0) {
- Log.d(TAG, "no id is in the hashset");
- return true;
- }
-
- ArrayList operationList = new ArrayList();//提供一个任务列表
- for (long id : ids) {
- if(id == Notes.ID_ROOT_FOLDER) {
- Log.e(TAG, "Don't delete system folder root");
- continue;
- } //如果发现是根文件夹,则不删除
- ContentProviderOperation.Builder builder = ContentProviderOperation
- .newDelete(ContentUris.withAppendedId(Notes.CONTENT_NOTE_URI, id)); //用newDelete实现删除功能
- operationList.add(builder.build());
- }
- try {
- ContentProviderResult[] results = resolver.applyBatch(Notes.AUTHORITY, operationList);//主机名(或叫Authority)用于唯一标识这个ContentProvider,外部调用者可以根据这个标识来找到它。
- //数据库事务,数据库事务是由一组数据库操作序列组成,事务作为一个整体被执行
- if (results == null || results.length == 0 || results[0] == null) {//若为空则没必要删
- Log.d(TAG, "delete notes failed, ids:" + ids.toString());
- return false;
- }
- return true;
- } catch (RemoteException e) {
- Log.e(TAG, String.format("%s: %s", e.toString(), e.getMessage()));
- } catch (OperationApplicationException e) {
- Log.e(TAG, String.format("%s: %s", e.toString(), e.getMessage()));
- }
- return false;
- }
-
- //将便签移动至文件夹内
- public static void moveNoteToFoler(ContentResolver resolver, long id, long srcFolderId, long desFolderId) {
- ContentValues values = new ContentValues();
- values.put(NoteColumns.PARENT_ID, desFolderId);
- values.put(NoteColumns.ORIGIN_PARENT_ID, srcFolderId);
- values.put(NoteColumns.LOCAL_MODIFIED, 1);
- resolver.update(ContentUris.withAppendedId(Notes.CONTENT_NOTE_URI, id), values, null, null);//对需要移动的便签进行数据更新,然后用update实现
- }
-
- //批量移动
- public static boolean batchMoveToFolder(ContentResolver resolver, HashSet ids,
- long folderId) {
- if (ids == null) {
- Log.d(TAG, "the ids is null");
- return true;
- }
-
- ArrayList operationList = new ArrayList();
- for (long id : ids) {
- ContentProviderOperation.Builder builder = ContentProviderOperation
- .newUpdate(ContentUris.withAppendedId(Notes.CONTENT_NOTE_URI, id));//通过withAppendedId方法,为该Uri加上ID
- builder.withValue(NoteColumns.PARENT_ID, folderId);
- builder.withValue(NoteColumns.LOCAL_MODIFIED, 1);
- operationList.add(builder.build());
- }//将ids里包含的每一列的数据逐次加入到operationList中,等待最后的批量处理
-
- try {
- ContentProviderResult[] results = resolver.applyBatch(Notes.AUTHORITY, operationList); //applyBatch一次性处理一个操作列表
- if (results == null || results.length == 0 || results[0] == null) {
- Log.d(TAG, "delete notes failed, ids:" + ids.toString());
- return false;
- }
- return true;
- } catch (RemoteException e) {
- Log.e(TAG, String.format("%s: %s", e.toString(), e.getMessage()));
- } catch (OperationApplicationException e) {
- Log.e(TAG, String.format("%s: %s", e.toString(), e.getMessage()));
- }
- return false;
- }
-
- /**
- * Get the all folder count except system folders {@link Notes#TYPE_SYSTEM}}
- */
- //获取文件夹的编号
- public static int getUserFolderCount(ContentResolver resolver) {
- Cursor cursor =resolver.query(Notes.CONTENT_NOTE_URI,
- new String[] { "COUNT(*)" },
- NoteColumns.TYPE + "=? AND " + NoteColumns.PARENT_ID + "<>?",
- new String[] { String.valueOf(Notes.TYPE_FOLDER), String.valueOf(Notes.ID_TRASH_FOLER)},
- null);//筛选条件:源文件不为trash folder
-
-
- int count = 0;
- if(cursor != null) {
- if(cursor.moveToFirst()) {
- try {
- count = cursor.getInt(0);
- } catch (IndexOutOfBoundsException e) {
- Log.e(TAG, "get folder count failed:" + e.toString());
- } finally {
- cursor.close();
- }
- }
- }
- return count;
- }
-
- //查看是否有指定ID的note可见
- public static boolean visibleInNoteDatabase(ContentResolver resolver, long noteId, int type) {
- Cursor cursor = resolver.query(ContentUris.withAppendedId(Notes.CONTENT_NOTE_URI, noteId),
- null,
- NoteColumns.TYPE + "=? AND " + NoteColumns.PARENT_ID + "<>" + Notes.ID_TRASH_FOLER,
- new String [] {String.valueOf(type)},
- null);//查询条件:type符合,且不属于垃圾文件夹
-
- boolean exist = false;
- if (cursor != null) {
- if (cursor.getCount() > 0) {//用getcount函数判断cursor是否为空
- exist = true;
- }
- cursor.close();
- }
- return exist;
- }
- ///判定是否有指定note,即不需条件条件:type符合,且不属于垃圾文件夹
- public static boolean existInNoteDatabase(ContentResolver resolver, long noteId) {
- Cursor cursor = resolver.query(ContentUris.withAppendedId(Notes.CONTENT_NOTE_URI, noteId),
- null, null, null, null);
-
- boolean exist = false;
- if (cursor != null) {
- if (cursor.getCount() > 0) {
- exist = true;
- }
- cursor.close();
- }
- return exist;
- }
- //判定是否有指定的data
- public static boolean existInDataDatabase(ContentResolver resolver, long dataId) {
- Cursor cursor = resolver.query(ContentUris.withAppendedId(Notes.CONTENT_DATA_URI, dataId),
- null, null, null, null);
-
- boolean exist = false;
- if (cursor != null) {
- if (cursor.getCount() > 0) {
- exist = true;
- }
- cursor.close();
- }
- return exist;
- }
- //判定是否有指定的可见folder
- public static boolean checkVisibleFolderName(ContentResolver resolver, String name) {
- Cursor cursor = resolver.query(Notes.CONTENT_NOTE_URI, null,
- NoteColumns.TYPE + "=" + Notes.TYPE_FOLDER +
- " AND " + NoteColumns.PARENT_ID + "<>" + Notes.ID_TRASH_FOLER +
- " AND " + NoteColumns.SNIPPET + "=?",
- new String[] { name }, null);
- //通过名字查询文件是否存在
- boolean exist = false;
- if(cursor != null) {
- if(cursor.getCount() > 0) {
- exist = true;
- }
- cursor.close();
- }
- return exist;
- }
-
- //文件夹工具
- public static HashSet getFolderNoteWidget(ContentResolver resolver, long folderId) {
- Cursor c = resolver.query(Notes.CONTENT_NOTE_URI,
- new String[] { NoteColumns.WIDGET_ID, NoteColumns.WIDGET_TYPE },
- NoteColumns.PARENT_ID + "=?",
- new String[] { String.valueOf(folderId) },
- null);//查询条件:父ID是传入的folderId;
-
- HashSet set = null;
- if (c != null) {
- if (c.moveToFirst()) {
- set = new HashSet();
- do {
- try {
- AppWidgetAttribute widget = new AppWidgetAttribute();
- widget.widgetId = c.getInt(0);//0对应的NoteColumns.WIDGET_ID
- widget.widgetType = c.getInt(1);//1对应的NoteColumns.WIDGET_TYPE
- set.add(widget);
- } catch (IndexOutOfBoundsException e) {
- Log.e(TAG, e.toString());
- }
- } while (c.moveToNext());
- }
- c.close();
- }
- return set;
- }
-
- //根据给定的便签ID(noteId)获取该便签中的电话号码(CallNote.PHONE_NUMBER)
- public static String getCallNumberByNoteId(ContentResolver resolver, long noteId) {
- Cursor cursor = resolver.query(Notes.CONTENT_DATA_URI,
- new String [] { CallNote.PHONE_NUMBER },
- CallNote.NOTE_ID + "=? AND " + CallNote.MIME_TYPE + "=?",
- new String [] { String.valueOf(noteId), CallNote.CONTENT_ITEM_TYPE },
- null);//在查询条件中限定了便签ID(NoteId)和便签类型(CallNote.MIME_TYPE),使用了占位符(?)和参数数组,避免了SQL注入攻击
-
- if (cursor != null && cursor.moveToFirst()) {//如果查询结果非空且有记录,则尝试获取第一条记录的电话号码,并将其返回。
- try {
- return cursor.getString(0);
- } catch (IndexOutOfBoundsException e) {
- Log.e(TAG, "Get call number fails " + e.toString());//如果获取电话号码失败,则在日志中打印错误信息,并返回空字符串
- } finally {
- cursor.close();//关闭游标(Cursor)对象
- }
- }
- return "";
- }
-
- public static long getNoteIdByPhoneNumberAndCallDate(ContentResolver resolver, String phoneNumber, long callDate) {
- Cursor cursor = resolver.query(Notes.CONTENT_DATA_URI,
- new String [] { CallNote.NOTE_ID },
- CallNote.CALL_DATE + "=? AND " + CallNote.MIME_TYPE + "=? AND PHONE_NUMBERS_EQUAL("
- + CallNote.PHONE_NUMBER + ",?)",
- new String [] { String.valueOf(callDate), CallNote.CONTENT_ITEM_TYPE, phoneNumber },
- null);//在查询条件中限定了通话日期(CallNote.CALL_DATE)、便签类型(CallNote.MIME_TYPE)以及电话号码(CallNote.PHONE_NUMBER)。//使用了占位符(?)和参数数组来避免SQL注入攻击,并使用PHONE_NUMBERS_EQUAL函数来比较电话号码。
-//通过数据库操作,查询条件是(callDate和phoneNumber匹配传入参数的值)
- if (cursor != null) {
- if (cursor.moveToFirst()) {
- try {
- return cursor.getLong(0);//0对应的CallNote.NOTE_ID
- } catch (IndexOutOfBoundsException e) {
- Log.e(TAG, "Get call note id fails " + e.toString());
- }
- }
- cursor.close();
- }
- return 0;//如果查询结果为空,则返回0作为默认值。
- }
-
- public static String getSnippetById(ContentResolver resolver, long noteId) {
- Cursor cursor = resolver.query(Notes.CONTENT_NOTE_URI,
- new String [] { NoteColumns.SNIPPET },
- NoteColumns.ID + "=?",
- new String [] { String.valueOf(noteId)},
- null);//查询条件:noteId
- //如果查询结果非空,则尝试获取第一条记录的便签片段,并将其赋值给变量snippet。
- if (cursor != null) {
- String snippet = "";
- if (cursor.moveToFirst()) {
- snippet = cursor.getString(0);
- }
- cursor.close();
- return snippet;
- }
- throw new IllegalArgumentException("Note is not found with id: " + noteId);//如果查询结果为空,则抛出IllegalArgumentException异常,提示便签ID不存在。
- }
-
- public static String getFormattedSnippet(String snippet) { //对字符串进行格式处理,将字符串两头的空格去掉,同时将换行符去掉
- if (snippet != null) {//首先判断传入的便签片段(snippet)是否为空。如果不为空,则执行下一步;否则直接返回空字符串
- snippet = snippet.trim();//对便签片段进行trim操作,去除字符串前后的空格。
- int index = snippet.indexOf('\n');//查找便签片段中第一个换行符(\n)的索引位置,如果找到了,则截取从开头到该索引位置的子字符串;否则保留原始字符串。
- if (index != -1) {
- snippet = snippet.substring(0, index);
- }
- }
- return snippet;//返回格式化后的便签片段。
- }
-}
diff --git a/src/src/app/src/main/java/net/micode/notes/tool/GTaskStringUtils.java b/src/src/app/src/main/java/net/micode/notes/tool/GTaskStringUtils.java
deleted file mode 100644
index 4898d03..0000000
--- a/src/src/app/src/main/java/net/micode/notes/tool/GTaskStringUtils.java
+++ /dev/null
@@ -1,114 +0,0 @@
-/*
- * 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.
- */
-//定义了很多的静态字符串,目的就是为了提供jsonObject中相应字符串的"key"。把这些静态的定义单独写到了一个类里面,这是非常好的编程规范
-
-package net.micode.notes.tool;
-//这个类就是定义了一堆static string,实际就是为jsonObject提供Key,把这些定义全部写到一个类里,方便查看管理
-public class GTaskStringUtils {
- // 前面一部分常量名称都以"GTASK_JSON_"开头,表示它们是Google Tasks API中JSON格式的字段名称。
- public final static String GTASK_JSON_ACTION_ID = "action_id";//操作的ID
-
- public final static String GTASK_JSON_ACTION_LIST = "action_list";//操作列表
-
- public final static String GTASK_JSON_ACTION_TYPE = "action_type";//操作类型
-
- public final static String GTASK_JSON_ACTION_TYPE_CREATE = "create";
-
- public final static String GTASK_JSON_ACTION_TYPE_GETALL = "get_all";
-
- public final static String GTASK_JSON_ACTION_TYPE_MOVE = "move";
-
- public final static String GTASK_JSON_ACTION_TYPE_UPDATE = "update";
-
- public final static String GTASK_JSON_CREATOR_ID = "creator_id";
-
- public final static String GTASK_JSON_CHILD_ENTITY = "child_entity";
-
- public final static String GTASK_JSON_CLIENT_VERSION = "client_version";
-
- public final static String GTASK_JSON_COMPLETED = "completed";
-
- public final static String GTASK_JSON_CURRENT_LIST_ID = "current_list_id";
-
- public final static String GTASK_JSON_DEFAULT_LIST_ID = "default_list_id";
-
- public final static String GTASK_JSON_DELETED = "deleted";
-
- public final static String GTASK_JSON_DEST_LIST = "dest_list";
-
- public final static String GTASK_JSON_DEST_PARENT = "dest_parent";
-
- public final static String GTASK_JSON_DEST_PARENT_TYPE = "dest_parent_type";
-
- public final static String GTASK_JSON_ENTITY_DELTA = "entity_delta";
-
- public final static String GTASK_JSON_ENTITY_TYPE = "entity_type";
-
- public final static String GTASK_JSON_GET_DELETED = "get_deleted";
-
- public final static String GTASK_JSON_ID = "id";
-
- public final static String GTASK_JSON_INDEX = "index";
-
- public final static String GTASK_JSON_LAST_MODIFIED = "last_modified";
-
- public final static String GTASK_JSON_LATEST_SYNC_POINT = "latest_sync_point";
-
- public final static String GTASK_JSON_LIST_ID = "list_id";
-
- public final static String GTASK_JSON_LISTS = "lists";
-
- public final static String GTASK_JSON_NAME = "name";
-
- public final static String GTASK_JSON_NEW_ID = "new_id";
-
- public final static String GTASK_JSON_NOTES = "notes";
-
- public final static String GTASK_JSON_PARENT_ID = "parent_id";
-
- public final static String GTASK_JSON_PRIOR_SIBLING_ID = "prior_sibling_id";
-
- public final static String GTASK_JSON_RESULTS = "results";
-
- public final static String GTASK_JSON_SOURCE_LIST = "source_list";
-
- public final static String GTASK_JSON_TASKS = "tasks";
-
- public final static String GTASK_JSON_TYPE = "type";
-
- public final static String GTASK_JSON_TYPE_GROUP = "GROUP";
-
- public final static String GTASK_JSON_TYPE_TASK = "TASK";
-
- public final static String GTASK_JSON_USER = "user";
-
- public final static String MIUI_FOLDER_PREFFIX = "[MIUI_Notes]";
-
- public final static String FOLDER_DEFAULT = "Default";
-
- public final static String FOLDER_CALL_NOTE = "Call_Note";
-
- public final static String FOLDER_META = "METADATA";
-
- public final static String META_HEAD_GTASK_ID = "meta_gid";
-
- public final static String META_HEAD_NOTE = "meta_note";
-
- public final static String META_HEAD_DATA = "meta_data";
-
- public final static String META_NOTE_NAME = "[META INFO] DON'T UPDATE AND DELETE";
-
-}
diff --git a/src/src/app/src/main/java/net/micode/notes/tool/ResourceParser.java b/src/src/app/src/main/java/net/micode/notes/tool/ResourceParser.java
deleted file mode 100644
index fb3095e..0000000
--- a/src/src/app/src/main/java/net/micode/notes/tool/ResourceParser.java
+++ /dev/null
@@ -1,208 +0,0 @@
-/*
- * 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.tool;
-
-import android.content.Context;//Context是一个Android系统级别的类,它提供了访问应用程序资源和执行应用程序操作的方法。通过使用Context,开发者可以获取应用程序的上下文环境,例如访问应用程序的资源文件、启动活动、发送广播等。
-import android.preference.PreferenceManager;//PreferenceManager是Android提供的一个管理应用程序偏好设置的类。偏好设置是一种存储和检索简单数据的机制,例如用户首选项、应用程序设置等。PreferenceManager提供了一些方便的方法来读取和写入偏好设置,并且可以自动处理数据类型转换和持久化存储。
-
-import net.micode.notes.R;
-import net.micode.notes.ui.NotesPreferenceActivity;
-
-
-////*简介:字面意义是资源分析器,实际上就是获取资源并且在程序中使用,比如颜色图片等
-// * 实现方法:主要利用R.java这个类,其中包括
-// * R.id 组件资源引用
-// * R.drawable 图片资源 (被使用)
-// * R.layout 布局资源
-// * R.menu 菜单资源
-// * R.String 文字资源
-// * R.style 主题资源 (被使用)
-// * 在按顺序设置好相应的id后,就可以编写简单的getXXX函数获取需要的资源
-// *
-// * 特殊的变量 :
-// * @BG_DEFAULT_COLOR 默认背景颜色(黄)
-// * BG_DEFAULT_FONT_SIZE 默认文本大小(中)
-
-
-public class ResourceParser {
- //定义颜色编号
- public static final int YELLOW = 0;
- public static final int BLUE = 1;
- public static final int WHITE = 2;
- public static final int GREEN = 3;
- public static final int RED = 4;
-
- public static final int BG_DEFAULT_COLOR = YELLOW;
- //定义大小编号
- public static final int TEXT_SMALL = 0;
- public static final int TEXT_MEDIUM = 1;
- public static final int TEXT_LARGE = 2;
- public static final int TEXT_SUPER = 3;
-
- public static final int BG_DEFAULT_FONT_SIZE = TEXT_MEDIUM;
-
- public static class NoteBgResources {
- // 表示笔记编辑界面的不同背景颜色
- private final static int [] BG_EDIT_RESOURCES = new int [] {
- R.drawable.edit_yellow,
- R.drawable.edit_blue,
- R.drawable.edit_white,
- R.drawable.edit_green,
- R.drawable.edit_red
- };
- //标题栏背景颜色
- private final static int [] BG_EDIT_TITLE_RESOURCES = new int [] {
- R.drawable.edit_title_yellow,
- R.drawable.edit_title_blue,
- R.drawable.edit_title_white,
- R.drawable.edit_title_green,
- R.drawable.edit_title_red
- };
-
- public static int getNoteBgResource(int id) {
- return BG_EDIT_RESOURCES[id];
- }
-
- public static int getNoteTitleBgResource(int id) {
- return BG_EDIT_TITLE_RESOURCES[id];
- }
- }
- //直接获取默认的背景颜色。这个PREFERENCE_SET_BG_COLOR_KEY是个final string,也就是说getBoolean肯定执行else,为什么要这么写
-
- // getDefaultBgId方法是一个公共静态方法,它接收一个Context对象作为参数,并根据应用程序的偏好设置确定默认的背景颜色ID。如果偏好设置中设置了背景颜色,则随机选择一个背景颜色ID;否则,返回一个默认的背景颜色ID。
- public static int getDefaultBgId(Context context) {
- if (PreferenceManager.getDefaultSharedPreferences(context).getBoolean(
- NotesPreferenceActivity.PREFERENCE_SET_BG_COLOR_KEY, false)) {
- return (int) (Math.random() * NoteBgResources.BG_EDIT_RESOURCES.length);
- } else {
- return BG_DEFAULT_COLOR;
- }
- }
-
- // NoteItemBgResources类类似于NoteBgResources类,它也包含一个私有的静态整型数组BG_FIRST_RESOURCES,用于表示笔记列表项的不同背景颜色。这些资源文件ID代表了笔记列表项在不同状态下的背景样式。
- public static class NoteItemBgResources {
- private final static int [] BG_FIRST_RESOURCES = new int [] {
- R.drawable.list_yellow_up,
- R.drawable.list_blue_up,
- R.drawable.list_white_up,
- R.drawable.list_green_up,
- R.drawable.list_red_up
- };
-
- private final static int [] BG_NORMAL_RESOURCES = new int [] {
- R.drawable.list_yellow_middle,
- R.drawable.list_blue_middle,
- R.drawable.list_white_middle,
- R.drawable.list_green_middle,
- R.drawable.list_red_middle
- };
-
- private final static int [] BG_LAST_RESOURCES = new int [] {
- R.drawable.list_yellow_down,
- R.drawable.list_blue_down,
- R.drawable.list_white_down,
- R.drawable.list_green_down,
- R.drawable.list_red_down,
- };
-
- private final static int [] BG_SINGLE_RESOURCES = new int [] {
- R.drawable.list_yellow_single,
- R.drawable.list_blue_single,
- R.drawable.list_white_single,
- R.drawable.list_green_single,
- R.drawable.list_red_single
- };
-
- public static int getNoteBgFirstRes(int id) {
- return BG_FIRST_RESOURCES[id];
- }
-
- public static int getNoteBgLastRes(int id) {
- return BG_LAST_RESOURCES[id];
- }
-
- public static int getNoteBgSingleRes(int id) {
- return BG_SINGLE_RESOURCES[id];
- }
-
- public static int getNoteBgNormalRes(int id) {
- return BG_NORMAL_RESOURCES[id];
- }
-
- public static int getFolderBgRes() {
- return R.drawable.list_folder;
- }
- }
-
- // 这些数组存储了一组资源文件的ID,用于表示小部件(widget)的不同背景颜色。其中,BG_2X_RESOURCES数组存储了用于2x尺寸的小部件背景颜色的资源文件ID,而BG_4X_RESOURCES数组存储了用于4x尺寸的小部件背景颜色的资源文件ID。
- public static class WidgetBgResources {
- private final static int [] BG_2X_RESOURCES = new int [] {
- R.drawable.widget_2x_yellow,
- R.drawable.widget_2x_blue,
- R.drawable.widget_2x_white,
- R.drawable.widget_2x_green,
- R.drawable.widget_2x_red,
- };
-
- public static int getWidget2xBgResource(int id) {
- return BG_2X_RESOURCES[id];
- }
-
- private final static int [] BG_4X_RESOURCES = new int [] {
- R.drawable.widget_4x_yellow,
- R.drawable.widget_4x_blue,
- R.drawable.widget_4x_white,
- R.drawable.widget_4x_green,
- R.drawable.widget_4x_red
- };
-
- public static int getWidget4xBgResource(int id) {
- return BG_4X_RESOURCES[id];
- }
- }
-
- // 用于存储一组文本外观(TextAppearance)的资源文件ID。这些资源文件ID代表了不同文本样式的设置,如正常字体、中等字体、大号字体、超大号字体等
- public static class TextAppearanceResources {
- // 可以根据给定的索引获取对应的文本样式的资源文件ID。注意这里有一个容错的函数,当传入的索引大于等于资源数量时,会返回默认的字体大小设置。
- private final static int [] TEXTAPPEARANCE_RESOURCES = new int [] {
- R.style.TextAppearanceNormal,
- R.style.TextAppearanceMedium,
- R.style.TextAppearanceLarge,
- R.style.TextAppearanceSuper
- };
-
- //这里有一个容错的函数,防止输入的id大于资源总量,若如此,则自动返回默认的设置结果
-// getResourcesSize方法返回文本外观资源文件ID数组的长度,也就是资源文件的总数。
- public static int getTexAppearanceResource(int id) {
- /**
- * HACKME: Fix bug of store the resource id in shared preference.
- * The id may larger than the length of resources, in this case,
- * return the {@link ResourceParser#BG_DEFAULT_FONT_SIZE}
- */
- if (id >= TEXTAPPEARANCE_RESOURCES.length) {
- return BG_DEFAULT_FONT_SIZE;
- }
- return TEXTAPPEARANCE_RESOURCES[id];
- }
-
- public static int getResourcesSize() {
- return TEXTAPPEARANCE_RESOURCES.length;
- }
- }
-}
-
-
diff --git a/src/src/app/src/main/java/net/micode/notes/ui/AlarmAlertActivity.java b/src/src/app/src/main/java/net/micode/notes/ui/AlarmAlertActivity.java
deleted file mode 100644
index e1bea67..0000000
--- a/src/src/app/src/main/java/net/micode/notes/ui/AlarmAlertActivity.java
+++ /dev/null
@@ -1,169 +0,0 @@
-/*
- * 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.ui;
-
-import android.app.Activity;
-import android.app.AlertDialog;
-import android.content.Context;
-import android.content.DialogInterface;
-import android.content.DialogInterface.OnClickListener;
-import android.content.DialogInterface.OnDismissListener;
-import android.content.Intent;
-import android.media.AudioManager;
-import android.media.MediaPlayer;
-import android.media.RingtoneManager;
-import android.net.Uri;
-import android.os.Bundle;
-import android.os.PowerManager;
-import android.provider.Settings;
-import android.view.Window;
-import android.view.WindowManager;
-
-import net.micode.notes.R;
-import net.micode.notes.data.Notes;
-import net.micode.notes.tool.DataUtils;
-
-import java.io.IOException;
-
-
-public class AlarmAlertActivity extends Activity implements OnClickListener, OnDismissListener //AlarmAlertActivity类实现了OnClickListener, OnDismissListener两个接口,OnClickListener接口用于处理点击事件,当用户点击了界面上的某个视图时,会调用相应的点击事件处理方法。在AlarmAlertActivity中,通过实现OnClickListener接口,可以监听用户对界面上的按钮或其他可点击视图的点击事件,并根据需要进行相应的处理。OnDismissListener接口用于处理对话框消失事件。当一个对话框被关闭或隐藏时,会调用相应的消失事件处理方法。在AlarmAlertActivity中,通过实现OnDismissListener接口,可以监听闹钟提醒对话框的消失事件,并在对话框消失后执行相应的操作。通过实现这两个接口,AlarmAlertActivity可以监听界面上的点击事件和闹钟提醒对话框的消失事件,并在相应事件发生时执行相应的逻辑操作。
-{
- private long mNoteId; //文本在数据库存储中的ID号
- private String mSnippet;//闹钟提示时出现的文本片段。
- private static final int SNIPPET_PREW_MAX_LEN = 60;// 文本片段预览的最大长度
- MediaPlayer mPlayer;// 媒体播放器
-
-
- protected void on2Create(Bundle savedInstanceState) //当一个Activity被创建时系统会调用该的onCreate()方法
- {
- super.onCreate(savedInstanceState);
- requestWindowFeature(Window.FEATURE_NO_TITLE);// 隐藏标题栏
-
- final Window win = getWindow();
- win.addFlags(WindowManager.LayoutParams.FLAG_SHOW_WHEN_LOCKED);// 在锁屏状态下显示窗口
-
- if (!isScreenOn()) // 如果屏处于关闭状态,设置一些窗口标志来保持屏幕亮起
- {
- win.addFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON//保持屏幕亮起的标志,表示在该窗口下,保持屏幕处于亮屏状态。
- | WindowManager.LayoutParams.FLAG_TURN_SCREEN_ON//点亮屏幕的标志,表示在该窗口下,当窗口显示时,点亮屏幕。
-
- | WindowManager.LayoutParams.FLAG_ALLOW_LOCK_WHILE_SCREEN_ON//在屏幕亮起时允许锁定的标志,表示在该窗口下,允许用户在屏幕亮起时锁定屏幕。
-
- | WindowManager.LayoutParams.FLAG_LAYOUT_INSET_DECOR);//布局插入装饰的标志,表示在该窗口下,窗口的布局可以延伸到系统装饰的边缘。
-
- }//用于在创建Activity时设置窗口标志,以确保在显示闹钟提醒界面时,屏幕保持亮起,并且在锁屏状态下仍然显示窗口。这样可以确保用户能够及时看到闹钟提醒的内容。
-
- Intent intent = getIntent();
-
- try {
- // 从传递的Intent中获取文本的ID号,并获取对应的文本片段
- mNoteId = Long.valueOf(intent.getData().getPathSegments().get(1));
- mSnippet = DataUtils.getSnippetById(this.getContentResolver(), mNoteId);
- // 如果文本片段长度超过预设的最大长度,截取一部分,并添加提示信息
- mSnippet = mSnippet.length() > SNIPPET_PREW_MAX_LEN ? mSnippet.substring(0,
- SNIPPET_PREW_MAX_LEN) + getResources().getString(R.string.notelist_string_info)
- : mSnippet;
- } catch (IllegalArgumentException e) {
- e.printStackTrace();// 打印异常信息
- return;// 结束方法的执行
- }
-
- mPlayer = new MediaPlayer(); // 创建一个媒体播放器对象
- if (DataUtils.visibleInNoteDatabase(getContentResolver(), mNoteId, Notes.TYPE_NOTE)) // 如果文本在数据库中可见
- {
- showActionDialog();// 显示操作对话框
- playAlarmSound(); // 播放闹钟声音
- } else {
- finish();// 结束当前Activity
- }
- }
- /**
- * 判断屏幕是否处于亮状态。
- * @return true表示屏幕处于亮屏状态,false表示屏幕处于关闭状态
- */
- private boolean isScreenOn() {
- PowerManager pm = (PowerManager) getSystemService(Context.POWER_SERVICE);
- return pm.isScreenOn(); // 返回屏幕是否处于亮屏状态
- }
- /**
- * 播放闹钟音。
- */
- private void playAlarmSound() {
- Uri url = RingtoneManager.getActualDefaultRingtoneUri(this, RingtoneManager.TYPE_ALARM);// 获取闹钟铃声的URI
- //这里的流都是音频流
- int silentModeStreams = Settings.System.getInt(getContentResolver(),
- Settings.System.MODE_RINGER_STREAMS_AFFECTED, 0);// 获取当前静音模式下影响铃声的流
-
- if ((silentModeStreams & (1 << AudioManager.STREAM_ALARM)) != 0) // 如果静音模式下影响铃声的流中包含闹钟铃声流,设置媒体播放器的音频流为静音模式下影响铃声的流
- {
- mPlayer.setAudioStreamType(silentModeStreams);
- } else// 否则,设置媒体播放器的音频流为闹钟铃声流
- {
- mPlayer.setAudioStreamType(AudioManager.STREAM_ALARM);
- }
- try {
- mPlayer.setDataSource(this, url); // 设置媒体放器的数据源为闹钟铃声的URI
- mPlayer.prepare(); // 准备异步播放
- mPlayer.setLooping(true); // 设置循环播放
- mPlayer.start(); // 开始播放
- } catch (IllegalArgumentException e) { // 处理参数异常
- e.printStackTrace();
- } catch (SecurityException e) { // 处理安全异常
- e.printStackTrace();
- } catch (IllegalStateException e) { // 处理状态异常
- e.printStackTrace();
- } catch (IOException e) { // 处理IO异常
- e.printStackTrace();
- }
- }
-
- private void showActionDialog() {
- AlertDialog.Builder dialog = new AlertDialog.Builder(this);
- dialog.setTitle(R.string.app_name); // 设置对话框标题
- dialog.setMessage(mSnippet); // 设置对话框消息内容
- dialog.setPositiveButton(R.string.notealert_ok, this); // 设置对话框的确定按钮和点击事件
- if (isScreenOn()) { // 判断屏幕是否亮屏
- dialog.setNegativeButton(R.string.notealert_enter, this); // 设置对话框的取消按钮和点击事件
- }
- dialog.show().setOnDismissListener(this); // 显示对话框,并设置对话框消失时的监听器
- }
-
- public void onClick(DialogInterface dialog, int which) {
- switch (which) {
- case DialogInterface.BUTTON_NEGATIVE:
- Intent intent = new Intent(this, NoteEditActivity.class); // 创建一个Intent对象,跳转到NoteEditActivity
- intent.setAction(Intent.ACTION_VIEW); // 设置Intent的操作为查看操作
- intent.putExtra(Intent.EXTRA_UID, mNoteId); // 设置Intent的额外数据
- startActivity(intent); // 启动Activity
- break;
- default:
- break;
- }
- }
-
- public void onDismiss(DialogInterface dialog) {
- stopAlarmSound(); // 停止播放铃声
- finish(); // 结束当前Activity
- }
- private void stopAlarmSound() {
- if (mPlayer != null) {
- mPlayer.stop(); // 停止播放
- mPlayer.release(); // 释放资源
- mPlayer = null; // 置空。
- }
- }
-}
diff --git a/src/src/app/src/main/java/net/micode/notes/ui/AlarmInitReceiver.java b/src/src/app/src/main/java/net/micode/notes/ui/AlarmInitReceiver.java
deleted file mode 100644
index d587094..0000000
--- a/src/src/app/src/main/java/net/micode/notes/ui/AlarmInitReceiver.java
+++ /dev/null
@@ -1,72 +0,0 @@
-/*
- * 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.ui;
-
-import android.app.AlarmManager;
-import android.app.PendingIntent;
-import android.content.BroadcastReceiver;
-import android.content.ContentUris;
-import android.content.Context;
-import android.content.Intent;
-import android.database.Cursor;
-
-import net.micode.notes.data.Notes;
-import net.micode.notes.data.Notes.NoteColumns;
-
-
-public class AlarmInitReceiver extends BroadcastReceiver {
-
- // 查询备忘录的投影
- private static final String[] PROJECTION = new String[] {
- NoteColumns.ID,
- NoteColumns.ALERTED_DATE
- };
-
- // 列索引
- private static final int COLUMN_ID = 0;
- private static final int COLUMN_ALERTED_DATE = 1;
- @Override
- public void onReceive(Context context, Intent intent) {
- // 获取当前时间
- long currentDate = System.currentTimeMillis();
- // 查询所有需要提醒的备忘录
- Cursor c = context.getContentResolver().query(Notes.CONTENT_NOTE_URI,
- PROJECTION,
- NoteColumns.ALERTED_DATE + ">? AND " + NoteColumns.TYPE + "=" + Notes.TYPE_NOTE,
- new String[]{String.valueOf(currentDate)},
- null);
-
- if (c != null) {
- if (c.moveToFirst()) {
- do {
- // 获取提醒时间和备忘录的ID
- long alertDate = c.getLong(COLUMN_ALERTED_DATE);
- long noteId = c.getLong(COLUMN_ID);
- // 创建一个发送广播的Intent,并设置数据为备忘录的URI
- Intent sender = new Intent(context, AlarmReceiver.class);
- sender.setData(ContentUris.withAppendedId(Notes.CONTENT_NOTE_URI, noteId));
- // 创建一个PendingIntent,用于发送广播
- PendingIntent pendingIntent = PendingIntent.getBroadcast(context, 0, sender, 0);
- // 获取AlarmManager实例,并设置提醒时间和发送广播的PendingIntent
- AlarmManager alarmManager = (AlarmManager) context.getSystemService(Context.ALARM_SERVICE);
- alarmManager.set(AlarmManager.RTC_WAKEUP, alertDate, pendingIntent);
- } while (c.moveToNext());
- }
- c.close();
- }
- }
-}
\ No newline at end of file
diff --git a/src/src/app/src/main/java/net/micode/notes/ui/AlarmReceiver.java b/src/src/app/src/main/java/net/micode/notes/ui/AlarmReceiver.java
deleted file mode 100644
index fd8af6f..0000000
--- a/src/src/app/src/main/java/net/micode/notes/ui/AlarmReceiver.java
+++ /dev/null
@@ -1,33 +0,0 @@
-/*
- * 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.ui;
-
-import android.content.BroadcastReceiver;
-import android.content.Context;
-import android.content.Intent;
-
-public class AlarmReceiver extends BroadcastReceiver {
- @Override
- public void onReceive(Context context, Intent intent) {
- // 创建一个新的Intent对象,将目标Activity设置为AlarmAlertActivity
- intent.setClass(context, AlarmAlertActivity.class);
- // 添加标志FLAG_ACTIVITY_NEW_TASK,以确保启动Activity时具有新的任务栈
- intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
- // 启动目标Activity
- context.startActivity(intent);
- }
-}
\ No newline at end of file
diff --git a/src/src/app/src/main/java/net/micode/notes/ui/DateTimePicker.java b/src/src/app/src/main/java/net/micode/notes/ui/DateTimePicker.java
deleted file mode 100644
index b289371..0000000
--- a/src/src/app/src/main/java/net/micode/notes/ui/DateTimePicker.java
+++ /dev/null
@@ -1,545 +0,0 @@
-/*
- * 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.ui;
-
-import java.text.DateFormatSymbols;
-import java.util.Calendar;
-
-import net.micode.notes.R;
-
-
-import android.content.Context;
-import android.text.format.DateFormat;
-import android.view.View;
-import android.widget.FrameLayout;
-import android.widget.NumberPicker;
-
-public class DateTimePicker extends FrameLayout {
-
- // 默认启用状态
- private static final boolean DEFAULT_ENABLE_STATE = true;
-
- // 一半天的小时数
- private static final int HOURS_IN_HALF_DAY = 12;
- // 一天的小时数
- private static final int HOURS_IN_ALL_DAY = 24;
- // 一周的天数
- private static final int DAYS_IN_ALL_WEEK = 7;
- // 日期选择器的最小值
- private static final int DATE_SPINNER_MIN_VAL = 0;
- // 日期选择器的最大值
- private static final int DATE_SPINNER_MAX_VAL = DAYS_IN_ALL_WEEK - 1;
- // 24小时制时钟的小时选择器的最小值
- private static final int HOUR_SPINNER_MIN_VAL_24_HOUR_VIEW = 0;
- // 24小时制时钟的小时选择器的最大值
- private static final int HOUR_SPINNER_MAX_VAL_24_HOUR_VIEW = 23;
- // 12小时制时钟的小时选择器的最小值
- private static final int HOUR_SPINNER_MIN_VAL_12_HOUR_VIEW = 1;
- // 12小时制时钟的小时选择器的最大值
- private static final int HOUR_SPINNER_MAX_VAL_12_HOUR_VIEW = 12;
- // 分钟选择器的最小值
- private static final int MINUT_SPINNER_MIN_VAL = 0;
- // 分钟选择器的最大值
- private static final int MINUT_SPINNER_MAX_VAL = 59;
- // 上午/下午选择器的最小值
- private static final int AMPM_SPINNER_MIN_VAL = 0;
- // 上午/下午选择器的最大值
- private static final int AMPM_SPINNER_MAX_VAL = 1;
- private final NumberPicker mDateSpinner; // 日期选择器控件
- private final NumberPicker mHourSpinner; // 小时选择器控件
- private final NumberPicker mMinuteSpinner; // 分钟选择器控件
- private final NumberPicker mAmPmSpinner; // 上午/下午选择器控件
- private Calendar mDate; // 当前日期时间
-
- private String[] mDateDisplayValues = new String[DAYS_IN_ALL_WEEK]; // 一周的日期显示值
-
- private boolean mIsAm; // 当前是否为上午
-
- private boolean mIs24HourView; // 是否为24小时制显示
-
- private boolean mIsEnabled = DEFAULT_ENABLE_STATE; // 是否启用选择器的状态,默认为启用
-
- private boolean mInitialising; // 是否正在初始化
-
- private OnDateTimeChangedListener mOnDateTimeChangedListener; // 日期时间变化监听器
- private NumberPicker.OnValueChangeListener mOnDateChangedListener = new NumberPicker.OnValueChangeListener() {
- @Override
- public void onValueChange(NumberPicker picker, int oldVal, int newVal) {
- // 计算日期差值并更新日期
- mDate.add(Calendar.DAY_OF_YEAR, newVal - oldVal);
- // 更新日期选择器控件
- updateDateControl();
- // 触发日期时间变化监听器
- onDateTimeChanged();
- }
- };
-
- private NumberPicker.OnValueChangeListener mOnHourChangedListener = new NumberPicker.OnValueChangeListener() {
- @Override
- public void onValueChange(NumberPicker picker, int oldVal, int newVal) {
- boolean isDateChanged = false;
- Calendar cal = Calendar.getInstance();
- if (!mIs24HourView) {
- // 处理上午/下午切换时的日期变化
- if (!mIsAm && oldVal == HOURS_IN_HALF_DAY - 1 && newVal == HOURS_IN_HALF_DAY) {
- cal.setTimeInMillis(mDate.getTimeInMillis());
- cal.add(Calendar.DAY_OF_YEAR, 1);
- isDateChanged = true;
- } else if (mIsAm && oldVal == HOURS_IN_HALF_DAY && newVal == HOURS_IN_HALF_DAY - 1) {
- cal.setTimeInMillis(mDate.getTimeInMillis());
- cal.add(Calendar.DAY_OF_YEAR, -1);
- isDateChanged = true;
- }
- // 处理上午/下午切换时的上午/下午选择器更新
- if (oldVal == HOURS_IN_HALF_DAY - 1 && newVal == HOURS_IN_HALF_DAY ||
- oldVal == HOURS_IN_HALF_DAY && newVal == HOURS_IN_HALF_DAY - 1) {
- mIsAm = !mIsAm;
- updateAmPmControl();
- }
- } else {
- // 处理24小时制下的日期变化
- if (oldVal == HOURS_IN_ALL_DAY - 1 && newVal == 0) {
- cal.setTimeInMillis(mDate.getTimeInMillis());
- cal.add(Calendar.DAY_OF_YEAR, 1);
- isDateChanged = true;
- } else if (oldVal == 0 && newVal == HOURS_IN_ALL_DAY - 1) {
- cal.setTimeInMillis(mDate.getTimeInMillis());
- cal.add(Calendar.DAY_OF_YEAR, -1);
- isDateChanged = true;
- }
- }
- // 更新小时,并触发日期时间变化监听器
- int newHour = mHourSpinner.getValue() % HOURS_IN_HALF_DAY + (mIsAm ? 0 : HOURS_IN_HALF_DAY);
- mDate.set(Calendar.HOUR_OF_DAY, newHour);
- onDateTimeChanged();
- // 如果日期发生了变化,更新年、月、日
- if (isDateChanged) {
- setCurrentYear(cal.get(Calendar.YEAR));
- setCurrentMonth(cal.get(Calendar.MONTH));
- setCurrentDay(cal.get(Calendar.DAY_OF_MONTH));
- }
- }
- };
- private NumberPicker.OnValueChangeListener mOnMinuteChangedListener = new NumberPicker.OnValueChangeListener() {
- @Override
- public void onValueChange(NumberPicker picker, int oldVal, int newVal) {
- int minValue = mMinuteSpinner.getMinValue(); // 获取分钟选择器的最小值
- int maxValue = mMinuteSpinner.getMaxValue(); // 获取分钟选择器的最大值
- int offset = 0; // 偏移量,用于处理分钟的循环
- if (oldVal == maxValue && newVal == minValue) { // 判断是否从最大值切换到最小值
- offset += 1; // 如果是,则偏移量加1
- } else if (oldVal == minValue && newVal == maxValue) { // 判断是否从最小值切换到最大值
- offset -= 1; // 如果是,则偏移量减1
- }
- if (offset != 0) { // 如果偏移量不为0,表示分钟发生了循环
- mDate.add(Calendar.HOUR_OF_DAY, offset); // 更新小时的值
- mHourSpinner.setValue(getCurrentHour()); // 更新小时选择器的值
- updateDateControl(); // 更新日期选择器控件
- int newHour = getCurrentHourOfDay(); // 获取当前小时
- if (newHour >= HOURS_IN_HALF_DAY) { // 如果当前小时大于等于一半天的小时数
- mIsAm = false; // 设置为下午
- updateAmPmControl(); // 更新上午/下午选择器控件
- } else {
- mIsAm = true; // 设置为上午
- updateAmPmControl(); // 更新上午/下午选择器控件
- }
- }
- mDate.set(Calendar.MINUTE, newVal); // 更新分钟的值
- onDateTimeChanged(); // 触发日期时间变化监听器
- }
- };
-
- private NumberPicker.OnValueChangeListener mOnAmPmChangedListener = new NumberPicker.OnValueChangeListener() {
- @Override
- public void onValueChange(NumberPicker picker, int oldVal, int newVal) {
- mIsAm = !mIsAm; // 切换上午/下午的状态
- if (mIsAm) { // 如果切换为上午
- mDate.add(Calendar.HOUR_OF_DAY, -HOURS_IN_HALF_DAY); // 将当前时间减去半天的小时数
- } else { // 如果切换为下午
- mDate.add(Calendar.HOUR_OF_DAY, HOURS_IN_HALF_DAY); // 将当前时间加上半天的小时数
- }
- updateAmPmControl(); // 更新上午/下午选择器控件
- onDateTimeChanged(); // 触发日期时间变化监听器
- }
- };
-
- public interface OnDateTimeChangedListener {
- /**
- * 当日期时间发生变化时调用
- *
- * @param view 当前的 DateTimePicker 对象
- * @param year 年份
- * @param month 月份,范围为 0-11,0 表示一月
- * @param dayOfMonth 日期
- * @param hourOfDay 小时,根据是否为 24 小时制可能为 0-23 或 1-12
- * @param minute 分钟
- */
- void onDateTimeChanged(DateTimePicker view, int year, int month, int dayOfMonth, int hourOfDay, int minute);
- }
-
- /**
- * 构造方法,创建一个 DateTimePicker 对象,并将当前时间设置为系统当前时间
- *
- * @param context 上下文环境
- */
- public DateTimePicker(Context context) {
- this(context, System.currentTimeMillis());
- }
-
- /**
- * 构造方法,创建一个 DateTimePicker 对象,并设置指定的日期时间和小时制
- *
- * @param context 上下文环境
- * @param date 指定的日期时间,以毫秒为单位
- * @param is24HourView 是否为 24 小时制显示
- */
- public DateTimePicker(Context context, long date) {
- this(context, date, DateFormat.is24HourFormat(context));
- }
-
- public DateTimePicker(Context context, long date, boolean is24HourView) {
- super(context); // 调用父类的构造方法
- mDate = Calendar.getInstance(); // 获取当前时间的日历对象
- mInitialising = true; // 表示正在初始化
- mIsAm = getCurrentHourOfDay() >= HOURS_IN_HALF_DAY; // 根据当前小时判断是否为上午
- inflate(context, R.layout.datetime_picker, this); // 将布局文件实例化为视图并添加到当前视图
-
- mDateSpinner = (NumberPicker) findViewById(R.id.date); // 获取日期选择器视图
- mDateSpinner.setMinValue(DATE_SPINNER_MIN_VAL); // 设置日期选择器的最小值
- mDateSpinner.setMaxValue(DATE_SPINNER_MAX_VAL); // 设置日期选择器的最大值
- mDateSpinner.setOnValueChangedListener(mOnDateChangedListener); // 设置日期选择器值变化的监听器
-
- mHourSpinner = (NumberPicker) findViewById(R.id.hour); // 获取小时选择器视图
- mHourSpinner.setOnValueChangedListener(mOnHourChangedListener); // 设置小时选择器值变化的监听器
- mMinuteSpinner = (NumberPicker) findViewById(R.id.minute); // 获取分钟选择器视图
- mMinuteSpinner.setMinValue(MINUT_SPINNER_MIN_VAL); // 设置分钟选择器的最小值
- mMinuteSpinner.setMaxValue(MINUT_SPINNER_MAX_VAL); // 设置分钟选择器的最大值
- mMinuteSpinner.setOnLongPressUpdateInterval(100); // 设置长按更新间隔
- mMinuteSpinner.setOnValueChangedListener(mOnMinuteChangedListener); // 设置分钟选择器值变化的监听器
-
- String[] stringsForAmPm = new DateFormatSymbols().getAmPmStrings(); // 获取上午/下午的字符串数组
- mAmPmSpinner = (NumberPicker) findViewById(R.id.amPm); // 获取上午/下午选择器视图
- mAmPmSpinner.setMinValue(AMPM_SPINNER_MIN_VAL); // 设置上午/下午选择器的最小值
- mAmPmSpinner.setMaxValue(AMPM_SPINNER_MAX_VAL); // 设置上午/下午选择器的最大值
- mAmPmSpinner.setDisplayedValues(stringsForAmPm); // 设置上午/下午选择器的显示值
- mAmPmSpinner.setOnValueChangedListener(mOnAmPmChangedListener); // 设置上午/下午选择器值变化的监听器
-
- updateDateControl(); // 更新日期选择器控件
- updateHourControl(); // 更新小时选择器控件
- updateAmPmControl(); // 更新上午/下午选择器控件
-
- set24HourView(is24HourView); // 设置小时制显示
-
- setCurrentDate(date); // 设置当前日期时间
-
- setEnabled(isEnabled()); // 设置是否可用
-
- mInitialising = false; // 初始化完成
- }
-
- /**
- * 设置控件是否可用
- *
- * @param enabled 是否可用
- */
- @Override
- public void setEnabled(boolean enabled) {
- if (mIsEnabled == enabled) {
- return;
- }
- super.setEnabled(enabled); // 调用父类方法设置控件可用状态
- mDateSpinner.setEnabled(enabled); // 设置日期选择器是否可用
- mMinuteSpinner.setEnabled(enabled); // 设置分钟选择器是否可用
- mHourSpinner.setEnabled(enabled); // 设置小时选择器是否可用
- mAmPmSpinner.setEnabled(enabled); // 设置上午/下午选择器是否可用
- mIsEnabled = enabled; // 更新控件是否可用状态
- }
-
- /**
- * 判断控件是否可用
- *
- * @return 控件是否可用
- */
- @Override
- public boolean isEnabled() {
- return mIsEnabled;
- }
-
- /**
- * 获取当前日期的毫秒值
- *
- * @return 当前日期的毫秒值
- */
- public long getCurrentDateInTimeMillis() {
- return mDate.getTimeInMillis();
- }
-
- /**
- * 设置当前日期
- *
- * @param date The current date in millis 当前日期的毫秒值
- */
- public void setCurrentDate(long date) {
- mDate.setTimeInMillis(date); // 将指定的日期毫秒值设置到日期对象中
- updateDateControl(); // 更新日期选择器控件
- updateHourControl(); // 更新小时选择器控件
- updateAmPmControl(); // 更新上午/下午选择器控件
- }
-
- /**
- * Set the current date
- *
- * @param year The current year
- * @param month The current month
- * @param dayOfMonth The current dayOfMonth
- * @param hourOfDay The current hourOfDay
- * @param minute The current minute
- */
- public void setCurrentDate(int year, int month, int dayOfMonth, int hourOfDay, int minute) {
- setCurrentYear(year); // 设置当前年份
- setCurrentMonth(month); // 设置当前月份
- setCurrentDay(dayOfMonth); // 设置当前日期
- setCurrentHour(hourOfDay); // 设置当前小时
- setCurrentMinute(minute); // 设置当前分钟
- }
-
- /**
- * Get current year
- *
- * @return The current year
- */
- public int getCurrentYear() {
- return mDate.get(Calendar.YEAR);
- }
-
- /**
- * Set current year
- *
- * @param year The current year
- */
- public void setCurrentYear(int year) {
- if (!mInitialising && year == getCurrentYear()) {
- return;
- }
- mDate.set(Calendar.YEAR, year); // 设置日期对象的年份
- updateDateControl(); // 更新日期选择器控件
- onDateTimeChanged(); // 通知日期时间改变
- }
-
- /**
- * Get current month in the year
- *
- * @return The current month in the year
- */
- public int getCurrentMonth() {
- return mDate.get(Calendar.MONTH); // 获取日期对象的月份字段
- }
-
-
- /**
- * 设置当前月份
- *
- * @param month 月份(从0开始,0代表一月)
- */
- public void setCurrentMonth(int month) {
- if (!mInitialising && month == getCurrentMonth()) {
- return;
- }
- mDate.set(Calendar.MONTH, month); // 设置日期对象的月份
- updateDateControl(); // 更新日期选择器控件
- onDateTimeChanged(); // 通知日期时间改变
- }
-
- /**
- * 获取当前日期的天数
- *
- * @return 当前日期的天数
- */
- public int getCurrentDay() {
- return mDate.get(Calendar.DAY_OF_MONTH); // 获取日期对象的天数字段
- }
-
- /**
- * 设置当前日期的天数
- *
- * @param dayOfMonth 日期的天数
- */
- public void setCurrentDay(int dayOfMonth) {
- if (!mInitialising && dayOfMonth == getCurrentDay()) {
- return;
- }
- mDate.set(Calendar.DAY_OF_MONTH, dayOfMonth); // 设置日期对象的天数字段
- updateDateControl(); // 更新日期选择器控件
- onDateTimeChanged(); // 通知日期时间改变
- }
-
- /**
- * 获取当前的小时(24小时制),范围为0~23
- *
- * @return 当前的小时(24小时制)
- */
- public int getCurrentHourOfDay() {
- return mDate.get(Calendar.HOUR_OF_DAY); // 获取日期对象的小时字段(24小时制)
- }
-
- /**
- * 获取当前的小时
- *
- * @return 当前的小时
- */
- private int getCurrentHour() {
- if (mIs24HourView) { // 如果是24小时制
- return getCurrentHourOfDay(); // 直接获取当前的小时
- } else { // 如果是12小时制
- int hour = getCurrentHourOfDay(); // 获取当前的小时
- if (hour > HOURS_IN_HALF_DAY) { // 如果大于12小时
- return hour - HOURS_IN_HALF_DAY; // 返回减去12小时的小时数
- } else { // 如果小于等于12小时
- return hour == 0 ? HOURS_IN_HALF_DAY : hour; // 如果小时为0,则返回12小时,否则返回当前的小时
- }
- }
- }
-
- /**
- * 设置当前小时(24小时制),范围为0~23
- *
- * @param hourOfDay 小时(24小时制)
- */
- public void setCurrentHour(int hourOfDay) {
- if (!mInitialising && hourOfDay == getCurrentHourOfDay()) {
- return;
- }
- mDate.set(Calendar.HOUR_OF_DAY, hourOfDay); // 设置日期对象的小时字段(24小时制)
- if (!mIs24HourView) { // 如果是12小时制
- if (hourOfDay >= HOURS_IN_HALF_DAY) { // 如果小时大于等于12
- mIsAm = false; // 设置为下午
- if (hourOfDay > HOURS_IN_HALF_DAY) {
- hourOfDay -= HOURS_IN_HALF_DAY; // 减去12小时
- }
- } else { // 如果小时小于12
- mIsAm = true; // 设置为上午
- if (hourOfDay == 0) {
- hourOfDay = HOURS_IN_HALF_DAY; // 如果小时为0,则设置为12小时
- }
- }
- updateAmPmControl(); // 更新上午/下午选择控件
- }
- mHourSpinner.setValue(hourOfDay); // 设置小时选择控件的值
- onDateTimeChanged(); // 通知日期时间改变
- }
-
- /**
- * 获取当前的分钟
- *
- * @return 当前的分钟
- */
- public int getCurrentMinute() {
- return mDate.get(Calendar.MINUTE); // 获取日期对象的分钟字段
- }
-
- /**
- * 设置当前的分钟
- *
- * @param minute 分钟
- */
- public void setCurrentMinute(int minute) {
- if (!mInitialising && minute == getCurrentMinute()) {
- return;
- }
- mMinuteSpinner.setValue(minute); // 设置分钟选择控件的值
- mDate.set(Calendar.MINUTE, minute); // 设置日期对象的分钟字段
- onDateTimeChanged(); // 通知日期时间改变
- }
-
- /**
- * 判断是否为24小时制
- *
- * @return 如果为24小时制返回true,否则返回false
- */
- public boolean is24HourView() {
- return mIs24HourView; // 返回是否为24小时制的标志位
- }
-
- /**
- * 设置是否为24小时制或上午/下午制
- *
- * @param is24HourView true表示为24小时制,false表示为上午/下午制
- */
- public void set24HourView(boolean is24HourView) {
- if (mIs24HourView == is24HourView) {
- return;
- }
- mIs24HourView = is24HourView; // 设置是否为24小时制的标志位
- mAmPmSpinner.setVisibility(is24HourView ? View.GONE : View.VISIBLE); // 根据是否为24小时制设置上午/下午选择控件的可见性
- int hour = getCurrentHourOfDay(); // 获取当前的小时(24小时制)
- updateHourControl(); // 更新小时选择控件
- setCurrentHour(hour); // 设置当前的小时
- updateAmPmControl(); // 更新上午/下午选择控件
- }
-
- private void updateDateControl() {
- Calendar cal = Calendar.getInstance(); // 创建一个新的Calendar对象
- cal.setTimeInMillis(mDate.getTimeInMillis()); // 将mDate的时间设置给新的Calendar对象
- cal.add(Calendar.DAY_OF_YEAR, -DAYS_IN_ALL_WEEK / 2 - 1); // 将日期向前移动DAYS_IN_ALL_WEEK / 2 + 1天
-
- mDateSpinner.setDisplayedValues(null); // 清空日期选择控件的显示值
- for (int i = 0; i < DAYS_IN_ALL_WEEK; ++i) {
- cal.add(Calendar.DAY_OF_YEAR, 1); // 将日期加上1天
- mDateDisplayValues[i] = (String) DateFormat.format("MM.dd EEEE", cal); // 将日期格式化为"MM.dd EEEE"的字符串格式,并存储到mDateDisplayValues数组中
- }
-
- mDateSpinner.setDisplayedValues(mDateDisplayValues); // 设置日期选择控件的显示值为mDateDisplayValues数组
- mDateSpinner.setValue(DAYS_IN_ALL_WEEK / 2); // 设置日期选择控件的当前值为DAYS_IN_ALL_WEEK / 2
- mDateSpinner.invalidate(); // 使日期选择控件无效,以便重绘
- }
-
- private void updateAmPmControl() {
- if (mIs24HourView) {
- mAmPmSpinner.setVisibility(View.GONE); // 如果是24小时制,隐藏上午/下午选择控件
- } else {
- int index = mIsAm ? Calendar.AM : Calendar.PM; // 根据当前上午/下午的标志位确定要显示的上午/下午选项
- mAmPmSpinner.setValue(index); // 设置上午/下午选择控件的值为对应的索引
- mAmPmSpinner.setVisibility(View.VISIBLE); // 显示上午/下午选择控件
- }
- }
-
- private void updateHourControl() {
- if (mIs24HourView) {
- mHourSpinner.setMinValue(HOUR_SPINNER_MIN_VAL_24_HOUR_VIEW); // 设置小时选择控件的最小值为24小时制的最小值
- mHourSpinner.setMaxValue(HOUR_SPINNER_MAX_VAL_24_HOUR_VIEW); // 设置小时选择控件的最大值为24小时制的最大值
- } else {
- mHourSpinner.setMinValue(HOUR_SPINNER_MIN_VAL_12_HOUR_VIEW); // 设置小时选择控件的最小值为12小时制的最小值
- mHourSpinner.setMaxValue(HOUR_SPINNER_MAX_VAL_12_HOUR_VIEW); // 设置小时选择控件的最大值为12小时制的最大值
- }
- }
-
- /**
- * 设置“设置”按钮按下时的回调
- *
- * @param callback 回调接口,如果为null则不执行任何操作
- */
- public void setOnDateTimeChangedListener(OnDateTimeChangedListener callback) {
- mOnDateTimeChangedListener = callback; // 设置回调接口
- }
-
- private void onDateTimeChanged() {
- if (mOnDateTimeChangedListener != null) {
- mOnDateTimeChangedListener.onDateTimeChanged(this, getCurrentYear(),
- getCurrentMonth(), getCurrentDay(), getCurrentHourOfDay(), getCurrentMinute());
- }
- }
-}
\ No newline at end of file
diff --git a/src/src/app/src/main/java/net/micode/notes/ui/DateTimePickerDialog.java b/src/src/app/src/main/java/net/micode/notes/ui/DateTimePickerDialog.java
deleted file mode 100644
index 278678a..0000000
--- a/src/src/app/src/main/java/net/micode/notes/ui/DateTimePickerDialog.java
+++ /dev/null
@@ -1,90 +0,0 @@
-/*
- * 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.ui;
-
-import java.util.Calendar;
-
-import net.micode.notes.R;
-import net.micode.notes.ui.DateTimePicker;
-import net.micode.notes.ui.DateTimePicker.OnDateTimeChangedListener;
-
-import android.app.AlertDialog;
-import android.content.Context;
-import android.content.DialogInterface;
-import android.content.DialogInterface.OnClickListener;
-import android.text.format.DateFormat;
-import android.text.format.DateUtils;
-
-public class DateTimePickerDialog extends AlertDialog implements OnClickListener {
-
- private Calendar mDate = Calendar.getInstance(); // 创建一个Calendar对象,并初始化为当前日期时间
- private boolean mIs24HourView; // 是否为24小时制
- private OnDateTimeSetListener mOnDateTimeSetListener; // 日期时间设置回调接口
- private DateTimePicker mDateTimePicker; // 日期时间选择器控件
-
- public interface OnDateTimeSetListener {
- void OnDateTimeSet(AlertDialog dialog, long date);
- }
-
- public DateTimePickerDialog(Context context, long date) {
- super(context); // 调用父类的构造方法
- mDateTimePicker = new DateTimePicker(context); // 创建一个DateTimePicker对象
- setView(mDateTimePicker); // 设置对话框的视图为DateTimePicker对象
- mDateTimePicker.setOnDateTimeChangedListener(new OnDateTimeChangedListener() {
- public void onDateTimeChanged(DateTimePicker view, int year, int month,
- int dayOfMonth, int hourOfDay, int minute) {
- mDate.set(Calendar.YEAR, year); // 设置日期对象的年份
- mDate.set(Calendar.MONTH, month); // 设置日期对象的月份
- mDate.set(Calendar.DAY_OF_MONTH, dayOfMonth); // 设置日期对象的日
- mDate.set(Calendar.HOUR_OF_DAY, hourOfDay); // 设置日期对象的小时
- mDate.set(Calendar.MINUTE, minute); // 设置日期对象的分钟
- updateTitle(mDate.getTimeInMillis()); // 更新对话框的标题
- }
- });
-
- mDate.setTimeInMillis(date); // 将传入的日期设置给日期对象mDate
- mDate.set(Calendar.SECOND, 0); // 将日期对象的秒设置为0
- mDateTimePicker.setCurrentDate(mDate.getTimeInMillis()); // 将日期对象的时间设置给DateTimePicker控件
- setButton(context.getString(R.string.datetime_dialog_ok), this); // 设置对话框的“确定”按钮,并设置点击监听器为当前对象
- setButton2(context.getString(R.string.datetime_dialog_cancel), (OnClickListener)null); // 设置对话框的“取消”按钮,不设置点击监听器
- set24HourView(DateFormat.is24HourFormat(this.getContext())); // 根据系统设置判断是否为24小时制,并设置给日期时间选择器控件
- updateTitle(mDate.getTimeInMillis()); // 更新对话框的标题,将日期对象的时间设置为标题显示
- }
-
- public void set24HourView(boolean is24HourView) {
- mIs24HourView = is24HourView;
- }
-
- public void setOnDateTimeSetListener(OnDateTimeSetListener callBack) {
- mOnDateTimeSetListener = callBack;
- }
-
- private void updateTitle(long date) {
- int flag =
- DateUtils.FORMAT_SHOW_YEAR | // 显示年份
- DateUtils.FORMAT_SHOW_DATE | // 显示日期
- DateUtils.FORMAT_SHOW_TIME; // 显示时间
- flag |= mIs24HourView ? DateUtils.FORMAT_24HOUR : DateUtils.FORMAT_24HOUR; // 根据是否为24小时制,设置时间格式化标志
- setTitle(DateUtils.formatDateTime(this.getContext(), date, flag)); // 使用DateUtils类将日期时间格式化为字符串,并设置为对话框的标题
- }
- public void onClick(DialogInterface arg0, int arg1) {
- if (mOnDateTimeSetListener != null) { // 判断是否设置了日期时间设置回调接口
- mOnDateTimeSetListener.OnDateTimeSet(this, mDate.getTimeInMillis()); // 调用回调接口的OnDateTimeSet方法,并传入当前对话框和日期时间的毫秒值
- }
- }
-
-}
\ No newline at end of file
diff --git a/src/src/app/src/main/java/net/micode/notes/ui/DropdownMenu.java b/src/src/app/src/main/java/net/micode/notes/ui/DropdownMenu.java
deleted file mode 100644
index 1631f43..0000000
--- a/src/src/app/src/main/java/net/micode/notes/ui/DropdownMenu.java
+++ /dev/null
@@ -1,61 +0,0 @@
-/*
- * 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.ui;
-
-import android.content.Context;
-import android.view.Menu;
-import android.view.MenuItem;
-import android.view.View;
-import android.view.View.OnClickListener;
-import android.widget.Button;
-import android.widget.PopupMenu;
-import android.widget.PopupMenu.OnMenuItemClickListener;
-
-import net.micode.notes.R;
-
-public class DropdownMenu {
- private Button mButton; // 下拉菜单的按钮
- private PopupMenu mPopupMenu; // 弹出菜单
- private Menu mMenu; // 菜单
-
- public DropdownMenu(Context context, Button button, int menuId) {
- mButton = button; // 设置按钮
- mButton.setBackgroundResource(R.drawable.dropdown_icon); // 设置按钮的背景图为下拉图标
- mPopupMenu = new PopupMenu(context, mButton); // 创建弹出菜单,关联到按钮
- mMenu = mPopupMenu.getMenu(); // 获取菜单对象
- mPopupMenu.getMenuInflater().inflate(menuId, mMenu); // 通过菜单资源ID填充菜单条目
- mButton.setOnClickListener(new OnClickListener() {
- public void onClick(View v) {
- mPopupMenu.show(); // 点击按钮时显示弹出菜单
- }
- });
- }
-
- public void setOnDropdownMenuItemClickListener(OnMenuItemClickListener listener) {
- if (mPopupMenu != null) {
- mPopupMenu.setOnMenuItemClickListener(listener); // 设置菜单条目点击监听器
- }
- }
-
- public MenuItem findItem(int id) {
- return mMenu.findItem(id); // 根据菜单条目ID查找菜单条目对象
- }
-
- public void setTitle(CharSequence title) {
- mButton.setText(title); // 设置按钮的文本
- }
-}
\ No newline at end of file
diff --git a/src/src/app/src/main/java/net/micode/notes/ui/FoldersListAdapter.java b/src/src/app/src/main/java/net/micode/notes/ui/FoldersListAdapter.java
deleted file mode 100644
index e661ca5..0000000
--- a/src/src/app/src/main/java/net/micode/notes/ui/FoldersListAdapter.java
+++ /dev/null
@@ -1,67 +0,0 @@
-package net.micode.notes.ui;
-
-import android.content.Context;
-import android.database.Cursor;
-import android.view.View;
-import android.view.ViewGroup;
-import android.widget.CursorAdapter;
-import android.widget.LinearLayout;
-import android.widget.TextView;
-
-import net.micode.notes.R;
-import net.micode.notes.data.Notes;
-import net.micode.notes.data.Notes.NoteColumns;
-
-public class FoldersListAdapter extends CursorAdapter {
- public static final String [] PROJECTION = {
- NoteColumns.ID,
- NoteColumns.SNIPPET
- };
-
- public static final int ID_COLUMN = 0;
- public static final int NAME_COLUMN = 1;
-
- public FoldersListAdapter(Context context, Cursor c) {
- super(context, c);
- // TODO Auto-generated constructor stub
- }
-
- @Override
- public View newView(Context context, Cursor cursor, ViewGroup parent) {
- // 创建新的列表项的视图
- return new FolderListItem(context);
- }
-
- @Override
- public void bindView(View view, Context context, Cursor cursor) {
- if (view instanceof FolderListItem) {
- // 判断视图类型是否为FolderListItem,如果是,则获取文件夹的名称并绑定到视图上
- String folderName = (cursor.getLong(ID_COLUMN) == Notes.ID_ROOT_FOLDER) ? context
- .getString(R.string.menu_move_parent_folder) : cursor.getString(NAME_COLUMN);
- ((FolderListItem) view).bind(folderName);
- }
- }
-
- public String getFolderName(Context context, int position) {
- // 获取指定位置的文件夹名称
- Cursor cursor = (Cursor) getItem(position);
- return (cursor.getLong(ID_COLUMN) == Notes.ID_ROOT_FOLDER) ? context
- .getString(R.string.menu_move_parent_folder) : cursor.getString(NAME_COLUMN);
- }
-
- private class FolderListItem extends LinearLayout {
- private TextView mName;
-
- public FolderListItem(Context context) {
- super(context);
- // 填充布局文件到当前视图中
- inflate(context, R.layout.folder_list_item, this);
- mName = (TextView) findViewById(R.id.tv_folder_name);
- }
-
- public void bind(String name) {
- // 将文件夹名称绑定到视图上
- mName.setText(name);
- }
- }
-}
\ No newline at end of file
diff --git a/src/src/app/src/main/java/net/micode/notes/ui/NoteEditActivity.java b/src/src/app/src/main/java/net/micode/notes/ui/NoteEditActivity.java
deleted file mode 100644
index 5cdff40..0000000
--- a/src/src/app/src/main/java/net/micode/notes/ui/NoteEditActivity.java
+++ /dev/null
@@ -1,1414 +0,0 @@
-/*
- * 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.ui;
-
-import android.app.Activity;
-import android.app.AlarmManager;
-import android.app.AlertDialog;
-import android.app.Dialog;
-import android.app.PendingIntent;
-import android.app.SearchManager;
-import android.appwidget.AppWidgetManager;
-import android.content.ContentResolver;
-import android.content.ContentUris;
-import android.content.ContentValues;
-import android.content.Context;
-import android.content.DialogInterface;
-import android.content.Intent;
-import android.content.SharedPreferences;
-import android.database.Cursor;
-import android.graphics.Bitmap;
-import android.graphics.BitmapFactory;
-import android.graphics.Matrix;
-import android.graphics.Paint;
-import android.graphics.drawable.BitmapDrawable;
-import android.graphics.drawable.Drawable;
-import android.net.Uri;
-import android.os.Build;
-import android.os.Bundle;
-import android.os.Environment;
-import android.preference.PreferenceManager;
-import android.provider.DocumentsContract;
-import android.provider.MediaStore;
-import android.text.Editable;
-import android.text.Spannable;
-import android.text.SpannableString;
-import android.text.TextUtils;
-import android.text.TextWatcher;
-import android.text.format.DateUtils;
-import android.text.style.BackgroundColorSpan;
-import android.text.style.ImageSpan;
-import android.util.Log;
-import android.view.LayoutInflater;
-import android.view.Menu;
-import android.view.MenuItem;
-import android.view.MotionEvent;
-import android.view.View;
-import android.view.View.OnClickListener;
-import android.view.WindowManager;
-import android.view.inputmethod.InputMethodManager;
-import android.widget.Button;
-import android.widget.CheckBox;
-import android.widget.CompoundButton;
-import android.widget.CompoundButton.OnCheckedChangeListener;
-import android.widget.EditText;
-import android.widget.ImageButton;
-import android.widget.ImageView;
-import android.widget.LinearLayout;
-import android.widget.TextView;
-import android.widget.Toast;
-import android.speech.tts.TextToSpeech;
-import android.speech.tts.TextToSpeech.OnInitListener;
-import android.graphics.Typeface;
-
-import net.micode.notes.R;
-import net.micode.notes.data.Notes;
-import net.micode.notes.data.Notes.TextNote;
-import net.micode.notes.model.WorkingNote;
-import net.micode.notes.model.WorkingNote.NoteSettingChangedListener;
-import net.micode.notes.tool.DataUtils;
-import net.micode.notes.tool.ResourceParser;
-import net.micode.notes.tool.ResourceParser.TextAppearanceResources;
-import net.micode.notes.ui.DateTimePickerDialog.OnDateTimeSetListener;
-import net.micode.notes.ui.NoteEditText.OnTextViewChangeListener;
-import net.micode.notes.widget.NoteWidgetProvider_2x;
-import net.micode.notes.widget.NoteWidgetProvider_4x;
-
-import java.io.FileNotFoundException;
-import java.util.HashMap;
-import java.util.HashSet;
-import java.util.Locale;
-import java.util.Map;
-import java.util.Vector;
-import java.util.Stack;
-import java.util.regex.Matcher;
-import java.util.regex.Pattern;
-
-
-public class NoteEditActivity extends Activity implements OnClickListener,
- NoteSettingChangedListener, OnTextViewChangeListener {
- private TextToSpeech mTTs;
- private EditText editText;
- private TextView textView;
-// private static final int MAX_OF_RVOKE_TIME=5;
-// private boolean mIsRevoke=false;
-// private Vector