From 904a8fe3917ff80ca82d268e1436d5ece2161665 Mon Sep 17 00:00:00 2001 From: zxy020924 <806792837@qq.com> Date: Mon, 16 Jun 2025 23:26:39 +0800 Subject: [PATCH] src --- src/mi_note/.gitignore | 15 + src/mi_note/.idea/.gitignore | 3 + src/mi_note/.idea/AndroidProjectSystem.xml | 6 + src/mi_note/.idea/checkstyle-idea.xml | 16 + src/mi_note/.idea/compiler.xml | 6 + .../.idea/deploymentTargetSelector.xml | 26 + src/mi_note/.idea/gradle.xml | 19 + src/mi_note/.idea/migrations.xml | 10 + src/mi_note/.idea/misc.xml | 9 + src/mi_note/.idea/runConfigurations.xml | 17 + src/mi_note/.idea/vcs.xml | 4 + src/mi_note/app/.gitignore | 1 + src/mi_note/app/build.gradle | 50 + src/mi_note/app/proguard-rules.pro | 21 + .../mi_note/ExampleInstrumentedTest.java | 43 + src/mi_note/app/src/main/AndroidManifest.xml | 152 ++ .../java/net/micode/notes/data/Contact.java | 105 ++ .../java/net/micode/notes/data/Notes.java | 280 ++++ .../notes/data/NotesDatabaseHelper.java | 389 +++++ .../net/micode/notes/data/NotesProvider.java | 314 ++++ .../net/micode/notes/gtask/data/MetaData.java | 132 ++ .../net/micode/notes/gtask/data/Node.java | 157 ++ .../net/micode/notes/gtask/data/SqlData.java | 258 ++++ .../net/micode/notes/gtask/data/SqlNote.java | 628 ++++++++ .../net/micode/notes/gtask/data/Task.java | 454 ++++++ .../net/micode/notes/gtask/data/TaskList.java | 435 ++++++ .../exception/ActionFailureException.java | 46 + .../exception/NetworkFailureException.java | 50 + .../notes/gtask/remote/GTaskASyncTask.java | 156 ++ .../notes/gtask/remote/GTaskClient.java | 611 ++++++++ .../notes/gtask/remote/GTaskManager.java | 843 ++++++++++ .../notes/gtask/remote/GTaskSyncService.java | 167 ++ .../java/net/micode/notes/model/Note.java | 342 +++++ .../net/micode/notes/model/WorkingNote.java | 441 ++++++ .../net/micode/notes/tool/BackupUtils.java | 398 +++++ .../java/net/micode/notes/tool/DataUtils.java | 403 +++++ .../micode/notes/tool/GTaskStringUtils.java | 119 ++ .../net/micode/notes/tool/ResourceParser.java | 283 ++++ .../micode/notes/ui/AlarmAlertActivity.java | 192 +++ .../micode/notes/ui/AlarmInitReceiver.java | 101 ++ .../net/micode/notes/ui/AlarmReceiver.java | 54 + .../net/micode/notes/ui/DateTimePicker.java | 457 ++++++ .../micode/notes/ui/DateTimePickerDialog.java | 145 ++ .../net/micode/notes/ui/DropdownMenu.java | 89 ++ .../micode/notes/ui/FoldersListAdapter.java | 131 ++ .../net/micode/notes/ui/NoteEditActivity.java | 1257 +++++++++++++++ .../net/micode/notes/ui/NoteEditText.java | 256 ++++ .../net/micode/notes/ui/NoteItemData.java | 261 ++++ .../micode/notes/ui/NotesListActivity.java | 1358 +++++++++++++++++ .../net/micode/notes/ui/NotesListAdapter.java | 276 ++++ .../net/micode/notes/ui/NotesListItem.java | 183 +++ .../notes/ui/NotesPreferenceActivity.java | 452 ++++++ .../notes/widget/NoteWidgetProvider.java | 208 +++ .../notes/widget/NoteWidgetProvider_2x.java | 77 + .../notes/widget/NoteWidgetProvider_4x.java | 82 + .../src/main/res/color/primary_text_dark.xml | 22 + .../main/res/color/secondary_text_dark.xml | 20 + .../res/drawable-hdpi/bg_btn_set_color.png | Bin 0 -> 3588 bytes .../res/drawable-hdpi/bg_color_btn_mask.png | Bin 0 -> 245 bytes .../main/res/drawable-hdpi/call_record.png | Bin 0 -> 3533 bytes .../app/src/main/res/drawable-hdpi/clock.png | Bin 0 -> 3958 bytes .../app/src/main/res/drawable-hdpi/delete.png | Bin 0 -> 3490 bytes .../res/drawable-hdpi/dropdown_icon.9.png | Bin 0 -> 443 bytes .../main/res/drawable-hdpi/edit_blue.9.png | Bin 0 -> 3524 bytes .../main/res/drawable-hdpi/edit_green.9.png | Bin 0 -> 3565 bytes .../src/main/res/drawable-hdpi/edit_red.9.png | Bin 0 -> 3458 bytes .../res/drawable-hdpi/edit_title_blue.9.png | Bin 0 -> 5100 bytes .../res/drawable-hdpi/edit_title_green.9.png | Bin 0 -> 5627 bytes .../res/drawable-hdpi/edit_title_red.9.png | Bin 0 -> 5061 bytes .../res/drawable-hdpi/edit_title_white.9.png | Bin 0 -> 3866 bytes .../res/drawable-hdpi/edit_title_yellow.9.png | Bin 0 -> 6000 bytes .../main/res/drawable-hdpi/edit_white.9.png | Bin 0 -> 3441 bytes .../main/res/drawable-hdpi/edit_yellow.9.png | Bin 0 -> 3634 bytes .../src/main/res/drawable-hdpi/font_large.png | Bin 0 -> 3161 bytes .../main/res/drawable-hdpi/font_normal.png | Bin 0 -> 3097 bytes .../drawable-hdpi/font_size_selector_bg.9.png | Bin 0 -> 4101 bytes .../src/main/res/drawable-hdpi/font_small.png | Bin 0 -> 3099 bytes .../src/main/res/drawable-hdpi/font_super.png | Bin 0 -> 3188 bytes .../src/main/res/drawable-hdpi/icon_app.png | Bin 0 -> 6887 bytes .../res/drawable-hdpi/list_background.png | Bin 0 -> 567323 bytes .../res/drawable-hdpi/list_blue_down.9.png | Bin 0 -> 4361 bytes .../res/drawable-hdpi/list_blue_middle.9.png | Bin 0 -> 3099 bytes .../res/drawable-hdpi/list_blue_single.9.png | Bin 0 -> 4618 bytes .../main/res/drawable-hdpi/list_blue_up.9.png | Bin 0 -> 3301 bytes .../main/res/drawable-hdpi/list_folder.9.png | Bin 0 -> 5608 bytes .../res/drawable-hdpi/list_footer_bg.9.png | Bin 0 -> 2837 bytes .../res/drawable-hdpi/list_green_down.9.png | Bin 0 -> 4488 bytes .../res/drawable-hdpi/list_green_middle.9.png | Bin 0 -> 3179 bytes .../res/drawable-hdpi/list_green_single.9.png | Bin 0 -> 4728 bytes .../res/drawable-hdpi/list_green_up.9.png | Bin 0 -> 3351 bytes .../res/drawable-hdpi/list_red_down.9.png | Bin 0 -> 4307 bytes .../res/drawable-hdpi/list_red_middle.9.png | Bin 0 -> 3075 bytes .../res/drawable-hdpi/list_red_single.9.png | Bin 0 -> 4565 bytes .../main/res/drawable-hdpi/list_red_up.9.png | Bin 0 -> 3277 bytes .../res/drawable-hdpi/list_white_down.9.png | Bin 0 -> 4305 bytes .../res/drawable-hdpi/list_white_middle.9.png | Bin 0 -> 3042 bytes .../res/drawable-hdpi/list_white_single.9.png | Bin 0 -> 4546 bytes .../res/drawable-hdpi/list_white_up.9.png | Bin 0 -> 3220 bytes .../res/drawable-hdpi/list_yellow_down.9.png | Bin 0 -> 4420 bytes .../drawable-hdpi/list_yellow_middle.9.png | Bin 0 -> 3150 bytes .../drawable-hdpi/list_yellow_single.9.png | Bin 0 -> 4670 bytes .../res/drawable-hdpi/list_yellow_up.9.png | Bin 0 -> 3335 bytes .../main/res/drawable-hdpi/menu_delete.png | Bin 0 -> 3426 bytes .../src/main/res/drawable-hdpi/menu_move.png | Bin 0 -> 3294 bytes .../res/drawable-hdpi/new_note_normal.png | Bin 0 -> 89221 bytes .../res/drawable-hdpi/new_note_pressed.png | Bin 0 -> 90126 bytes .../note_edit_color_selector_panel.png | Bin 0 -> 7030 bytes .../main/res/drawable-hdpi/notification.png | Bin 0 -> 3107 bytes .../main/res/drawable-hdpi/search_result.png | Bin 0 -> 3030 bytes .../src/main/res/drawable-hdpi/selected.png | Bin 0 -> 4959 bytes .../main/res/drawable-hdpi/title_alert.png | Bin 0 -> 3696 bytes .../main/res/drawable-hdpi/title_bar_bg.9.png | Bin 0 -> 5970 bytes .../main/res/drawable-hdpi/widget_2x_blue.png | Bin 0 -> 1946 bytes .../res/drawable-hdpi/widget_2x_green.png | Bin 0 -> 1954 bytes .../main/res/drawable-hdpi/widget_2x_red.png | Bin 0 -> 1892 bytes .../res/drawable-hdpi/widget_2x_white.png | Bin 0 -> 1901 bytes .../res/drawable-hdpi/widget_2x_yellow.png | Bin 0 -> 1978 bytes .../main/res/drawable-hdpi/widget_4x_blue.png | Bin 0 -> 4165 bytes .../res/drawable-hdpi/widget_4x_green.png | Bin 0 -> 4192 bytes .../main/res/drawable-hdpi/widget_4x_red.png | Bin 0 -> 4223 bytes .../res/drawable-hdpi/widget_4x_white.png | Bin 0 -> 4106 bytes .../res/drawable-hdpi/widget_4x_yellow.png | Bin 0 -> 4199 bytes .../app/src/main/res/drawable/aguduo.png | Bin 0 -> 90342 bytes .../app/src/main/res/drawable/anqila.png | Bin 0 -> 374209 bytes .../res/drawable/ic_launcher_background.xml | 170 +++ .../res/drawable/ic_launcher_foreground.xml | 30 + .../app/src/main/res/drawable/new_note.xml | 23 + src/mi_note/app/src/main/res/drawable/yao.png | Bin 0 -> 70395 bytes .../main/res/layout/account_dialog_title.xml | 43 + .../app/src/main/res/layout/activity_main.xml | 19 + .../src/main/res/layout/add_account_text.xml | 32 + .../src/main/res/layout/datetime_picker.xml | 56 + .../src/main/res/layout/dialog_edit_text.xml | 23 + .../src/main/res/layout/folder_list_item.xml | 29 + .../app/src/main/res/layout/note_edit.xml | 405 +++++ .../main/res/layout/note_edit_list_item.xml | 39 + .../app/src/main/res/layout/note_item.xml | 78 + .../app/src/main/res/layout/note_list.xml | 58 + .../res/layout/note_list_dropdown_menu.xml | 32 + .../src/main/res/layout/note_list_footer.xml | 24 + .../src/main/res/layout/settings_header.xml | 41 + .../app/src/main/res/layout/widget_2x.xml | 37 + .../app/src/main/res/layout/widget_4x.xml | 39 + .../app/src/main/res/menu/call_note_edit.xml | 48 + .../src/main/res/menu/call_record_folder.xml | 23 + .../app/src/main/res/menu/note_edit.xml | 52 + .../app/src/main/res/menu/note_list.xml | 45 + .../src/main/res/menu/note_list_dropdown.xml | 20 + .../src/main/res/menu/note_list_options.xml | 31 + .../app/src/main/res/menu/sub_folder.xml | 24 + .../res/mipmap-anydpi-v26/ic_launcher.xml | 6 + .../mipmap-anydpi-v26/ic_launcher_round.xml | 6 + .../src/main/res/mipmap-hdpi/ic_launcher.webp | Bin 0 -> 1404 bytes .../res/mipmap-hdpi/ic_launcher_round.webp | Bin 0 -> 2898 bytes .../src/main/res/mipmap-mdpi/ic_launcher.webp | Bin 0 -> 982 bytes .../res/mipmap-mdpi/ic_launcher_round.webp | Bin 0 -> 1772 bytes .../main/res/mipmap-xhdpi/ic_launcher.webp | Bin 0 -> 1900 bytes .../res/mipmap-xhdpi/ic_launcher_round.webp | Bin 0 -> 3918 bytes .../main/res/mipmap-xxhdpi/ic_launcher.webp | Bin 0 -> 2884 bytes .../res/mipmap-xxhdpi/ic_launcher_round.webp | Bin 0 -> 5914 bytes .../main/res/mipmap-xxxhdpi/ic_launcher.webp | Bin 0 -> 3844 bytes .../res/mipmap-xxxhdpi/ic_launcher_round.webp | Bin 0 -> 7778 bytes .../app/src/main/res/raw-zh-rCN/introduction | 7 + src/mi_note/app/src/main/res/raw/introduction | 1 + .../app/src/main/res/values-night/themes.xml | 7 + .../app/src/main/res/values-zh-rCN/arrays.xml | 23 + .../src/main/res/values-zh-rCN/strings.xml | 126 ++ .../app/src/main/res/values-zh-rTW/arrays.xml | 23 + .../src/main/res/values-zh-rTW/strings.xml | 127 ++ .../app/src/main/res/values/arrays.xml | 31 + .../app/src/main/res/values/colors.xml | 20 + .../app/src/main/res/values/dimens.xml | 25 + .../app/src/main/res/values/strings.xml | 144 ++ .../app/src/main/res/values/styles.xml | 72 + .../app/src/main/res/values/themes.xml | 9 + .../app/src/main/res/xml/backup_rules.xml | 13 + .../main/res/xml/data_extraction_rules.xml | 19 + .../app/src/main/res/xml/preferences.xml | 30 + .../app/src/main/res/xml/searchable.xml | 27 + .../app/src/main/res/xml/widget_2x_info.xml | 23 + .../app/src/main/res/xml/widget_4x_info.xml | 23 + .../com/example/mi_note/ExampleUnitTest.java | 26 + src/mi_note/build.gradle | 4 + src/mi_note/gradle.properties | 22 + src/mi_note/gradle/libs.versions.toml | 22 + src/mi_note/gradle/wrapper/gradle-wrapper.jar | Bin 0 -> 59203 bytes .../gradle/wrapper/gradle-wrapper.properties | 7 + src/mi_note/gradlew | 185 +++ src/mi_note/gradlew.bat | 89 ++ src/mi_note/settings.gradle | 23 + 190 files changed, 15591 insertions(+) create mode 100644 src/mi_note/.gitignore create mode 100644 src/mi_note/.idea/.gitignore create mode 100644 src/mi_note/.idea/AndroidProjectSystem.xml create mode 100644 src/mi_note/.idea/checkstyle-idea.xml create mode 100644 src/mi_note/.idea/compiler.xml create mode 100644 src/mi_note/.idea/deploymentTargetSelector.xml create mode 100644 src/mi_note/.idea/gradle.xml create mode 100644 src/mi_note/.idea/migrations.xml create mode 100644 src/mi_note/.idea/misc.xml create mode 100644 src/mi_note/.idea/runConfigurations.xml create mode 100644 src/mi_note/.idea/vcs.xml create mode 100644 src/mi_note/app/.gitignore create mode 100644 src/mi_note/app/build.gradle create mode 100644 src/mi_note/app/proguard-rules.pro create mode 100644 src/mi_note/app/src/androidTest/java/com/example/mi_note/ExampleInstrumentedTest.java create mode 100644 src/mi_note/app/src/main/AndroidManifest.xml create mode 100644 src/mi_note/app/src/main/java/net/micode/notes/data/Contact.java create mode 100644 src/mi_note/app/src/main/java/net/micode/notes/data/Notes.java create mode 100644 src/mi_note/app/src/main/java/net/micode/notes/data/NotesDatabaseHelper.java create mode 100644 src/mi_note/app/src/main/java/net/micode/notes/data/NotesProvider.java create mode 100644 src/mi_note/app/src/main/java/net/micode/notes/gtask/data/MetaData.java create mode 100644 src/mi_note/app/src/main/java/net/micode/notes/gtask/data/Node.java create mode 100644 src/mi_note/app/src/main/java/net/micode/notes/gtask/data/SqlData.java create mode 100644 src/mi_note/app/src/main/java/net/micode/notes/gtask/data/SqlNote.java create mode 100644 src/mi_note/app/src/main/java/net/micode/notes/gtask/data/Task.java create mode 100644 src/mi_note/app/src/main/java/net/micode/notes/gtask/data/TaskList.java create mode 100644 src/mi_note/app/src/main/java/net/micode/notes/gtask/exception/ActionFailureException.java create mode 100644 src/mi_note/app/src/main/java/net/micode/notes/gtask/exception/NetworkFailureException.java create mode 100644 src/mi_note/app/src/main/java/net/micode/notes/gtask/remote/GTaskASyncTask.java create mode 100644 src/mi_note/app/src/main/java/net/micode/notes/gtask/remote/GTaskClient.java create mode 100644 src/mi_note/app/src/main/java/net/micode/notes/gtask/remote/GTaskManager.java create mode 100644 src/mi_note/app/src/main/java/net/micode/notes/gtask/remote/GTaskSyncService.java create mode 100644 src/mi_note/app/src/main/java/net/micode/notes/model/Note.java create mode 100644 src/mi_note/app/src/main/java/net/micode/notes/model/WorkingNote.java create mode 100644 src/mi_note/app/src/main/java/net/micode/notes/tool/BackupUtils.java create mode 100644 src/mi_note/app/src/main/java/net/micode/notes/tool/DataUtils.java create mode 100644 src/mi_note/app/src/main/java/net/micode/notes/tool/GTaskStringUtils.java create mode 100644 src/mi_note/app/src/main/java/net/micode/notes/tool/ResourceParser.java create mode 100644 src/mi_note/app/src/main/java/net/micode/notes/ui/AlarmAlertActivity.java create mode 100644 src/mi_note/app/src/main/java/net/micode/notes/ui/AlarmInitReceiver.java create mode 100644 src/mi_note/app/src/main/java/net/micode/notes/ui/AlarmReceiver.java create mode 100644 src/mi_note/app/src/main/java/net/micode/notes/ui/DateTimePicker.java create mode 100644 src/mi_note/app/src/main/java/net/micode/notes/ui/DateTimePickerDialog.java create mode 100644 src/mi_note/app/src/main/java/net/micode/notes/ui/DropdownMenu.java create mode 100644 src/mi_note/app/src/main/java/net/micode/notes/ui/FoldersListAdapter.java create mode 100644 src/mi_note/app/src/main/java/net/micode/notes/ui/NoteEditActivity.java create mode 100644 src/mi_note/app/src/main/java/net/micode/notes/ui/NoteEditText.java create mode 100644 src/mi_note/app/src/main/java/net/micode/notes/ui/NoteItemData.java create mode 100644 src/mi_note/app/src/main/java/net/micode/notes/ui/NotesListActivity.java create mode 100644 src/mi_note/app/src/main/java/net/micode/notes/ui/NotesListAdapter.java create mode 100644 src/mi_note/app/src/main/java/net/micode/notes/ui/NotesListItem.java create mode 100644 src/mi_note/app/src/main/java/net/micode/notes/ui/NotesPreferenceActivity.java create mode 100644 src/mi_note/app/src/main/java/net/micode/notes/widget/NoteWidgetProvider.java create mode 100644 src/mi_note/app/src/main/java/net/micode/notes/widget/NoteWidgetProvider_2x.java create mode 100644 src/mi_note/app/src/main/java/net/micode/notes/widget/NoteWidgetProvider_4x.java create mode 100644 src/mi_note/app/src/main/res/color/primary_text_dark.xml create mode 100644 src/mi_note/app/src/main/res/color/secondary_text_dark.xml create mode 100644 src/mi_note/app/src/main/res/drawable-hdpi/bg_btn_set_color.png create mode 100644 src/mi_note/app/src/main/res/drawable-hdpi/bg_color_btn_mask.png create mode 100644 src/mi_note/app/src/main/res/drawable-hdpi/call_record.png create mode 100644 src/mi_note/app/src/main/res/drawable-hdpi/clock.png create mode 100644 src/mi_note/app/src/main/res/drawable-hdpi/delete.png create mode 100644 src/mi_note/app/src/main/res/drawable-hdpi/dropdown_icon.9.png create mode 100644 src/mi_note/app/src/main/res/drawable-hdpi/edit_blue.9.png create mode 100644 src/mi_note/app/src/main/res/drawable-hdpi/edit_green.9.png create mode 100644 src/mi_note/app/src/main/res/drawable-hdpi/edit_red.9.png create mode 100644 src/mi_note/app/src/main/res/drawable-hdpi/edit_title_blue.9.png create mode 100644 src/mi_note/app/src/main/res/drawable-hdpi/edit_title_green.9.png create mode 100644 src/mi_note/app/src/main/res/drawable-hdpi/edit_title_red.9.png create mode 100644 src/mi_note/app/src/main/res/drawable-hdpi/edit_title_white.9.png create mode 100644 src/mi_note/app/src/main/res/drawable-hdpi/edit_title_yellow.9.png create mode 100644 src/mi_note/app/src/main/res/drawable-hdpi/edit_white.9.png create mode 100644 src/mi_note/app/src/main/res/drawable-hdpi/edit_yellow.9.png create mode 100644 src/mi_note/app/src/main/res/drawable-hdpi/font_large.png create mode 100644 src/mi_note/app/src/main/res/drawable-hdpi/font_normal.png create mode 100644 src/mi_note/app/src/main/res/drawable-hdpi/font_size_selector_bg.9.png create mode 100644 src/mi_note/app/src/main/res/drawable-hdpi/font_small.png create mode 100644 src/mi_note/app/src/main/res/drawable-hdpi/font_super.png create mode 100644 src/mi_note/app/src/main/res/drawable-hdpi/icon_app.png create mode 100644 src/mi_note/app/src/main/res/drawable-hdpi/list_background.png create mode 100644 src/mi_note/app/src/main/res/drawable-hdpi/list_blue_down.9.png create mode 100644 src/mi_note/app/src/main/res/drawable-hdpi/list_blue_middle.9.png create mode 100644 src/mi_note/app/src/main/res/drawable-hdpi/list_blue_single.9.png create mode 100644 src/mi_note/app/src/main/res/drawable-hdpi/list_blue_up.9.png create mode 100644 src/mi_note/app/src/main/res/drawable-hdpi/list_folder.9.png create mode 100644 src/mi_note/app/src/main/res/drawable-hdpi/list_footer_bg.9.png create mode 100644 src/mi_note/app/src/main/res/drawable-hdpi/list_green_down.9.png create mode 100644 src/mi_note/app/src/main/res/drawable-hdpi/list_green_middle.9.png create mode 100644 src/mi_note/app/src/main/res/drawable-hdpi/list_green_single.9.png create mode 100644 src/mi_note/app/src/main/res/drawable-hdpi/list_green_up.9.png create mode 100644 src/mi_note/app/src/main/res/drawable-hdpi/list_red_down.9.png create mode 100644 src/mi_note/app/src/main/res/drawable-hdpi/list_red_middle.9.png create mode 100644 src/mi_note/app/src/main/res/drawable-hdpi/list_red_single.9.png create mode 100644 src/mi_note/app/src/main/res/drawable-hdpi/list_red_up.9.png create mode 100644 src/mi_note/app/src/main/res/drawable-hdpi/list_white_down.9.png create mode 100644 src/mi_note/app/src/main/res/drawable-hdpi/list_white_middle.9.png create mode 100644 src/mi_note/app/src/main/res/drawable-hdpi/list_white_single.9.png create mode 100644 src/mi_note/app/src/main/res/drawable-hdpi/list_white_up.9.png create mode 100644 src/mi_note/app/src/main/res/drawable-hdpi/list_yellow_down.9.png create mode 100644 src/mi_note/app/src/main/res/drawable-hdpi/list_yellow_middle.9.png create mode 100644 src/mi_note/app/src/main/res/drawable-hdpi/list_yellow_single.9.png create mode 100644 src/mi_note/app/src/main/res/drawable-hdpi/list_yellow_up.9.png create mode 100644 src/mi_note/app/src/main/res/drawable-hdpi/menu_delete.png create mode 100644 src/mi_note/app/src/main/res/drawable-hdpi/menu_move.png create mode 100644 src/mi_note/app/src/main/res/drawable-hdpi/new_note_normal.png create mode 100644 src/mi_note/app/src/main/res/drawable-hdpi/new_note_pressed.png create mode 100644 src/mi_note/app/src/main/res/drawable-hdpi/note_edit_color_selector_panel.png create mode 100644 src/mi_note/app/src/main/res/drawable-hdpi/notification.png create mode 100644 src/mi_note/app/src/main/res/drawable-hdpi/search_result.png create mode 100644 src/mi_note/app/src/main/res/drawable-hdpi/selected.png create mode 100644 src/mi_note/app/src/main/res/drawable-hdpi/title_alert.png create mode 100644 src/mi_note/app/src/main/res/drawable-hdpi/title_bar_bg.9.png create mode 100644 src/mi_note/app/src/main/res/drawable-hdpi/widget_2x_blue.png create mode 100644 src/mi_note/app/src/main/res/drawable-hdpi/widget_2x_green.png create mode 100644 src/mi_note/app/src/main/res/drawable-hdpi/widget_2x_red.png create mode 100644 src/mi_note/app/src/main/res/drawable-hdpi/widget_2x_white.png create mode 100644 src/mi_note/app/src/main/res/drawable-hdpi/widget_2x_yellow.png create mode 100644 src/mi_note/app/src/main/res/drawable-hdpi/widget_4x_blue.png create mode 100644 src/mi_note/app/src/main/res/drawable-hdpi/widget_4x_green.png create mode 100644 src/mi_note/app/src/main/res/drawable-hdpi/widget_4x_red.png create mode 100644 src/mi_note/app/src/main/res/drawable-hdpi/widget_4x_white.png create mode 100644 src/mi_note/app/src/main/res/drawable-hdpi/widget_4x_yellow.png create mode 100644 src/mi_note/app/src/main/res/drawable/aguduo.png create mode 100644 src/mi_note/app/src/main/res/drawable/anqila.png create mode 100644 src/mi_note/app/src/main/res/drawable/ic_launcher_background.xml create mode 100644 src/mi_note/app/src/main/res/drawable/ic_launcher_foreground.xml create mode 100644 src/mi_note/app/src/main/res/drawable/new_note.xml create mode 100644 src/mi_note/app/src/main/res/drawable/yao.png create mode 100644 src/mi_note/app/src/main/res/layout/account_dialog_title.xml create mode 100644 src/mi_note/app/src/main/res/layout/activity_main.xml create mode 100644 src/mi_note/app/src/main/res/layout/add_account_text.xml create mode 100644 src/mi_note/app/src/main/res/layout/datetime_picker.xml create mode 100644 src/mi_note/app/src/main/res/layout/dialog_edit_text.xml create mode 100644 src/mi_note/app/src/main/res/layout/folder_list_item.xml create mode 100644 src/mi_note/app/src/main/res/layout/note_edit.xml create mode 100644 src/mi_note/app/src/main/res/layout/note_edit_list_item.xml create mode 100644 src/mi_note/app/src/main/res/layout/note_item.xml create mode 100644 src/mi_note/app/src/main/res/layout/note_list.xml create mode 100644 src/mi_note/app/src/main/res/layout/note_list_dropdown_menu.xml create mode 100644 src/mi_note/app/src/main/res/layout/note_list_footer.xml create mode 100644 src/mi_note/app/src/main/res/layout/settings_header.xml create mode 100644 src/mi_note/app/src/main/res/layout/widget_2x.xml create mode 100644 src/mi_note/app/src/main/res/layout/widget_4x.xml create mode 100644 src/mi_note/app/src/main/res/menu/call_note_edit.xml create mode 100644 src/mi_note/app/src/main/res/menu/call_record_folder.xml create mode 100644 src/mi_note/app/src/main/res/menu/note_edit.xml create mode 100644 src/mi_note/app/src/main/res/menu/note_list.xml create mode 100644 src/mi_note/app/src/main/res/menu/note_list_dropdown.xml create mode 100644 src/mi_note/app/src/main/res/menu/note_list_options.xml create mode 100644 src/mi_note/app/src/main/res/menu/sub_folder.xml create mode 100644 src/mi_note/app/src/main/res/mipmap-anydpi-v26/ic_launcher.xml create mode 100644 src/mi_note/app/src/main/res/mipmap-anydpi-v26/ic_launcher_round.xml create mode 100644 src/mi_note/app/src/main/res/mipmap-hdpi/ic_launcher.webp create mode 100644 src/mi_note/app/src/main/res/mipmap-hdpi/ic_launcher_round.webp create mode 100644 src/mi_note/app/src/main/res/mipmap-mdpi/ic_launcher.webp create mode 100644 src/mi_note/app/src/main/res/mipmap-mdpi/ic_launcher_round.webp create mode 100644 src/mi_note/app/src/main/res/mipmap-xhdpi/ic_launcher.webp create mode 100644 src/mi_note/app/src/main/res/mipmap-xhdpi/ic_launcher_round.webp create mode 100644 src/mi_note/app/src/main/res/mipmap-xxhdpi/ic_launcher.webp create mode 100644 src/mi_note/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.webp create mode 100644 src/mi_note/app/src/main/res/mipmap-xxxhdpi/ic_launcher.webp create mode 100644 src/mi_note/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.webp create mode 100644 src/mi_note/app/src/main/res/raw-zh-rCN/introduction create mode 100644 src/mi_note/app/src/main/res/raw/introduction create mode 100644 src/mi_note/app/src/main/res/values-night/themes.xml create mode 100644 src/mi_note/app/src/main/res/values-zh-rCN/arrays.xml create mode 100644 src/mi_note/app/src/main/res/values-zh-rCN/strings.xml create mode 100644 src/mi_note/app/src/main/res/values-zh-rTW/arrays.xml create mode 100644 src/mi_note/app/src/main/res/values-zh-rTW/strings.xml create mode 100644 src/mi_note/app/src/main/res/values/arrays.xml create mode 100644 src/mi_note/app/src/main/res/values/colors.xml create mode 100644 src/mi_note/app/src/main/res/values/dimens.xml create mode 100644 src/mi_note/app/src/main/res/values/strings.xml create mode 100644 src/mi_note/app/src/main/res/values/styles.xml create mode 100644 src/mi_note/app/src/main/res/values/themes.xml create mode 100644 src/mi_note/app/src/main/res/xml/backup_rules.xml create mode 100644 src/mi_note/app/src/main/res/xml/data_extraction_rules.xml create mode 100644 src/mi_note/app/src/main/res/xml/preferences.xml create mode 100644 src/mi_note/app/src/main/res/xml/searchable.xml create mode 100644 src/mi_note/app/src/main/res/xml/widget_2x_info.xml create mode 100644 src/mi_note/app/src/main/res/xml/widget_4x_info.xml create mode 100644 src/mi_note/app/src/test/java/com/example/mi_note/ExampleUnitTest.java create mode 100644 src/mi_note/build.gradle create mode 100644 src/mi_note/gradle.properties create mode 100644 src/mi_note/gradle/libs.versions.toml create mode 100644 src/mi_note/gradle/wrapper/gradle-wrapper.jar create mode 100644 src/mi_note/gradle/wrapper/gradle-wrapper.properties create mode 100644 src/mi_note/gradlew create mode 100644 src/mi_note/gradlew.bat create mode 100644 src/mi_note/settings.gradle diff --git a/src/mi_note/.gitignore b/src/mi_note/.gitignore new file mode 100644 index 0000000..aa724b7 --- /dev/null +++ b/src/mi_note/.gitignore @@ -0,0 +1,15 @@ +*.iml +.gradle +/local.properties +/.idea/caches +/.idea/libraries +/.idea/modules.xml +/.idea/workspace.xml +/.idea/navEditor.xml +/.idea/assetWizardSettings.xml +.DS_Store +/build +/captures +.externalNativeBuild +.cxx +local.properties diff --git a/src/mi_note/.idea/.gitignore b/src/mi_note/.idea/.gitignore new file mode 100644 index 0000000..26d3352 --- /dev/null +++ b/src/mi_note/.idea/.gitignore @@ -0,0 +1,3 @@ +# Default ignored files +/shelf/ +/workspace.xml diff --git a/src/mi_note/.idea/AndroidProjectSystem.xml b/src/mi_note/.idea/AndroidProjectSystem.xml new file mode 100644 index 0000000..4a53bee --- /dev/null +++ b/src/mi_note/.idea/AndroidProjectSystem.xml @@ -0,0 +1,6 @@ + + + + + \ No newline at end of file diff --git a/src/mi_note/.idea/checkstyle-idea.xml b/src/mi_note/.idea/checkstyle-idea.xml new file mode 100644 index 0000000..e9f575b --- /dev/null +++ b/src/mi_note/.idea/checkstyle-idea.xml @@ -0,0 +1,16 @@ + + + + 10.21.3 + JavaOnly + true + + + \ No newline at end of file diff --git a/src/mi_note/.idea/compiler.xml b/src/mi_note/.idea/compiler.xml new file mode 100644 index 0000000..b86273d --- /dev/null +++ b/src/mi_note/.idea/compiler.xml @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/src/mi_note/.idea/deploymentTargetSelector.xml b/src/mi_note/.idea/deploymentTargetSelector.xml new file mode 100644 index 0000000..9493d23 --- /dev/null +++ b/src/mi_note/.idea/deploymentTargetSelector.xml @@ -0,0 +1,26 @@ + + + + + + + + + \ No newline at end of file diff --git a/src/mi_note/.idea/gradle.xml b/src/mi_note/.idea/gradle.xml new file mode 100644 index 0000000..86ab739 --- /dev/null +++ b/src/mi_note/.idea/gradle.xml @@ -0,0 +1,19 @@ + + + + + + + \ No newline at end of file diff --git a/src/mi_note/.idea/migrations.xml b/src/mi_note/.idea/migrations.xml new file mode 100644 index 0000000..f8051a6 --- /dev/null +++ b/src/mi_note/.idea/migrations.xml @@ -0,0 +1,10 @@ + + + + + + \ No newline at end of file diff --git a/src/mi_note/.idea/misc.xml b/src/mi_note/.idea/misc.xml new file mode 100644 index 0000000..b2c751a --- /dev/null +++ b/src/mi_note/.idea/misc.xml @@ -0,0 +1,9 @@ + + + + + + + + \ No newline at end of file diff --git a/src/mi_note/.idea/runConfigurations.xml b/src/mi_note/.idea/runConfigurations.xml new file mode 100644 index 0000000..16660f1 --- /dev/null +++ b/src/mi_note/.idea/runConfigurations.xml @@ -0,0 +1,17 @@ + + + + + + \ No newline at end of file diff --git a/src/mi_note/.idea/vcs.xml b/src/mi_note/.idea/vcs.xml new file mode 100644 index 0000000..d843f34 --- /dev/null +++ b/src/mi_note/.idea/vcs.xml @@ -0,0 +1,4 @@ + + + + \ No newline at end of file diff --git a/src/mi_note/app/.gitignore b/src/mi_note/app/.gitignore new file mode 100644 index 0000000..42afabf --- /dev/null +++ b/src/mi_note/app/.gitignore @@ -0,0 +1 @@ +/build \ No newline at end of file diff --git a/src/mi_note/app/build.gradle b/src/mi_note/app/build.gradle new file mode 100644 index 0000000..f6a9329 --- /dev/null +++ b/src/mi_note/app/build.gradle @@ -0,0 +1,50 @@ +plugins { + alias(libs.plugins.android.application) +} + +android { + namespace 'net.micode.notes' + compileSdk 35 + + defaultConfig { + applicationId "net.micode.notes" + minSdk 24 + targetSdk 35 + minSdkVersion 24 + targetSdkVersion 33 + versionCode 1 + versionName "1.0" + + testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner" + } + + buildTypes { + release { + minifyEnabled false + proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro' + } + } + compileOptions { + sourceCompatibility JavaVersion.VERSION_17 + targetCompatibility JavaVersion.VERSION_17 + } + packagingOptions { + exclude 'META-INF/DEPENDENCIES' + exclude 'META-INF/NOTICE' + exclude 'META-INF/LICENSE' + exclude 'META-INF/LICENSE.txt' + exclude 'META-INF/NOTICE.txt' + } + buildToolsVersion '35.0.0' +} + +dependencies { + implementation 'org.apache.httpcomponents:httpclient:4.5.13' + implementation libs.appcompat + implementation libs.material + implementation libs.activity + implementation libs.constraintlayout + testImplementation libs.junit + androidTestImplementation libs.ext.junit + androidTestImplementation libs.espresso.core +} diff --git a/src/mi_note/app/proguard-rules.pro b/src/mi_note/app/proguard-rules.pro new file mode 100644 index 0000000..481bb43 --- /dev/null +++ b/src/mi_note/app/proguard-rules.pro @@ -0,0 +1,21 @@ +# Add project specific ProGuard rules here. +# You can control the set of applied configuration files using the +# proguardFiles setting in build.gradle. +# +# For more details, see +# http://developer.android.com/guide/developing/tools/proguard.html + +# If your project uses WebView with JS, uncomment the following +# and specify the fully qualified class name to the JavaScript interface +# class: +#-keepclassmembers class fqcn.of.javascript.interface.for.webview { +# public *; +#} + +# Uncomment this to preserve the line number information for +# debugging stack traces. +#-keepattributes SourceFile,LineNumberTable + +# If you keep the line number information, uncomment this to +# hide the original source file name. +#-renamesourcefileattribute SourceFile \ No newline at end of file diff --git a/src/mi_note/app/src/androidTest/java/com/example/mi_note/ExampleInstrumentedTest.java b/src/mi_note/app/src/androidTest/java/com/example/mi_note/ExampleInstrumentedTest.java new file mode 100644 index 0000000..c8d6ddd --- /dev/null +++ b/src/mi_note/app/src/androidTest/java/com/example/mi_note/ExampleInstrumentedTest.java @@ -0,0 +1,43 @@ +// 声明当前Java文件所在的包路径(包名) +package com.example.mi_note; + +// 导入Android上下文相关类 +import android.content.Context; + +// 导入AndroidX测试库的核心测试工具类 +import androidx.test.platform.app.InstrumentationRegistry; +// 导入AndroidX测试运行器 +import androidx.test.ext.junit.runners.AndroidJUnit4; + +// 导入JUnit测试框架注解 +import org.junit.Test; +// 导入JUnit测试运行器接口 +import org.junit.runner.RunWith; + +// 导入JUnit断言方法 +import static org.junit.Assert.*; + +/** + * 设备测试类(在Android设备/模拟器上运行的测试) + * + * @see Testing documentation + */ +// 使用AndroidJUnit4测试运行器 +@RunWith(AndroidJUnit4.class) +public class ExampleInstrumentedTest { + + // 标识这是一个测试方法 + @Test + public void useAppContext() { + // 获取被测应用的上下文对象 + // InstrumentationRegistry是测试环境的注册中心 + // getInstrumentation()获取当前测试的Instrumentation实例 + // getTargetContext()返回被测应用的上下文 + Context appContext = InstrumentationRegistry.getInstrumentation().getTargetContext(); + + // 使用断言验证包名是否正确 + // 参数1:预期值(期望的包名) + // 参数2:实际值(从上下文中获取的包名) + assertEquals("com.example.mi_note", appContext.getPackageName()); + } +} \ No newline at end of file diff --git a/src/mi_note/app/src/main/AndroidManifest.xml b/src/mi_note/app/src/main/AndroidManifest.xml new file mode 100644 index 0000000..58fdfcb --- /dev/null +++ b/src/mi_note/app/src/main/AndroidManifest.xml @@ -0,0 +1,152 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/src/mi_note/app/src/main/java/net/micode/notes/data/Contact.java b/src/mi_note/app/src/main/java/net/micode/notes/data/Contact.java new file mode 100644 index 0000000..4cc0931 --- /dev/null +++ b/src/mi_note/app/src/main/java/net/micode/notes/data/Contact.java @@ -0,0 +1,105 @@ +/* + * 版权所有 (c) 2010-2011,MiCode 开源社区 (www.micode.net) + * 根据 Apache 许可证 2.0 版本("许可证")授权; + * 除非符合许可证的规定,否则不得使用本文件。 + * 您可以从以下网址获取许可证副本: + * http://www.apache.org/licenses/LICENSE-2.0 + * 除非适用法律要求或书面同意,本软件按"原样"分发, + * 没有任何明示或暗示的保证或条件。 + * 详见许可证中规定的权限和限制。 + * (注:这是一份标准的Apache许可证2.0版本的开源声明) + */ +// 声明该类所在的包 +package net.micode.notes.data; + +// 导入android.content 包下的Context类,用于访问应用程序资源和类 +import android.content.Context; +// 导入android.database 包下的Cursor类,用于遍历查询结果集 +import android.database.Cursor; +// 导入android.provider.ContactsContract.CommonDataKinds 包下的Phone类,用于访问联系人的电话号码相关信息 +import android.provider.ContactsContract.CommonDataKinds.Phone; +// 导入android.provider.ContactsContract 包下的Data类,用于访问联系人的数据 +import android.provider.ContactsContract.Data; +// 导入android.telephony 包下的PhoneNumberUtils类,用于处理电话号码相关操作 +import android.telephony.PhoneNumberUtils; +// 导入android.util 包下的Log类,用于日志记录 +import android.util.Log; + +// 导入java.util 包下的HashMap类,用于存储键值对 +import java.util.HashMap; + +// 定义一个名为Contact的公共类 +public class Contact { + // 声明一个静态的HashMap对象sContactCache,用于缓存电话号码和对应的联系人姓名 + private static HashMap sContactCache; + // 定义一个静态常量TAG,用于日志标记 + private static final String TAG = "Contact"; + + // 定义一个静态常量CALLER_ID_SELECTION,用于构建查询联系人的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 = '+')"; + + /** + * 根据电话号码获取联系人姓名 + * @param context 上下文对象,用于访问内容解析器 + * @param phoneNumber 要查询的电话号码 + * @return 联系人姓名,如果未找到则返回null + */ + public static String getContact(Context context, String phoneNumber) { + // 检查sContactCache是否为空,如果为空则进行初始化 + if(sContactCache == null) { + sContactCache = new HashMap<>(); + } + + // 检查sContactCache中是否已经包含该电话号码 + if(sContactCache.containsKey(phoneNumber)) { + // 如果包含,则直接从缓存中获取联系人姓名并返回 + return sContactCache.get(phoneNumber); + } + + // 替换CALLER_ID_SELECTION中的占位符"+"为电话号码的最小匹配格式 + String selection = CALLER_ID_SELECTION.replace("+", + PhoneNumberUtils.toCallerIDMinMatch(phoneNumber)); + // 使用上下文的内容解析器进行查询操作 + Cursor cursor = context.getContentResolver().query( + // 查询的内容URI + Data.CONTENT_URI, + // 查询要返回的列,这里只需要联系人的显示名称 + new String [] { Phone.DISPLAY_NAME }, + // 查询的选择条件 + selection, + // 选择条件中的参数 + new String[] { phoneNumber }, + // 排序规则,这里为null表示不排序 + null); + + // 检查游标是否不为空且能移动到第一行 + if (cursor != null && cursor.moveToFirst()) { + try { + // 从游标中获取联系人的显示名称 + String name = cursor.getString(0); + // 将电话号码和对应的联系人姓名存入缓存 + sContactCache.put(phoneNumber, name); + // 返回联系人姓名 + return name; + } catch (IndexOutOfBoundsException e) { + // 捕获游标获取字符串时可能出现的索引越界异常,并记录错误日志 + Log.e(TAG, " Cursor get string error " + e.toString()); + // 出现异常则返回null + return null; + } finally { + // 无论是否出现异常,最后都要关闭游标 + cursor.close(); + } + } else { + // 如果游标为空或无法移动到第一行,记录未找到匹配联系人的日志 + Log.d(TAG, "No contact matched with number:" + phoneNumber); + // 返回null表示未找到匹配的联系人 + return null; + } + } +} diff --git a/src/mi_note/app/src/main/java/net/micode/notes/data/Notes.java b/src/mi_note/app/src/main/java/net/micode/notes/data/Notes.java new file mode 100644 index 0000000..6f703fc --- /dev/null +++ b/src/mi_note/app/src/main/java/net/micode/notes/data/Notes.java @@ -0,0 +1,280 @@ +/* + * 版权所有 (c) 2010-2011,MiCode 开源社区 (www.micode.net) + * 根据 Apache 许可证 2.0 版本("许可证")授权; + * 除非符合许可证的规定,否则不得使用本文件。 + * 您可以从以下网址获取许可证副本: + * http://www.apache.org/licenses/LICENSE-2.0 + * 除非适用法律要求或书面同意,本软件按"原样"分发, + * 没有任何明示或暗示的保证或条件。 + * 详见许可证中规定的权限和限制。 + * (注:这是一份标准的Apache许可证2.0版本的开源声明) + */ +// 定义Notes应用的数据库结构及相关常量 +package net.micode.notes.data; + +// 导入Android的Uri类,用于处理内容URI +import android.net.Uri; + +// Notes类定义数据库表和字段的常量 +public class Notes { + // 内容提供者的Authority标识 + 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; // 系统文件夹 + + /** + * 以下是系统文件夹的标识ID + * {@link Notes#ID_ROOT_FOLDER } 是默认文件夹 + * {@link Notes#ID_TEMPARAY_FOLDER } 用于存放无归属文件夹的笔记 + * {@link Notes#ID_CALL_RECORD_FOLDER} 用于存放通话记录 + */ + public static final int ID_ROOT_FOLDER = 0; // 根文件夹ID + public static final int ID_TEMPARAY_FOLDER = -1; // 临时文件夹ID + public static final int ID_CALL_RECORD_FOLDER = -2; // 通话记录文件夹ID + public static final int ID_TRASH_FOLER = -3; // 回收站文件夹ID + + // 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"; // 小部件ID + public static final String INTENT_EXTRA_WIDGET_TYPE = "net.micode.notes.widget_type"; // 小部件类型 + 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"; // 通话日期 + + // 小部件类型常量 + public static final int TYPE_WIDGET_INVALIDE = -1; // 无效小部件 + public static final int TYPE_WIDGET_2X = 0; // 2x大小小部件 + public static final int TYPE_WIDGET_4X = 1; // 4x大小小部件 + + // 数据常量内部类 + public static class DataConstants { + public static final String NOTE = TextNote.CONTENT_ITEM_TYPE; // 文本笔记的MIME类型 + public static final String CALL_NOTE = CallNote.CONTENT_ITEM_TYPE; // 通话笔记的MIME类型 + } + + /** + * 查询所有笔记和文件夹的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 { + /** + * 行的唯一ID + *

类型: INTEGER (long)

+ */ + public static final String ID = "_id"; + + /** + * 笔记或文件夹的父ID + *

类型: INTEGER (long)

+ */ + public static final String PARENT_ID = "parent_id"; + + /** + * 笔记或文件夹的创建日期 + *

类型: INTEGER (long)

+ */ + public static final String CREATED_DATE = "created_date"; + + /** + * 最后修改日期 + *

类型: INTEGER (long)

+ */ + public static final String MODIFIED_DATE = "modified_date"; + + /** + * 提醒日期 + *

类型: INTEGER (long)

+ */ + public static final String ALERTED_DATE = "alert_date"; + + /** + * 文件夹名称或笔记的文本内容 + *

类型: TEXT

+ */ + public static final String SNIPPET = "snippet"; + + /** + * 笔记的小部件ID + *

类型: INTEGER (long)

+ */ + public static final String WIDGET_ID = "widget_id"; + + /** + * 笔记的小部件类型 + *

类型: INTEGER (long)

+ */ + public static final String WIDGET_TYPE = "widget_type"; + + /** + * 笔记的背景色ID + *

类型: INTEGER (long)

+ */ + public static final String BG_COLOR_ID = "bg_color_id"; + + /** + * 文本笔记没有附件,多媒体笔记至少有一个附件 + *

类型: INTEGER

+ */ + public static final String HAS_ATTACHMENT = "has_attachment"; + + /** + * 文件夹中的笔记数量 + *

类型: INTEGER (long)

+ */ + public static final String NOTES_COUNT = "notes_count"; + + /** + * 文件类型:文件夹或笔记 + *

类型: INTEGER

+ */ + public static final String TYPE = "type"; + + /** + * 最后同步ID + *

类型: INTEGER (long)

+ */ + public static final String SYNC_ID = "sync_id"; + + /** + * 标记是否本地修改过 + *

类型: INTEGER

+ */ + public static final String LOCAL_MODIFIED = "local_modified"; + + /** + * 移动到临时文件夹前的原始父ID + *

类型: INTEGER

+ */ + public static final String ORIGIN_PARENT_ID = "origin_parent_id"; + + /** + * Google任务ID + *

类型: TEXT

+ */ + public static final String GTASK_ID = "gtask_id"; + + /** + * 版本号 + *

类型: INTEGER (long)

+ */ + public static final String VERSION = "version"; + } + + // 数据表列名接口 + public interface DataColumns { + /** + * 行的唯一ID + *

类型: INTEGER (long)

+ */ + public static final String ID = "_id"; + + /** + * 该行数据项的MIME类型 + *

类型: Text

+ */ + public static final String MIME_TYPE = "mime_type"; + + /** + * 该数据所属笔记的引用ID + *

类型: INTEGER (long)

+ */ + public static final String NOTE_ID = "note_id"; + + /** + * 数据项的创建日期 + *

类型: INTEGER (long)

+ */ + public static final String CREATED_DATE = "created_date"; + + /** + * 最后修改日期 + *

类型: INTEGER (long)

+ */ + public static final String MODIFIED_DATE = "modified_date"; + + /** + * 数据内容 + *

类型: TEXT

+ */ + public static final String CONTENT = "content"; + + /** + * 通用数据列1,含义由MIME_TYPE决定,用于整数类型 + *

类型: INTEGER

+ */ + public static final String DATA1 = "data1"; + + /** + * 通用数据列2,含义由MIME_TYPE决定,用于整数类型 + *

类型: INTEGER

+ */ + public static final String DATA2 = "data2"; + + /** + * 通用数据列3,含义由MIME_TYPE决定,用于文本类型 + *

类型: TEXT

+ */ + public static final String DATA3 = "data3"; + + /** + * 通用数据列4,含义由MIME_TYPE决定,用于文本类型 + *

类型: TEXT

+ */ + public static final String DATA4 = "data4"; + + /** + * 通用数据列5,含义由MIME_TYPE决定,用于文本类型 + *

类型: TEXT

+ */ + public static final String DATA5 = "data5"; + } + + // 文本笔记数据列 + public static final class TextNote implements DataColumns { + /** + * 标记文本是否为检查清单模式 + *

类型: Integer 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"; // 多文本笔记的MIME类型 + + public static final String CONTENT_ITEM_TYPE = "vnd.android.cursor.item/text_note"; // 单文本笔记的MIME类型 + + public static final Uri CONTENT_URI = Uri.parse("content://" + AUTHORITY + "/text_note"); // 文本笔记的URI + } + + // 通话笔记数据列 + public static final class CallNote implements DataColumns { + /** + * 该记录的通话日期 + *

类型: INTEGER (long)

+ */ + public static final String CALL_DATE = DATA1; + + /** + * 该记录的电话号码 + *

类型: TEXT

+ */ + public static final String PHONE_NUMBER = DATA3; + + public static final String CONTENT_TYPE = "vnd.android.cursor.dir/call_note"; // 多通话笔记的MIME类型 + + public static final String CONTENT_ITEM_TYPE = "vnd.android.cursor.item/call_note"; // 单通话笔记的MIME类型 + + public static final Uri CONTENT_URI = Uri.parse("content://" + AUTHORITY + "/call_note"); // 通话笔记的URI + } +} \ No newline at end of file diff --git a/src/mi_note/app/src/main/java/net/micode/notes/data/NotesDatabaseHelper.java b/src/mi_note/app/src/main/java/net/micode/notes/data/NotesDatabaseHelper.java new file mode 100644 index 0000000..f0094fe --- /dev/null +++ b/src/mi_note/app/src/main/java/net/micode/notes/data/NotesDatabaseHelper.java @@ -0,0 +1,389 @@ +/* + * 版权所有 (c) 2010-2011,MiCode 开源社区 (www.micode.net) + * 根据 Apache 许可证 2.0 版本("许可证")授权; + * 除非符合许可证的规定,否则不得使用本文件。 + * 您可以从以下网址获取许可证副本: + * http://www.apache.org/licenses/LICENSE-2.0 + * 除非适用法律要求或书面同意,本软件按"原样"分发, + * 没有任何明示或暗示的保证或条件。 + * 详见许可证中规定的权限和限制。 + *(注:这是一份标准的Apache许可证2.0版本的开源声明) +*/ + +// 笔记应用的数据库辅助类,用于创建和管理SQLite数据库 +package net.micode.notes.data; + +// 导入所需的Android类 +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; + +// SQLiteOpenHelper的子类,用于管理笔记数据库 +public class NotesDatabaseHelper extends SQLiteOpenHelper { + // 数据库名称常量 + private static final String DB_NAME = "note.db"; + + // 数据库版本号常量 + private static final int DB_VERSION = 4; + + // 内部接口,定义数据库表名 + 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," + // ID主键 + NoteColumns.PARENT_ID + " INTEGER NOT NULL DEFAULT 0," + // 父ID + NoteColumns.ALERTED_DATE + " INTEGER NOT NULL DEFAULT 0," + // 提醒日期 + NoteColumns.BG_COLOR_ID + " INTEGER NOT NULL DEFAULT 0," + // 背景色ID + 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," + // 小部件ID + NoteColumns.WIDGET_TYPE + " INTEGER NOT NULL DEFAULT -1," + // 小部件类型 + NoteColumns.SYNC_ID + " INTEGER NOT NULL DEFAULT 0," + // 同步ID + NoteColumns.LOCAL_MODIFIED + " INTEGER NOT NULL DEFAULT 0," + // 本地修改标志 + NoteColumns.ORIGIN_PARENT_ID + " INTEGER NOT NULL DEFAULT 0," + // 原始父ID + NoteColumns.GTASK_ID + " TEXT NOT NULL DEFAULT ''," + // Google任务ID + NoteColumns.VERSION + " INTEGER NOT NULL DEFAULT 0" + // 版本号 + ")"; + + // 创建数据表的SQL语句 + private static final String CREATE_DATA_TABLE_SQL = + "CREATE TABLE " + TABLE.DATA + "(" + + DataColumns.ID + " INTEGER PRIMARY KEY," + // ID主键 + DataColumns.MIME_TYPE + " TEXT NOT NULL," + // MIME类型 + DataColumns.NOTE_ID + " INTEGER NOT NULL DEFAULT 0," + // 关联的笔记ID + 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," + // 通用数据列1 + DataColumns.DATA2 + " INTEGER," + // 通用数据列2 + DataColumns.DATA3 + " TEXT NOT NULL DEFAULT ''," + // 通用数据列3 + DataColumns.DATA4 + " TEXT NOT NULL DEFAULT ''," + // 通用数据列4 + DataColumns.DATA5 + " TEXT NOT NULL DEFAULT ''" + // 通用数据列5 + ")"; + + // 创建数据表note_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 + ");"; + + /** + * 触发器:当笔记的父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"; + + /** + * 触发器:当笔记的父ID更新时减少原文件夹的笔记计数 + */ + 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"; + + /** + * 触发器:当插入数据且类型为普通笔记时更新笔记内容 + */ + 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"; + + /** + * 触发器:当更新数据且类型为普通笔记时更新笔记内容 + */ + 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"; + + /** + * 触发器:当删除数据且类型为普通笔记时清空笔记内容 + */ + 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); // 执行建表SQL + reCreateNoteTableTriggers(db); // 重建触发器 + createSystemFolder(db); // 创建系统文件夹 + Log.d(TAG, "note table has been created"); // 日志记录 + } + + // 重建笔记表触发器 + 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); + } + + // 创建系统文件夹 + 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); + } + + // 创建数据表 + public void createDataTable(SQLiteDatabase db) { + db.execSQL(CREATE_DATA_TABLE_SQL); // 执行建表SQL + reCreateDataTableTriggers(db); // 重建触发器 + db.execSQL(CREATE_DATA_NOTE_ID_INDEX_SQL); // 创建索引 + Log.d(TAG, "data table has been created"); // 日志记录 + } + + // 重建数据表触发器 + 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); + } + + // 获取单例实例(线程安全) + 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 + public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) { + boolean reCreateTriggers = false; // 是否需要重建触发器 + boolean skipV2 = false; // 是否跳过V2升级 + + // 从版本1升级到版本2 + if (oldVersion == 1) { + upgradeToV2(db); // 执行V2升级 + skipV2 = true; // 此次升级包含从V2到V3的升级 + oldVersion++; // 版本号递增 + } + + // 从版本2升级到版本3(如果不需要跳过) + if (oldVersion == 2 && !skipV2) { + upgradeToV3(db); // 执行V3升级 + reCreateTriggers = true; // 需要重建触发器 + oldVersion++; // 版本号递增 + } + + // 从版本3升级到版本4 + if (oldVersion == 3) { + upgradeToV4(db); // 执行V4升级 + oldVersion++; // 版本号递增 + } + + // 如果需要重建触发器 + if (reCreateTriggers) { + reCreateNoteTableTriggers(db); // 重建笔记表触发器 + reCreateDataTableTriggers(db); // 重建数据表触发器 + } + + // 如果升级未完成,抛出异常 + if (oldVersion != newVersion) { + throw new IllegalStateException("Upgrade notes database to version " + newVersion + "fails"); + } + } + + // 升级到版本2的实现 + 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); // 创建数据表 + } + + // 升级到版本3的实现 + 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"); + + // 添加gtask_id列 + db.execSQL("ALTER TABLE " + TABLE.NOTE + " ADD COLUMN " + NoteColumns.GTASK_ID + " TEXT NOT NULL DEFAULT ''"); + + // 添加回收站系统文件夹 + ContentValues values = new ContentValues(); + values.put(NoteColumns.ID, Notes.ID_TRASH_FOLER); + values.put(NoteColumns.TYPE, Notes.TYPE_SYSTEM); + db.insert(TABLE.NOTE, null, values); + } + + // 升级到版本4的实现 + private void upgradeToV4(SQLiteDatabase db) { + // 添加version列 + db.execSQL("ALTER TABLE " + TABLE.NOTE + " ADD COLUMN " + NoteColumns.VERSION + " INTEGER NOT NULL DEFAULT 0"); + } +} \ No newline at end of file diff --git a/src/mi_note/app/src/main/java/net/micode/notes/data/NotesProvider.java b/src/mi_note/app/src/main/java/net/micode/notes/data/NotesProvider.java new file mode 100644 index 0000000..cb18f06 --- /dev/null +++ b/src/mi_note/app/src/main/java/net/micode/notes/data/NotesProvider.java @@ -0,0 +1,314 @@ +/* + * 版权所有 (c) 2010-2011,MiCode 开源社区 (www.micode.net) + * 根据 Apache 许可证 2.0 版本("许可证")授权; + * 除非符合许可证的规定,否则不得使用本文件。 + * 您可以从以下网址获取许可证副本: + * http://www.apache.org/licenses/LICENSE-2.0 + * 除非适用法律要求或书面同意,本软件按"原样"分发, + * 没有任何明示或暗示的保证或条件。 + * 详见许可证中规定的权限和限制。 + * (注:这是一份标准的Apache许可证2.0版本的开源声明) + */ + +// 笔记内容提供者的实现类,提供对笔记数据的CRUD操作 +package net.micode.notes.data; + +// 导入所需的Android类 +import android.app.SearchManager; // 搜索相关功能 +import android.content.ContentProvider; // 内容提供者基类 +import android.content.ContentUris; // URI工具类 +import android.content.ContentValues; // 键值对存储类 +import android.content.Intent; // 意图相关 +import android.content.UriMatcher; // URI匹配器 +import android.database.Cursor; // 数据库查询结果 +import android.database.sqlite.SQLiteDatabase; // SQLite数据库 +import android.net.Uri; // URI处理 +import android.text.TextUtils; // 文本处理工具 +import android.util.Log; // 日志工具 + +// 导入项目资源 +import androidx.annotation.NonNull; + +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; // 数据库表名 + +import java.util.Objects; + +// 内容提供者实现类 +public class NotesProvider extends ContentProvider { + private static final UriMatcher mMatcher; // URI匹配器,用于匹配不同的URI请求 + + private NotesDatabaseHelper mHelper; // 数据库帮助类 + + 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; // 搜索建议 + + // 静态初始化块,配置URI匹配规则 + static { + mMatcher = new UriMatcher(UriMatcher.NO_MATCH); // 创建URI匹配器 + mMatcher.addURI(Notes.AUTHORITY, "note", URI_NOTE); // 匹配笔记表URI + mMatcher.addURI(Notes.AUTHORITY, "note/#", URI_NOTE_ITEM); // 匹配单条笔记URI + mMatcher.addURI(Notes.AUTHORITY, "data", URI_DATA); // 匹配数据表URI + mMatcher.addURI(Notes.AUTHORITY, "data/#", URI_DATA_ITEM); // 匹配单条数据URI + mMatcher.addURI(Notes.AUTHORITY, "search", URI_SEARCH); // 匹配搜索URI + mMatcher.addURI(Notes.AUTHORITY, SearchManager.SUGGEST_URI_PATH_QUERY, URI_SEARCH_SUGGEST); // 匹配搜索建议URI + mMatcher.addURI(Notes.AUTHORITY, SearchManager.SUGGEST_URI_PATH_QUERY + "/*", URI_SEARCH_SUGGEST); // 匹配带参数的搜索建议URI + } + + /** + * x'0A'代表SQLite中的换行符。对于搜索结果中的标题和内容, + * 我们将删除换行符和空格以显示更多信息。 + */ + // 搜索结果的投影(列)定义 + private static final String NOTES_SEARCH_PROJECTION = NoteColumns.ID + "," // 笔记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 final 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; // 只查询普通笔记 + + // 内容提供者创建时调用 + @Override + public boolean onCreate() { + mHelper = NotesDatabaseHelper.getInstance(getContext()); // 获取数据库帮助类实例 + return true; + } + + // 查询方法 + @Override + public Cursor query(@NonNull Uri uri, String[] projection, String selection, String[] selectionArgs, + String sortOrder) { + Cursor c = null; // 查询结果游标 + SQLiteDatabase db = mHelper.getReadableDatabase(); // 获取可读数据库 + String id = null; // ID变量 + switch (mMatcher.match(uri)) { // 根据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) { + searchString = uri.getPathSegments().get(1); // 从URI获取搜索词 + } + } else { // 处理普通搜索请求 + searchString = uri.getQueryParameter("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(Objects.requireNonNull(getContext()).getContentResolver(), uri); // 设置通知URI + } + return c; // 返回查询结果 + } + + // 插入方法 + @Override + public Uri insert(@NonNull Uri uri, ContentValues values) { + SQLiteDatabase db = mHelper.getWritableDatabase(); // 获取可写数据库 + long dataId = 0, noteId = 0, insertedId = 0; // ID变量 + insertedId = switch (mMatcher.match(uri)) { // 根据URI类型处理不同插入 + case URI_NOTE -> // 插入笔记 + noteId = db.insert(TABLE.NOTE, null, values); + case URI_DATA -> { + if (values.containsKey(DataColumns.NOTE_ID)) { // 检查是否包含笔记ID + noteId = values.getAsLong(DataColumns.NOTE_ID); + } else { + Log.d(TAG, "Wrong data format without note id:" + values.toString()); + } + yield dataId = db.insert(TABLE.DATA, null, values); + } + default -> throw new IllegalArgumentException("Unknown URI " + uri); // 未知URI异常 + }; + // 通知笔记URI变更 + if (noteId > 0) { + Objects.requireNonNull(getContext()).getContentResolver().notifyChange( + ContentUris.withAppendedId(Notes.CONTENT_NOTE_URI, noteId), null); + } + + // 通知数据URI变更 + if (dataId > 0) { + Objects.requireNonNull(getContext()).getContentResolver().notifyChange( + ContentUris.withAppendedId(Notes.CONTENT_DATA_URI, dataId), null); + } + + return ContentUris.withAppendedId(uri, insertedId); // 返回插入数据的URI + } + + // 删除方法 + @Override + public int delete(@NonNull 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: // 删除笔记 + selection = "(" + selection + ") AND " + NoteColumns.ID + ">0 "; // 只删除ID大于0的笔记 + count = db.delete(TABLE.NOTE, selection, selectionArgs); + break; + case URI_NOTE_ITEM: // 删除单条笔记 + id = uri.getPathSegments().get(1); // 从URI获取笔记ID + /* + * 小于0的ID是系统文件夹,不允许删除 + */ + long noteId = Long.parseLong(id); + if (noteId <= 0) { // 系统文件夹不删除 + break; + } + count = db.delete(TABLE.NOTE, + NoteColumns.ID + "=" + id + parseSelection(selection), selectionArgs); + break; + case URI_DATA: // 删除数据 + count = db.delete(TABLE.DATA, selection, selectionArgs); + deleteData = true; // 标记为数据删除 + break; + case URI_DATA_ITEM: // 删除单条数据 + id = uri.getPathSegments().get(1); // 从URI获取数据ID + count = db.delete(TABLE.DATA, + DataColumns.ID + "=" + id + parseSelection(selection), selectionArgs); + deleteData = true; // 标记为数据删除 + break; + default: + throw new IllegalArgumentException("Unknown URI " + uri); // 未知URI异常 + } + if (count > 0) { // 如果有数据被删除 + if (deleteData) { // 如果是数据删除,通知笔记URI变更 + Objects.requireNonNull(getContext()).getContentResolver().notifyChange(Notes.CONTENT_NOTE_URI, null); + } + Objects.requireNonNull(getContext()).getContentResolver().notifyChange(uri, null); // 通知当前URI变更 + } + return count; // 返回删除数量 + } + + // 更新方法 + @Override + public int update(@NonNull 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: // 更新笔记表 + increaseNoteVersion(-1, selection, selectionArgs); // 增加笔记版本 + count = db.update(TABLE.NOTE, values, selection, selectionArgs); + break; + case URI_NOTE_ITEM: // 更新单条笔记 + id = uri.getPathSegments().get(1); // 从URI获取笔记ID + increaseNoteVersion(Long.parseLong(id), selection, selectionArgs); // 增加笔记版本 + count = db.update(TABLE.NOTE, values, NoteColumns.ID + "=" + id + + parseSelection(selection), selectionArgs); + break; + case URI_DATA: // 更新数据表 + count = db.update(TABLE.DATA, values, selection, selectionArgs); + updateData = true; // 标记为数据更新 + break; + case URI_DATA_ITEM: // 更新单条数据 + id = uri.getPathSegments().get(1); // 从URI获取数据ID + count = db.update(TABLE.DATA, values, DataColumns.ID + "=" + id + + parseSelection(selection), selectionArgs); + updateData = true; // 标记为数据更新 + break; + default: + throw new IllegalArgumentException("Unknown URI " + uri); // 未知URI异常 + } + + if (count > 0) { // 如果有数据被更新 + if (updateData) { // 如果是数据更新,通知笔记URI变更 + Objects.requireNonNull(getContext()).getContentResolver().notifyChange(Notes.CONTENT_NOTE_URI, null); + } + Objects.requireNonNull(getContext()).getContentResolver().notifyChange(uri, null); // 通知当前URI变更 + } + return count; // 返回更新数量 + } + + // 解析选择条件,添加AND连接 + private String parseSelection(String selection) { + return (!TextUtils.isEmpty(selection) ? " AND (" + selection + ')' : ""); + } + + // 增加笔记版本号 + private void increaseNoteVersion(long id, String selection, String[] selectionArgs) { + StringBuilder sql = new StringBuilder(120); // SQL语句构建器 + sql.append("UPDATE "); + sql.append(TABLE.NOTE); + sql.append(" SET "); + sql.append(NoteColumns.VERSION); + sql.append("=" + NoteColumns.VERSION + "+1 "); // 版本号+1 + + if (id > 0 || !TextUtils.isEmpty(selection)) { // 有条件时添加WHERE + sql.append(" WHERE "); + } + if (id > 0) { // 指定ID的条件 + sql.append(NoteColumns.ID + "=").append(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()); // 执行SQL + } + + // 获取URI类型(未实现) + @Override + public String getType(@NonNull Uri uri) { + // TODO Auto-generated method stub + return null; + } +} \ No newline at end of file diff --git a/src/mi_note/app/src/main/java/net/micode/notes/gtask/data/MetaData.java b/src/mi_note/app/src/main/java/net/micode/notes/gtask/data/MetaData.java new file mode 100644 index 0000000..377521f --- /dev/null +++ b/src/mi_note/app/src/main/java/net/micode/notes/gtask/data/MetaData.java @@ -0,0 +1,132 @@ +/* + * 版权所有 (c) 2010-2011,MiCode 开源社区 (www.micode.net) + * 根据 Apache 许可证 2.0 版本("许可证")授权; + * 除非符合许可证的规定,否则不得使用本文件。 + * 您可以从以下网址获取许可证副本: + * http://www.apache.org/licenses/LICENSE-2.0 + * 除非适用法律要求或书面同意,本软件按"原样"分发, + * 没有任何明示或暗示的保证或条件。 + * 详见许可证中规定的权限和限制。 + * (注:这是一份标准的Apache许可证2.0版本的开源声明) + */ + +// 定义MetaData类所在的包路径 +package net.micode.notes.gtask.data; + +// 导入Android数据库Cursor类 +import android.database.Cursor; +// 导入Android日志工具类 +import android.util.Log; + +// 导入应用中自定义的字符串工具类 +import net.micode.notes.tool.GTaskStringUtils; + +// 导入JSON处理相关类 +import org.json.JSONException; +import org.json.JSONObject; + +/** + * MetaData类 - 继承自Task类 + * 功能:处理Google Tasks元数据信息 + * 特性: + * 1. 存储关联任务的GID(Google ID) + * 2. 将元数据信息以JSON格式存储在notes字段中 + * 3. 仅用于远程数据同步,不支持本地操作 + */ +public class MetaData extends Task { + // 日志标签,使用类名作为标识 + private final static String TAG = MetaData.class.getSimpleName(); + + // 存储关联任务的Google ID + private String mRelatedGid = null; + + /** + * 设置元数据信息 + * @param gid 关联任务的Google ID + * @param metaInfo 包含元数据的JSON对象 + */ + public void setMeta(String gid, JSONObject metaInfo) { + try { + // 将GID添加到元数据JSON中 + metaInfo.put(GTaskStringUtils.META_HEAD_GTASK_ID, gid); + } catch (JSONException e) { + Log.e(TAG, "failed to put related gid"); // 记录错误日志 + } + // 将JSON对象转为字符串存储到notes字段 + setNotes(metaInfo.toString()); + // 设置固定名称标识这是一个元数据任务 + setName(GTaskStringUtils.META_NOTE_NAME); + } + + /** + * 获取关联任务的Google ID + * @return 关联GID,可能为null + */ + public String getRelatedGid() { + return mRelatedGid; + } + + /** + * 判断是否值得保存 + * @return notes字段不为空时返回true + */ + @Override + public boolean isWorthSaving() { + return getNotes() != null; + } + + /** + * 从远程JSON数据设置内容 + * @param js 包含远程数据的JSON对象 + */ + @Override + public void setContentByRemoteJSON(JSONObject js) { + // 先调用父类方法处理基础字段 + super.setContentByRemoteJSON(js); + + // 如果notes字段不为空,解析其中的GID + if (getNotes() != null) { + try { + // 将notes字符串转为JSON对象 + JSONObject metaInfo = new JSONObject(getNotes().trim()); + // 从JSON中获取关联GID + mRelatedGid = metaInfo.getString(GTaskStringUtils.META_HEAD_GTASK_ID); + } catch (JSONException e) { + Log.w(TAG, "failed to get related gid"); // 记录警告日志 + mRelatedGid = null; // 解析失败时重置GID + } + } + } + + /** + * 从本地JSON设置内容(不支持) + * @param js JSON对象 + * @throws IllegalAccessError 总是抛出此异常 + */ + @Override + public void setContentByLocalJSON(JSONObject js) { + // 元数据不应从本地JSON设置,直接抛出异常 + throw new IllegalAccessError("MetaData:setContentByLocalJSON should not be called"); + } + + /** + * 获取本地JSON内容(不支持) + * @throws IllegalAccessError 总是抛出此异常 + */ + @Override + public JSONObject getLocalJSONFromContent() { + // 元数据不应生成本地JSON,直接抛出异常 + throw new IllegalAccessError("MetaData:getLocalJSONFromContent should not be called"); + } + + /** + * 获取同步动作(不支持) + * @param c 数据库Cursor + * @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/mi_note/app/src/main/java/net/micode/notes/gtask/data/Node.java b/src/mi_note/app/src/main/java/net/micode/notes/gtask/data/Node.java new file mode 100644 index 0000000..ec33700 --- /dev/null +++ b/src/mi_note/app/src/main/java/net/micode/notes/gtask/data/Node.java @@ -0,0 +1,157 @@ +/* + * 版权所有 (c) 2010-2011,MiCode 开源社区 (www.micode.net) + * 根据 Apache 许可证 2.0 版本("许可证")授权; + * 除非符合许可证的规定,否则不得使用本文件。 + * 您可以从以下网址获取许可证副本: + * http://www.apache.org/licenses/LICENSE-2.0 + * 除非适用法律要求或书面同意,本软件按"原样"分发, + * 没有任何明示或暗示的保证或条件。 + * 详见许可证中规定的权限和限制。 + * (注:这是一份标准的Apache许可证2.0版本的开源声明) + */ +// 定义Node类所在的包路径 +package net.micode.notes.gtask.data; +// 导入Android数据库Cursor类(用于本地数据操作) +import android.database.Cursor; +// 导入JSON处理类 +import org.json.JSONObject; +/** + * 抽象Node类 - GTasks数据同步的基础节点类 + * 功能: + * 1. 定义通用的同步动作常量 + * 2. 提供基本属性管理(GID、名称、修改时间等) + * 3. 声明数据同步的核心抽象方法 + */ +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; + // Google任务ID(全局唯一标识) + private String mGid; + // 节点名称 + private String mName; + // 最后修改时间戳(毫秒) + private long mLastModified; + // 删除标记 + private boolean mDeleted; + + /** + * 构造函数 + * 初始化默认值: + * - GID为null + * - 名称为空字符串 + * - 最后修改时间为0 + * - 未删除状态 + */ + public Node() { + mGid = null; + mName = ""; + mLastModified = 0; + mDeleted = false; + } + /** + * 抽象方法:获取创建动作的JSON数据 + * @param actionId 动作ID + * @return 包含创建动作数据的JSON对象 + */ + public abstract JSONObject getCreateAction(int actionId); + + /** + * 抽象方法:获取更新动作的JSON数据 + * @param actionId 动作ID + * @return 包含更新动作数据的JSON对象 + */ + public abstract JSONObject getUpdateAction(int actionId); + /** + * 抽象方法:从远程JSON数据设置内容 + * @param js 包含远程数据的JSON对象 + */ + public abstract void setContentByRemoteJSON(JSONObject js); + /** + * 抽象方法:从本地JSON数据设置内容 + * @param js 包含本地数据的JSON对象 + */ + public abstract void setContentByLocalJSON(JSONObject js); + /** + * 抽象方法:从内容生成本地JSON数据 + * @return 包含本地数据的JSON对象 + */ + public abstract JSONObject getLocalJSONFromContent(); + /** + * 抽象方法:获取同步动作类型 + * @param c 数据库Cursor对象 + * @return 同步动作常量(SYNC_ACTION_*) + */ + public abstract int getSyncAction(Cursor c); + /** + * 设置Google任务ID + * @param 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; + } + /** + * 获取Google任务ID + * @return 全局唯一标识(可能为null) + */ + 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/mi_note/app/src/main/java/net/micode/notes/gtask/data/SqlData.java b/src/mi_note/app/src/main/java/net/micode/notes/gtask/data/SqlData.java new file mode 100644 index 0000000..aa230c3 --- /dev/null +++ b/src/mi_note/app/src/main/java/net/micode/notes/gtask/data/SqlData.java @@ -0,0 +1,258 @@ +/* + * 版权所有 (c) 2010-2011,MiCode 开源社区 (www.micode.net) + * 根据 Apache 许可证 2.0 版本("许可证")授权; + * 除非符合许可证的规定,否则不得使用本文件。 + * 您可以从以下网址获取许可证副本: + * http://www.apache.org/licenses/LICENSE-2.0 + * 除非适用法律要求或书面同意,本软件按"原样"分发, + * 没有任何明示或暗示的保证或条件。 + * 详见许可证中规定的权限和限制。 + * (注:这是一份标准的Apache许可证2.0版本的开源声明) + */ + +// 定义当前类所在的包路径 +package net.micode.notes.gtask.data; + +// 导入Android内容提供者相关类 +import android.content.ContentResolver; // 内容解析器,用于访问ContentProvider +import android.content.ContentUris; // 用于构建带有ID的URI +import android.content.ContentValues; // 键值对存储,用于数据库操作 +import android.content.Context; // 应用上下文 +import android.database.Cursor; // 数据库查询结果集 +import android.net.Uri; // 通用资源标识符 +import android.os.Build; // 获取Android版本信息 +import android.util.Log; // 日志工具 + +// 导入AndroidX注解(版本检查) +import androidx.annotation.RequiresApi; + +// 导入笔记应用数据相关常量 +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; + +// 导入JSON处理相关类 +import org.json.JSONException; // JSON异常 +import org.json.JSONObject; // JSON对象 + +// 导入Java工具类 +import java.util.Objects; // 对象工具类 + +/** + * SqlData类 - 处理笔记数据的SQLite数据库操作 + * 功能: + * 1. 封装笔记数据的增删改查操作 + * 2. 管理本地数据与JSON格式的相互转换 + * 3. 处理数据版本控制 + */ +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, // 数据ID + DataColumns.MIME_TYPE, // MIME类型 + DataColumns.CONTENT, // 内容 + DataColumns.DATA1, // 扩展数据1 + DataColumns.DATA3 // 扩展数据3 + }; + + // 列索引常量 + public static final int DATA_ID_COLUMN = 0; // ID列索引 + public static final int DATA_MIME_TYPE_COLUMN = 1; // MIME类型列索引 + public static final int DATA_CONTENT_COLUMN = 2; // 内容列索引 + public static final int DATA_CONTENT_DATA_1_COLUMN = 3; // 扩展数据1列索引 + public static final int DATA_CONTENT_DATA_3_COLUMN = 4; // 扩展数据3列索引 + + // 内容解析器实例 + private final ContentResolver mContentResolver; + + // 是否为新创建数据的标志 + private boolean mIsCreate; + + // 数据字段 + private long mDataId; // 数据ID + private String mDataMimeType; // MIME类型 + private String mDataContent; // 内容 + private long mDataContentData1; // 扩展数据1(长整型) + private String mDataContentData3; // 扩展数据3(字符串) + + // 存储有变动的数据值(用于增量更新) + private final ContentValues mDiffDataValues; + + /** + * 构造函数(用于创建新数据) + * @param context 应用上下文 + */ + public SqlData(Context context) { + mContentResolver = context.getContentResolver(); + mIsCreate = true; // 标记为新创建 + mDataId = INVALID_ID; // 初始化无效ID + mDataMimeType = DataConstants.NOTE; // 默认MIME类型 + mDataContent = ""; // 空内容 + mDataContentData1 = 0; // 默认扩展数据1 + mDataContentData3 = ""; // 空扩展数据3 + mDiffDataValues = new ContentValues(); // 初始化变更集合 + } + + /** + * 构造函数(基于Cursor加载已有数据) + * @param context 应用上下文 + * @param c 数据库Cursor对象 + */ + public SqlData(Context context, Cursor c) { + mContentResolver = context.getContentResolver(); + mIsCreate = false; // 标记为已存在数据 + loadFromCursor(c); // 从Cursor加载数据 + mDiffDataValues = new ContentValues(); // 初始化变更集合 + } + + /** + * 从Cursor加载数据 + * @param c 数据库Cursor对象 + */ + private void loadFromCursor(Cursor c) { + mDataId = c.getLong(DATA_ID_COLUMN); + mDataMimeType = c.getString(DATA_MIME_TYPE_COLUMN); + mDataContent = c.getString(DATA_CONTENT_COLUMN); + mDataContentData1 = c.getLong(DATA_CONTENT_DATA_1_COLUMN); + mDataContentData3 = c.getString(DATA_CONTENT_DATA_3_COLUMN); + } + + /** + * 设置内容(从JSON对象) + * @param js 包含数据的JSON对象 + * @throws JSONException JSON解析异常 + */ + public void setContent(JSONObject js) throws JSONException { + // 处理数据ID + long dataId = js.has(DataColumns.ID) ? js.getLong(DataColumns.ID) : INVALID_ID; + if (mIsCreate || mDataId != dataId) { + mDiffDataValues.put(DataColumns.ID, dataId); + } + mDataId = dataId; + + // 处理MIME类型 + String dataMimeType = js.has(DataColumns.MIME_TYPE) ? js.getString(DataColumns.MIME_TYPE) + : DataConstants.NOTE; + if (mIsCreate || !mDataMimeType.equals(dataMimeType)) { + mDiffDataValues.put(DataColumns.MIME_TYPE, dataMimeType); + } + mDataMimeType = dataMimeType; + + // 处理内容 + String dataContent = js.has(DataColumns.CONTENT) ? js.getString(DataColumns.CONTENT) : ""; + if (mIsCreate || !mDataContent.equals(dataContent)) { + mDiffDataValues.put(DataColumns.CONTENT, dataContent); + } + mDataContent = dataContent; + + // 处理扩展数据1 + long dataContentData1 = js.has(DataColumns.DATA1) ? js.getLong(DataColumns.DATA1) : 0; + if (mIsCreate || mDataContentData1 != dataContentData1) { + mDiffDataValues.put(DataColumns.DATA1, dataContentData1); + } + mDataContentData1 = dataContentData1; + + // 处理扩展数据3 + String dataContentData3 = js.has(DataColumns.DATA3) ? js.getString(DataColumns.DATA3) : ""; + if (mIsCreate || !mDataContentData3.equals(dataContentData3)) { + mDiffDataValues.put(DataColumns.DATA3, dataContentData3); + } + mDataContentData3 = dataContentData3; + } + + /** + * 获取内容(转换为JSON对象) + * @return 包含数据的JSON对象 + * @throws JSONException JSON构造异常 + */ + public JSONObject getContent() throws JSONException { + if (mIsCreate) { + Log.e(TAG, "it seems that we haven't created this in database yet"); + return null; + } + // 构建JSON对象 + JSONObject js = new JSONObject(); + js.put(DataColumns.ID, mDataId); + js.put(DataColumns.MIME_TYPE, mDataMimeType); + js.put(DataColumns.CONTENT, mDataContent); + js.put(DataColumns.DATA1, mDataContentData1); + js.put(DataColumns.DATA3, mDataContentData3); + return js; + } + + /** + * 提交数据到数据库 + * @param noteId 关联的笔记ID + * @param validateVersion 是否验证版本 + * @param version 版本号(当validateVersion为true时使用) + */ + @RequiresApi(api = Build.VERSION_CODES.R) + public void commit(long noteId, boolean validateVersion, long version) { + // 处理新建数据的情况 + if (mIsCreate) { + // 如果ID无效且有ID变更,移除无效ID + if (mDataId == INVALID_ID && mDiffDataValues.containsKey(DataColumns.ID)) { + mDiffDataValues.remove(DataColumns.ID); + } + + // 设置关联笔记ID + mDiffDataValues.put(DataColumns.NOTE_ID, noteId); + // 插入新数据 + Uri uri = mContentResolver.insert(Notes.CONTENT_DATA_URI, mDiffDataValues); + try { + // 从返回的URI中解析出新数据的ID + mDataId = Long.parseLong(Objects.requireNonNull(uri).getPathSegments().get(1)); + } catch (NumberFormatException e) { + Log.e(TAG, "Get note id error :" + e); + throw new ActionFailureException("create note failed"); + } + } else { + // 处理更新已有数据的情况 + if (!mDiffDataValues.isEmpty()) { + int result; + 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; + } + /** + * 获取数据ID + * @return 数据ID + */ + public long getId() { + return mDataId; + } +} diff --git a/src/mi_note/app/src/main/java/net/micode/notes/gtask/data/SqlNote.java b/src/mi_note/app/src/main/java/net/micode/notes/gtask/data/SqlNote.java new file mode 100644 index 0000000..75751f6 --- /dev/null +++ b/src/mi_note/app/src/main/java/net/micode/notes/gtask/data/SqlNote.java @@ -0,0 +1,628 @@ +/* + * 版权所有 (c) 2010-2011,MiCode 开源社区 (www.micode.net) + * 根据 Apache 许可证 2.0 版本("许可证")授权; + * 除非符合许可证的规定,否则不得使用本文件。 + * 您可以从以下网址获取许可证副本: + * http://www.apache.org/licenses/LICENSE-2.0 + * 除非适用法律要求或书面同意,本软件按"原样"分发, + * 没有任何明示或暗示的保证或条件。 + * 详见许可证中规定的权限和限制。 + * (注:这是一份标准的Apache许可证2.0版本的开源声明) + */ + +// 定义当前类所在的包路径 +package net.micode.notes.gtask.data; +// Android Widget相关类 +import android.appwidget.AppWidgetManager; // 管理应用小部件 +// Android内容提供者相关类 +import android.content.ContentResolver; // 内容解析器,用于访问ContentProvider +import android.content.ContentValues; // 键值对存储,用于数据库操作 +import android.content.Context; // 应用上下文 +// Android数据库相关类 +import android.database.Cursor; // 数据库查询结果集 +// Android网络相关类 +import android.net.Uri; // 通用资源标识符 +// Android系统相关类 +import android.os.Build; // 获取Android版本信息 +import android.util.Log; // 日志工具 +// AndroidX注解支持 +import androidx.annotation.RequiresApi; // 版本要求注解 +// 笔记应用数据相关类 +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; // Google Task字符串工具 +import net.micode.notes.tool.ResourceParser; // 资源解析工具 +// JSON处理相关类 +import org.json.JSONArray; // JSON数组处理 +import org.json.JSONException; // JSON异常 +import org.json.JSONObject; // JSON对象处理 +// Java集合类 +import java.util.ArrayList; // 动态数组 +import java.util.Objects; // 对象工具类 + +// 定义SqlNote类,用于管理笔记数据的数据库操作 +public class SqlNote { + // 日志标签 + private static final String TAG = SqlNote.class.getSimpleName(); + + // 无效ID常量 + private static final int INVALID_ID = -99999; + + // 笔记数据查询投影列(指定需要查询的字段) + public static final String[] PROJECTION_NOTE = new String[] { + NoteColumns.ID, // 笔记ID + NoteColumns.ALERTED_DATE, // 提醒日期 + NoteColumns.BG_COLOR_ID, // 背景颜色ID + NoteColumns.CREATED_DATE, // 创建日期 + NoteColumns.HAS_ATTACHMENT, // 是否有附件 + NoteColumns.MODIFIED_DATE, // 修改日期 + NoteColumns.NOTES_COUNT, // 子笔记数量 + NoteColumns.PARENT_ID, // 父笔记ID + NoteColumns.SNIPPET, // 内容摘要 + NoteColumns.TYPE, // 笔记类型 + NoteColumns.WIDGET_ID, // 小部件ID + NoteColumns.WIDGET_TYPE, // 小部件类型 + NoteColumns.SYNC_ID, // 同步ID + NoteColumns.LOCAL_MODIFIED, // 本地修改标记 + NoteColumns.ORIGIN_PARENT_ID, // 原始父笔记ID + NoteColumns.GTASK_ID, // Google任务ID + NoteColumns.VERSION // 数据版本 + }; + + // 列索引常量定义 + public static final int ID_COLUMN = 0; // ID列索引 + 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; // 父笔记ID列索引 + public static final int SNIPPET_COLUMN = 8; // 摘要列索引 + public static final int TYPE_COLUMN = 9; // 类型列索引 + public static final int WIDGET_ID_COLUMN = 10; // 小部件ID列索引 + public static final int WIDGET_TYPE_COLUMN = 11; // 小部件类型列索引 + public static final int SYNC_ID_COLUMN = 12; // 同步ID列索引 + public static final int LOCAL_MODIFIED_COLUMN = 13; // 本地修改列索引 + public static final int ORIGIN_PARENT_ID_COLUMN = 14; // 原始父笔记ID列索引 + public static final int GTASK_ID_COLUMN = 15; // Google任务ID列索引 + public static final int VERSION_COLUMN = 16; // 版本列索引 + + // 上下文对象 + private final Context mContext; + // 内容解析器 + private final ContentResolver mContentResolver; + // 是否为新建笔记标记 + private boolean mIsCreate; + + // 笔记字段 + private long mId; // 笔记ID + private long mAlertDate; // 提醒时间 + private int mBgColorId; // 背景颜色ID + private long mCreatedDate; // 创建时间 + private int mHasAttachment; // 是否有附件(0/1) + private long mModifiedDate; // 最后修改时间 + private long mParentId; // 父笔记ID + private String mSnippet; // 内容摘要 + private int mType; // 笔记类型 + private int mWidgetId; // 关联小部件ID + private int mWidgetType; // 小部件类型 + private long mOriginParent; // 原始父笔记ID + private long mVersion; // 数据版本 + + // 存储变动的笔记值 + private final ContentValues mDiffNoteValues; + // 笔记关联的数据列表 + private final ArrayList mDataList; + + /** + * 构造函数(用于创建新笔记) + * @param context 应用上下文 + */ + public SqlNote(Context context) { + mContext = context; + mContentResolver = context.getContentResolver(); + mIsCreate = true; // 标记为新创建 + // 初始化默认值 + mId = INVALID_ID; + mAlertDate = 0; + mBgColorId = ResourceParser.getDefaultBgId(context); // 获取默认背景 + mCreatedDate = System.currentTimeMillis(); // 当前时间为创建时间 + mHasAttachment = 0; + mModifiedDate = System.currentTimeMillis(); // 当前时间为修改时间 + mParentId = 0; + mSnippet = ""; + mType = Notes.TYPE_NOTE; // 默认为普通笔记类型 + mWidgetId = AppWidgetManager.INVALID_APPWIDGET_ID; // 无效小部件ID + mWidgetType = Notes.TYPE_WIDGET_INVALIDE; // 无效小部件类型 + mOriginParent = 0; + mVersion = 0; + mDiffNoteValues = new ContentValues(); // 初始化变更值容器 + mDataList = new ArrayList<>(); // 初始化数据列表 + } + + /** + * 构造函数(基于Cursor加载已有笔记) + * @param context 应用上下文 + * @param c 数据库Cursor + */ + public SqlNote(Context context, Cursor c) { + mContext = context; + mContentResolver = context.getContentResolver(); + mIsCreate = false; // 标记为已有笔记 + loadFromCursor(c); // 从Cursor加载数据 + mDataList = new ArrayList<>(); + // 如果是普通笔记类型,加载关联数据 + if (mType == Notes.TYPE_NOTE) + loadDataContent(); + mDiffNoteValues = new ContentValues(); + } + + /** + * 构造函数(基于笔记ID加载) + * @param context 应用上下文 + * @param id 笔记ID + */ + public SqlNote(Context context, long id) { + mContext = context; + mContentResolver = context.getContentResolver(); + mIsCreate = false; // 标记为已有笔记 + loadFromCursor(id); // 通过ID加载笔记 + mDataList = new ArrayList<>(); + // 如果是普通笔记类型,加载关联数据 + if (mType == Notes.TYPE_NOTE) + loadDataContent(); + mDiffNoteValues = new ContentValues(); + } + + /** + * 通过笔记ID从数据库加载数据 + * @param id 笔记ID + */ + private void loadFromCursor(long id) { + // 使用try-with-resources确保Cursor自动关闭 + try (Cursor c = mContentResolver.query( + Notes.CONTENT_NOTE_URI, // 笔记内容URI + PROJECTION_NOTE, // 查询列 + "(_id=?)", // 查询条件 + new String[]{ String.valueOf(id) }, // 参数 + null)) { // 排序 + if (c != null) { + c.moveToNext(); // 移动到第一行 + loadFromCursor(c); // 从Cursor加载数据 + } else { + Log.w(TAG, "loadFromCursor: cursor = null"); + } + } + } + + /** + * 从Cursor加载笔记数据 + * @param c 数据库Cursor + */ + private void loadFromCursor(Cursor c) { + mId = c.getLong(ID_COLUMN); + mAlertDate = c.getLong(ALERTED_DATE_COLUMN); + mBgColorId = c.getInt(BG_COLOR_ID_COLUMN); + mCreatedDate = c.getLong(CREATED_DATE_COLUMN); + mHasAttachment = c.getInt(HAS_ATTACHMENT_COLUMN); + mModifiedDate = c.getLong(MODIFIED_DATE_COLUMN); + mParentId = c.getLong(PARENT_ID_COLUMN); + mSnippet = c.getString(SNIPPET_COLUMN); + mType = c.getInt(TYPE_COLUMN); + mWidgetId = c.getInt(WIDGET_ID_COLUMN); + mWidgetType = c.getInt(WIDGET_TYPE_COLUMN); + mVersion = c.getLong(VERSION_COLUMN); + } + + /** + * 加载笔记关联的数据内容 + */ + private void loadDataContent() { + mDataList.clear(); // 清空现有数据 + // 查询关联数据 + try (Cursor c = mContentResolver.query( + Notes.CONTENT_DATA_URI, // 数据内容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; + } + // 遍历所有数据行 + while (c.moveToNext()) { + SqlData data = new SqlData(mContext, c); // 创建数据对象 + mDataList.add(data); // 添加到列表 + } + } else { + Log.w(TAG, "loadDataContent: cursor = null"); + } + } + } + + /** + * 从JSON设置笔记内容 + * @param js 包含笔记数据的JSON对象 + * @return 是否设置成功 + */ + public boolean setContent(JSONObject js) { + try { + // 获取笔记数据 + JSONObject note = js.getJSONObject(GTaskStringUtils.META_HEAD_NOTE); + + // 检查笔记类型 + if (note.getInt(NoteColumns.TYPE) == Notes.TYPE_SYSTEM) { + Log.w(TAG, "cannot set system folder"); + } + // 处理文件夹类型 + else if (note.getInt(NoteColumns.TYPE) == Notes.TYPE_FOLDER) { + // 只能更新摘要和类型 + String snippet = note.has(NoteColumns.SNIPPET) ? + note.getString(NoteColumns.SNIPPET) : ""; + if (mIsCreate || !mSnippet.equals(snippet)) { + mDiffNoteValues.put(NoteColumns.SNIPPET, snippet); + } + mSnippet = snippet; + + int type = note.has(NoteColumns.TYPE) ? + note.getInt(NoteColumns.TYPE) : Notes.TYPE_NOTE; + if (mIsCreate || mType != type) { + mDiffNoteValues.put(NoteColumns.TYPE, type); + } + mType = type; + } + // 处理普通笔记类型 + else if (note.getInt(NoteColumns.TYPE) == Notes.TYPE_NOTE) { + // 获取关联数据数组 + JSONArray dataArray = js.getJSONArray(GTaskStringUtils.META_HEAD_DATA); + + // 处理笔记ID + long id = note.has(NoteColumns.ID) ? note.getLong(NoteColumns.ID) : INVALID_ID; + if (mIsCreate || mId != id) { + mDiffNoteValues.put(NoteColumns.ID, id); + } + mId = id; + + // 处理提醒日期 + long alertDate = note.has(NoteColumns.ALERTED_DATE) ? + note.getLong(NoteColumns.ALERTED_DATE) : 0; + if (mIsCreate || mAlertDate != alertDate) { + mDiffNoteValues.put(NoteColumns.ALERTED_DATE, alertDate); + } + mAlertDate = alertDate; + + // 处理背景颜色 + int bgColorId = note.has(NoteColumns.BG_COLOR_ID) ? + note.getInt(NoteColumns.BG_COLOR_ID) : ResourceParser.getDefaultBgId(mContext); + if (mIsCreate || mBgColorId != bgColorId) { + mDiffNoteValues.put(NoteColumns.BG_COLOR_ID, bgColorId); + } + mBgColorId = bgColorId; + + // 处理创建日期 + long createDate = note.has(NoteColumns.CREATED_DATE) ? + note.getLong(NoteColumns.CREATED_DATE) : System.currentTimeMillis(); + if (mIsCreate || mCreatedDate != createDate) { + mDiffNoteValues.put(NoteColumns.CREATED_DATE, createDate); + } + mCreatedDate = createDate; + + // 处理附件标记 + int hasAttachment = note.has(NoteColumns.HAS_ATTACHMENT) ? + note.getInt(NoteColumns.HAS_ATTACHMENT) : 0; + if (mIsCreate || mHasAttachment != hasAttachment) { + mDiffNoteValues.put(NoteColumns.HAS_ATTACHMENT, hasAttachment); + } + mHasAttachment = hasAttachment; + + // 处理修改日期 + long modifiedDate = note.has(NoteColumns.MODIFIED_DATE) ? + note.getLong(NoteColumns.MODIFIED_DATE) : System.currentTimeMillis(); + if (mIsCreate || mModifiedDate != modifiedDate) { + mDiffNoteValues.put(NoteColumns.MODIFIED_DATE, modifiedDate); + } + mModifiedDate = modifiedDate; + + // 处理父笔记ID + long parentId = note.has(NoteColumns.PARENT_ID) ? + note.getLong(NoteColumns.PARENT_ID) : 0; + if (mIsCreate || mParentId != parentId) { + mDiffNoteValues.put(NoteColumns.PARENT_ID, parentId); + } + mParentId = parentId; + + // 处理内容摘要 + String snippet = note.has(NoteColumns.SNIPPET) ? + note.getString(NoteColumns.SNIPPET) : ""; + if (mIsCreate || !mSnippet.equals(snippet)) { + mDiffNoteValues.put(NoteColumns.SNIPPET, snippet); + } + mSnippet = snippet; + + // 处理笔记类型 + 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); + } + 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); + } + 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; + break; + } + } + } + + // 如果不存在则创建新数据 + 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; + } + return true; + } + + /** + * 获取笔记内容的JSON表示 + * @return JSON对象,包含笔记数据 + */ + public JSONObject getContent() { + try { + JSONObject js = new JSONObject(); + + // 检查是否已创建 + if (mIsCreate) { + Log.e(TAG, "it seems that we haven't created this in database yet"); + return null; + } + + JSONObject note = new JSONObject(); + // 处理普通笔记类型 + if (mType == Notes.TYPE_NOTE) { + // 添加所有笔记字段 + 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) { + // 只包含必要字段 + 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; + } + + /** + * 设置父笔记ID + * @param id 父笔记ID + */ + public void setParentId(long id) { + mParentId = id; + mDiffNoteValues.put(NoteColumns.PARENT_ID, id); + } + + /** + * 设置Google任务ID + * @param gid Google任务ID + */ + public void setGtaskId(String gid) { + mDiffNoteValues.put(NoteColumns.GTASK_ID, gid); + } + + /** + * 设置同步ID + * @param syncId 同步ID + */ + public void setSyncId(long syncId) { + mDiffNoteValues.put(NoteColumns.SYNC_ID, syncId); + } + + /** + * 重置本地修改标记 + */ + public void resetLocalModified() { + mDiffNoteValues.put(NoteColumns.LOCAL_MODIFIED, 0); + } + + /** + * 获取笔记ID + * @return 笔记ID + */ + public long getId() { + return mId; + } + + /** + * 获取父笔记ID + * @return 父笔记ID + */ + public long getParentId() { + return mParentId; + } + + /** + * 获取内容摘要 + * @return 内容摘要 + */ + public String getSnippet() { + return mSnippet; + } + + /** + * 检查是否为普通笔记类型 + * @return 如果是普通笔记返回true + */ + public boolean isNoteType() { + return mType == Notes.TYPE_NOTE; + } + + /** + * 提交笔记数据到数据库 + * @param validateVersion 是否验证版本 + */ + @RequiresApi(api = Build.VERSION_CODES.R) + public void commit(boolean validateVersion) { + // 处理新建笔记 + if (mIsCreate) { + // 如果ID无效且有ID变更,移除无效ID + if (mId == INVALID_ID && mDiffNoteValues.containsKey(NoteColumns.ID)) { + mDiffNoteValues.remove(NoteColumns.ID); + } + + // 插入新笔记 + Uri uri = mContentResolver.insert(Notes.CONTENT_NOTE_URI, mDiffNoteValues); + try { + // 从返回的URI中解析出新笔记ID + mId = Long.parseLong(Objects.requireNonNull(uri).getPathSegments().get(1)); + } catch (NumberFormatException e) { + Log.e(TAG, "Get note id error :" + e); + 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 { + // 检查笔记ID有效性 + 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.isEmpty()) { + mVersion++; // 版本号递增 + int result; + + // 根据是否验证版本执行不同的更新 + 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/mi_note/app/src/main/java/net/micode/notes/gtask/data/Task.java b/src/mi_note/app/src/main/java/net/micode/notes/gtask/data/Task.java new file mode 100644 index 0000000..80afb90 --- /dev/null +++ b/src/mi_note/app/src/main/java/net/micode/notes/gtask/data/Task.java @@ -0,0 +1,454 @@ +/* + * 版权所有 (c) 2010-2011,MiCode 开源社区 (www.micode.net) + * 根据 Apache 许可证 2.0 版本("许可证")授权; + * 除非符合许可证的规定,否则不得使用本文件。 + * 您可以从以下网址获取许可证副本: + * http://www.apache.org/licenses/LICENSE-2.0 + * 除非适用法律要求或书面同意,本软件按"原样"分发, + * 没有任何明示或暗示的保证或条件。 + * 详见许可证中规定的权限和限制。 + * (注:这是一份标准的Apache许可证2.0版本的开源声明) + */ + +// 定义当前类所在的包路径 +package net.micode.notes.gtask.data; + +// Android数据库相关类 +import android.database.Cursor; // 数据库查询结果集 +// Android文本处理工具 +import android.text.TextUtils; // 字符串处理工具类 +// Android日志工具 +import android.util.Log; // 日志记录工具 + +// 笔记应用数据相关常量 +import androidx.annotation.NonNull; + +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; // 同步操作失败异常 + +// Google Task工具类 +import net.micode.notes.tool.GTaskStringUtils; // Google Task字符串工具 + +// JSON处理相关类 +import org.json.JSONArray; // JSON数组处理 +import org.json.JSONException; // JSON异常处理 +import org.json.JSONObject; // JSON对象处理 + +// Java工具类 +import java.util.Objects; // 对象工具类 +// Task类继承自Node基类,表示Google Task中的一个任务项 +public class Task extends Node { + // 日志标签 + private static final String TAG = Task.class.getSimpleName(); + + // 任务状态字段 + private boolean mCompleted; // 任务是否已完成 + private String mNotes; // 任务备注/描述信息 + private JSONObject mMetaInfo; // 存储元信息的JSON对象 + + // 任务关系字段 + private Task mPriorSibling; // 前一个兄弟任务(用于排序) + private TaskList mParent; // 所属任务列表 + + // 默认构造函数 + public Task() { + super(); // 调用父类构造函数 + mCompleted = false; // 默认未完成 + mNotes = null; // 默认无备注 + mPriorSibling = null; // 默认无前驱任务 + mParent = null; // 默认无父列表 + mMetaInfo = null; // 默认无元信息 + } + + /** + * 生成创建任务的JSON动作 + * @param actionId 动作ID + * @return 包含创建任务数据的JSON对象 + */ + public JSONObject getCreateAction(int actionId) { + JSONObject js = new JSONObject(); + + try { + // 设置动作类型为创建 + js.put(GTaskStringUtils.GTASK_JSON_ACTION_TYPE, + GTaskStringUtils.GTASK_JSON_ACTION_TYPE_CREATE); + + // 设置动作ID + js.put(GTaskStringUtils.GTASK_JSON_ACTION_ID, actionId); + + // 设置任务索引位置 + js.put(GTaskStringUtils.GTASK_JSON_INDEX, mParent.getChildTaskIndex(this)); + + // 构建任务实体数据 + JSONObject entity = new JSONObject(); + entity.put(GTaskStringUtils.GTASK_JSON_NAME, getName()); // 任务名称 + entity.put(GTaskStringUtils.GTASK_JSON_CREATOR_ID, "null"); // 创建者ID + entity.put(GTaskStringUtils.GTASK_JSON_ENTITY_TYPE, + GTaskStringUtils.GTASK_JSON_TYPE_TASK); // 实体类型设为任务 + // 如果有备注则添加 + if (getNotes() != null) { + entity.put(GTaskStringUtils.GTASK_JSON_NOTES, getNotes()); + } + js.put(GTaskStringUtils.GTASK_JSON_ENTITY_DELTA, entity); // 添加实体数据 + + // 设置父任务列表ID + js.put(GTaskStringUtils.GTASK_JSON_PARENT_ID, mParent.getGid()); + + // 设置目标父类型为组 + js.put(GTaskStringUtils.GTASK_JSON_DEST_PARENT_TYPE, + GTaskStringUtils.GTASK_JSON_TYPE_GROUP); + + // 设置列表ID + js.put(GTaskStringUtils.GTASK_JSON_LIST_ID, mParent.getGid()); + + // 如果有前驱任务则设置其ID + if (mPriorSibling != null) { + js.put(GTaskStringUtils.GTASK_JSON_PRIOR_SIBLING_ID, mPriorSibling.getGid()); + } + + } catch (JSONException e) { + Log.e(TAG, e.toString()); + e.printStackTrace(); + throw new ActionFailureException("生成任务创建JSON对象失败"); + } + + return js; + } + + /** + * 生成更新任务的JSON动作 + * @param actionId 动作ID + * @return 包含更新数据的JSON对象 + */ + public JSONObject getUpdateAction(int actionId) { + JSONObject js = new JSONObject(); + + try { + // 设置动作类型为更新 + js.put(GTaskStringUtils.GTASK_JSON_ACTION_TYPE, + GTaskStringUtils.GTASK_JSON_ACTION_TYPE_UPDATE); + + // 设置动作ID + js.put(GTaskStringUtils.GTASK_JSON_ACTION_ID, actionId); + + // 设置任务全局ID + js.put(GTaskStringUtils.GTASK_JSON_ID, getGid()); + + // 构建更新数据 + JSONObject entity = new JSONObject(); + entity.put(GTaskStringUtils.GTASK_JSON_NAME, getName()); // 更新名称 + // 如果有备注则更新 + if (getNotes() != null) { + entity.put(GTaskStringUtils.GTASK_JSON_NOTES, getNotes()); + } + // 设置删除状态 + 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("生成任务更新JSON对象失败"); + } + + return js; + } + + /** + * 从远程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)); + } + + // 设置最后修改时间 + if (js.has(GTaskStringUtils.GTASK_JSON_LAST_MODIFIED)) { + setLastModified(js.getLong(GTaskStringUtils.GTASK_JSON_LAST_MODIFIED)); + } + + // 设置任务名称 + if (js.has(GTaskStringUtils.GTASK_JSON_NAME)) { + setName(js.getString(GTaskStringUtils.GTASK_JSON_NAME)); + } + + // 设置任务备注 + if (js.has(GTaskStringUtils.GTASK_JSON_NOTES)) { + setNotes(js.getString(GTaskStringUtils.GTASK_JSON_NOTES)); + } + + // 设置删除状态 + if (js.has(GTaskStringUtils.GTASK_JSON_DELETED)) { + setDeleted(js.getBoolean(GTaskStringUtils.GTASK_JSON_DELETED)); + } + + // 设置完成状态 + if (js.has(GTaskStringUtils.GTASK_JSON_COMPLETED)) { + setCompleted(js.getBoolean(GTaskStringUtils.GTASK_JSON_COMPLETED)); + } + } catch (JSONException e) { + Log.e(TAG, e.toString()); + e.printStackTrace(); + throw new ActionFailureException("从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: 无可用数据"); + } + + try { + JSONObject note = Objects.requireNonNull(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, "无效的类型"); + 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)); // 设置任务名称 + 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, "笔记内容为空"); + return null; + } + + // 构建新的JSON结构 + return getJsonObject(name); + } 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()); + break; + } + } + + note.put(NoteColumns.TYPE, Notes.TYPE_NOTE); // 确保类型正确 + return mMetaInfo; // 返回修改后的元信息 + } + } catch (JSONException e) { + Log.e(TAG, e.toString()); + e.printStackTrace(); + return null; + } + } + + @NonNull + private static JSONObject getJsonObject(String name) throws JSONException { + JSONObject js = new JSONObject(); + JSONObject note = new JSONObject(); + JSONArray dataArray = new JSONArray(); + JSONObject data = new JSONObject(); + data.put(DataColumns.CONTENT, name); // 设置内容 + dataArray.put(data); + js.put(GTaskStringUtils.META_HEAD_DATA, dataArray); // 添加数据数组 + note.put(NoteColumns.TYPE, Notes.TYPE_NOTE); // 设置类型 + js.put(GTaskStringUtils.META_HEAD_NOTE, note); // 添加笔记头 + return js; + } + + /** + * 设置任务元信息 + * @param metaData 元数据对象 + */ + public void setMetaInfo(MetaData metaData) { + if (metaData != null && metaData.getNotes() != null) { + try { + // 将元数据中的notes字符串转换为JSON对象 + mMetaInfo = new JSONObject(metaData.getNotes()); + } catch (JSONException e) { + Log.w(TAG, e.toString()); + mMetaInfo = null; + } + } + } + + /** + * 获取同步动作类型 + * @param c 数据库Cursor + * @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); + } + + if (noteInfo == null) { + Log.w(TAG, "笔记元信息似乎已被删除"); + return SYNC_ACTION_UPDATE_REMOTE; // 需要从远程更新 + } + + if (!noteInfo.has(NoteColumns.ID)) { + Log.w(TAG, "远程笔记ID似乎已被删除"); + return SYNC_ACTION_UPDATE_LOCAL; // 需要更新本地 + } + + // 验证笔记ID是否匹配 + if (c.getLong(SqlNote.ID_COLUMN) != noteInfo.getLong(NoteColumns.ID)) { + Log.w(TAG, "笔记ID不匹配"); + 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 { + // 验证任务ID是否匹配 + if (!c.getString(SqlNote.GTASK_ID_COLUMN).equals(getGid())) { + Log.e(TAG, "任务ID不匹配"); + 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 + */ + /** + * 检查当前任务对象是否包含有效数据,值得保存 + * 满足以下任一条件即认为值得保存: + * 1. 存在元信息数据 或 + * 2. 任务名称非空且不为纯空格 或 + * 3. 任务备注非空且不为纯空格 + * + * @return 如果包含有效数据返回true,否则false + */ + public boolean isWorthSaving() { + return mMetaInfo != null || // 存在元信息 + (getName() != null && !getName().trim().isEmpty()) || // 有有效名称 + (getNotes() != null && !getNotes().trim().isEmpty()); // 有有效备注 + } + + /** + * 设置任务完成状态 + * @param completed true表示任务已完成,false表示未完成 + */ + public void setCompleted(boolean completed) { + this.mCompleted = completed; // 更新完成状态字段 + } + + /** + * 设置任务备注内容 + * @param notes 要设置的备注文本,可为null表示清空备注 + */ + public void setNotes(String notes) { + this.mNotes = notes; // 更新备注字段 + } + + /** + * 设置前驱任务(用于任务排序) + * @param priorSibling 前一个任务节点,可为null表示没有前驱 + */ + public void setPriorSibling(Task priorSibling) { + this.mPriorSibling = priorSibling; // 更新前驱任务引用 + } + + /** + * 设置所属任务列表 + * @param parent 父任务列表对象,不可为null + */ + public void setParent(TaskList parent) { + this.mParent = parent; // 更新父列表引用 + } + + /** + * 获取任务完成状态 + * @return true表示任务已完成,false表示未完成 + */ + public boolean getCompleted() { + return this.mCompleted; // 返回当前完成状态 + } + + /** + * 获取任务备注内容 + * @return 备注文本,可能为null表示无备注 + */ + public String getNotes() { + return this.mNotes; // 返回当前备注内容 + } + + /** + * 获取前驱任务(用于任务排序) + * @return 前一个任务节点,可能为null表示没有前驱 + */ + public Task getPriorSibling() { + return this.mPriorSibling; // 返回前驱任务引用 + } + + /** + * 获取所属任务列表 + * @return 父任务列表对象 + */ + public TaskList getParent() { + return this.mParent; // 返回父列表引用 + } +} \ No newline at end of file diff --git a/src/mi_note/app/src/main/java/net/micode/notes/gtask/data/TaskList.java b/src/mi_note/app/src/main/java/net/micode/notes/gtask/data/TaskList.java new file mode 100644 index 0000000..27db52b --- /dev/null +++ b/src/mi_note/app/src/main/java/net/micode/notes/gtask/data/TaskList.java @@ -0,0 +1,435 @@ +/* + * 版权所有 (c) 2010-2011,MiCode 开源社区 (www.micode.net) + * 根据 Apache 许可证 2.0 版本("许可证")授权; + * 除非符合许可证的规定,否则不得使用本文件。 + * 您可以从以下网址获取许可证副本: + * http://www.apache.org/licenses/LICENSE-2.0 + * 除非适用法律要求或书面同意,本软件按"原样"分发, + * 没有任何明示或暗示的保证或条件。 + * 详见许可证中规定的权限和限制。 + * (注:这是一份标准的Apache许可证2.0版本的开源声明) + */ +// 声明当前类所在的包路径,属于笔记应用的Google任务数据模块 +package net.micode.notes.gtask.data; +// 导入Android数据库相关类 +import android.database.Cursor; // 用于操作和遍历数据库查询结果集 +import android.util.Log; // Android日志工具类 +// 导入笔记应用的核心数据类 +import net.micode.notes.data.Notes; // 笔记数据常量类 +import net.micode.notes.data.Notes.NoteColumns; // 笔记表列名常量 +// 导入异常处理类 +import net.micode.notes.gtask.exception.ActionFailureException; +// 当Google任务操作失败时抛出的自定义异常 +// 导入Google任务字符串处理工具类 +import net.micode.notes.tool.GTaskStringUtils; +// 包含Google任务API使用的JSON键名常量 +// 导入JSON处理相关类 +import org.json.JSONException; // JSON解析异常类 +import org.json.JSONObject; // JSON对象操作类 +// 导入Java工具类 +import java.util.ArrayList; // 动态数组集合 +import java.util.Objects; // 对象操作工具类(判空等) +// 继承自Node基类,表示Google Tasks中的任务列表 +public class TaskList extends Node { + // 日志标签,使用类名作为标识 + private static final String TAG = TaskList.class.getSimpleName(); + // 任务列表的排序索引 + private int mIndex; + // 存储子任务的动态数组 + private final ArrayList mChildren; + // 构造函数 + public TaskList() { + super(); // 调用父类Node的构造函数 + mChildren = new ArrayList<>(); // 初始化子任务列表 + mIndex = 1; // 默认索引从1开始 + } + /** + * 生成创建任务列表的JSON动作 + * @param actionId 动作ID(用于标识操作序列) + * @return 包含创建命令的JSON对象 + * @throws ActionFailureException 当JSON操作失败时抛出 + */ + public JSONObject getCreateAction(int actionId) { + JSONObject js = new JSONObject(); + + try { + // 设置动作类型为"create" + js.put(GTaskStringUtils.GTASK_JSON_ACTION_TYPE, + GTaskStringUtils.GTASK_JSON_ACTION_TYPE_CREATE); + + // 设置动作ID + js.put(GTaskStringUtils.GTASK_JSON_ACTION_ID, actionId); + + // 设置任务列表索引 + js.put(GTaskStringUtils.GTASK_JSON_INDEX, mIndex); + + // 构建实体数据对象 + JSONObject entity = new JSONObject(); + entity.put(GTaskStringUtils.GTASK_JSON_NAME, getName()); // 列表名称 + entity.put(GTaskStringUtils.GTASK_JSON_CREATOR_ID, "null"); // 创建者ID + entity.put(GTaskStringUtils.GTASK_JSON_ENTITY_TYPE, + GTaskStringUtils.GTASK_JSON_TYPE_GROUP); // 实体类型设为"group" + js.put(GTaskStringUtils.GTASK_JSON_ENTITY_DELTA, entity); // 添加实体数据 + + } catch (JSONException e) { + Log.e(TAG, e.toString()); + e.printStackTrace(); + throw new ActionFailureException("生成任务列表创建JSON失败"); + } + + return js; + } + + /** + * 生成更新任务列表的JSON动作 + * @param actionId 动作ID + * @return 包含更新命令的JSON对象 + */ + public JSONObject getUpdateAction(int actionId) { + JSONObject js = new JSONObject(); + + try { + // 设置动作类型为"update" + js.put(GTaskStringUtils.GTASK_JSON_ACTION_TYPE, + GTaskStringUtils.GTASK_JSON_ACTION_TYPE_UPDATE); + + // 设置动作ID + js.put(GTaskStringUtils.GTASK_JSON_ACTION_ID, actionId); + + // 设置任务列表全局ID + js.put(GTaskStringUtils.GTASK_JSON_ID, getGid()); + + // 构建更新数据对象 + 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("生成任务列表更新JSON失败"); + } + + return js; + } + + /** + * 从远程JSON数据设置任务列表内容 + * @param js 包含远程数据的JSON对象 + * @throws ActionFailureException 当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)); + } + + // 设置最后修改时间戳 + if (js.has(GTaskStringUtils.GTASK_JSON_LAST_MODIFIED)) { + setLastModified(js.getLong(GTaskStringUtils.GTASK_JSON_LAST_MODIFIED)); + } + + // 设置任务列表名称 + 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("从JSON解析任务列表内容失败"); + } + } + } + + /** + * 从本地JSON数据设置任务列表内容 + * @param js 包含本地数据的JSON对象 + */ + public void setContentByLocalJSON(JSONObject js) { + // 检查数据有效性 + if (js == null || !js.has(GTaskStringUtils.META_HEAD_NOTE)) { + Log.w(TAG, "setContentByLocalJSON: 无可用数据"); + return; + } + + try { + JSONObject folder = Objects.requireNonNull(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); // 添加MIUI前缀 + } + // 处理系统文件夹类型 + 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, "无效的系统文件夹"); + } + } else { + Log.e(TAG, "错误的类型"); + } + } catch (JSONException e) { + Log.e(TAG, e.toString()); + e.printStackTrace(); + } + } + + /** + * 从任务列表内容生成本地JSON格式 + * @return 包含任务列表数据的JSON对象,失败返回null + */ + public JSONObject getLocalJSONFromContent() { + try { + JSONObject js = new JSONObject(); + JSONObject folder = new JSONObject(); + + // 处理文件夹名称(移除MIUI前缀) + String folderName = getName(); + if (getName().startsWith(GTaskStringUtils.MIUI_FOLDER_PREFFIX)) { + folderName = folderName.substring(GTaskStringUtils.MIUI_FOLDER_PREFFIX.length()); + } + + // 设置文件夹基本属性 + 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 数据库Cursor对象,包含本地数据 + * @return 同步动作常量(SYNC_ACTION_*) + */ + 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 { + // 有本地修改时验证任务ID + if (!c.getString(SqlNote.GTASK_ID_COLUMN).equals(getGid())) { + Log.e(TAG, "任务ID不匹配"); + return SYNC_ACTION_ERROR; + } + return SYNC_ACTION_UPDATE_REMOTE; // 需要更新远程 + } + } catch (Exception e) { + Log.e(TAG, e.toString()); + e.printStackTrace(); + } + return SYNC_ACTION_ERROR; // 默认返回错误 + } + + // 以下是子任务管理方法 + + /** + * 获取子任务数量 + * @return 当前子任务总数 + */ + public int getChildTaskCount() { + return mChildren.size(); + } + + /** + * 添加子任务到列表末尾 + * @param task 要添加的子任务 + * @return 是否添加成功 + */ + public boolean addChildTask(Task task) { + boolean ret = false; + if (task != null && !mChildren.contains(task)) { + ret = mChildren.add(task); + if (ret) { + // 设置前驱任务和父列表 + task.setPriorSibling(mChildren.get(mChildren.size() - 1)); + task.setParent(this); + } + } + return ret; + } + + /** + * 在指定位置添加子任务 + * @param task 要添加的子任务 + * @param index 插入位置 + * @return 是否添加成功 + */ + public boolean addChildTask(Task task, int index) { + // 检查索引有效性 + if (index < 0 || index > mChildren.size()) { + Log.e(TAG, "添加子任务:无效的索引"); + return false; + } + + // 检查任务是否已存在 + int pos = mChildren.indexOf(task); + if (task != null && pos == -1) { + mChildren.add(index, task); + + // 更新任务链关系 + Task preTask = (index != 0) ? mChildren.get(index - 1) : null; + Task afterTask = (index != mChildren.size() - 1) ? mChildren.get(index + 1) : null; + + task.setPriorSibling(preTask); + if (afterTask != null) { + afterTask.setPriorSibling(task); + } + } + + return true; + } + + /** + * 移除指定子任务 + * @param task 要移除的子任务 + * @return 是否移除成功 + */ + 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 是否移动成功 + */ + public boolean moveChildTask(Task task, int index) { + // 检查索引有效性 + if (index < 0 || index >= mChildren.size()) { + Log.e(TAG, "移动子任务:无效的索引"); + return false; + } + + int pos = mChildren.indexOf(task); + if (pos == -1) { + Log.e(TAG, "移动子任务:任务不在列表中"); + return false; + } + + if (pos == index) { + return true; // 位置未改变 + } + + // 先移除再添加实现移动 + return (removeChildTask(task) && addChildTask(task, index)); + } + + // 以下是查询方法 + + /** + * 通过GID查找子任务 + * @param gid 要查找的任务全局ID + * @return 找到的任务对象,未找到返回null + */ + public Task findChildTaskByGid(String gid) { + for (Task t : mChildren) { + 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: 无效的索引"); + return null; + } + return mChildren.get(index); + } + + /** + * 通过GID获取子任务(别名方法) + * @param gid 要查找的任务全局ID + * @return 找到的任务对象,未找到返回null + */ + public Task getChilTaskByGid(String gid) { + return findChildTaskByGid(gid); + } + + /** + * 获取所有子任务列表 + * @return 子任务ArrayList(注意:返回的是引用) + */ + public ArrayList getChildTaskList() { + return this.mChildren; + } + + // 以下是索引属性的getter/setter + + /** + * 设置任务列表索引 + * @param index 新的索引值 + */ + public void setIndex(int index) { + this.mIndex = index; + } + + /** + * 获取当前索引 + * @return 当前索引值 + */ + public int getIndex() { + return this.mIndex; + } +} diff --git a/src/mi_note/app/src/main/java/net/micode/notes/gtask/exception/ActionFailureException.java b/src/mi_note/app/src/main/java/net/micode/notes/gtask/exception/ActionFailureException.java new file mode 100644 index 0000000..a1945f6 --- /dev/null +++ b/src/mi_note/app/src/main/java/net/micode/notes/gtask/exception/ActionFailureException.java @@ -0,0 +1,46 @@ +/* + * 版权所有 (c) 2010-2011,MiCode 开源社区 (www.micode.net) + * 根据 Apache 许可证 2.0 版本("许可证")授权; + * 除非符合许可证的规定,否则不得使用本文件。 + * 您可以从以下网址获取许可证副本: + * http://www.apache.org/licenses/LICENSE-2.0 + * 除非适用法律要求或书面同意,本软件按"原样"分发, + * 没有任何明示或暗示的保证或条件。 + * 详见许可证中规定的权限和限制。 + * (注:这是一份标准的Apache许可证2.0版本的开源声明) + */ +// 定义该异常类所在的包路径,属于Google任务模块的异常处理包 +package net.micode.notes.gtask.exception; +import java.io.Serial; +/** + * 自定义运行时异常,表示Google Task操作失败 + * 继承自RuntimeException,属于非受检异常(unchecked exception) + * 主要用于GTasks同步过程中的操作失败场景 + */ +public class ActionFailureException extends RuntimeException { + // 序列化版本UID,用于控制反序列化的版本兼容性 + // 保持该值不变可以确保序列化/反序列化的一致性 + @Serial + private static final long serialVersionUID = 4425249765923293627L; + /** + * 默认构造函数,创建不带详细信息的异常对象 + */ + public ActionFailureException() { + super(); // 调用父类RuntimeException的无参构造 + } + /** + * 带错误信息的构造函数 + * @param paramString 错误描述信息,将显示在异常堆栈中 + */ + public ActionFailureException(String paramString) { + super(paramString); // 调用父类带消息的构造方法 + } + /** + * 带错误信息和原因的构造函数 + * @param paramString 错误描述信息 + * @param paramThrowable 导致该异常的原始Throwable对象(原因) + */ + public ActionFailureException(String paramString, Throwable paramThrowable) { + super(paramString, paramThrowable); // 调用父类带cause的构造方法 + } +} diff --git a/src/mi_note/app/src/main/java/net/micode/notes/gtask/exception/NetworkFailureException.java b/src/mi_note/app/src/main/java/net/micode/notes/gtask/exception/NetworkFailureException.java new file mode 100644 index 0000000..8c644e0 --- /dev/null +++ b/src/mi_note/app/src/main/java/net/micode/notes/gtask/exception/NetworkFailureException.java @@ -0,0 +1,50 @@ +/* + * 版权所有 (c) 2010-2011,MiCode 开源社区 (www.micode.net) + * 根据 Apache 许可证 2.0 版本("许可证")授权; + * 除非符合许可证的规定,否则不得使用本文件。 + * 您可以从以下网址获取许可证副本: + * http://www.apache.org/licenses/LICENSE-2.0 + * 除非适用法律要求或书面同意,本软件按"原样"分发, + * 没有任何明示或暗示的保证或条件。 + * 详见许可证中规定的权限和限制。 + * (注:这是一份标准的Apache许可证2.0版本的开源声明) + */ +// 声明当前类所在的包路径,属于Google任务模块的异常处理包 +package net.micode.notes.gtask.exception; +// 导入Java序列化相关注解 +import java.io.Serial; +/** + * 自定义受检异常(checked exception),表示网络操作失败 + * 继承自java.lang.Exception ,调用方必须显式捕获或抛出 + * 主要在网络请求失败、连接超时等场景使用 + */ +public class NetworkFailureException extends Exception { + // 序列化版本唯一标识符,使用@Serial注解标记 + // 该值用于控制不同版本间的序列化兼容性 + @Serial + private static final long serialVersionUID = 2107610287180234136L; + /** + * 默认构造函数,创建无详细错误信息的异常对象 + * 用于不需要额外错误信息的简单场景 + */ + public NetworkFailureException() { + super(); // 调用父类Exception的无参构造方法 + } + /** + * 带错误描述的构造函数 + * @param paramString 错误详细信息,会显示在异常堆栈中 + * 示例:"HTTP 404 Not Found" + */ + public NetworkFailureException(String paramString) { + super(paramString); // 调用父类带错误信息的构造方法 + } + /** + * 完整参数构造函数 + * @param paramString 自定义错误描述信息 + * @param paramThrowable 引起当前异常的根原因(Throwable对象) + * 示例:new NetworkFailureException("请求失败", socketTimeoutEx) + */ + public NetworkFailureException(String paramString, Throwable paramThrowable) { + super(paramString, paramThrowable); // 调用父类带cause的构造方法 + } +} \ No newline at end of file diff --git a/src/mi_note/app/src/main/java/net/micode/notes/gtask/remote/GTaskASyncTask.java b/src/mi_note/app/src/main/java/net/micode/notes/gtask/remote/GTaskASyncTask.java new file mode 100644 index 0000000..997eaa9 --- /dev/null +++ b/src/mi_note/app/src/main/java/net/micode/notes/gtask/remote/GTaskASyncTask.java @@ -0,0 +1,156 @@ +/* + * 版权所有 (c) 2010-2011,MiCode 开源社区 (www.micode.net) + * 根据 Apache 许可证 2.0 版本("许可证")授权; + * 除非符合许可证的规定,否则不得使用本文件。 + * 您可以从以下网址获取许可证副本: + * http://www.apache.org/licenses/LICENSE-2.0 + * 除非适用法律要求或书面同意,本软件按"原样"分发, + * 没有任何明示或暗示的保证或条件。 + * 详见许可证中规定的权限和限制。 + * (注:这是一份标准的Apache许可证2.0版本的开源声明) + */ + +// 定义远程同步任务异步处理类 +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 android.os.Build; + +// 导入AndroidX兼容库注解 +import androidx.annotation.RequiresApi; + +// 导入应用资源 +import net.micode.notes.R; +// 导入界面活动类 +import net.micode.notes.ui.NotesListActivity; +import net.micode.notes.ui.NotesPreferenceActivity; + +// 异步任务类,用于处理Google任务同步 +public class GTaskASyncTask extends AsyncTask { + + // 定义同步完成回调接口 + public interface OnCompleteListener { + void onComplete(); // 同步完成时触发 + } + + // 上下文对象 + private final Context mContext; + // 通知管理器 + private final NotificationManager mNotifiManager; + // Google任务管理器实例 + private final GTaskManager mTaskManager; + // 完成监听器 + private final OnCompleteListener mOnCompleteListener; + + // 构造函数 + 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(message // 包装成字符串数组 + ); + } + + // 显示通知的方法(兼容新版API) + private void showNotification(int tickerId, String content) { + // 准备跳转意图 + PendingIntent pendingIntent; + // 根据通知类型设置不同的跳转目标 + if (tickerId != R.string.ticker_success) { + // 失败时跳转到设置页 + pendingIntent = PendingIntent.getActivity(mContext, 0, new Intent(mContext, + NotesPreferenceActivity.class), PendingIntent.FLAG_IMMUTABLE); + } else { + // 成功时跳转到列表页 + pendingIntent = PendingIntent.getActivity(mContext, 0, new Intent(mContext, + NotesListActivity.class), PendingIntent.FLAG_IMMUTABLE); + } + + // 构建通知对象 + Notification.Builder builder = new Notification.Builder(mContext) + .setAutoCancel(true) // 点击后自动消失 + .setContentTitle(mContext.getString(R.string.app_name)) // 设置标题 + .setContentText(content) // 设置内容 + .setContentIntent(pendingIntent) // 设置点击意图 + .setWhen(System.currentTimeMillis()) // 设置时间 + .setOngoing(true); // 设置为持续通知 + + // 生成通知对象 + Notification notification = builder.getNotification(); + // 定义通知ID + int GTASK_SYNC_NOTIFICATION_ID = 5234235; + // 显示通知 + mNotifiManager.notify(GTASK_SYNC_NOTIFICATION_ID, notification); + } + + // 后台执行方法(API级别限制) + @RequiresApi(api = Build.VERSION_CODES.R) + @Override + protected Integer doInBackground(Void... unused) { + // 发布登录进度通知 + publishProgess(mContext.getString(R.string.sync_progress_login, NotesPreferenceActivity + .getSyncAccountName(mContext))); + // 执行同步操作 + return mTaskManager.sync(mContext, this); + } + + // 进度更新回调 + @Override + protected void onProgressUpdate(String... progress) { + // 显示同步中通知 + showNotification(R.string.ticker_syncing, progress[0]); + // 如果是服务上下文,发送广播 + if (mContext instanceof GTaskSyncService) { + ((GTaskSyncService) mContext).sendBroadcast(progress[0]); + } + } + + // 执行完成回调 + @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(mOnCompleteListener::onComplete).start(); + } + } +} diff --git a/src/mi_note/app/src/main/java/net/micode/notes/gtask/remote/GTaskClient.java b/src/mi_note/app/src/main/java/net/micode/notes/gtask/remote/GTaskClient.java new file mode 100644 index 0000000..edb338c --- /dev/null +++ b/src/mi_note/app/src/main/java/net/micode/notes/gtask/remote/GTaskClient.java @@ -0,0 +1,611 @@ +/* + * 版权所有 (c) 2010-2011,MiCode 开源社区 (www.micode.net) + * 根据 Apache 许可证 2.0 版本("许可证")授权; + * 除非符合许可证的规定,否则不得使用本文件。 + * 您可以从以下网址获取许可证副本: + * http://www.apache.org/licenses/LICENSE-2.0 + * 除非适用法律要求或书面同意,本软件按"原样"分发, + * 没有任何明示或暗示的保证或条件。 + * 详见许可证中规定的权限和限制。 + * (注:这是一份标准的Apache许可证2.0版本的开源声明) + */ + +// 定义Google任务远程同步包路径 +package net.micode.notes.gtask.remote; +// 导入Android账号管理相关类 +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; // 日志工具 +// 导入AndroidX注解 +import androidx.annotation.NonNull; // 非空参数注解 +// 导入Google任务数据模型 +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; // Google任务字符串常量工具 +import net.micode.notes.ui.NotesPreferenceActivity; // 设置界面Activity +// 导入Apache HTTP组件(已废弃,但部分旧系统仍在使用) +import org.apache.http.HttpEntity; // HTTP消息实体接口 +import org.apache.http.HttpResponse; // HTTP响应对象 +import org.apache.http.client.entity.UrlEncodedFormEntity; // URL编码表单实体 +import org.apache.http.client.methods.HttpGet; // HTTP GET请求方法 +import org.apache.http.client.methods.HttpPost; // HTTP POST请求方法 +import org.apache.http.cookie.Cookie; // Cookie信息对象 +import org.apache.http.impl.client.BasicCookieStore; // 基础Cookie存储 +import org.apache.http.impl.client.DefaultHttpClient; // 默认HTTP客户端(已废弃) +import org.apache.http.message.BasicNameValuePair; // 键值对参数对象 +import org.apache.http.params.BasicHttpParams; // HTTP参数集合 +import org.apache.http.params.HttpConnectionParams; // 连接相关参数 +import org.apache.http.params.HttpParams; // HTTP参数接口 +import org.apache.http.params.HttpProtocolParams; // 协议相关参数 +// 导入JSON处理类 +import org.json.JSONArray; // JSON数组处理 +import org.json.JSONException; // JSON解析异常 +import org.json.JSONObject; // JSON对象处理 +// 导入IO流相关类 +import java.io.BufferedReader; // 缓冲字符输入流 +import java.io.IOException; // IO异常 +import java.io.InputStream; // 字节输入流 +import java.io.InputStreamReader; // 字节流转字符流 +import java.util.LinkedList; // 链表实现 +import java.util.List; // 列表接口 +// 导入压缩流处理 +import java.util.zip.GZIPInputStream; // GZIP解压流 +import java.util.zip.Inflater; // 解压器 +import java.util.zip.InflaterInputStream; // 解压输入流 + +// Google任务客户端实现类,负责与Google Tasks API交互 +public class GTaskClient { + // 日志标签 + private static final String TAG = GTaskClient.class.getSimpleName(); + // Google任务基础URL + private static final String GTASK_URL = "https://mail.google.com/tasks/"; + // GET请求URL + private static final String GTASK_GET_URL = "https://mail.google.com/tasks/ig"; + // POST请求URL + private static final String GTASK_POST_URL = "https://mail.google.com/tasks/r/ig"; + // 单例实例 + private static GTaskClient mInstance = null; + // HTTP客户端(使用已废弃的Apache HTTP Client) + private DefaultHttpClient mHttpClient; + // GET请求实际URL(可能包含自定义域名) + private String mGetUrl; + // POST请求实际URL(可能包含自定义域名) + private String mPostUrl; + // 客户端版本号 + private long mClientVersion; + // 登录状态标识 + private boolean mLoggedin; + // 上次登录时间戳 + private long mLastLoginTime; + // 操作ID计数器 + private int mActionId; + // 当前账号信息 + private Account mAccount; + // 待提交的更新操作集合 + private JSONArray mUpdateArray; + // 私有构造方法(单例模式) + private GTaskClient() { + mHttpClient = null; + mGetUrl = GTASK_GET_URL; // 默认使用官方GET URL + mPostUrl = GTASK_POST_URL; // 默认使用官方POST URL + mClientVersion = -1; // 初始无效版本 + mLoggedin = false; // 初始未登录 + mLastLoginTime = 0; // 初始时间戳 + mActionId = 1; // 操作ID从1开始 + mAccount = null; // 初始无账号 + mUpdateArray = null; // 初始无待更新操作 + } + // 获取单例实例(线程安全) + public static synchronized GTaskClient getInstance() { + if (mInstance == null) { + mInstance = new GTaskClient(); // 懒加载初始化 + } + return mInstance; + } + // 登录方法 + public boolean login(Activity activity) { + // 检查登录是否过期(假设cookie 5分钟后失效) + final long interval = 1000 * 60 * 5; // 5分钟毫秒数 + if (mLastLoginTime + interval < System.currentTimeMillis()) { + mLoggedin = false; // 标记需要重新登录 + } + + // 检查账号是否变更 + if (mLoggedin && !TextUtils.equals(getSyncAccount().name, + NotesPreferenceActivity.getSyncAccountName(activity))) { + mLoggedin = false; // 账号变更需重新登录 + } + + // 已登录直接返回 + if (mLoggedin) { + Log.d(TAG, "已经登录"); + return true; + } + + mLastLoginTime = System.currentTimeMillis(); // 更新登录时间 + String authToken = loginGoogleAccount(activity, false); // 获取认证令牌 + if (authToken == null) { + Log.e(TAG, "Google账号登录失败"); + return false; + } + + // 处理非gmail.com 域名的企业账号 + if (!(mAccount.name.toLowerCase().endsWith("gmail.com") || + mAccount.name.toLowerCase().endsWith("googlemail.com"))) { + // 构建自定义域名URL + StringBuilder url = new StringBuilder(GTASK_URL).append("a/"); + int index = mAccount.name.indexOf('@') + 1; + String suffix = mAccount.name.substring(index); + url.append(suffix).append("/"); + mGetUrl = url + "ig"; // 更新GET URL + mPostUrl = url + "r/ig"; // 更新POST URL + + // 尝试用自定义域名登录 + if (tryToLoginGtask(activity, authToken)) { + mLoggedin = true; + } + } + + // 自定义域名登录失败时尝试官方URL + if (!mLoggedin) { + mGetUrl = GTASK_GET_URL; // 恢复默认GET URL + mPostUrl = GTASK_POST_URL; // 恢复默认POST URL + if (!tryToLoginGtask(activity, authToken)) { + return false; + } + } + + mLoggedin = true; // 标记登录成功 + return true; + } + + // 获取Google账号认证令牌 + private String loginGoogleAccount(Activity activity, boolean invalidateToken) { + String authToken; + // 获取账号管理器实例 + AccountManager accountManager = AccountManager.get(activity); + // 获取所有Google账号 + Account[] accounts = accountManager.getAccountsByType("com.google"); + + if (accounts.length == 0) { + Log.e(TAG, "没有可用的Google账号"); + 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, "找不到设置中配置的账号"); + return null; + } + + // 异步获取认证令牌 + 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); + loginGoogleAccount(activity, false); + } + } catch (Exception e) { + Log.e(TAG, "获取认证令牌失败"); + authToken = null; + } + + return authToken; + } + + // 尝试登录Google Tasks服务 + private boolean tryToLoginGtask(Activity activity, String authToken) { + if (loginGtask(authToken)) { + // 令牌可能过期,失效后重试 + authToken = loginGoogleAccount(activity, true); + if (authToken == null) { + Log.e(TAG, "Google账号登录失败"); + return false; + } + + if (loginGtask(authToken)) { + Log.e(TAG, "Google Tasks登录失败"); + return false; + } + } + return true; + } + + // 实际执行Google Tasks登录 + private boolean loginGtask(String authToken) { + // 设置HTTP请求超时(连接10秒,socket15秒) + int timeoutConnection = 10000; + int timeoutSocket = 15000; + HttpParams httpParameters = new BasicHttpParams(); + HttpConnectionParams.setConnectionTimeout(httpParameters, timeoutConnection); + HttpConnectionParams.setSoTimeout(httpParameters, timeoutSocket); + + // 初始化HTTP客户端 + mHttpClient = new DefaultHttpClient(httpParameters); + BasicCookieStore localBasicCookieStore = new BasicCookieStore(); + mHttpClient.setCookieStore(localBasicCookieStore); // 设置cookie存储 + HttpProtocolParams.setUseExpectContinue(mHttpClient.getParams(), false); + + // 执行登录请求 + try { + String loginUrl = mGetUrl + "?auth=" + authToken; // 构造登录URL + HttpGet httpGet = new HttpGet(loginUrl); + HttpResponse 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, "缺少认证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 true; // 解析失败返回true触发重试 + } catch (Exception e) { + Log.e(TAG, "HTTP GET请求失败"); + return true; // 网络异常返回true触发重试 + } + + return false; // 登录成功返回false + } + + // 生成递增的操作ID + private int getActionId() { + return mActionId++; + } + + // 创建HTTP POST请求对象 + 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实体获取响应内容(支持gzip/deflate压缩) + private String getResponseContent(HttpEntity entity) throws IOException { + String contentEncoding = null; + if (entity.getContentEncoding() != null) { + contentEncoding = entity.getContentEncoding().getValue(); + Log.d(TAG, "内容编码: " + 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响应 + private JSONObject postRequest(JSONObject js) throws NetworkFailureException { + if (!mLoggedin) { + Log.e(TAG, "请先登录"); + throw new ActionFailureException("未登录"); + } + + HttpPost httpPost = createHttpPost(); + try { + // 构造请求参数 + LinkedList list = new LinkedList<>(); + list.add(new BasicNameValuePair("r", js.toString())); + UrlEncodedFormEntity entity = new UrlEncodedFormEntity(list, "UTF-8"); + httpPost.setEntity(entity); + + // 执行请求并解析响应 + HttpResponse response = mHttpClient.execute(httpPost); + String jsString = getResponseContent(response.getEntity()); + return new JSONObject(jsString); + + } catch (IOException e) { + Log.e(TAG, e.toString()); + e.printStackTrace(); + throw new NetworkFailureException("POST请求失败"); + } catch (JSONException e) { + Log.e(TAG, e.toString()); + e.printStackTrace(); + throw new ActionFailureException("响应内容转JSON失败"); + } catch (Exception e) { + Log.e(TAG, e.toString()); + e.printStackTrace(); + throw new ActionFailureException("请求过程中发生错误"); + } + } + + // 创建任务 + public void createTask(Task task) throws NetworkFailureException { + commitUpdate(); // 先提交待更新操作 + try { + JSONObject jsPost = new JSONObject(); + JSONArray actionList = new JSONArray(); + + // 添加创建动作 + actionList.put(task.getCreateAction(getActionId())); + jsPost.put(GTaskStringUtils.GTASK_JSON_ACTION_LIST, actionList); + + // 添加客户端版本 + jsPost.put(GTaskStringUtils.GTASK_JSON_CLIENT_VERSION, mClientVersion); + + // 发送请求并处理响应 + 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) { + Log.e(TAG, e.toString()); + e.printStackTrace(); + throw new ActionFailureException("创建任务时处理JSON失败"); + } + } + + // 创建任务列表 + public void createTaskList(TaskList tasklist) throws NetworkFailureException { + commitUpdate(); // 先提交待更新操作 + try { + JSONObject jsPost = new JSONObject(); + JSONArray actionList = new JSONArray(); + + // 添加创建动作 + actionList.put(tasklist.getCreateAction(getActionId())); + jsPost.put(GTaskStringUtils.GTASK_JSON_ACTION_LIST, actionList); + + // 添加客户端版本 + jsPost.put(GTaskStringUtils.GTASK_JSON_CLIENT_VERSION, mClientVersion); + + // 发送请求并处理响应 + 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) { + Log.e(TAG, e.toString()); + e.printStackTrace(); + throw new ActionFailureException("创建任务列表时处理JSON失败"); + } + } + + // 提交所有待更新操作 + public void commitUpdate() throws NetworkFailureException { + if (mUpdateArray != null) { // 有待更新操作时才执行 + try { + JSONObject jsPost = new JSONObject(); + + // 添加动作列表 + jsPost.put(GTaskStringUtils.GTASK_JSON_ACTION_LIST, mUpdateArray); + + // 添加客户端版本 + jsPost.put(GTaskStringUtils.GTASK_JSON_CLIENT_VERSION, mClientVersion); + + postRequest(jsPost); // 发送请求 + mUpdateArray = null; // 清空待更新操作 + } catch (JSONException e) { + Log.e(TAG, e.toString()); + e.printStackTrace(); + throw new ActionFailureException("提交更新时处理JSON失败"); + } + } + } + + // 添加节点更新操作 + 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())); // 添加更新动作 + } + } + + // 移动任务 + 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()); + + // 同列表移动时设置前驱任务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()); + + // 跨列表移动时设置目标列表ID + 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); + + postRequest(jsPost); // 发送请求 + + } catch (JSONException e) { + Log.e(TAG, e.toString()); + e.printStackTrace(); + throw new ActionFailureException("移动任务时处理JSON失败"); + } + } + + // 删除节点 + 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); + + postRequest(jsPost); // 发送请求 + mUpdateArray = null; // 清空待更新操作 + } catch (JSONException e) { + Log.e(TAG, e.toString()); + e.printStackTrace(); + throw new ActionFailureException("删除节点时处理JSON失败"); + } + } + + // 获取所有任务列表 + public JSONArray getTaskLists() throws NetworkFailureException { + if (!mLoggedin) { + Log.e(TAG, "请先登录"); + throw new ActionFailureException("未登录"); + } + + try { + HttpGet httpGet = new HttpGet(mGetUrl); // 创建GET请求 + 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 (IOException e) { + Log.e(TAG, e.toString()); + e.printStackTrace(); + throw new NetworkFailureException("获取任务列表时HTTP请求失败"); + } catch (JSONException e) { + Log.e(TAG, e.toString()); + e.printStackTrace(); + throw new ActionFailureException("获取任务列表时处理JSON失败"); + } + } + // 获取特定任务列表详情 + public JSONArray getTaskList(String listGid) throws NetworkFailureException { + commitUpdate(); // 先提交待更新操作 + try { + JSONObject jsPost = new JSONObject(); + JSONArray actionList = getJsonArray(listGid); // 获取动作数组 + jsPost.put(GTaskStringUtils.GTASK_JSON_ACTION_LIST, actionList); + + // 添加客户端版本 + jsPost.put(GTaskStringUtils.GTASK_JSON_CLIENT_VERSION, mClientVersion); + + JSONObject jsResponse = postRequest(jsPost); + return jsResponse.getJSONArray(GTaskStringUtils.GTASK_JSON_TASKS); + } catch (JSONException e) { + Log.e(TAG, e.toString()); + e.printStackTrace(); + throw new ActionFailureException("获取任务列表详情时处理JSON失败"); + } + } + + // 构造获取任务列表的动作数组 + @NonNull + private JSONArray getJsonArray(String listGid) throws JSONException { + JSONArray actionList = new JSONArray(); + JSONObject action = new JSONObject(); + // 设置获取全部动作参数 + 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); + return actionList; + } + // 获取当前同步账号 + public Account getSyncAccount() { + return mAccount; + } + // 重置待更新操作数组 + public void resetUpdateArray() { + mUpdateArray = null; + } +} \ No newline at end of file diff --git a/src/mi_note/app/src/main/java/net/micode/notes/gtask/remote/GTaskManager.java b/src/mi_note/app/src/main/java/net/micode/notes/gtask/remote/GTaskManager.java new file mode 100644 index 0000000..c64b259 --- /dev/null +++ b/src/mi_note/app/src/main/java/net/micode/notes/gtask/remote/GTaskManager.java @@ -0,0 +1,843 @@ +/* + * 版权所有 (c) 2010-2011,MiCode 开源社区 (www.micode.net) + * 根据 Apache 许可证 2.0 版本("许可证")授权; + * 除非符合许可证的规定,否则不得使用本文件。 + * 您可以从以下网址获取许可证副本: + * http://www.apache.org/licenses/LICENSE-2.0 + * 除非适用法律要求或书面同意,本软件按"原样"分发, + * 没有任何明示或暗示的保证或条件。 + * 详见许可证中规定的权限和限制。 + * (注:这是一份标准的Apache许可证2.0版本的开源声明) + */ + +// 定义Google任务远程操作包路径 +package net.micode.notes.gtask.remote; +// 导入Android基础组件 +import android.app.Activity; // 活动组件,提供用户交互界面 +import android.content.ContentResolver; // 内容解析器,用于访问ContentProvider +import android.content.ContentUris; // 用于操作ContentProvider的URI工具 +import android.content.ContentValues; // 键值对集合,用于数据库操作 +import android.content.Context; // 应用上下文,提供全局资源访问 +import android.database.Cursor; // 数据库查询结果集 +import android.os.Build; // 系统版本信息 +import android.util.Log; // 日志工具类 +// 导入AndroidX兼容库注解 +import androidx.annotation.RequiresApi; // API版本要求注解 +// 导入应用资源 +import net.micode.notes.R; // 资源ID引用 +// 导入笔记数据相关类 +import net.micode.notes.data.Notes; // 笔记数据库常量 +import net.micode.notes.data.Notes.DataColumns; // 数据表列名常量 +import net.micode.notes.data.Notes.NoteColumns; // 笔记表列名常量 +// 导入Google任务数据模型 +import net.micode.notes.gtask.data.MetaData; // 元数据封装类 +import net.micode.notes.gtask.data.Node; // 节点基类 +import net.micode.notes.gtask.data.SqlNote; // SQLite笔记实体 +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; // Google任务字符串工具 +// 导入JSON处理库 +import org.json.JSONArray; // JSON数组处理 +import org.json.JSONException; // JSON解析异常 +import org.json.JSONObject; // JSON对象处理 +// 导入Java集合框架 +import java.util.HashMap; // 哈希映射表 +import java.util.HashSet; // 哈希集合 +// 集合迭代器 +import java.util.Map; // 映射接口 +import java.util.Objects; // 对象工具类 +// Google任务同步管理器(实现本地笔记与Google Tasks双向同步) +public class GTaskManager { + // 日志标签,使用类名作为TAG + 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; + + // 上下文相关变量 + private Activity mActivity; // 用于获取认证令牌的Activity + private Context mContext; // 应用上下文 + private ContentResolver mContentResolver; // 内容解析器 + + // 同步状态标志 + private boolean mSyncing; // 是否正在同步的标志 + private boolean mCancelled; // 是否已取消同步的标志 + + // 数据存储结构 + private final HashMap mGTaskListHashMap; // Google任务列表缓存(key: 任务列表ID) + private final HashMap mGTaskHashMap; // 所有任务节点缓存(key: 任务ID) + private final HashMap mMetaHashMap; // 元数据缓存(key: 关联任务ID) + private TaskList mMetaList; // 元数据专用任务列表 + + // ID映射关系 + private final HashSet mLocalDeleteIdMap; // 待删除的本地笔记ID集合 + private final HashMap mGidToNid; // Google任务ID到本地笔记ID的映射 + private final HashMap mNidToGid; // 本地笔记ID到Google任务ID的映射 + + // 私有构造函数(单例模式) + private GTaskManager() { + mSyncing = false; // 初始化时未在同步状态 + mCancelled = false; // 初始化时未取消 + mGTaskListHashMap = new HashMap<>(); // 初始化任务列表缓存 + mGTaskHashMap = new HashMap<>(); // 初始化任务节点缓存 + mMetaHashMap = new HashMap<>(); // 初始化元数据缓存 + mMetaList = null; // 初始化元数据列表为空 + mLocalDeleteIdMap = new HashSet<>(); // 初始化待删除ID集合 + mGidToNid = new HashMap<>(); // 初始化GoogleID到本地ID映射 + mNidToGid = new HashMap<>(); // 初始化本地ID到GoogleID映射 + } + + // 获取单例实例(线程安全) + public static synchronized GTaskManager getInstance() { + if (mInstance == null) { // 如果实例不存在 + mInstance = new GTaskManager(); // 创建新实例 + } + return mInstance; // 返回单例实例 + } + + // 设置Activity上下文(用于认证) + public synchronized void setActivityContext(Activity activity) { + mActivity = activity; // 保存Activity引用 + } + + // 执行同步操作(主入口方法) + @RequiresApi(api = Build.VERSION_CODES.R) + 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; // 设置同步标志 + mCancelled = false; // 重置取消标志 + + // 清空所有缓存数据 + mGTaskListHashMap.clear(); + mGTaskHashMap.clear(); + mMetaHashMap.clear(); + mLocalDeleteIdMap.clear(); + mGidToNid.clear(); + mNidToGid.clear(); + + try { + // 获取Google任务客户端实例 + GTaskClient client = GTaskClient.getInstance(); + client.resetUpdateArray(); // 重置更新队列 + + // 步骤1:登录Google Tasks(如果未取消) + if (!mCancelled) { + if (!client.login(mActivity)) { // 尝试登录 + throw new NetworkFailureException("login google task failed"); // 登录失败抛出异常 + } + } + + // 步骤2:初始化远程任务列表 + asyncTask.publishProgess(mContext.getString(R.string.sync_progress_init_list)); // 更新进度 + initGTaskList(); // 初始化任务列表 + + // 步骤3:执行内容同步 + 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(); // 清空待删除ID集合 + mGidToNid.clear(); // 清空ID映射 + mNidToGid.clear(); // 清空反向ID映射 + mSyncing = false; // 重置同步标志 + } + + // 返回最终状态(根据是否取消) + return mCancelled ? STATE_SYNC_CANCELLED : STATE_SUCCESS; + } + + // 初始化远程任务列表 + private void initGTaskList() throws NetworkFailureException { + if (mCancelled) return; // 如果已取消则直接返回 + + GTaskClient client = GTaskClient.getInstance(); // 获取客户端实例 + try { + // 获取所有任务列表 + 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); // 获取列表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 = jsMetas.getJSONObject(j); // 获取元数据项 + MetaData metaData = new MetaData(); // 创建元数据对象 + metaData.setContentByRemoteJSON(object); // 设置内容 + if (metaData.isWorthSaving()) { // 检查是否需要保存 + mMetaList.addChildTask(metaData); // 添加到元数据列表 + if (metaData.getGid() != null) { // 如果有有效ID + 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); // 获取列表ID + String name = object.getString(GTaskStringUtils.GTASK_JSON_NAME); // 获取列表名称 + + // 检查是否是MIUI前缀的普通列表(排除元数据列表) + 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 = jsTasks.getJSONObject(j); // 获取单个任务 + gid = object.getString(GTaskStringUtils.GTASK_JSON_ID); // 获取任务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()); // 记录JSON异常 + e.printStackTrace(); // 打印堆栈轨迹 + throw new ActionFailureException("initGTaskList: handing JSONObject failed"); // 抛出操作异常 + } + } + + // 执行内容同步(核心方法) + @RequiresApi(api = Build.VERSION_CODES.R) + private void syncContent() throws NetworkFailureException { + int syncType; // 同步类型标识 + Cursor c = null; // 数据库游标 + String gid; // Google任务ID + Node node; // 任务节点 + + mLocalDeleteIdMap.clear(); // 清空待删除集合 + + if (mCancelled) return; // 检查是否已取消 + + /* ===== 阶段1:处理本地已删除的笔记 ===== */ + 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); // 获取Google ID + 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; + } + } + + /* ===== 阶段2:同步文件夹 ===== */ + syncFolder(); // 同步文件夹结构 + + /* ===== 阶段3:处理数据库中的现有笔记 ===== */ + 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); // 获取Google ID + node = mGTaskHashMap.get(gid); // 查找对应节点 + + // 确定同步类型 + if (node != null) { // 如果存在对应节点 + mGTaskHashMap.remove(gid); // 从缓存移除 + mGidToNid.put(gid, c.getLong(SqlNote.ID_COLUMN)); // 建立ID映射 + mNidToGid.put(c.getLong(SqlNote.ID_COLUMN), gid); // 建立反向映射 + syncType = node.getSyncAction(c); // 获取同步类型 + } else { + // 根据是否存在Google ID判断是本地新增还是远程删除 + syncType = c.getString(SqlNote.GTASK_ID_COLUMN).trim().isEmpty() ? + Node.SYNC_ACTION_ADD_REMOTE : 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(); // 关闭游标 + } + } + + /* ===== 阶段4:处理剩余的远程节点(本地不存在) ===== */ + for (Map.Entry entry : mGTaskHashMap.entrySet()) { + node = entry.getValue(); // 获取节点 + doContentSync(Node.SYNC_ACTION_ADD_LOCAL, node, null); // 执行本地添加 + } + + /* ===== 阶段5:批量删除本地标记项 ===== */ + if (!mCancelled) { + if (!DataUtils.batchDeleteNotes(mContentResolver, mLocalDeleteIdMap)) { + throw new ActionFailureException("failed to batch-delete local deleted notes"); // 删除失败抛出异常 + } + } + + /* ===== 阶段6:刷新本地同步ID ===== */ + if (!mCancelled) { + GTaskClient.getInstance().commitUpdate(); // 提交未完成的更新 + refreshLocalSyncId(); // 刷新本地同步ID + } + } + // 同步文件夹方法(需要Android R及以上版本) + @RequiresApi(api = Build.VERSION_CODES.R) + private void syncFolder() throws NetworkFailureException { + Cursor c = null; // 数据库查询游标 + String gid; // Google任务ID + Node node; // 任务节点对象 + int syncType; // 同步类型标识 + + if (mCancelled) return; // 检查同步是否被取消 + + /* ===== 1. 处理根文件夹 ===== */ + try { + // 查询根文件夹(ID_ROOT_FOLDER) + 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); // 获取Google ID + node = mGTaskHashMap.get(gid); // 查找对应节点 + + if (node != null) { // 如果远程存在对应节点 + mGTaskHashMap.remove(gid); // 从缓存移除 + // 建立ID映射关系 + mGidToNid.put(gid, (long) Notes.ID_ROOT_FOLDER); + mNidToGid.put((long) Notes.ID_ROOT_FOLDER, gid); + + // 系统文件夹:仅在名称不匹配时更新远程 + 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, null, c); // 在远程创建 + } + } else { + Log.w(TAG, "failed to query root folder"); // 记录查询失败 + } + } finally { + if (c != null) c.close(); // 确保游标关闭 + } + + /* ===== 2. 处理通话记录文件夹 ===== */ + try { + // 查询通话记录文件夹(ID_CALL_RECORD_FOLDER) + c = mContentResolver.query(Notes.CONTENT_NOTE_URI, SqlNote.PROJECTION_NOTE, + "(_id=?)", new String[]{String.valueOf(Notes.ID_CALL_RECORD_FOLDER)}, null); + + if (c != null && c.moveToNext()) { + gid = c.getString(SqlNote.GTASK_ID_COLUMN); // 获取Google ID + node = mGTaskHashMap.get(gid); // 查找对应节点 + + if (node != null) { // 如果远程存在对应节点 + mGTaskHashMap.remove(gid); // 从缓存移除 + // 建立ID映射关系 + mGidToNid.put(gid, (long) Notes.ID_CALL_RECORD_FOLDER); + mNidToGid.put((long) Notes.ID_CALL_RECORD_FOLDER, gid); + + // 系统文件夹:仅在名称不匹配时更新远程 + 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, null, c); // 在远程创建 + } + } else { + Log.w(TAG, "failed to query call note folder"); // 记录查询失败 + } + } finally { + if (c != null) c.close(); // 确保游标关闭 + } + + /* ===== 3. 处理普通本地文件夹 ===== */ + 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); // 获取Google ID + node = mGTaskHashMap.get(gid); // 查找对应节点 + + // 确定同步类型 + if (node != null) { // 存在对应节点 + mGTaskHashMap.remove(gid); // 从缓存移除 + // 建立ID映射关系 + mGidToNid.put(gid, c.getLong(SqlNote.ID_COLUMN)); + mNidToGid.put(c.getLong(SqlNote.ID_COLUMN), gid); + syncType = node.getSyncAction(c); // 获取同步类型 + } else { + // 根据Google ID是否存在判断是本地新增还是远程删除 + syncType = c.getString(SqlNote.GTASK_ID_COLUMN).trim().isEmpty() ? + Node.SYNC_ACTION_ADD_REMOTE : Node.SYNC_ACTION_DEL_LOCAL; + } + doContentSync(syncType, node, c); // 执行同步操作 + } + } else { + Log.w(TAG, "failed to query existing folder"); // 记录查询失败 + } + } finally { + if (c != null) c.close(); // 确保游标关闭 + } + + /* ===== 4. 处理远程新增的文件夹 ===== */ + for (Map.Entry entry : mGTaskListHashMap.entrySet()) { + gid = entry.getKey(); // 获取Google ID + node = entry.getValue(); // 获取节点对象 + + // 如果缓存中仍存在该节点(说明本地不存在) + if (mGTaskHashMap.containsKey(gid)) { + mGTaskHashMap.remove(gid); // 从缓存移除 + doContentSync(Node.SYNC_ACTION_ADD_LOCAL, node, null); // 在本地创建 + } + } + + // 如果未被取消,提交所有未完成的更新 + if (!mCancelled) GTaskClient.getInstance().commitUpdate(); + } + + // 执行具体同步操作(根据同步类型分发) + @RequiresApi(api = Build.VERSION_CODES.R) + 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: // 本地删除操作 + // 查找关联的元数据 + meta = mMetaHashMap.get(c.getString(SqlNote.GTASK_ID_COLUMN)); + if (meta != null) { + GTaskClient.getInstance().deleteNode(meta); // 删除元数据 + } + mLocalDeleteIdMap.add(c.getLong(SqlNote.ID_COLUMN)); // 记录待删除ID + break; + case Node.SYNC_ACTION_DEL_REMOTE: // 远程删除操作 + // 查找关联的元数据 + meta = mMetaHashMap.get(node.getGid()); + if (meta != null) { + GTaskClient.getInstance().deleteNode(meta); // 删除元数据 + } + 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("unkown sync action type"); // 抛出异常 + } + } + + // 在本地添加节点 + @RequiresApi(api = Build.VERSION_CODES.R) + 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); // 设置父ID为根文件夹 + } + } + else { // 普通任务节点 + sqlNote = new SqlNote(mContext); + JSONObject js = node.getLocalJSONFromContent(); // 获取节点内容 + + 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)) { + note.remove(NoteColumns.ID); // ID已存在则移除 + } + } + } + + // 处理数据项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)) { + data.remove(DataColumns.ID); // ID已存在则移除 + } + } + } + } + } catch (JSONException e) { + Log.w(TAG, e.toString()); // 记录JSON异常 + 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); // 设置父节点ID + } + + // 创建本地节点 + sqlNote.setGtaskId(node.getGid()); // 设置Google任务ID + sqlNote.commit(false); // 提交到数据库 + + // 更新ID映射关系 + mGidToNid.put(node.getGid(), sqlNote.getId()); + mNidToGid.put(sqlNote.getId(), node.getGid()); + + // 更新远程元数据 + updateRemoteMeta(node.getGid(), sqlNote); + } + // 更新本地节点(需要Android R及以上版本) + @RequiresApi(api = Build.VERSION_CODES.R) + private void updateLocalNode(Node node, Cursor c) throws NetworkFailureException { + if (mCancelled) { + return; // 如果同步已取消则直接返回 + } + + SqlNote sqlNote; + // 步骤1:更新本地笔记 + sqlNote = new SqlNote(mContext, c); // 根据游标创建SqlNote对象 + sqlNote.setContent(node.getLocalJSONFromContent()); // 设置节点内容 + + // 步骤2:设置父节点ID(任务节点取父任务列表ID,否则使用根文件夹ID) + Long parentId = (node instanceof Task) ? + mGidToNid.get(((Task) node).getParent().getGid()) : // 获取任务的父列表本地ID + Long.valueOf(Notes.ID_ROOT_FOLDER); // 默认使用根文件夹ID + if (parentId == null) { + Log.e(TAG, "无法在本地找到任务的父ID"); + throw new ActionFailureException("无法更新本地节点"); + } + sqlNote.setParentId(parentId); // 设置父节点ID + sqlNote.commit(true); // 提交修改到数据库 + + // 步骤3:更新元数据信息 + updateRemoteMeta(node.getGid(), sqlNote); + } + + // 添加远程节点(需要Android R及以上版本) + @RequiresApi(api = Build.VERSION_CODES.R) + private void addRemoteNode(Node node, Cursor c) throws NetworkFailureException { + if (mCancelled) { + return; // 如果同步已取消则直接返回 + } + + SqlNote sqlNote = new SqlNote(mContext, c); // 根据游标创建SqlNote对象 + Node n; // 要创建的节点 + + // 步骤1:判断节点类型并处理 + if (sqlNote.isNoteType()) { + // 情况1:普通笔记节点 + Task task = new Task(); // 创建新任务 + task.setContentByLocalJSON(sqlNote.getContent()); // 设置任务内容 + + // 获取父任务列表的Google ID + String parentGid = mNidToGid.get(sqlNote.getParentId()); + if (parentGid == null) { + Log.e(TAG, "无法找到任务的父任务列表"); + throw new ActionFailureException("无法添加远程任务"); + } + // 将任务添加到父列表 + Objects.requireNonNull(mGTaskListHashMap.get(parentGid)).addChildTask(task); + + // 在远程创建任务 + GTaskClient.getInstance().createTask(task); + n = task; // 设置返回节点 + + // 添加元数据 + updateRemoteMeta(task.getGid(), sqlNote); + } else { + // 情况2:文件夹节点 + TaskList tasklist = null; + + // 构建文件夹名称(带MIUI前缀) + 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(); // 普通文件夹使用笔记摘要 + } + + // 检查是否已存在同名文件夹 + for (Map.Entry entry : mGTaskListHashMap.entrySet()) { + String gid = entry.getKey(); + TaskList list = entry.getValue(); + + if (list.getName().equals(folderName)) { + tasklist = list; // 找到已有文件夹 + mGTaskHashMap.remove(gid); // 从缓存移除 + break; + } + } + + // 如果不存在则创建新文件夹 + if (tasklist == null) { + tasklist = new TaskList(); // 创建新任务列表 + tasklist.setContentByLocalJSON(sqlNote.getContent()); // 设置内容 + GTaskClient.getInstance().createTaskList(tasklist); // 远程创建 + mGTaskListHashMap.put(tasklist.getGid(), tasklist); // 加入缓存 + } + n = tasklist; // 设置返回节点 + } + + // 步骤2:更新本地笔记 + sqlNote.setGtaskId(n.getGid()); // 设置Google任务ID + sqlNote.commit(false); // 提交修改到数据库 + sqlNote.resetLocalModified(); // 重置本地修改标记 + sqlNote.commit(true); // 再次提交确保状态更新 + + // 步骤3:更新ID映射关系 + mGidToNid.put(n.getGid(), sqlNote.getId()); // Google ID → 本地ID + mNidToGid.put(sqlNote.getId(), n.getGid()); // 本地ID → Google ID + } + + // 更新远程节点(需要Android R及以上版本) + @RequiresApi(api = Build.VERSION_CODES.R) + private void updateRemoteNode(Node node, Cursor c) throws NetworkFailureException { + if (mCancelled) { + return; // 如果同步已取消则直接返回 + } + + SqlNote sqlNote = new SqlNote(mContext, c); // 根据游标创建SqlNote对象 + + // 步骤1:更新远程节点内容 + node.setContentByLocalJSON(sqlNote.getContent()); // 设置节点内容 + GTaskClient.getInstance().addUpdateNode(node); // 添加更新到队列 + + // 步骤2:更新元数据 + updateRemoteMeta(node.getGid(), sqlNote); + + // 步骤3:处理任务移动(如果是笔记类型) + if (sqlNote.isNoteType()) { + Task task = (Task) node; // 转换为任务对象 + TaskList preParentList = task.getParent(); // 获取原父列表 + + // 获取当前父列表的Google ID + String curParentGid = mNidToGid.get(sqlNote.getParentId()); + if (curParentGid == null) { + Log.e(TAG, "无法找到任务的父任务列表"); + throw new ActionFailureException("无法更新远程任务"); + } + TaskList curParentList = mGTaskListHashMap.get(curParentGid); // 获取当前父列表 + + // 如果父列表发生变化 + if (preParentList != curParentList) { + preParentList.removeChildTask(task); // 从原列表移除 + if (curParentList != null) { + curParentList.addChildTask(task); // 添加到新列表 + } + // 在远程执行移动操作 + GTaskClient.getInstance().moveTask(task, preParentList, curParentList); + } + } + + // 步骤4:清除本地修改标记 + sqlNote.resetLocalModified(); // 重置修改标记 + sqlNote.commit(true); // 提交到数据库 + } + + // 更新远程元数据信息 + private void updateRemoteMeta(String gid, SqlNote sqlNote) throws NetworkFailureException { + // 只处理有效的笔记类型数据(非文件夹) + if (sqlNote != null && sqlNote.isNoteType()) { + // 尝试从缓存获取现有元数据 + MetaData metaData = mMetaHashMap.get(gid); + + if (metaData != null) { + // 情况1:元数据已存在 - 更新操作 + metaData.setMeta(gid, sqlNote.getContent()); // 设置新的元数据内容 + GTaskClient.getInstance().addUpdateNode(metaData); // 添加到更新队列 + } else { + // 情况2:元数据不存在 - 创建操作 + metaData = new MetaData(); // 创建新元数据对象 + metaData.setMeta(gid, sqlNote.getContent()); // 设置元数据内容 + mMetaList.addChildTask(metaData); // 添加到元数据列表 + mMetaHashMap.put(gid, metaData); // 加入缓存 + GTaskClient.getInstance().createTask(metaData); // 在远程创建 + } + } + } + + // 刷新本地同步ID(确保与远程一致) + private void refreshLocalSyncId() throws NetworkFailureException { + if (mCancelled) { + return; // 如果同步已取消则直接返回 + } + + /* 步骤1:重新加载远程任务列表 */ + mGTaskHashMap.clear(); // 清空任务缓存 + mGTaskListHashMap.clear(); // 清空任务列表缓存 + mMetaHashMap.clear(); // 清空元数据缓存 + initGTaskList(); // 重新初始化任务列表 + + /* 步骤2:更新本地同步ID */ + try (Cursor 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); // 获取Google ID + Node node = mGTaskHashMap.get(gid); // 查找对应远程节点 + + if (node != null) { + mGTaskHashMap.remove(gid); // 从缓存移除 + + // 准备更新数据 + ContentValues values = new ContentValues(); + // 使用远程节点的最后修改时间作为同步ID + values.put(NoteColumns.SYNC_ID, node.getLastModified()); + + // 更新数据库 + mContentResolver.update( + ContentUris.withAppendedId(Notes.CONTENT_NOTE_URI, + c.getLong(SqlNote.ID_COLUMN)), // 定位要更新的笔记 + values, // 更新内容 + null, // WHERE条件 + null // WHERE参数 + ); + } else { + // 错误处理:本地存在但远程不存在的笔记 + Log.e(TAG, "本地存在但远程找不到对应的任务"); + throw new ActionFailureException("同步后仍有本地条目缺少Google ID"); + } + } + } else { + Log.w(TAG, "查询本地笔记刷新同步ID失败"); + } + } + // 确保关闭游标 + } + // 获取当前同步账号名称 + public String getSyncAccount() { + // 从GTaskClient获取账号信息并返回名称 + return GTaskClient.getInstance().getSyncAccount().name; + } + // 取消同步操作 + public void cancelSync() { + mCancelled = true; // 设置取消标志 + } +} diff --git a/src/mi_note/app/src/main/java/net/micode/notes/gtask/remote/GTaskSyncService.java b/src/mi_note/app/src/main/java/net/micode/notes/gtask/remote/GTaskSyncService.java new file mode 100644 index 0000000..bdb7a4b --- /dev/null +++ b/src/mi_note/app/src/main/java/net/micode/notes/gtask/remote/GTaskSyncService.java @@ -0,0 +1,167 @@ +/* + * 版权所有 (c) 2010-2011,MiCode 开源社区 (www.micode.net) + * 根据 Apache 许可证 2.0 版本("许可证")授权; + * 除非符合许可证的规定,否则不得使用本文件。 + * 您可以从以下网址获取许可证副本: + * http://www.apache.org/licenses/LICENSE-2.0 + * 除非适用法律要求或书面同意,本软件按"原样"分发, + * 没有任何明示或暗示的保证或条件。 + * 详见许可证中规定的权限和限制。 + * (注:这是一份标准的Apache许可证2.0版本的开源声明) + */ +// 声明Google任务同步服务类,继承自Service +package net.micode.notes.gtask.remote; +// 导入安卓活动(Activity)相关类 +// 提供用户交互界面的基础组件,代表一个应用屏幕 +import android.app.Activity; +// 导入安卓服务(Service)相关类 +// 后台运行组件,无用户界面,用于执行长时间操作 +import android.app.Service; +// 导入上下文(Context)相关类 +// 提供应用环境全局信息,是访问应用资源的入口 +import android.content.Context; +// 导入意图(Intent)相关类 +// 用于组件间通信的消息对象,可包含操作指令和数据 +import android.content.Intent; +// 导入Bundle数据包相关类 +// 键值对集合,用于在不同组件间传递数据 +import android.os.Bundle; +// 导入绑定接口(IBinder)相关类 +// 跨进程通信(IPC)的核心接口,用于Service与Activity绑定 +import android.os.IBinder; + +// Google任务同步后台服务 +public class GTaskSyncService extends Service { + // 同步动作的Intent键名 + 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; + + // 广播名称 + 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"; + + // 同步任务实例 + private static GTaskASyncTask mSyncTask = null; + + // 同步进度文本 + private static String mSyncProgress = ""; + + // 开始同步方法 + private void startSync() { + if (mSyncTask == null) { // 如果没有正在进行的同步任务 + // 创建新的异步任务实例 + mSyncTask = new GTaskASyncTask(this, () -> { + // 同步完成后的回调 + 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(); // 取消当前同步 + } + } + + // 绑定服务时调用(本服务不需要绑定) + @Override + public IBinder onBind(Intent intent) { + return null; // 返回null表示不支持绑定 + } + + // 发送广播方法 + public void sendBroadcast(String msg) { + mSyncProgress = msg; // 更新进度文本 + Intent intent = new Intent(GTASK_SERVICE_BROADCAST_NAME); // 创建广播Intent + // 添加是否正在同步的状态 + 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 intent = new Intent(activity, GTaskSyncService.class); + // 设置动作为开始同步 + intent.putExtra(GTaskSyncService.ACTION_STRING_NAME, + GTaskSyncService.ACTION_START_SYNC); + activity.startService(intent); // 启动服务 + } + + // 静态方法:取消同步 + public static void cancelSync(Context context) { + // 创建取消同步的服务Intent + 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; // 返回进度消息 + } +} diff --git a/src/mi_note/app/src/main/java/net/micode/notes/model/Note.java b/src/mi_note/app/src/main/java/net/micode/notes/model/Note.java new file mode 100644 index 0000000..525d87a --- /dev/null +++ b/src/mi_note/app/src/main/java/net/micode/notes/model/Note.java @@ -0,0 +1,342 @@ +/* + * 版权所有 (c) 2010-2011,MiCode 开源社区 (www.micode.net) + * 根据 Apache 许可证 2.0 版本("许可证")授权; + * 除非符合许可证的规定,否则不得使用本文件。 + * 您可以从以下网址获取许可证副本: + * http://www.apache.org/licenses/LICENSE-2.0 + * 除非适用法律要求或书面同意,本软件按"原样"分发, + * 没有任何明示或暗示的保证或条件。 + * 详见许可证中规定的权限和限制。 + * (注:这是一份标准的Apache许可证2.0版本的开源声明) + */ +// 定义笔记模型的包路径 +package net.micode.notes.model; + +// 导入所需的Android类库 +import android.content.ContentProviderOperation; // 内容提供者批量操作 +import android.content.ContentProviderResult; // 内容提供者操作结果 +import android.content.ContentUris; // URI工具类 +import android.content.ContentValues; // 键值对存储类 +import android.content.Context; // 上下文对象 +import android.content.OperationApplicationException;// 操作应用异常 +import android.net.Uri; // URI处理类 +import android.os.Build; +import android.os.RemoteException; // 远程调用异常 +import android.util.Log; // 日志工具 + +// 导入项目相关的数据类 +import androidx.annotation.RequiresApi; + +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; // 文本笔记类型 + +// 导入Java工具类 +import java.util.ArrayList; // 动态数组 +import java.util.Objects; + +// 笔记模型类 +public class Note { + private final ContentValues mNoteDiffValues; // 存储笔记差异值的ContentValues + private final NoteData mNoteData; // 笔记数据对象 + private static final String TAG = "Note"; // 日志标签 + + /** + * 创建新笔记ID + * @param context 上下文对象 + * @param folderId 文件夹ID + * @return 新创建的笔记ID + */ + public static synchronized long getNewNoteId(Context context, long folderId) { + // 创建ContentValues存储新笔记初始值 + ContentValues values = new ContentValues(); + 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); // 设置所属文件夹ID + + // 通过内容解析器插入新笔记 + Uri uri = context.getContentResolver().insert(Notes.CONTENT_NOTE_URI, values); + + long noteId = 0; + try { + // 从返回的URI中解析出笔记ID + noteId = Long.parseLong(Objects.requireNonNull(uri).getPathSegments().get(1)); + } catch (NumberFormatException e) { + // 处理数字格式异常 + Log.e(TAG, "Get note id error :" + e); + } + + // 检查笔记ID是否合法 + if (noteId == -1) { + throw new IllegalStateException("Wrong note id:" + noteId); + } + return noteId; + } + + // 构造函数 + public Note() { + mNoteDiffValues = new ContentValues(); // 初始化笔记差异值存储 + mNoteData = new NoteData(); // 初始化笔记数据对象 + } + + /** + * 设置笔记值 + * @param key 列名 + * @param value 值 + */ + public void setNoteValue(String key, String value) { + mNoteDiffValues.put(key, value); // 存储差异值 + mNoteDiffValues.put(NoteColumns.LOCAL_MODIFIED, 1); // 标记为本地已修改 + mNoteDiffValues.put(NoteColumns.MODIFIED_DATE, System.currentTimeMillis()); // 更新修改时间 + } + + /** + * 设置文本数据 + * @param key 列名 + * @param value 值 + */ + public void setTextData(String key, String value) { + mNoteData.setTextData(key, value); // 委托给NoteData对象处理 + } + + /** + * 设置文本数据ID + * @param id 文本数据ID + */ + public void setTextDataId(long id) { + mNoteData.setTextDataId(id); // 委托给NoteData对象处理 + } + + /** + * 获取文本数据ID + * @return 文本数据ID + */ + public long getTextDataId() { + return mNoteData.mTextDataId; // 从NoteData对象获取 + } + + /** + * 设置通话数据ID + * @param id 通话数据ID + */ + public void setCallDataId(long id) { + mNoteData.setCallDataId(id); // 委托给NoteData对象处理 + } + + /** + * 设置通话数据 + * @param key 列名 + * @param value 值 + */ + public void setCallData(String key, String value) { + mNoteData.setCallData(key, value); // 委托给NoteData对象处理 + } + + /** + * 检查是否有本地修改 + * @return 是否有未同步的修改 + */ + @RequiresApi(api = Build.VERSION_CODES.R) + public boolean isLocalModified() { + return !mNoteDiffValues.isEmpty() || mNoteData.isLocalModified(); + } + + /** + * 同步笔记到数据库 + * @param context 上下文对象 + * @param noteId 笔记ID + * @return 是否同步成功 + */ + @RequiresApi(api = Build.VERSION_CODES.R) + public boolean syncNote(Context context, long noteId) { + if (noteId <= 0) { + throw new IllegalArgumentException("Wrong note id:" + noteId); + } + + // 如果没有修改则直接返回成功 + if (!isLocalModified()) { + return true; + } + /* + * 理论上,数据变更后笔记的LOCAL_MODIFIED和MODIFIED_DATE字段应该更新。 + * 为了数据安全,即使笔记更新失败,我们也会继续更新笔记数据信息 + */ + if (context.getContentResolver().update( + ContentUris.withAppendedId(Notes.CONTENT_NOTE_URI, noteId), + mNoteDiffValues, + null, + null) == 0) { + Log.e(TAG, "Update note error, should not happen"); + // 不返回,继续执行后续操作 + } + mNoteDiffValues.clear(); // 清空已应用的差异值 + + // 如果有笔记数据修改且推送失败,返回失败 + return !mNoteData.isLocalModified() + || (mNoteData.pushIntoContentResolver(context, noteId) != null); + } + + // 内部类:笔记数据 + private class NoteData { + private long mTextDataId; // 文本数据ID + private final ContentValues mTextDataValues; // 文本数据差异值 + private long mCallDataId; // 通话数据ID + private final ContentValues mCallDataValues; // 通话数据差异值 + private static final String TAG = "NoteData"; // 日志标签 + + // 构造函数 + public NoteData() { + mTextDataValues = new ContentValues(); // 初始化文本数据存储 + mCallDataValues = new ContentValues(); // 初始化通话数据存储 + mTextDataId = 0; // 初始化文本数据ID + mCallDataId = 0; // 初始化通话数据ID + } + + /** + * 检查是否有本地修改 + * @return 是否有未同步的修改 + */ + @RequiresApi(api = Build.VERSION_CODES.R) + boolean isLocalModified() { + return !mTextDataValues.isEmpty() || !mCallDataValues.isEmpty(); + } + + /** + * 设置文本数据ID + * @param id 文本数据ID + */ + void setTextDataId(long id) { + if(id <= 0) { + throw new IllegalArgumentException("Text data id should larger than 0"); + } + mTextDataId = id; + } + + /** + * 设置通话数据ID + * @param id 通话数据ID + */ + void setCallDataId(long id) { + if (id <= 0) { + throw new IllegalArgumentException("Call data id should larger than 0"); + } + mCallDataId = id; + } + + /** + * 设置通话数据 + * @param key 列名 + * @param value 值 + */ + void setCallData(String key, String value) { + mCallDataValues.put(key, value); // 存储通话数据差异值 + mNoteDiffValues.put(NoteColumns.LOCAL_MODIFIED, 1); // 标记为本地已修改 + mNoteDiffValues.put(NoteColumns.MODIFIED_DATE, System.currentTimeMillis()); // 更新修改时间 + } + + /** + * 设置文本数据 + * @param key 列名 + * @param value 值 + */ + void setTextData(String key, String value) { + mTextDataValues.put(key, value); // 存储文本数据差异值 + mNoteDiffValues.put(NoteColumns.LOCAL_MODIFIED, 1); // 标记为本地已修改 + mNoteDiffValues.put(NoteColumns.MODIFIED_DATE, System.currentTimeMillis()); // 更新修改时间 + } + + /** + * 将数据推送到内容提供者 + * @param context 上下文对象 + * @param noteId 笔记ID + * @return 操作结果的URI + */ + @RequiresApi(api = Build.VERSION_CODES.R) + Uri pushIntoContentResolver(Context context, long noteId) { + // 安全检查 + if (noteId <= 0) { + throw new IllegalArgumentException("Wrong note id:" + noteId); + } + + // 创建批量操作列表 + ArrayList operationList = new ArrayList<>(); + ContentProviderOperation.Builder builder; + + // 处理文本数据 + if(!mTextDataValues.isEmpty()) { + mTextDataValues.put(DataColumns.NOTE_ID, noteId); // 设置所属笔记ID + + // 如果是新数据则插入 + if (mTextDataId == 0) { + mTextDataValues.put(DataColumns.MIME_TYPE, TextNote.CONTENT_ITEM_TYPE); + Uri uri = context.getContentResolver().insert(Notes.CONTENT_DATA_URI, + mTextDataValues); + try { + // 从返回的URI中获取新数据ID + if (uri != null) { + setTextDataId(Long.parseLong(uri.getPathSegments().get(1))); + } + } catch (NumberFormatException e) { + Log.e(TAG, "Insert new text data fail with noteId" + noteId); + mTextDataValues.clear(); + return null; + } + } else { + // 已有数据则更新 + builder = ContentProviderOperation.newUpdate(ContentUris.withAppendedId( + Notes.CONTENT_DATA_URI, mTextDataId)); + builder.withValues(mTextDataValues); + operationList.add(builder.build()); + } + mTextDataValues.clear(); // 清空已应用的差异值 + } + + // 处理通话数据 + if(!mCallDataValues.isEmpty()) { + mCallDataValues.put(DataColumns.NOTE_ID, noteId); // 设置所属笔记ID + + // 如果是新数据则插入 + if (mCallDataId == 0) { + mCallDataValues.put(DataColumns.MIME_TYPE, CallNote.CONTENT_ITEM_TYPE); + Uri uri = context.getContentResolver().insert(Notes.CONTENT_DATA_URI, + mCallDataValues); + try { + // 从返回的URI中获取新数据ID + setCallDataId(Long.parseLong(Objects.requireNonNull(uri).getPathSegments().get(1))); + } catch (NumberFormatException e) { + Log.e(TAG, "Insert new call data fail with noteId" + noteId); + mCallDataValues.clear(); + return null; + } + } else { + // 已有数据则更新 + builder = ContentProviderOperation.newUpdate(ContentUris.withAppendedId( + Notes.CONTENT_DATA_URI, mCallDataId)); + builder.withValues(mCallDataValues); + operationList.add(builder.build()); + } + mCallDataValues.clear(); // 清空已应用的差异值 + } + + // 执行批量操作 + if (!operationList.isEmpty()) { + try { + ContentProviderResult[] results = context.getContentResolver().applyBatch( + Notes.AUTHORITY, operationList); + // 返回操作结果 + return results.length == 0 || results[0] == null ? null + : ContentUris.withAppendedId(Notes.CONTENT_NOTE_URI, noteId); + } catch (RemoteException | OperationApplicationException e) { + Log.e(TAG, String.format("%s: %s", e, e.getMessage())); + return null; + } + } + return null; + } + } +} \ No newline at end of file diff --git a/src/mi_note/app/src/main/java/net/micode/notes/model/WorkingNote.java b/src/mi_note/app/src/main/java/net/micode/notes/model/WorkingNote.java new file mode 100644 index 0000000..790ae4b --- /dev/null +++ b/src/mi_note/app/src/main/java/net/micode/notes/model/WorkingNote.java @@ -0,0 +1,441 @@ +/* + * 版权所有 (c) 2010-2011,MiCode 开源社区 (www.micode.net) + * 根据 Apache 许可证 2.0 版本("许可证")授权; + * 除非符合许可证的规定,否则不得使用本文件。 + * 您可以从以下网址获取许可证副本: + * http://www.apache.org/licenses/LICENSE-2.0 + * 除非适用法律要求或书面同意,本软件按"原样"分发, + * 没有任何明示或暗示的保证或条件。 + * 详见许可证中规定的权限和限制。 + * (注:这是一份标准的Apache许可证2.0版本的开源声明) + */ +// 定义工作笔记模型的包路径 +package net.micode.notes.model; + +// 导入所需的Android类库 +import android.appwidget.AppWidgetManager; // 应用小部件管理 +import android.content.ContentUris; // URI工具类 +import android.content.Context; // 上下文对象 +import android.database.Cursor; // 数据库查询结果 +import android.os.Build; +import android.text.TextUtils; // 文本处理工具 +import android.util.Log; // 日志工具 + +// 导入项目相关的数据类 +import androidx.annotation.RequiresApi; + +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; // 笔记背景资源 + +// 工作笔记类,封装当前编辑笔记的所有操作 +public class WorkingNote { + // 成员变量定义 + private final Note mNote; // 基础笔记对象 + private long mNoteId; // 笔记ID + public String mContent; // 笔记内容 + private int mMode; /mMode/ 笔记模式(普通/清单模式) + private long mAlertDate; // 提醒时间 + private long mModifiedDate; // 最后修改时间 + private int mBgColorId; // 背景颜色ID + private int mWidgetId; // 关联小部件ID + private int mWidgetType; // 小部件类型 + private long mFolderId; // 所在文件夹ID + private final Context mContext; // 上下文对象 + private static final String TAG = "WorkingNote"; // 日志标签 + private boolean mIsDeleted; // 是否已删除标记 + private NoteSettingChangedListener mNoteSettingStatusListener; // 笔记设置变更监听器 + + // 数据表查询列定义 + public static final String[] DATA_PROJECTION = new String[] { + DataColumns.ID, // 数据ID + DataColumns.CONTENT, // 内容 + DataColumns.MIME_TYPE, // MIME类型 + DataColumns.DATA1, // 扩展数据1 + DataColumns.DATA2, // 扩展数据2 + DataColumns.DATA3, // 扩展数据3 + DataColumns.DATA4, // 扩展数据4 + }; + + // 笔记表查询列定义 + public static final String[] NOTE_PROJECTION = new String[] { + NoteColumns.PARENT_ID, // 父文件夹ID + NoteColumns.ALERTED_DATE, // 提醒日期 + NoteColumns.BG_COLOR_ID, // 背景颜色ID + NoteColumns.WIDGET_ID, // 小部件ID + NoteColumns.WIDGET_TYPE, // 小部件类型 + NoteColumns.MODIFIED_DATE // 修改日期 + }; + + // 数据表列索引常量 + private static final int DATA_ID_COLUMN = 0; // ID列索引 + private static final int DATA_CONTENT_COLUMN = 1; // 内容列索引 + private static final int DATA_MIME_TYPE_COLUMN = 2; // MIME类型列索引 + private static final int DATA_MODE_COLUMN = 3; // 模式列索引 + + // 笔记表列索引常量 + private static final int NOTE_PARENT_ID_COLUMN = 0; // 父文件夹ID列索引 + private static final int NOTE_ALERTED_DATE_COLUMN = 1; // 提醒日期列索引 + private static final int NOTE_BG_COLOR_ID_COLUMN = 2; // 背景颜色ID列索引 + private static final int NOTE_WIDGET_ID_COLUMN = 3; // 小部件ID列索引 + private static final int NOTE_WIDGET_TYPE_COLUMN = 4; // 小部件类型列索引 + private static final int NOTE_MODIFIED_DATE_COLUMN = 5; // 修改日期列索引 + + /** + * 创建新工作笔记的构造函数(私有) + * @param context 上下文对象 + * @param folderId 所属文件夹ID + */ + private WorkingNote(Context context, long folderId) { + mContext = context; + mAlertDate = 0; // 初始无提醒 + mModifiedDate = System.currentTimeMillis(); // 设置当前时间为修改时间 + mFolderId = folderId; // 设置所属文件夹 + mNote = new Note(); // 创建基础笔记对象 + mNoteId = 0; // 新笔记ID为0 + mIsDeleted = false; // 未删除状态 + mMode = 0; // 默认普通模式 + mWidgetType = Notes.TYPE_WIDGET_INVALIDE; // 无效小部件类型 + } + + /** + * 加载现有工作笔记的构造函数(私有) + * @param context 上下文对象 + * @param noteId 笔记ID + * @param folderId 所属文件夹ID + */ + private WorkingNote(Context context, long noteId, long folderId) { + mContext = context; + mNoteId = noteId; // 设置笔记ID + mFolderId = folderId; // 设置所属文件夹 + mIsDeleted = false; // 未删除状态 + mNote = new Note(); // 创建基础笔记对象 + loadNote(); // 加载笔记数据 + } + + /** + * 从数据库加载笔记基本信息 + */ + 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(); // 加载笔记内容数据 + } + + /** + * 从数据库加载笔记内容数据 + */ + private void loadNoteData() { + // 查询数据表内容 + Cursor cursor = mContext.getContentResolver().query(Notes.CONTENT_DATA_URI, DATA_PROJECTION, + DataColumns.NOTE_ID + "=?", new String[] { String.valueOf(mNoteId) }, null); + + 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); + } + } + + /** + * 创建新的空白笔记 + * @param context 上下文对象 + * @param folderId 所属文件夹ID + * @param widgetId 小部件ID + * @param widgetType 小部件类型 + * @param defaultBgColorId 默认背景颜色ID + * @return 新创建的工作笔记对象 + */ + public static WorkingNote createEmptyNote(Context context, long folderId, int widgetId, + int widgetType, int defaultBgColorId) { + WorkingNote note = new WorkingNote(context, folderId); + note.setBgColorId(defaultBgColorId); // 设置默认背景 + note.setWidgetId(widgetId); // 设置小部件ID + note.setWidgetType(widgetType); // 设置小部件类型 + return note; + } + + /** + * 加载指定ID的笔记 + * @param context 上下文对象 + * @param id 笔记ID + * @return 加载的工作笔记对象 + */ + public static WorkingNote load(Context context, long id) { + return new WorkingNote(context, id, 0); + } + + /** + * 保存笔记到数据库 + * @return 是否保存成功 + */ + @RequiresApi(api = Build.VERSION_CODES.R) + public synchronized boolean saveNote() { + if (isWorthSaving()) { // 检查是否需要保存 + if (!existInDatabase()) { // 新笔记需要先创建 + if ((mNoteId = Note.getNewNoteId(mContext, mFolderId)) == 0) { + Log.e(TAG, "Create new note fail with id:" + mNoteId); + return false; + } + } + + // 同步笔记数据到数据库 + mNote.syncNote(mContext, mNoteId); + + // 如果有关联小部件,通知更新 + if (mWidgetId != AppWidgetManager.INVALID_APPWIDGET_ID + && mWidgetType != Notes.TYPE_WIDGET_INVALIDE + && mNoteSettingStatusListener != null) { + mNoteSettingStatusListener.onWidgetChanged(); + } + return true; + } else { + return false; + } + } + + /** + * 检查笔记是否已存在于数据库中 + * @return 是否存在 + */ + public boolean existInDatabase() { + return mNoteId > 0; + } + + /** + * 检查笔记是否值得保存 + * @return 是否需要保存 + */ + @RequiresApi(api = Build.VERSION_CODES.R) + private boolean isWorthSaving() { + // 已有笔记但未修改 + return !mIsDeleted && // 已删除 + (existInDatabase() || !TextUtils.isEmpty(mContent)) && // 新笔记且内容为空 + (!existInDatabase() || mNote.isLocalModified()); + } + + /** + * 设置笔记设置变更监听器 + * @param l 监听器对象 + */ + public void setOnSettingStatusChangedListener(NoteSettingChangedListener l) { + mNoteSettingStatusListener = l; + } + + /** + * 设置提醒时间 + * @param date 提醒时间戳 + * @param set 是否设置提醒 + */ + 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); + } + } + + /** + * 标记笔记删除状态 + * @param mark 是否删除 + */ + public void markDeleted(boolean mark) { + mIsDeleted = mark; + if (mWidgetId != AppWidgetManager.INVALID_APPWIDGET_ID + && mWidgetType != Notes.TYPE_WIDGET_INVALIDE && mNoteSettingStatusListener != null) { + mNoteSettingStatusListener.onWidgetChanged(); + } + } + + /** + * 设置背景颜色ID + * @param id 颜色ID + */ + public void setBgColorId(int id) { + if (id != mBgColorId) { + mBgColorId = id; + if (mNoteSettingStatusListener != null) { + mNoteSettingStatusListener.onBackgroundColorChanged(); + } + mNote.setNoteValue(NoteColumns.BG_COLOR_ID, String.valueOf(id)); + } + } + + /** + * 设置清单模式 + * @param mode 模式值 + */ + public void setCheckListMode(int mode) { + if (mMode != mode) { + if (mNoteSettingStatusListener != null) { + mNoteSettingStatusListener.onCheckListModeChanged(mMode, mode); + } + mMode = mode; + mNote.setTextData(TextNote.MODE, String.valueOf(mMode)); + } + } + + /** + * 设置小部件类型 + * @param type 类型值 + */ + public void setWidgetType(int type) { + if (type != mWidgetType) { + mWidgetType = type; + mNote.setNoteValue(NoteColumns.WIDGET_TYPE, String.valueOf(mWidgetType)); + } + } + + /** + * 设置小部件ID + * @param id 小部件ID + */ + public void setWidgetId(int id) { + if (id != mWidgetId) { + mWidgetId = id; + mNote.setNoteValue(NoteColumns.WIDGET_ID, String.valueOf(mWidgetId)); + } + } + + /** + * 设置工作文本内容 + * @param text 文本内容 + */ + public void setWorkingText(String text) { + if (!TextUtils.equals(mContent, text)) { + mContent = text; + mNote.setTextData(DataColumns.CONTENT, mContent); + } + } + + /** + * 将笔记转换为通话笔记 + * @param phoneNumber 电话号码 + * @param 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); + } + + public String getContent() { + return mContent; + } + + public long getAlertDate() { + return mAlertDate; + } + + public long getModifiedDate() { + return mModifiedDate; + } + + public int getBgColorResId() { + return NoteBgResources.getNoteBgResource(mBgColorId); + } + + public int getBgColorId() { + return mBgColorId; + } + + public int getTitleBgResId() { + return NoteBgResources.getNoteTitleBgResource(mBgColorId); + } + + public int getCheckListMode() { + return mMode; + } + + public long getNoteId() { + return mNoteId; + } + + public long getFolderId() { + return mFolderId; + } + + public int getWidgetId() { + return mWidgetId; + } + + public int getWidgetType() { + return mWidgetType; + } + + /** + * 笔记设置变更监听器接口 + */ + public interface NoteSettingChangedListener { + /** + * 当笔记背景颜色变更时调用 + */ + void onBackgroundColorChanged(); + + /** + * 当用户设置提醒时调用 + * @param date 提醒时间 + * @param set 是否设置 + */ + void onClockAlertChanged(long date, boolean set); + + /** + * 当用户从小部件创建笔记时调用 + */ + void onWidgetChanged(); + + /** + * 当在清单模式和普通模式间切换时调用 + * @param oldMode 原模式 + * @param newMode 新模式 + */ + void onCheckListModeChanged(int oldMode, int newMode); + } +} diff --git a/src/mi_note/app/src/main/java/net/micode/notes/tool/BackupUtils.java b/src/mi_note/app/src/main/java/net/micode/notes/tool/BackupUtils.java new file mode 100644 index 0000000..dc0f1ea --- /dev/null +++ b/src/mi_note/app/src/main/java/net/micode/notes/tool/BackupUtils.java @@ -0,0 +1,398 @@ +/* + * 版权所有 (c) 2010-2011,MiCode 开源社区 (www.micode.net) + * 根据 Apache 许可证 2.0 版本("许可证")授权; + * 除非符合许可证的规定,否则不得使用本文件。 + * 您可以从以下网址获取许可证副本: + * http://www.apache.org/licenses/LICENSE-2.0 + * 除非适用法律要求或书面同意,本软件按"原样"分发, + * 没有任何明示或暗示的保证或条件。 + * 详见许可证中规定的权限和限制。 + * (注:这是一份标准的Apache许可证2.0版本的开源声明) + */ +// 定义备份工具类的包路径 +package net.micode.notes.tool; + +// 导入所需的Android类库 +import android.content.Context; // 上下文对象 +import android.database.Cursor; // 数据库查询结果 +import android.os.Environment; // 环境信息类 +import android.text.TextUtils; // 文本处理工具 +import android.text.format.DateFormat; // 日期格式化工具 +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.DataConstants; // 数据常量 +import net.micode.notes.data.Notes.NoteColumns; // 笔记列定义 + +// 导入Java IO类 +import java.io.File; // 文件操作类 +import java.io.FileNotFoundException; // 文件未找到异常 +import java.io.FileOutputStream; // 文件输出流 +import java.io.IOException; // IO异常 +import java.io.PrintStream; // 打印流 + +/** + * 备份工具类,提供笔记导出为文本文件的功能 + */ +public class BackupUtils { + public static final int STATE_SD_CARD_UNMOUNTED =1; + private static final String TAG = "BackupUtils"; // 日志标签 + + // 单例实现部分 + private static BackupUtils sInstance; // 单例实例 + + /** + * 获取备份工具单例 + * @param context 上下文对象 + * @return 备份工具实例 + */ + public static synchronized BackupUtils getInstance(Context context) { + if (sInstance == null) { + sInstance = new BackupUtils(context); + } + return sInstance; + } + + /** + * 备份/恢复操作状态常量 + */ + // SD卡未挂载状态 + public static final int STATE_SD_CARD_UNMOUONTED = 0; + // 备份文件不存在状态 + public static final int STATE_BACKUP_FILE_NOT_EXIST = 1; + // 数据格式损坏状态 + public static final int STATE_DATA_DESTROIED = 2; + // 系统错误状态 + public static final int STATE_SYSTEM_ERROR = 3; + // 操作成功状态 + public static final int STATE_SUCCESS = 4; + + private final TextExport mTextExport; // 文本导出器 + + /** + * 私有构造函数 + * @param context 上下文对象 + */ + private BackupUtils(Context context) { + mTextExport = new TextExport(context); // 初始化文本导出器 + } + + /** + * 检查外部存储是否可用 + * @return 是否可用 + */ + private static boolean externalStorageAvailable() { + return Environment.MEDIA_MOUNTED.equals(Environment.getExternalStorageState()); + } + + /** + * 导出笔记为文本文件 + * @return 操作状态码 + */ + public int exportToText() { + return mTextExport.exportToText(); + } + + /** + * 获取导出的文本文件名 + * @return 文件名 + */ + public String getExportedTextFileName() { + return mTextExport.mFileName; + } + + /** + * 获取导出的文本文件目录 + * @return 目录路径 + */ + public String getExportedTextFileDir() { + return mTextExport.mFileDirectory; + } + + /** + * 内部类:文本导出器 + */ + private static class TextExport { + // 笔记表查询列定义 + private static final String[] NOTE_PROJECTION = { + NoteColumns.ID, // 笔记ID + NoteColumns.MODIFIED_DATE, // 修改日期 + NoteColumns.SNIPPET, // 笔记摘要 + NoteColumns.TYPE // 笔记类型 + }; + + // 笔记表列索引常量 + private static final int NOTE_COLUMN_ID = 0; // ID列索引 + 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, // MIME类型 + DataColumns.DATA1, // 扩展数据1 + DataColumns.DATA2, // 扩展数据2 + DataColumns.DATA3, // 扩展数据3 + DataColumns.DATA4, // 扩展数据4 + }; + + // 数据表列索引常量 + private static final int DATA_COLUMN_CONTENT = 0; // 内容列索引 + private static final int DATA_COLUMN_MIME_TYPE = 1; // MIME类型列索引 + 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 final Context mContext; // 上下文对象 + private String mFileName; // 导出文件名 + private String mFileDirectory; // 导出文件目录 + + /** + * 构造函数 + * @param context 上下文对象 + */ + public TextExport(Context context) { + // 从资源文件中获取文本格式 + TEXT_FORMAT = context.getResources().getStringArray(R.array.format_for_exported_note); + mContext = context; + mFileName = ""; // 初始化文件名 + mFileDirectory = ""; // 初始化文件目录 + } + + /** + * 获取指定格式的文本 + * @param id 格式ID + * @return 格式字符串 + */ + private String getFormat(int id) { + return TEXT_FORMAT[id]; + } + + /** + * 导出文件夹内容到文本 + * @param folderId 文件夹ID + * @param ps 打印流 + */ + private void exportFolderToText(String folderId, PrintStream ps) { + // 查询属于该文件夹的所有笔记 + 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 { + // 打印笔记的修改日期 + ps.printf((getFormat(FORMAT_NOTE_DATE)) + "%n", DateFormat.format( + mContext.getString(R.string.format_datetime_mdhm), + notesCursor.getLong(NOTE_COLUMN_MODIFIED_DATE))); + // 导出该笔记的内容 + String noteId = notesCursor.getString(NOTE_COLUMN_ID); + exportNoteToText(noteId, ps); + } while (notesCursor.moveToNext()); + } + notesCursor.close(); // 关闭游标 + } + } + + /** + * 导出笔记内容到文本 + * @param noteId 笔记ID + * @param ps 打印流 + */ + private void exportNoteToText(String noteId, PrintStream ps) { + // 查询该笔记的所有数据 + 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)) { // 通话笔记 + // 打印电话号码 + 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.printf((getFormat(FORMAT_NOTE_CONTENT)) + "%n", + phoneNumber); + } + // 打印通话日期 + ps.printf((getFormat(FORMAT_NOTE_CONTENT)) + "%n", DateFormat + .format(mContext.getString(R.string.format_datetime_mdhm), + callDate)); + // 打印通话位置 + if (!TextUtils.isEmpty(location)) { + ps.printf((getFormat(FORMAT_NOTE_CONTENT)) + "%n", + location); + } + } else if (DataConstants.NOTE.equals(mimeType)) { // 普通笔记 + String content = dataCursor.getString(DATA_COLUMN_CONTENT); + if (!TextUtils.isEmpty(content)) { + ps.printf((getFormat(FORMAT_NOTE_CONTENT)) + "%n", + content); + } + } + } while (dataCursor.moveToNext()); + } + dataCursor.close(); // 关闭游标 + } + // 在笔记之间打印分隔线 + try { + ps.write(new byte[] { + Character.LINE_SEPARATOR, Character.LETTER_NUMBER + }); + } catch (IOException e) { + Log.e(TAG, e.toString()); + } + } + + /** + * 将笔记导出为文本文件 + * @return 操作状态码 + */ + public int exportToText() { + // 检查SD卡是否挂载 + 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; + } + + // 首先导出文件夹及其笔记 + 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 { + // 打印文件夹名称 + 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.printf((getFormat(FORMAT_FOLDER_NAME)) + "%n", folderName); + } + String folderId = folderCursor.getString(NOTE_COLUMN_ID); + exportFolderToText(folderId, ps); // 导出文件夹内容 + } while (folderCursor.moveToNext()); + } + folderCursor.close(); // 关闭游标 + } + + // 导出根目录下的笔记 + 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.printf((getFormat(FORMAT_NOTE_DATE)) + "%n", DateFormat.format( + mContext.getString(R.string.format_datetime_mdhm), + noteCursor.getLong(NOTE_COLUMN_MODIFIED_DATE))); + // 导出该笔记的内容 + String noteId = noteCursor.getString(NOTE_COLUMN_ID); + exportNoteToText(noteId, ps); + } while (noteCursor.moveToNext()); + } + noteCursor.close(); // 关闭游标 + } + ps.close(); // 关闭打印流 + + return STATE_SUCCESS; // 返回成功状态 + } + + /** + * 获取导出文本的打印流 + * @return 打印流对象 + */ + 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; + try { + FileOutputStream fos = new FileOutputStream(file); + ps = new PrintStream(fos); + } catch (FileNotFoundException | NullPointerException e) { + e.printStackTrace(); + return null; + } + return ps; + } + } + + /** + * 在SD卡上生成导出文件 + * @param context 上下文对象 + * @param filePathResId 文件路径资源ID + * @param fileNameFormatResId 文件名格式资源ID + * @return 生成的文件对象 + */ + private static File generateFileMountedOnSDcard(Context context, int filePathResId, int fileNameFormatResId) { + StringBuilder sb = new StringBuilder(); + // 构建文件路径 + sb.append(Environment.getExternalStorageDirectory()); // SD卡根目录 + sb.append(context.getString(filePathResId)); // 附加路径 + File filedir = new File(sb.toString()); // 创建目录对象 + // 构建文件名 + sb.append(context.getString( + fileNameFormatResId, + DateFormat.format(context.getString(R.string.format_date_ymd), + System.currentTimeMillis()))); // 按日期格式命名 + File file = new File(sb.toString()); // 创建文件对象 + + try { + // 创建目录(如果不存在) + if (!filedir.exists()) { + filedir.mkdir(); + } + // 创建文件(如果不存在) + if (!file.exists()) { + file.createNewFile(); + } + return file; + } catch (SecurityException | IOException e) { + e.printStackTrace(); + } + + return null; // 创建失败返回null + } +} + + diff --git a/src/mi_note/app/src/main/java/net/micode/notes/tool/DataUtils.java b/src/mi_note/app/src/main/java/net/micode/notes/tool/DataUtils.java new file mode 100644 index 0000000..ee36846 --- /dev/null +++ b/src/mi_note/app/src/main/java/net/micode/notes/tool/DataUtils.java @@ -0,0 +1,403 @@ +/* + * 版权所有 (c) 2010-2011,MiCode 开源社区 (www.mi code.net) + * 根据 Apache 许可证 2.0 版本("许可证")授权; + * 除非符合许可证的规定,否则不得使用本文件。 + * 您可以从以下网址获取许可证副本: + * http://www.apache.org/licenses/LICENSE-2.0 + * 除非适用法律要求或书面同意,本软件按"原样"分发, + * 没有任何明示或暗示的保证或条件。 + * 详见许可证中规定的权限和限制。 + * (注:这是一份标准的Apache许可证2.0版本的开源声明) + */ +// 定义数据工具类的包路径 +package net.micode.notes.tool; + +// 导入Android内容提供者相关类 +import android.content.ContentProviderOperation; // 内容提供者操作 +import android.content.ContentProviderResult; // 内容提供者操作结果 +import android.content.ContentResolver; // 内容解析器 +import android.content.ContentUris; // URI工具 +import android.content.ContentValues; // 内容值对象 +import android.content.OperationApplicationException; // 操作应用异常 +// 导入数据库相关类 +import android.database.Cursor; // 数据库游标 +// 导入远程异常类 +import android.os.RemoteException; // 远程调用异常 +// 导入日志工具 +import android.util.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; // 哈希集合 +import android.os.Environment; +/** + * 数据工具类,提供批量操作数据库的方法 + */ +public class DataUtils { + // 日志标签 + public static final String TAG = "DataUtils"; + + /** + * 批量删除笔记 + * @param resolver 内容解析器 + * @param ids 要删除的笔记ID集合 + * @return 是否删除成功 + */ + public static boolean batchDeleteNotes(ContentResolver resolver, HashSet ids) { + // 参数校验 + if (ids == null) { + Log.d(TAG, "the ids is null"); + return true; // 没有要删除的笔记视为成功 + } + if (ids.isEmpty()) { + Log.d(TAG, "no id is in the hashset"); + return true; // 空集合视为成功 + } + + // 创建批量操作列表 + ArrayList operationList = new ArrayList<>(); + // 遍历要删除的笔记ID + 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)); + operationList.add(builder.build()); // 添加到操作列表 + } + try { + // 执行批量操作 + ContentProviderResult[] results = resolver.applyBatch(Notes.AUTHORITY, operationList); + // 检查操作结果 + if (results.length == 0 || results[0] == null) { + Log.d(TAG, "delete notes failed, ids:" + ids); + return false; + } + return true; + } catch (RemoteException | OperationApplicationException e) { + Log.e(TAG, String.format("%s: %s", e, e.getMessage())); + } + return false; + } + + /** + * 移动笔记到指定文件夹 + * @param resolver 内容解析器 + * @param id 笔记ID + * @param srcFolderId 源文件夹ID + * @param desFolderId 目标文件夹ID + */ + public static void moveNoteToFoler(ContentResolver resolver, long id, long srcFolderId, long desFolderId) { + // 创建要更新的内容值 + ContentValues values = new ContentValues(); + values.put(NoteColumns.PARENT_ID, desFolderId); // 设置新父文件夹ID + values.put(NoteColumns.ORIGIN_PARENT_ID, srcFolderId); // 记录原父文件夹ID + values.put(NoteColumns.LOCAL_MODIFIED, 1); // 标记为已修改 + // 执行更新 + resolver.update(ContentUris.withAppendedId(Notes.CONTENT_NOTE_URI, id), values, null, null); + } + + /** + * 批量移动笔记到指定文件夹 + * @param resolver 内容解析器 + * @param ids 要移动的笔记ID集合 + * @param folderId 目标文件夹ID + * @return 是否移动成功 + */ + 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<>(); + // 遍历要移动的笔记ID + for (long id : ids) { + // 创建更新操作 + ContentProviderOperation.Builder builder = ContentProviderOperation + .newUpdate(ContentUris.withAppendedId(Notes.CONTENT_NOTE_URI, id)); + builder.withValue(NoteColumns.PARENT_ID, folderId); // 设置新父文件夹ID + builder.withValue(NoteColumns.LOCAL_MODIFIED, 1); // 标记为已修改 + operationList.add(builder.build()); // 添加到操作列表 + } + + try { + // 执行批量操作 + ContentProviderResult[] results = resolver.applyBatch(Notes.AUTHORITY, operationList); + // 检查操作结果 + if (results.length == 0 || results[0] == null) { + Log.d(TAG, "delete notes failed, ids:" + ids); + return false; + } + return true; + } catch (RemoteException | OperationApplicationException e) { + Log.e(TAG, String.format("%s: %s", e, e.getMessage())); + } + return false; + } + + /** + * 获取用户文件夹数量(排除系统文件夹) + * @param resolver 内容解析器 + * @return 用户文件夹数量 + */ + 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); // 无排序 + + 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); + } finally { + cursor.close(); // 确保关闭游标 + } + } + } + return count; + } + + /** + * 检查指定类型笔记是否在数据库中可见(不在回收站) + * @param resolver 内容解析器 + * @param noteId 笔记ID + * @param type 笔记类型 + * @return 是否可见 + */ + 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); // 无排序 + + boolean exist = false; + if (cursor != null) { + if (cursor.getCount() > 0) { // 如果有记录 + exist = true; + } + cursor.close(); // 关闭游标 + } + return exist; + } + + /** + * 检查笔记是否存在于笔记数据库中 + * @param resolver 内容解析器 + * @param noteId 笔记ID + * @return 是否存在 + */ + public static boolean existInNoteDatabase(ContentResolver resolver, long noteId) { + // 查询指定ID的笔记 + 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; + } + + /** + * 检查数据项是否存在于数据数据库中 + * @param resolver 内容解析器 + * @param dataId 数据ID + * @return 是否存在 + */ + public static boolean existInDataDatabase(ContentResolver resolver, long dataId) { + // 查询指定ID的数据项 + 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; + } + + /** + * 检查指定名称的文件夹是否已存在 + * @param resolver 内容解析器 + * @param name 文件夹名称 + * @return 是否存在 + */ + 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; + } + + /** + * 获取文件夹关联的小部件集合 + * @param resolver 内容解析器 + * @param folderId 文件夹ID + * @return 小部件属性集合 + */ + public static HashSet getFolderNoteWidget(ContentResolver resolver, long folderId) { + // 查询文件夹下笔记的小部件信息 + Cursor c = resolver.query(Notes.CONTENT_NOTE_URI, + new String[] { NoteColumns.WIDGET_ID, NoteColumns.WIDGET_TYPE }, // 查询小部件ID和类型 + NoteColumns.PARENT_ID + "=?", // 指定父文件夹 + new String[] { String.valueOf(folderId) }, // 参数值 + null); // 无排序 + + HashSet set = null; + if (c != null) { + if (c.moveToFirst()) { + set = new HashSet<>(); // 创建集合 + do { + try { + // 创建小部件属性对象并添加到集合 + AppWidgetAttribute widget = new AppWidgetAttribute(); + widget.widgetId = c.getInt(0); // 小部件ID + widget.widgetType.set(c.getInt(1)); // 小部件类型 + set.add(widget); + } catch (IndexOutOfBoundsException e) { + Log.e(TAG, e.toString()); + } + } while (c.moveToNext()); + } + c.close(); // 关闭游标 + } + return set; + } + + /** + * 根据笔记ID获取通话号码 + * @param resolver 内容解析器 + * @param noteId 笔记ID + * @return 通话号码 + */ + 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); // 无排序 + + if (cursor != null && cursor.moveToFirst()) { + try (cursor) { + return cursor.getString(0); // 返回电话号码 + } catch (IndexOutOfBoundsException e) { + Log.e(TAG, "Get call number fails " + e); + } + // 确保关闭游标 + } + return ""; // 未找到返回空字符串 + } + + /** + * 根据电话号码和通话日期获取笔记ID + * @param resolver 内容解析器 + * @param phoneNumber 电话号码 + * @param callDate 通话日期 + * @return 笔记ID + */ + public static long getNoteIdByPhoneNumberAndCallDate(ContentResolver resolver, String phoneNumber, long callDate) { + // 查询符合条件的数据项 + Cursor cursor = resolver.query(Notes.CONTENT_DATA_URI, + new String [] { CallNote.NOTE_ID }, // 只查询笔记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); // 无排序 + + if (cursor != null) { + if (cursor.moveToFirst()) { + try { + return cursor.getLong(0); // 返回笔记ID + } catch (IndexOutOfBoundsException e) { + Log.e(TAG, "Get call note id fails " + e); + } + } + cursor.close(); // 关闭游标 + } + return 0; // 未找到返回0 + } + + /** + * 根据笔记ID获取摘要内容 + * @param resolver 内容解析器 + * @param noteId 笔记ID + * @return 笔记摘要 + */ + 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); // 无排序 + + 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); // 未找到抛出异常 + } + + /** + * 格式化摘要内容(去除首尾空格和换行) + * @param snippet 原始摘要 + * @return 格式化后的摘要 + */ + public static String getFormattedSnippet(String snippet) { + if (snippet != null) { + snippet = snippet.trim(); // 去除首尾空格 + int index = snippet.indexOf('\n'); // 查找第一个换行符 + if (index != -1) { + snippet = snippet.substring(0, index); // 截取到第一个换行符前的内容 + } + } + return snippet; + } + // 在DataUtils类中添加方法 + public static boolean externalStorageAvailable() { + return Environment.getExternalStorageState().equals(Environment.MEDIA_MOUNTED); + } +} diff --git a/src/mi_note/app/src/main/java/net/micode/notes/tool/GTaskStringUtils.java b/src/mi_note/app/src/main/java/net/micode/notes/tool/GTaskStringUtils.java new file mode 100644 index 0000000..b7f2779 --- /dev/null +++ b/src/mi_note/app/src/main/java/net/micode/notes/tool/GTaskStringUtils.java @@ -0,0 +1,119 @@ +/* + * 版权所有 (c) 2010-2011,MiCode 开源社区 (www.micode.net) + * 根据 Apache 许可证 2.0 版本("许可证")授权; + * 除非符合许可证的规定,否则不得使用本文件。 + * 您可以从以下网址获取许可证副本: + * http://www.apache.org/licenses/LICENSE-2.0 + * 除非适用法律要求或书面同意,本软件按"原样"分发, + * 没有任何明示或暗示的保证或条件。 + * 详见许可证中规定的权限和限制。 + * (注:这是一份标准的Apache许可证2.0版本的开源声明) + */ +// 定义包路径 +package net.micode.notes.tool; + +/** + * Google Tasks API JSON字段常量工具类 + * 包含与Google Tasks API交互时使用的所有JSON键名和固定值 + */ +public class GTaskStringUtils { + // ======================== Google Tasks API JSON字段常量 ======================== + // 操作ID字段 + public final static String GTASK_JSON_ACTION_ID = "action_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"; + // 创建者ID字段 + 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"; + // 当前列表ID字段 + public final static String GTASK_JSON_CURRENT_LIST_ID = "current_list_id"; + // 默认列表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"; + // ID字段 + 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"; + // 列表ID字段 + 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"; + // 新ID字段(用于创建后获取服务器分配的ID) + public final static String GTASK_JSON_NEW_ID = "new_id"; + // 笔记内容字段 + public final static String GTASK_JSON_NOTES = "notes"; + // 父级ID字段 + public final static String GTASK_JSON_PARENT_ID = "parent_id"; + // 前一个兄弟节点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"; + + // ======================== MIUI笔记特定常量 ======================== + + // MIUI笔记文件夹前缀(用于标识MIUI创建的文件夹) + 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"; + + // ======================== 元数据相关常量 ======================== + + // 元数据头-Google Task ID + 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/mi_note/app/src/main/java/net/micode/notes/tool/ResourceParser.java b/src/mi_note/app/src/main/java/net/micode/notes/tool/ResourceParser.java new file mode 100644 index 0000000..57a6516 --- /dev/null +++ b/src/mi_note/app/src/main/java/net/micode/notes/tool/ResourceParser.java @@ -0,0 +1,283 @@ +/* + * 版权所有 (c) 2010-2011,MiCode 开源社区 (www.micode.net) + * 根据 Apache 许可证 2.0 版本("许可证")授权; + * 除非符合许可证的规定,否则不得使用本文件。 + * 您可以从以下网址获取许可证副本: + * http://www.apache.org/licenses/LICENSE-2.0 + * 除非适用法律要求或书面同意,本软件按"原样"分发, + * 没有任何明示或暗示的保证或条件。 + * 详见许可证中规定的权限和限制。 + * (注:这是一份标准的Apache许可证2.0版本的开源声明) + */ +// 定义包路径 +package net.micode.notes.tool; + +// 导入Android相关类 +import android.content.Context; // 上下文对象 +import android.preference.PreferenceManager; // 偏好设置管理器 + +// 导入项目资源 +import net.micode.notes.R; // 项目资源文件 +import net.micode.notes.ui.NotesPreferenceActivity; // 偏好设置Activity + +/** + * 资源解析工具类 + * 用于获取和管理笔记应用的各种UI资源 + */ +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 // 红色标题背景 + }; + + /** + * 获取笔记背景资源 + * @param id 颜色ID(YELLOW/BLUE/WHITE/GREEN/RED) + * @return 对应的背景资源ID + */ + public static int getNoteBgResource(int id) { + return BG_EDIT_RESOURCES[id]; + } + + /** + * 获取笔记标题背景资源 + * @param id 颜色ID(YELLOW/BLUE/WHITE/GREEN/RED) + * @return 对应的标题背景资源ID + */ + public static int getNoteTitleBgResource(int id) { + return BG_EDIT_TITLE_RESOURCES[id]; + } + } + + /** + * 获取默认背景ID + * @param context 上下文对象 + * @return 背景颜色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; + } + } + + /** + * 笔记列表项背景资源类 + * 提供笔记列表的各种背景资源获取方法 + */ + 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 // 红色背景单项 + }; + + /** + * 获取列表第一项背景资源 + * @param id 颜色ID + * @return 对应的背景资源ID + */ + public static int getNoteBgFirstRes(int id) { + return BG_FIRST_RESOURCES[id]; + } + + /** + * 获取列表最后一项背景资源 + * @param id 颜色ID + * @return 对应的背景资源ID + */ + public static int getNoteBgLastRes(int id) { + return BG_LAST_RESOURCES[id]; + } + + /** + * 获取列表单项背景资源 + * @param id 颜色ID + * @return 对应的背景资源ID + */ + public static int getNoteBgSingleRes(int id) { + return BG_SINGLE_RESOURCES[id]; + } + + /** + * 获取列表中间项背景资源 + * @param id 颜色ID + * @return 对应的背景资源ID + */ + public static int getNoteBgNormalRes(int id) { + return BG_NORMAL_RESOURCES[id]; + } + + /** + * 获取文件夹背景资源 + * @return 文件夹背景资源ID + */ + public static int getFolderBgRes() { + return R.drawable.list_folder; + } + } + + /** + * 小部件背景资源类 + * 提供小部件的背景资源获取方法 + */ + public static class WidgetBgResources { + // 2x大小小部件背景资源数组 + private final static int [] BG_2X_RESOURCES = new int [] { + R.drawable.widget_2x_yellow, // 黄色2x小部件 + R.drawable.widget_2x_blue, // 蓝色2x小部件 + R.drawable.widget_2x_white, // 白色2x小部件 + R.drawable.widget_2x_green, // 绿色2x小部件 + R.drawable.widget_2x_red, // 红色2x小部件 + }; + + /** + * 获取2x小部件背景资源 + * @param id 颜色ID + * @return 对应的背景资源ID + */ + public static int getWidget2xBgResource(int id) { + return BG_2X_RESOURCES[id]; + } + + // 4x大小小部件背景资源数组 + private final static int [] BG_4X_RESOURCES = new int [] { + R.drawable.widget_4x_yellow, // 黄色4x小部件 + R.drawable.widget_4x_blue, // 蓝色4x小部件 + R.drawable.widget_4x_white, // 白色4x小部件 + R.drawable.widget_4x_green, // 绿色4x小部件 + R.drawable.widget_4x_red // 红色4x小部件 + }; + + /** + * 获取4x小部件背景资源 + * @param id 颜色ID + * @return 对应的背景资源ID + */ + public static int getWidget4xBgResource(int id) { + return BG_4X_RESOURCES[id]; + } + } + + /** + * 文本外观资源类 + * 提供文本样式资源的获取方法 + */ + public static class TextAppearanceResources { + // 文本样式资源数组 + private final static int [] TEXTAPPEARANCE_RESOURCES = new int [] { + R.style.TextAppearanceNormal, // 普通文本样式 + R.style.TextAppearanceMedium, // 中等文本样式 + R.style.TextAppearanceLarge, // 大号文本样式 + R.style.TextAppearanceSuper // 超大号文本样式 + }; + + /** + * 获取文本样式资源 + * @param id 字体大小ID(TEXT_SMALL/MEDIUM/LARGE/SUPER) + * @return 对应的样式资源ID + */ + public static int getTexAppearanceResource(int id) { + /* + * 修复在共享偏好设置中存储资源ID的bug + * 如果ID大于资源数组长度,则返回默认字体大小 + */ + if (id >= TEXTAPPEARANCE_RESOURCES.length) { + return BG_DEFAULT_FONT_SIZE; + } + return TEXTAPPEARANCE_RESOURCES[id]; + } + + /** + * 获取文本样式资源总数 + * @return 样式资源数量 + */ + public static int getResourcesSize() { + return TEXTAPPEARANCE_RESOURCES.length; + } + } +} diff --git a/src/mi_note/app/src/main/java/net/micode/notes/ui/AlarmAlertActivity.java b/src/mi_note/app/src/main/java/net/micode/notes/ui/AlarmAlertActivity.java new file mode 100644 index 0000000..0c802b5 --- /dev/null +++ b/src/mi_note/app/src/main/java/net/micode/notes/ui/AlarmAlertActivity.java @@ -0,0 +1,192 @@ +/* + * 版权所有 (c) 2010-2011,MiCode 开源社区 (www.micode.net) + * 根据 Apache 许可证 2.0 版本("许可证")授权; + * 除非符合许可证的规定,否则不得使用本文件。 + * 您可以从以下网址获取许可证副本: + * http://www.apache.org/licenses/LICENSE-2.0 + * 除非适用法律要求或书面同意,本软件按"原样"分发, + * 没有任何明示或暗示的保证或条件。 + * 详见许可证中规定的权限和限制。 + * (注:这是一份标准的Apache许可证2.0版本的开源声明) + */ +// 定义包路径 +package net.micode.notes.ui; + +// 导入Android相关类库 +import android.app.Activity; // 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; // URI处理 +import android.os.Bundle; // 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; // 数据工具类 + +// IO异常处理 +import java.io.IOException; +import java.util.Objects; + +/** + * 闹钟提醒Activity + * 处理笔记提醒通知,包括显示对话框和播放提醒音效 + */ +public class AlarmAlertActivity extends Activity implements OnClickListener, OnDismissListener { + // 成员变量 + private long mNoteId; // 当前笔记ID + private String mSnippet; // 笔记摘要内容 + private static final int SNIPPET_PREW_MAX_LEN = 60; // 摘要预览最大长度 + MediaPlayer mPlayer; // 媒体播放器实例 + + @Override + protected void onCreate(Bundle savedInstanceState) { + 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 intent = getIntent(); + + try { + // 从Intent URI中解析出笔记ID(格式:content://xxx/notes/1) + mNoteId = Long.parseLong(Objects.requireNonNull(intent.getData()).getPathSegments().get(1)); + // 通过ContentResolver获取笔记摘要 + mSnippet = DataUtils.getSnippetById(this.getContentResolver(), mNoteId); + // 截取摘要前60个字符,超出部分添加省略提示 + 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 boolean 屏幕状态 + */ + private boolean isScreenOn() { + PowerManager pm = (PowerManager) getSystemService(Context.POWER_SERVICE); + return pm.isScreenOn(); + } + + /** + * 播放提醒音效 + */ + private void playAlarmSound() { + // 获取系统默认的闹钟铃声URI + Uri url = RingtoneManager.getActualDefaultRingtoneUri(this, RingtoneManager.TYPE_ALARM); + + // 获取静音模式影响的音频流设置 + 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); // 设置音频源 + mPlayer.prepare(); // 准备播放 + mPlayer.setLooping(true); // 设置循环播放 + mPlayer.start(); // 开始播放 + } catch (IllegalArgumentException | SecurityException | IllegalStateException | + IOException e) { + 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) { + if (which == DialogInterface.BUTTON_NEGATIVE) { // "进入"按钮 + Intent intent = new Intent(this, NoteEditActivity.class); + intent.setAction(Intent.ACTION_VIEW); // 设置动作为查看 + intent.putExtra(Intent.EXTRA_UID, mNoteId); // 传递笔记ID + startActivity(intent); // 启动笔记编辑Activity + } + } + + /** + * 对话框关闭事件处理 + */ + public void onDismiss(DialogInterface dialog) { + stopAlarmSound(); // 停止音效 + finish(); // 结束当前Activity + } + + /** + * 停止播放提醒音效 + */ + private void stopAlarmSound() { + if (mPlayer != null) { + mPlayer.stop(); // 停止播放 + mPlayer.release(); // 释放资源 + mPlayer = null; // 置空引用 + } + } +} \ No newline at end of file diff --git a/src/mi_note/app/src/main/java/net/micode/notes/ui/AlarmInitReceiver.java b/src/mi_note/app/src/main/java/net/micode/notes/ui/AlarmInitReceiver.java new file mode 100644 index 0000000..fc05f63 --- /dev/null +++ b/src/mi_note/app/src/main/java/net/micode/notes/ui/AlarmInitReceiver.java @@ -0,0 +1,101 @@ +/* + * 版权所有 (c) 2010-2011,MiCode 开源社区 (www.micode.net) + * 根据 Apache 许可证 2.0 版本("许可证")授权; + * 除非符合许可证的规定,否则不得使用本文件。 + * 您可以从以下网址获取许可证副本: + * http://www.apache.org/licenses/LICENSE-2.0 + * 除非适用法律要求或书面同意,本软件按"原样"分发, + * 没有任何明示或暗示的保证或条件。 + * 详见许可证中规定的权限和限制。 + * (注:这是一份标准的Apache许可证2.0版本的开源声明) + */ +// 定义包路径 +package net.micode.notes.ui; + +// 导入Android相关类库 +import android.app.AlarmManager; // 系统闹钟服务 +import android.app.PendingIntent; // 延时意图,用于延迟执行操作 +import android.content.BroadcastReceiver; // 广播接收器基类 +import android.content.ContentUris; // Content URI工具类 +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 { + + // 查询笔记的投影列(只需要ID和提醒日期) + private static final String [] PROJECTION = new String [] { + NoteColumns.ID, // 笔记ID列 + NoteColumns.ALERTED_DATE // 提醒日期列 + }; + + // 列索引常量 + private static final int COLUMN_ID = 0; // ID列索引 + private static final int COLUMN_ALERTED_DATE = 1; // 提醒日期列索引 + + /** + * 广播接收回调方法 + * 当接收到BOOT_COMPLETED(系统启动完成)或TIMEZONE_CHANGED(时区变更)广播时触发 + * + * @param context 上下文对象 + * @param intent 接收到的广播意图 + */ + @Override + public void onReceive(Context context, Intent intent) { + // 获取当前系统时间 + long currentDate = System.currentTimeMillis(); + + // 查询所有未来需要提醒的笔记(类型为普通笔记且提醒日期大于当前时间) + Cursor c = context.getContentResolver().query( + Notes.CONTENT_NOTE_URI, // 笔记内容URI + PROJECTION, // 查询的列 + NoteColumns.ALERTED_DATE + ">? AND " + NoteColumns.TYPE + "=" + Notes.TYPE_NOTE, + new String[] { String.valueOf(currentDate) }, // 参数:当前时间 + null); // 无排序要求 + + // 处理查询结果 + if (c != null) { + // 如果查询到数据 + if (c.moveToFirst()) { + do { + // 获取笔记的提醒时间 + long alertDate = c.getLong(COLUMN_ALERTED_DATE); + + // 创建闹钟触发时要发送的广播意图 + Intent sender = new Intent(context, AlarmReceiver.class); + // 设置数据URI为笔记的完整URI(content://xxx/notes/[id]) + sender.setData(ContentUris.withAppendedId(Notes.CONTENT_NOTE_URI, + c.getLong(COLUMN_ID))); + + // 创建PendingIntent用于延迟发送广播 + PendingIntent pendingIntent = PendingIntent.getBroadcast( + context, // 上下文 + 0, // requestCode + sender, // 要发送的Intent + 0); // flags + + // 获取系统闹钟服务 + AlarmManager alermManager = (AlarmManager) context + .getSystemService(Context.ALARM_SERVICE); + + // 设置闹钟(RTC_WAKEUP表示即使设备休眠也唤醒CPU) + alermManager.set( + AlarmManager.RTC_WAKEUP, // 使用实时时钟并在触发时唤醒设备 + alertDate, // 触发时间 + pendingIntent); // 触发时要执行的PendingIntent + + } while (c.moveToNext()); // 处理下一条记录 + } + // 关闭游标释放资源 + c.close(); + } + } +} diff --git a/src/mi_note/app/src/main/java/net/micode/notes/ui/AlarmReceiver.java b/src/mi_note/app/src/main/java/net/micode/notes/ui/AlarmReceiver.java new file mode 100644 index 0000000..9b1179f --- /dev/null +++ b/src/mi_note/app/src/main/java/net/micode/notes/ui/AlarmReceiver.java @@ -0,0 +1,54 @@ +/* + * 版权所有 (c) 2010-2011,MiCode 开源社区 (www.micode.net) + * 根据 Apache 许可证 2.0 版本("许可证")授权; + * 除非符合许可证的规定,否则不得使用本文件。 + * 您可以从以下网址获取许可证副本: + * http://www.apache.org/licenses/LICENSE-2.0 + * 除非适用法律要求或书面同意,本软件按"原样"分发, + * 没有任何明示或暗示的保证或条件。 + * 详见许可证中规定的权限和限制。 + * (注:这是一份标准的Apache许可证2.0版本的开源声明) + */ + +// 定义包路径,指明该类所在的包位置 +package net.micode.notes.ui; + +// 导入Android相关类库 +import android.annotation.SuppressLint; +import android.content.BroadcastReceiver; // 广播接收器基类 +import android.content.Context; // 上下文对象,提供应用环境信息 +import android.content.Intent; // 意图对象,用于组件间通信 + +/** + * 闹钟广播接收器 + * 接收系统闹钟触发广播,启动闹钟提醒界面 + * 功能说明: + * 1. 继承自BroadcastReceiver,专门处理闹钟触发事件 + * 2. 当闹钟触发时,启动AlarmAlertActivity显示提醒 + * 3. 作为系统闹钟和用户界面之间的桥梁 + */ +public class AlarmReceiver extends BroadcastReceiver { + + /** + * 广播接收回调方法 + * 当闹钟触发时由系统自动调用 + * + * @param context 上下文对象,提供启动Activity所需的运行环境 + * @param intent 包含触发闹钟的相关信息,特别是笔记的URI数据 + */ + @Override + public void onReceive(Context context, @SuppressLint("UnsafeIntentLaunch") Intent intent) { + // 修改Intent的目标组件为AlarmAlertActivity + intent.setClass(context, AlarmAlertActivity.class); + + // 添加NEW_TASK标志,因为从非Activity上下文启动Activity需要此标志 + intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK); + + // 启动闹钟提醒Activity + context.startActivity(intent); + /// 注意点: + /// 1. 原Intent中已经包含了笔记URI数据(在AlarmInitReceiver中设置) + /// 2. FLAG_ACTIVITY_NEW_TASK确保可以正确启动Activity + /// 3. 此方法执行时间应尽量短,避免ANR(应用无响应)错误 + } +} diff --git a/src/mi_note/app/src/main/java/net/micode/notes/ui/DateTimePicker.java b/src/mi_note/app/src/main/java/net/micode/notes/ui/DateTimePicker.java new file mode 100644 index 0000000..b08bd1e --- /dev/null +++ b/src/mi_note/app/src/main/java/net/micode/notes/ui/DateTimePicker.java @@ -0,0 +1,457 @@ +/* + * 版权所有 (c) 2010-2011,MiCode 开源社区 (www.micode.net) + * 根据 Apache 许可证 2.0 版本("许可证")授权; + * 除非符合许可证的规定,否则不得使用本文件。 + * 您可以从以下网址获取许可证副本: + * http://www.apache.org/licenses/LICENSE-2.0 + * 除非适用法律要求或书面同意,本软件按"原样"分发, + * 没有任何明示或暗示的保证或条件。 + * 详见许可证中规定的权限和限制。 + * (注:这是一份标准的Apache许可证2.0版本的开源声明) + */ +// 定义包路径 +package net.micode.notes.ui; + +// 导入Java工具类 +import java.text.DateFormatSymbols; // 用于获取AM/PM本地化字符串 +import java.util.Calendar; // 日期时间处理类 + +// 导入项目资源 +import net.micode.notes.R; // 资源ID引用 + +// 导入Android相关类 +import android.content.Context; // 上下文对象 +import android.text.format.DateFormat; // 日期格式化工具 +import android.view.View; // 基础视图类 +import android.widget.FrameLayout; // 帧布局容器 +import android.widget.NumberPicker;// 数字选择器控件 + +/** + * 自定义日期时间选择器组件 + * 包含日期、小时、分钟和AM/PM选择器 + */ +public class DateTimePicker extends FrameLayout { + // 默认启用状态 + private static final boolean DEFAULT_ENABLE_STATE = true; + + // 时间相关常量 + private static final int HOURS_IN_HALF_DAY = 12; // 半天的12小时 + private static final int HOURS_IN_ALL_DAY = 24; // 全天24小时 + private static final int DAYS_IN_ALL_WEEK = 7; // 一周7天 + + // 数字选择器范围常量 + private static final int DATE_SPINNER_MIN_VAL = 0; + private static final int DATE_SPINNER_MAX_VAL = DAYS_IN_ALL_WEEK - 1; + private static final int HOUR_SPINNER_MIN_VAL_24_HOUR_VIEW = 0; + private static final int HOUR_SPINNER_MAX_VAL_24_HOUR_VIEW = 23; + private static final int HOUR_SPINNER_MIN_VAL_12_HOUR_VIEW = 1; + 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; // AM/PM选择器 + // 状态变量 + private final Calendar mDate; // 当前选择的日期时间 + private final 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; + + /** + * 日期时间变化回调接口 + */ + public interface OnDateTimeChangedListener { + void onDateTimeChanged(DateTimePicker view, int year, int month, + int dayOfMonth, int hourOfDay, int minute); + } + + // 构造函数(使用当前时间) + public DateTimePicker(Context context) { + this(context, System.currentTimeMillis()); + } + + // 构造函数(指定时间戳) + 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 = findViewById(R.id.date); + mDateSpinner.setMinValue(DATE_SPINNER_MIN_VAL); + mDateSpinner.setMaxValue(DATE_SPINNER_MAX_VAL); + // 日期变化监听器 + // 计算日期差值并更新日历 + // 更新日期显示 + // 触发回调 + NumberPicker.OnValueChangeListener mOnDateChangedListener = (picker, oldVal, newVal) -> { + // 计算日期差值并更新日历 + mDate.add(Calendar.DAY_OF_YEAR, newVal - oldVal); + updateDateControl(); // 更新日期显示 + onDateTimeChanged(); // 触发回调 + }; + mDateSpinner.setOnValueChangedListener(mOnDateChangedListener); + + // 初始化小时选择器 + mHourSpinner = findViewById(R.id.hour); + // 小时变化监听器(处理12/24小时制的复杂逻辑) + // 处理12小时制下的日期变更 + // 从PM到AM跨日情况 + // 从AM到PM跨日情况 + // AM/PM切换点检查 + // 处理24小时制下的日期变更 + // 23点转到0点(次日) + // 0点转到23点(前一天) + // 更新实际小时值(考虑AM/PM) + // 处理需要变更日期的情况 + NumberPicker.OnValueChangeListener mOnHourChangedListener = (picker, oldVal, newVal) -> { + boolean isDateChanged = false; + Calendar cal = Calendar.getInstance(); + + // 处理12小时制下的日期变更 + if (!mIs24HourView) { + // 从PM到AM跨日情况 + 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; + } + // 从AM到PM跨日情况 + 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; + } + // AM/PM切换点检查 + 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(); + } + } + // 处理24小时制下的日期变更 + else { + // 23点转到0点(次日) + if (oldVal == HOURS_IN_ALL_DAY - 1 && newVal == 0) { + cal.setTimeInMillis(mDate.getTimeInMillis()); + cal.add(Calendar.DAY_OF_YEAR, 1); + isDateChanged = true; + } + // 0点转到23点(前一天) + else if (oldVal == 0 && newVal == HOURS_IN_ALL_DAY - 1) { + cal.setTimeInMillis(mDate.getTimeInMillis()); + cal.add(Calendar.DAY_OF_YEAR, -1); + isDateChanged = true; + } + } + + // 更新实际小时值(考虑AM/PM) + 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)); + } + }; + mHourSpinner.setOnValueChangedListener(mOnHourChangedListener); + + // 初始化分钟选择器 + mMinuteSpinner = findViewById(R.id.minute); + mMinuteSpinner.setMinValue(MINUT_SPINNER_MIN_VAL); + mMinuteSpinner.setMaxValue(MINUT_SPINNER_MAX_VAL); + mMinuteSpinner.setOnLongPressUpdateInterval(100); // 长按加速间隔 + // 分钟变化监听器(处理59->00和00->59的边界情况) + // 处理分钟循环滚动情况 + // 下一小时 + // 上一小时 + // 处理AM/PM切换 + NumberPicker.OnValueChangeListener mOnMinuteChangedListener = (picker, oldVal, newVal) -> { + int minValue = mMinuteSpinner.getMinValue(); + int maxValue = mMinuteSpinner.getMaxValue(); + int offset = 0; + + // 处理分钟循环滚动情况 + if (oldVal == maxValue && newVal == minValue) { + offset += 1; // 下一小时 + } else if (oldVal == minValue && newVal == maxValue) { + offset -= 1; // 上一小时 + } + + if (offset != 0) { + mDate.add(Calendar.HOUR_OF_DAY, offset); + mHourSpinner.setValue(getCurrentHour()); + updateDateControl(); + + // 处理AM/PM切换 + int newHour = getCurrentHourOfDay(); + if (newHour >= HOURS_IN_HALF_DAY) { + mIsAm = false; + updateAmPmControl(); + } else { + mIsAm = true; + updateAmPmControl(); + } + } + + mDate.set(Calendar.MINUTE, newVal); + onDateTimeChanged(); + }; + mMinuteSpinner.setOnValueChangedListener(mOnMinuteChangedListener); + + // 初始化AM/PM选择器(使用本地化字符串) + String[] ampmStrings = new DateFormatSymbols().getAmPmStrings(); + mAmPmSpinner = findViewById(R.id.amPm); + mAmPmSpinner.setMinValue(AMPM_SPINNER_MIN_VAL); + mAmPmSpinner.setMaxValue(AMPM_SPINNER_MAX_VAL); + mAmPmSpinner.setDisplayedValues(ampmStrings); + // AM/PM变化监听器 + // 切换AM/PM状态 + // 调整12小时 + NumberPicker.OnValueChangeListener mOnAmPmChangedListener = (picker, oldVal, newVal) -> { + mIsAm = !mIsAm; // 切换AM/PM状态 + + // 调整12小时 + 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(); + }; + mAmPmSpinner.setOnValueChangedListener(mOnAmPmChangedListener); + + // 初始化控件状态 + updateDateControl(); + updateHourControl(); + updateAmPmControl(); + + // 设置24小时制模式 + set24HourView(is24HourView); + + // 设置当前时间 + setCurrentDate(date); + + // 设置初始启用状态 + setEnabled(DEFAULT_ENABLE_STATE); + + // 初始化完成 + mInitialising = false; + } + + // 启用/禁用控件 + @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; + } + + // 获取当前时间戳 + public long getCurrentDateInTimeMillis() { + return mDate.getTimeInMillis(); + } + + // 设置当前时间(时间戳) + public void setCurrentDate(long date) { + Calendar cal = Calendar.getInstance(); + cal.setTimeInMillis(date); + setCurrentDate( + cal.get(Calendar.YEAR), + cal.get(Calendar.MONTH), + cal.get(Calendar.DAY_OF_MONTH), + cal.get(Calendar.HOUR_OF_DAY), + cal.get(Calendar.MINUTE) + ); + } + + // 设置当前时间(各部分) + public void setCurrentDate(int year, int month, int dayOfMonth, + int hourOfDay, int minute) { + setCurrentYear(year); + setCurrentMonth(month); + setCurrentDay(dayOfMonth); + setCurrentHour(hourOfDay); + setCurrentMinute(minute); + } + + // 获取/设置年份 + public int getCurrentYear() { return mDate.get(Calendar.YEAR); } + public void setCurrentYear(int year) { + if (!mInitialising && year == getCurrentYear()) return; + mDate.set(Calendar.YEAR, year); + updateDateControl(); + onDateTimeChanged(); + } + + // 获取/设置月份 + public int getCurrentMonth() { return mDate.get(Calendar.MONTH); } + public void setCurrentMonth(int month) { + if (!mInitialising && month == getCurrentMonth()) return; + mDate.set(Calendar.MONTH, month); + updateDateControl(); + onDateTimeChanged(); + } + + // 获取/设置日 + public int getCurrentDay() { return mDate.get(Calendar.DAY_OF_MONTH); } + public void setCurrentDay(int dayOfMonth) { + if (!mInitialising && dayOfMonth == getCurrentDay()) return; + mDate.set(Calendar.DAY_OF_MONTH, dayOfMonth); + updateDateControl(); + onDateTimeChanged(); + } + + // 获取24小时制小时 + public int getCurrentHourOfDay() { + return mDate.get(Calendar.HOUR_OF_DAY); + } + + // 获取当前显示的小时(考虑12/24小时制) + private int getCurrentHour() { + if (mIs24HourView){ + return getCurrentHourOfDay(); + } else { + int hour = getCurrentHourOfDay(); + if (hour > HOURS_IN_HALF_DAY) { + return hour - HOURS_IN_HALF_DAY; + } else { + return hour == 0 ? HOURS_IN_HALF_DAY : hour; + } + } + } + + // 设置小时 + public void setCurrentHour(int hourOfDay) { + if (!mInitialising && hourOfDay == getCurrentHourOfDay()) return; + + mDate.set(Calendar.HOUR_OF_DAY, hourOfDay); + if (!mIs24HourView) { + // 处理12小时制下的AM/PM状态 + if (hourOfDay >= HOURS_IN_HALF_DAY) { + mIsAm = false; + if (hourOfDay > HOURS_IN_HALF_DAY) { + hourOfDay -= HOURS_IN_HALF_DAY; + } + } else { + mIsAm = true; + if (hourOfDay == 0) { + hourOfDay = HOURS_IN_HALF_DAY; + } + } + updateAmPmControl(); + } + mHourSpinner.setValue(hourOfDay); + onDateTimeChanged(); + } + + // 获取/设置分钟 + public int getCurrentMinute() { return mDate.get(Calendar.MINUTE); } + public void setCurrentMinute(int minute) { + if (!mInitialising && minute == getCurrentMinute()) return; + mMinuteSpinner.setValue(minute); + mDate.set(Calendar.MINUTE, minute); + onDateTimeChanged(); + } + + // 获取/设置24小时制模式 + public boolean is24HourView() { return mIs24HourView; } + public void set24HourView(boolean is24HourView) { + if (mIs24HourView == is24HourView) return; + mIs24HourView = is24HourView; + + // 更新AM/PM选择器可见性 + mAmPmSpinner.setVisibility(is24HourView ? View.GONE : View.VISIBLE); + + // 更新小时选择器范围 + updateHourControl(); + + // 设置当前小时(保持实际时间不变) + setCurrentHour(getCurrentHourOfDay()); + + // 更新AM/PM显示 + updateAmPmControl(); + } + + // 更新日期控件显示值(一周日期范围) + private void updateDateControl() { + Calendar cal = Calendar.getInstance(); + cal.setTimeInMillis(mDate.getTimeInMillis()); + cal.add(Calendar.DAY_OF_YEAR, -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); + // 格式化日期为"MM.dd EEEE"格式(如"07.15 星期一") + mDateDisplayValues[i] = (String) DateFormat.format("MM.dd EEEE", cal); + } + + mDateSpinner.setDisplayedValues(mDateDisplayValues); + mDateSpinner.setValue(DAYS_IN_ALL_WEEK / 2); // 中间值(当前日) + mDateSpinner.invalidate(); // 强制重绘 + } + + // 更新AM/PM控件状态 + private void updateAmPmControl() { + if (mIs24HourView) { + mAmPmSpinner.setVisibility(View.GONE); + } else { + int index = mIsAm ? Calendar.AM : Calendar.PM; + mAmPmSpinner.setValue(index); + mAmPmSpinner.setVisibility(View.VISIBLE); + } + } + + // 更新小时控件范围(12/24小时制) + private void updateHourControl() { + if (mIs24HourView) { + mHourSpinner.setMinValue(HOUR_SPINNER_MIN_VAL_24_HOUR_VIEW); + mHourSpinner.setMaxValue(HOUR_SPINNER_MAX_VAL_24_HOUR_VIEW); + } else { + mHourSpinner.setMinValue(HOUR_SPINNER_MIN_VAL_12_HOUR_VIEW); + mHourSpinner.setMaxValue(HOUR_SPINNER_MAX_VAL_12_HOUR_VIEW); + } + } + + // 设置日期时间变化监听器 + public void setOnDateTimeChangedListener(OnDateTimeChangedListener callback) { + mOnDateTimeChangedListener = callback; + } + + // 触发日期时间变化回调 + private void onDateTimeChanged() { + if (mOnDateTimeChangedListener != null) { + mOnDateTimeChangedListener.onDateTimeChanged(this, + getCurrentYear(), getCurrentMonth(), getCurrentDay(), + getCurrentHourOfDay(), getCurrentMinute()); + } + } +} diff --git a/src/mi_note/app/src/main/java/net/micode/notes/ui/DateTimePickerDialog.java b/src/mi_note/app/src/main/java/net/micode/notes/ui/DateTimePickerDialog.java new file mode 100644 index 0000000..bf37351 --- /dev/null +++ b/src/mi_note/app/src/main/java/net/micode/notes/ui/DateTimePickerDialog.java @@ -0,0 +1,145 @@ +/* + * 版权所有 (c) 2010-2011,MiCode 开源社区 (www.micode.net) + * 根据 Apache 许可证 2.0 版本("许可证")授权; + * 除非符合许可证的规定,否则不得使用本文件。 + * 您可以从以下网址获取许可证副本: + * http://www.apache.org/licenses/LICENSE-2.0 + * 除非适用法律要求或书面同意,本软件按"原样"分发, + * 没有任何明示或暗示的保证或条件。 + * 详见许可证中规定的权限和限制。 + * (注:这是一份标准的Apache许可证2.0版本的开源声明) + */ +// 定义包路径 +package net.micode.notes.ui; + +// 导入Java工具类 +import java.util.Calendar; // 日期时间处理类 + +// 导入项目资源 +import net.micode.notes.R; // 资源ID引用 + +// 导入自定义组件 +// 日期时间选择器 +// 时间变化监听器 + +// 导入Android相关类 +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; // 日期工具类 + +/** + * 日期时间选择对话框 + * 将DateTimePicker封装在AlertDialog中,提供完整的日期时间选择功能 + */ +public class DateTimePickerDialog extends AlertDialog implements OnClickListener { + + // 成员变量 + private final Calendar mDate = Calendar.getInstance(); // 当前选择的日期时间 + private boolean mIs24HourView; // 是否为24小时制 + private OnDateTimeSetListener mOnDateTimeSetListener; // 回调监听器 + + /** + * 日期时间设置回调接口 + */ + public interface OnDateTimeSetListener { + void OnDateTimeSet(AlertDialog dialog, long date); // 点击确定时回调 + } + + /** + * 构造函数 + * @param context 上下文对象 + * @param date 初始时间(时间戳) + */ + public DateTimePickerDialog(Context context, long date) { + super(context); + + // 初始化日期时间选择器 + // 内嵌的日期时间选择器 + DateTimePicker mDateTimePicker = new DateTimePicker(context); + setView(mDateTimePicker); // 将选择器添加到对话框 + + // 设置时间变化监听器 + mDateTimePicker.setOnDateTimeChangedListener((view, year, month, dayOfMonth, hourOfDay, minute) -> { + // 更新内部Calendar对象 + 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.set(Calendar.SECOND, 0); // 秒数归零 + mDateTimePicker.setCurrentDate(mDate.getTimeInMillis()); + + // 添加确定/取消按钮 + setButton(DialogInterface.BUTTON_POSITIVE, + context.getString(R.string.datetime_dialog_ok), this); + setButton(DialogInterface.BUTTON_NEGATIVE, + context.getString(R.string.datetime_dialog_cancel), + (OnClickListener)null); + + // 根据系统设置初始化24小时制显示 + set24HourView(DateFormat.is24HourFormat(this.getContext())); + + // 初始化标题显示 + updateTitle(mDate.getTimeInMillis()); + } + + /** + * 设置24小时制显示模式 + * @param is24HourView true为24小时制,false为12小时制 + */ + public void set24HourView(boolean is24HourView) { + mIs24HourView = is24HourView; + // 注意:这里未实际传递给DateTimePicker,可能需要额外处理 + } + + /** + * 设置日期时间确定回调 + * @param callBack 回调接口 + */ + public void setOnDateTimeSetListener(OnDateTimeSetListener callBack) { + mOnDateTimeSetListener = callBack; + } + + /** + * 更新对话框标题 + * @param date 时间戳 + */ + private void updateTitle(long date) { + // 设置日期时间显示格式 + int flag = DateUtils.FORMAT_SHOW_YEAR | // 显示年份 + DateUtils.FORMAT_SHOW_DATE | // 显示日期 + DateUtils.FORMAT_SHOW_TIME; // 显示时间 + + // 添加24小时制标志(注意:原代码有错误,应该是FORMAT_24HOUR或FORMAT_12HOUR) + flag |= mIs24HourView ? DateUtils.FORMAT_24HOUR : DateUtils.FORMAT_12HOUR; + + // 设置格式化后的标题 + setTitle(DateUtils.formatDateTime( + this.getContext(), // 上下文 + date, // 时间戳 + flag)); // 格式标志 + } + + /** + * 确定按钮点击回调 + */ + @Override + public void onClick(DialogInterface arg0, int arg1) { + // 触发回调事件 + if (mOnDateTimeSetListener != null) { + mOnDateTimeSetListener.OnDateTimeSet( + this, // 当前对话框实例 + mDate.getTimeInMillis()); // 最终选择的时间戳 + } + } +} \ No newline at end of file diff --git a/src/mi_note/app/src/main/java/net/micode/notes/ui/DropdownMenu.java b/src/mi_note/app/src/main/java/net/micode/notes/ui/DropdownMenu.java new file mode 100644 index 0000000..271056c --- /dev/null +++ b/src/mi_note/app/src/main/java/net/micode/notes/ui/DropdownMenu.java @@ -0,0 +1,89 @@ +/* + * 版权所有 (c) 2010-2011,MiCode 开源社区 (www.micode.net) + * 根据 Apache 许可证 2.0 版本("许可证")授权; + * 除非符合许可证的规定,否则不得使用本文件。 + * 您可以从以下网址获取许可证副本: + * http://www.apache.org/licenses/LICENSE-2.0 + * 除非适用法律要求或书面同意,本软件按"原样"分发, + * 没有任何明示或暗示的保证或条件。 + * 详见许可证中规定的权限和限制。 + * (注:这是一份标准的Apache许可证2.0版本的开源声明) + */ +// 定义包路径 +package net.micode.notes.ui; + +// 导入Android相关类库 +import android.content.Context; // 上下文对象,用于获取系统服务 +import android.view.Menu; // 菜单接口 +import android.view.MenuItem; // 菜单项接口 +// 基础视图类 +// 点击监听接口 +import android.widget.Button; // 按钮控件 +import android.widget.PopupMenu; // 弹出式菜单 +import android.widget.PopupMenu.OnMenuItemClickListener; // 菜单项点击监听 + +// 导入项目资源 +import net.micode.notes.R; // 资源ID引用 + +/** + * 下拉菜单封装类 + * 将PopupMenu与Button绑定,简化下拉菜单的实现 + */ +public class DropdownMenu { + // 成员变量 + private final Button mButton; // 触发菜单的按钮 + private final PopupMenu mPopupMenu; // 弹出菜单实例 + private final Menu mMenu; // 菜单对象 + + /** + * 构造函数 + * @param context 上下文对象 + * @param button 绑定的按钮控件 + * @param menuId 菜单资源ID(R.menu.xxx ) + */ + public DropdownMenu(Context context, Button button, int menuId) { + // 初始化按钮引用 + mButton = button; + // 设置按钮背景(下拉箭头图标) + mButton.setBackgroundResource(R.drawable.dropdown_icon); + + // 创建PopupMenu并绑定到按钮 + mPopupMenu = new PopupMenu(context, mButton); + // 获取菜单对象 + mMenu = mPopupMenu.getMenu(); + // 加载菜单布局 + mPopupMenu.getMenuInflater().inflate(menuId, mMenu); + + // 设置按钮点击事件:显示弹出菜单 + mButton.setOnClickListener(v -> { + mPopupMenu.show(); // 显示弹出菜单 + }); + } + + /** + * 设置菜单项点击监听器 + * @param listener 菜单项点击监听接口实现 + */ + public void setOnDropdownMenuItemClickListener(OnMenuItemClickListener listener) { + if (mPopupMenu != null) { + mPopupMenu.setOnMenuItemClickListener(listener); + } + } + + /** + * 查找菜单项 + * @param id 菜单项ID(R.id.xxx ) + * @return 找到的MenuItem对象 + */ + public MenuItem findItem(int id) { + return mMenu.findItem(id); + } + + /** + * 设置按钮文本 + * @param title 要显示的标题文本 + */ + public void setTitle(CharSequence title) { + mButton.setText(title); + } +} diff --git a/src/mi_note/app/src/main/java/net/micode/notes/ui/FoldersListAdapter.java b/src/mi_note/app/src/main/java/net/micode/notes/ui/FoldersListAdapter.java new file mode 100644 index 0000000..672a0a5 --- /dev/null +++ b/src/mi_note/app/src/main/java/net/micode/notes/ui/FoldersListAdapter.java @@ -0,0 +1,131 @@ +/* + * 版权所有 (c) 2010-2011,MiCode 开源社区 (www.micode.net) + * 根据 Apache 许可证 2.0 版本("许可证")授权; + * 除非符合许可证的规定,否则不得使用本文件。 + * 您可以从以下网址获取许可证副本: + * http://www.apache.org/licenses/LICENSE-2.0 + * 除非适用法律要求或书面同意,本软件按"原样"分发, + * 没有任何明示或暗示的保证或条件。 + * 详见许可证中规定的权限和限制。 + * (注:这是一份标准的Apache许可证2.0版本的开源声明) + */ +// 定义包路径 +package net.micode.notes.ui; + +// 导入Android相关类库 +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; // 资源ID引用 +// 导入数据类 +import net.micode.notes.data.Notes; // 笔记常量 +import net.micode.notes.data.Notes.NoteColumns; // 笔记表列名 + +/** + * 文件夹列表适配器 + * 继承自CursorAdapter,用于将文件夹数据绑定到列表视图 + */ +public class FoldersListAdapter extends CursorAdapter { + // 查询投影列(需要获取的字段) + public static final String [] PROJECTION = { + NoteColumns.ID, // 笔记ID + NoteColumns.SNIPPET // 文件夹名称(使用SNIPPET字段存储) + }; + + // 列索引常量 + public static final int ID_COLUMN = 0; // ID列索引 + public static final int NAME_COLUMN = 1; // 名称列索引 + + /** + * 构造函数 + * @param context 上下文对象 + * @param c 数据库游标 + */ + public FoldersListAdapter(Context context, Cursor c) { + super(context, c); + // TODO: 可在此处添加额外初始化代码 + } + + /** + * 创建新列表项视图 + * @param context 上下文 + * @param cursor 数据游标 + * @param parent 父视图组 + * @return 创建好的列表项视图 + */ + @Override + public View newView(Context context, Cursor cursor, ViewGroup parent) { + // 创建自定义的文件夹列表项视图 + return new FolderListItem(context); + } + + /** + * 绑定数据到已有视图 + * @param view 要绑定的视图 + * @param context 上下文 + * @param cursor 数据游标 + */ + @Override + public void bindView(View view, Context context, Cursor cursor) { + // 确保视图是FolderListItem类型 + if (view instanceof FolderListItem) { + String folderName; + // 判断是否为根文件夹(特殊处理) + if (cursor.getLong(ID_COLUMN) == Notes.ID_ROOT_FOLDER) { + folderName = context.getString(R.string.menu_move_parent_folder); + } else { + folderName = cursor.getString(NAME_COLUMN); + } + // 调用视图的bind方法设置名称 + ((FolderListItem) view).bind(folderName); + } + } + + /** + * 获取指定位置的文件夹名称 + * @param context 上下文 + * @param position 位置索引 + * @return 文件夹名称 + */ + 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 static class FolderListItem extends LinearLayout { + private final TextView mName; // 显示文件夹名称的文本视图 + + /** + * 构造函数 + * @param context 上下文 + */ + public FolderListItem(Context context) { + super(context); + // 加载布局文件 + inflate(context, R.layout.folder_list_item, this); + // 获取名称文本视图 + mName = findViewById(R.id.tv_folder_name); + } + + /** + * 绑定文件夹名称 + * @param name 文件夹名称 + */ + public void bind(String name) { + mName.setText(name); // 设置文本内容 + } + } +} \ No newline at end of file diff --git a/src/mi_note/app/src/main/java/net/micode/notes/ui/NoteEditActivity.java b/src/mi_note/app/src/main/java/net/micode/notes/ui/NoteEditActivity.java new file mode 100644 index 0000000..c904b35 --- /dev/null +++ b/src/mi_note/app/src/main/java/net/micode/notes/ui/NoteEditActivity.java @@ -0,0 +1,1257 @@ +/* + * 版权所有 (c) 2010-2011,MiCode 开源社区 (www.micode.net) + * 根据 Apache 许可证 2.0 版本("许可证")授权; + * 除非符合许可证的规定,否则不得使用本文件。 + * 您可以从以下网址获取许可证副本: + * http://www.apache.org/licenses/LICENSE-2.0 + * 除非适用法律要求或书面同意,本软件按"原样"分发, + * 没有任何明示或暗示的保证或条件。 + * 详见许可证中规定的权限和限制。 + * (注:这是一份标准的Apache许可证2.0版本的开源声明) + */ + +// 定义NoteEditActivity所在的包路径 +package net.micode.notes.ui; + +// 导入各类Android框架类和自定义类 +import android.annotation.SuppressLint; +import android.app.Activity; // Activity基类 +import android.app.AlarmManager; // 闹钟管理服务,用于提醒功能 +import android.app.AlertDialog; // 警告对话框 +import android.app.PendingIntent; // 延时意图 +import android.app.SearchManager; // 搜索服务管理 +import android.appwidget.AppWidgetManager; // 小部件管理 +import android.content.ContentResolver; +import android.content.ContentUris; // 内容URI工具 +import android.content.ContentValues; +import android.content.Context; // 应用上下文 +// 对话框接口 +import android.content.Intent; // 意图相关 +import android.content.SharedPreferences; // 共享首选项 +import android.database.Cursor; +import android.graphics.Bitmap; +import android.graphics.BitmapFactory; +import android.graphics.Paint; // 绘图相关 +import android.net.Uri; +import android.os.Bundle; // 保存Activity状态 +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.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.widget.CheckBox; // 复选框控件 +// 复合按钮 +// 复选框状态监听 +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 androidx.annotation.NonNull; // AndroidX非空注解 + +// 导入项目自定义类和资源 +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.NoteEditText.OnTextViewChangeListener; // 文本变更监听 +import net.micode.notes.widget.NoteWidgetProvider_2x; // 2x尺寸小部件 +import net.micode.notes.widget.NoteWidgetProvider_4x; // 4x尺寸小部件 + +// 导入Java工具类 +import java.io.FileNotFoundException; +import java.util.HashMap; // 哈希映射 +import java.util.HashSet; // 哈希集合 +import java.util.Map; // 映射接口 +import java.util.Objects; // 对象工具 +import java.util.regex.Matcher; // 正则匹配器 +import java.util.regex.Pattern; // 正则表达式 + +// 笔记编辑Activity,继承Activity并实现多个接口 +public class NoteEditActivity extends Activity implements OnClickListener, + NoteSettingChangedListener, OnTextViewChangeListener { + // 头部视图Holder静态内部类 + private static class HeadViewHolder { + public TextView tvModified; // 修改时间显示文本 + public ImageView ivAlertIcon; // 提醒图标 + public TextView tvAlertDate; // 提醒日期文本 + public ImageView ibSetBgColor; // 设置背景色按钮 + } + + // 背景颜色选择按钮映射表(按钮ID->颜色值) + private static final Map sBgSelectorBtnsMap = new HashMap<>(); + static { // 静态初始化块 + sBgSelectorBtnsMap.put(R.id.iv_bg_yellow, ResourceParser.YELLOW); + sBgSelectorBtnsMap.put(R.id.iv_bg_red, ResourceParser.RED); + sBgSelectorBtnsMap.put(R.id.iv_bg_blue, ResourceParser.BLUE); + sBgSelectorBtnsMap.put(R.id.iv_bg_green, ResourceParser.GREEN); + sBgSelectorBtnsMap.put(R.id.iv_bg_white, ResourceParser.WHITE); + } + + // 背景颜色选择状态映射表(颜色值->选中状态视图ID) + private static final Map sBgSelectorSelectionMap = new HashMap<>(); + static { + sBgSelectorSelectionMap.put(ResourceParser.YELLOW, R.id.iv_bg_yellow_select); + sBgSelectorSelectionMap.put(ResourceParser.RED, R.id.iv_bg_red_select); + sBgSelectorSelectionMap.put(ResourceParser.BLUE, R.id.iv_bg_blue_select); + sBgSelectorSelectionMap.put(ResourceParser.GREEN, R.id.iv_bg_green_select); + sBgSelectorSelectionMap.put(ResourceParser.WHITE, R.id.iv_bg_white_select); + } + + // 字体大小选择按钮映射表(布局ID->字体大小值) + private static final Map sFontSizeBtnsMap = new HashMap<>(); + static { + sFontSizeBtnsMap.put(R.id.ll_font_large, ResourceParser.TEXT_LARGE); + sFontSizeBtnsMap.put(R.id.ll_font_small, ResourceParser.TEXT_SMALL); + sFontSizeBtnsMap.put(R.id.ll_font_normal, ResourceParser.TEXT_MEDIUM); + sFontSizeBtnsMap.put(R.id.ll_font_super, ResourceParser.TEXT_SUPER); + } + + // 字体大小选择状态映射表(字体大小值->选中状态视图ID) + private static final Map sFontSelectorSelectionMap = new HashMap<>(); + static { + sFontSelectorSelectionMap.put(ResourceParser.TEXT_LARGE, R.id.iv_large_select); + sFontSelectorSelectionMap.put(ResourceParser.TEXT_SMALL, R.id.iv_small_select); + sFontSelectorSelectionMap.put(ResourceParser.TEXT_MEDIUM, R.id.iv_medium_select); + sFontSelectorSelectionMap.put(ResourceParser.TEXT_SUPER, R.id.iv_super_select); + } + + private static final String TAG = "NoteEditActivity"; // 日志标签 + + // 视图成员变量 + private HeadViewHolder mNoteHeaderHolder; // 头部视图Holder实例 + private View mHeadViewPanel; // 头部面板视图 + private View mNoteBgColorSelector; // 背景颜色选择器 + private View mFontSizeSelector; // 字体大小选择器 + private EditText mNoteEditor; // 笔记内容编辑器 + private View mNoteEditorPanel; // 编辑器面板 + private WorkingNote mWorkingNote; // 当前工作笔记对象 + + // 偏好设置相关 + private SharedPreferences mSharedPrefs; // 共享偏好设置 + private int mFontSizeId; // 当前字体大小ID + private static final String PREFERENCE_FONT_SIZE = "pref_font_size"; // 字体大小偏好键名 + + // 快捷方式相关常量 + private static final int SHORTCUT_ICON_TITLE_MAX_LEN = 10; // 快捷方式标题最大长度 + + // 复选框标记常量 + public static final String TAG_CHECKED = String.valueOf('√'); // 选中标记 + public static final String TAG_UNCHECKED = String.valueOf('□'); // 未选中标记 + + // 其他成员变量 + private LinearLayout mEditTextList; // 编辑文本列表布局 + private String mUserQuery; // 用户搜索查询词 + private static final int PHOTO_REQUEST = 1; // 图片请求码 + + private static String getDataColumn(Context context, Uri uri, String selection, String[] selectionArgs) { + String column = "_data"; + String[] projection = { column }; + try (Cursor cursor = context.getContentResolver().query(uri, projection, selection, selectionArgs, null)) { + if (cursor != null && cursor.moveToFirst()) { + int column_index = cursor.getColumnIndexOrThrow(column); + return cursor.getString(column_index); + } + } + return null; + } + + private static boolean isMediaDocument(Uri uri) { + return "com.android.providers.media.documents".equals(uri.getAuthority()); + } + + @Override + protected void onCreate(Bundle savedInstanceState) { + super.onCreate(savedInstanceState); + this.setContentView(R.layout.note_edit); // 设置布局 + + // 初始化Activity状态,如果没有有效状态则结束Activity + if (savedInstanceState == null && !initActivityState(getIntent())) { + finish(); + return; + } + initResources(); // 初始化资源 + //根据id获取添加图片按钮 + final ImageButton add_img_btn = findViewById(R.id.add_img_btn); + //为点击图片按钮设置监听器 + add_img_btn.setOnClickListener(view -> { + Log.d(TAG, "onClick: click add image button"); + //ACTION_GET_CONTENT: 允许用户选择特殊种类的数据,并返回(特殊种类的数据:照一张相片或录一段音) + Intent loadImage = new Intent(Intent.ACTION_GET_CONTENT); + //Category属性用于指定当前动作(Action)被执行的环境. + //CATEGORY_OPENABLE; 用来指示一个ACTION_GET_CONTENT的intent + loadImage.addCategory(Intent.CATEGORY_OPENABLE); + loadImage.setType("image/*"); + startActivityForResult(loadImage, PHOTO_REQUEST); + }); + } + + /** + * 当内存不足时Activity可能被杀死,恢复时需要重建状态 + */ + @Override + protected void onRestoreInstanceState(@NonNull Bundle savedInstanceState) { + super.onRestoreInstanceState(savedInstanceState); + // 从保存状态恢复笔记ID + if (savedInstanceState.containsKey(Intent.EXTRA_UID)) { + Intent intent = new Intent(Intent.ACTION_VIEW); + intent.putExtra(Intent.EXTRA_UID, savedInstanceState.getLong(Intent.EXTRA_UID)); + if (!initActivityState(intent)) { + finish(); + return; + } + Log.d(TAG, "Restoring from killed activity"); + } + } + + /** + * 初始化Activity状态 + * @param intent 传入的Intent + * @return 是否初始化成功 + */ + private boolean initActivityState(Intent intent) { + mWorkingNote = null; + // 处理查看笔记的Intent + if (TextUtils.equals(Intent.ACTION_VIEW, intent.getAction())) { + long noteId = intent.getLongExtra(Intent.EXTRA_UID, 0); + mUserQuery = ""; + + // 处理来自搜索的结果 + if (intent.hasExtra(SearchManager.EXTRA_DATA_KEY)) { + noteId = Long.parseLong(Objects.requireNonNull(intent.getStringExtra(SearchManager.EXTRA_DATA_KEY))); + mUserQuery = intent.getStringExtra(SearchManager.USER_QUERY); + } + + // 检查笔记是否存在 + if (!DataUtils.visibleInNoteDatabase(getContentResolver(), noteId, Notes.TYPE_NOTE)) { + Intent jump = new Intent(this, NotesListActivity.class); + startActivity(jump); + showToast(R.string.error_note_not_exist); + finish(); + return false; + } else { + // 加载笔记 + mWorkingNote = WorkingNote.load(this, noteId); + } + // 设置软键盘模式 + getWindow().setSoftInputMode( + WindowManager.LayoutParams.SOFT_INPUT_STATE_HIDDEN + | WindowManager.LayoutParams.SOFT_INPUT_ADJUST_RESIZE); + } + // 处理新建或编辑笔记的Intent + else if(TextUtils.equals(Intent.ACTION_INSERT_OR_EDIT, intent.getAction())) { + // 获取参数 + long folderId = intent.getLongExtra(Notes.INTENT_EXTRA_FOLDER_ID, 0); + int widgetId = intent.getIntExtra(Notes.INTENT_EXTRA_WIDGET_ID, + AppWidgetManager.INVALID_APPWIDGET_ID); + int widgetType = intent.getIntExtra(Notes.INTENT_EXTRA_WIDGET_TYPE, + Notes.TYPE_WIDGET_INVALIDE); + int bgResId = intent.getIntExtra(Notes.INTENT_EXTRA_BACKGROUND_ID, + ResourceParser.getDefaultBgId(this)); + + // 处理通话记录笔记 + String phoneNumber = intent.getStringExtra(Intent.EXTRA_PHONE_NUMBER); + long callDate = intent.getLongExtra(Notes.INTENT_EXTRA_CALL_DATE, 0); + if (callDate != 0 && phoneNumber != null) { + if (TextUtils.isEmpty(phoneNumber)) { + Log.w(TAG, "The call record number is null"); + } + long noteId; + // 查找是否已存在对应通话记录 + if ((noteId = DataUtils.getNoteIdByPhoneNumberAndCallDate(getContentResolver(), + phoneNumber, callDate)) > 0) { + mWorkingNote = WorkingNote.load(this, noteId); + } else { + // 新建通话记录笔记 + mWorkingNote = WorkingNote.createEmptyNote(this, folderId, widgetId, + widgetType, bgResId); + mWorkingNote.convertToCallNote(phoneNumber, callDate); + } + } else { + // 创建普通空笔记 + mWorkingNote = WorkingNote.createEmptyNote(this, folderId, widgetId, widgetType, + bgResId); + } + + // 设置软键盘模式 + getWindow().setSoftInputMode( + WindowManager.LayoutParams.SOFT_INPUT_ADJUST_RESIZE + | WindowManager.LayoutParams.SOFT_INPUT_STATE_VISIBLE); + } else { + Log.e(TAG, "Intent not specified action, should not support"); + finish(); + return false; + } + // 设置笔记变更监听器 + mWorkingNote.setOnSettingStatusChangedListener(this); + return true; + } + + @Override + protected void onResume() { + super.onResume(); + initNoteScreen(); // 初始化笔记显示 + } + + /** + * 初始化笔记显示界面 + */ + private void initNoteScreen() { + // 设置编辑器字体大小 + mNoteEditor.setTextAppearance(this, TextAppearanceResources + .getTexAppearanceResource(mFontSizeId)); + + // 根据笔记模式设置内容 + if (mWorkingNote.getCheckListMode() == TextNote.MODE_CHECK_LIST) { + switchToListMode(mWorkingNote.getContent()); // 列表模式 + } else { + // 普通模式,高亮显示搜索词 + mNoteEditor.setText(getHighlightQueryResult(mWorkingNote.getContent(), mUserQuery)); + mNoteEditor.setSelection(mNoteEditor.getText().length()); // 光标移至末尾 + } + + // 初始化背景选择器状态 + for (Integer id : sBgSelectorSelectionMap.keySet()) { + findViewById(sBgSelectorSelectionMap.get(id)).setVisibility(View.GONE); + } + + // 设置背景和标题样式 + mHeadViewPanel.setBackgroundResource(mWorkingNote.getTitleBgResId()); + mNoteEditorPanel.setBackgroundResource(mWorkingNote.getBgColorResId()); + + // 设置修改时间显示 + mNoteHeaderHolder.tvModified.setText(DateUtils.formatDateTime(this, + mWorkingNote.getModifiedDate(), DateUtils.FORMAT_SHOW_DATE + | DateUtils.FORMAT_NUMERIC_DATE | DateUtils.FORMAT_SHOW_TIME + | DateUtils.FORMAT_SHOW_YEAR)); + + // 显示提醒头部(如果有设置提醒) + showAlertHeader(); + } + + /** + * 显示提醒头部信息 + */ + private void showAlertHeader() { + if (mWorkingNote.hasClockAlert()) { + long time = System.currentTimeMillis(); + // 判断提醒是否过期 + if (time > mWorkingNote.getAlertDate()) { + mNoteHeaderHolder.tvAlertDate.setText(R.string.note_alert_expired); + } else { + // 显示相对时间 + mNoteHeaderHolder.tvAlertDate.setText(DateUtils.getRelativeTimeSpanString( + mWorkingNote.getAlertDate(), time, DateUtils.MINUTE_IN_MILLIS)); + } + mNoteHeaderHolder.tvAlertDate.setVisibility(View.VISIBLE); + mNoteHeaderHolder.ivAlertIcon.setVisibility(View.VISIBLE); + } else { + // 没有提醒时隐藏相关视图 + mNoteHeaderHolder.tvAlertDate.setVisibility(View.GONE); + mNoteHeaderHolder.ivAlertIcon.setVisibility(View.GONE); + } + } + + // 处理新的Intent到来(例如从最近任务重新打开) + @Override + protected void onNewIntent(Intent intent) { + super.onNewIntent(intent); // 调用父类方法 + initActivityState(intent); // 用新intent重新初始化Activity状态 + } + + // 保存Activity状态(例如屏幕旋转时) + @Override + protected void onSaveInstanceState(@NonNull Bundle outState) { + super.onSaveInstanceState(outState); // 调用父类方法 + + /* + 对于尚未保存的新笔记,需要先保存以生成ID + 如果笔记不值得保存,则不会有ID等同于创建新笔记 + */ + if (!mWorkingNote.existInDatabase()) { + saveNote(); // 保存笔记到数据库 + } + + // 将当前笔记ID保存到Bundle中 + outState.putLong(Intent.EXTRA_UID, mWorkingNote.getNoteId()); + Log.d(TAG, "Save working note id: " + mWorkingNote.getNoteId() + " onSaveInstanceState"); + } + + // 处理触摸事件分发 + @Override + public boolean dispatchTouchEvent(MotionEvent ev) { + // 如果背景颜色选择器可见且触摸在区域外,则隐藏它 + if (mNoteBgColorSelector.getVisibility() == View.VISIBLE + && !inRangeOfView(mNoteBgColorSelector, ev)) { + mNoteBgColorSelector.setVisibility(View.GONE); + return true; // 事件已消费 + } + + // 如果字体大小选择器可见且触摸在区域外,则隐藏它 + if (mFontSizeSelector.getVisibility() == View.VISIBLE + && !inRangeOfView(mFontSizeSelector, ev)) { + mFontSizeSelector.setVisibility(View.GONE); + return true; // 事件已消费 + } + + return super.dispatchTouchEvent(ev); // 其他情况交由父类处理 + } + + // 检查触摸事件是否在视图范围内 + private boolean inRangeOfView(View view, MotionEvent ev) { + int []location = new int[2]; // 存储视图坐标的数组 + view.getLocationOnScreen(location); // 获取视图在屏幕上的坐标 + int x = location[0]; // 视图左上角x坐标 + int y = location[1]; // 视图左上角y坐标 + + // 判断触摸点是否在视图范围外 + return !(ev.getX() < x) + && !(ev.getX() > (x + view.getWidth())) + && !(ev.getY() < y) + && !(ev.getY() > (y + view.getHeight())); // 不在范围内 +// 在范围内 + } + + // 初始化视图资源和数据 + private void initResources() { + // 初始化头部视图 + mHeadViewPanel = findViewById(R.id.note_title); + mNoteHeaderHolder = new HeadViewHolder(); + + // 绑定头部视图控件 + mNoteHeaderHolder.tvModified = findViewById(R.id.tv_modified_date); + mNoteHeaderHolder.ivAlertIcon = findViewById(R.id.iv_alert_icon); + mNoteHeaderHolder.tvAlertDate = findViewById(R.id.tv_alert_date); + mNoteHeaderHolder.ibSetBgColor = findViewById(R.id.btn_set_bg_color); + mNoteHeaderHolder.ibSetBgColor.setOnClickListener(this); // 设置背景颜色按钮点击监听 + + // 初始化编辑器相关视图 + mNoteEditor = findViewById(R.id.note_edit_view); + mNoteEditorPanel = findViewById(R.id.sv_note_edit); + + // 初始化背景颜色选择器 + mNoteBgColorSelector = findViewById(R.id.note_bg_color_selector); + // 为所有背景颜色按钮设置点击监听 + for (int id : sBgSelectorBtnsMap.keySet()) { + ImageView iv = findViewById(id); + iv.setOnClickListener(this); + } + + // 初始化字体大小选择器 + mFontSizeSelector = findViewById(R.id.font_size_selector); + // 为所有字体大小选项设置点击监听 + for (int id : sFontSizeBtnsMap.keySet()) { + View view = findViewById(id); + view.setOnClickListener(this); + }; + + // 初始化偏好设置 + mSharedPrefs = PreferenceManager.getDefaultSharedPreferences(this); + // 获取保存的字体大小设置,默认为默认字体大小 + mFontSizeId = mSharedPrefs.getInt(PREFERENCE_FONT_SIZE, ResourceParser.BG_DEFAULT_FONT_SIZE); + + /* + HACKME: 修复在shared preference中存储资源id的bug。 + id可能大于资源数量,这种情况返回默认字体大小 + */ + if(mFontSizeId >= TextAppearanceResources.getResourcesSize()) { + mFontSizeId = ResourceParser.BG_DEFAULT_FONT_SIZE; + } + + // 初始化编辑文本列表布局 + mEditTextList = findViewById(R.id.note_edit_list); + } + + // Activity暂停时调用 + @Override + protected void onPause() { + super.onPause(); + // 保存笔记并记录日志 + if(saveNote()) { + Log.d(TAG, "Note data was saved with length:" + mWorkingNote.getContent().length()); + } + clearSettingState(); // 清除设置状态(如隐藏选择器) + } + + // 更新关联的小部件 + private void updateWidget() { + Intent intent = new Intent(AppWidgetManager.ACTION_APPWIDGET_UPDATE); + + // 根据小部件类型设置不同的Provider + if (mWorkingNote.getWidgetType() == Notes.TYPE_WIDGET_2X) { + intent.setClass(this, NoteWidgetProvider_2x.class); + } else if (mWorkingNote.getWidgetType() == Notes.TYPE_WIDGET_4X) { + intent.setClass(this, NoteWidgetProvider_4x.class); + } else { + Log.e(TAG, "Unspported widget type"); + return; + } + + // 设置要更新的小部件ID + intent.putExtra(AppWidgetManager.EXTRA_APPWIDGET_IDS, new int[] { + mWorkingNote.getWidgetId() + }); + + sendBroadcast(intent); // 发送广播更新小部件 + setResult(RESULT_OK, intent); // 设置结果 + } + + // 点击事件处理 + public void onClick(View v) { + int id = v.getId(); + + // 背景颜色设置按钮点击 + if (id == R.id.btn_set_bg_color) { + mNoteBgColorSelector.setVisibility(View.VISIBLE); // 显示背景选择器 + // 显示当前选中背景的标记 + findViewById(sBgSelectorSelectionMap.get(mWorkingNote.getBgColorId())).setVisibility(View.VISIBLE); + } + // 背景颜色选项点击 + else if (sBgSelectorBtnsMap.containsKey(id)) { + // 隐藏之前选中的背景标记 + findViewById(sBgSelectorSelectionMap.get(mWorkingNote.getBgColorId())).setVisibility(View.GONE); + // 设置新背景颜色 + mWorkingNote.setBgColorId(sBgSelectorBtnsMap.get(id)); + mNoteBgColorSelector.setVisibility(View.GONE); // 隐藏背景选择器 + } + // 字体大小选项点击 + else if (sFontSizeBtnsMap.containsKey(id)) { + // 隐藏之前选中的字体大小标记 + findViewById(sFontSelectorSelectionMap.get(mFontSizeId)).setVisibility(View.GONE); + // 设置新字体大小 + mFontSizeId = sFontSizeBtnsMap.get(id); + // 保存到偏好设置 + mSharedPrefs.edit().putInt(PREFERENCE_FONT_SIZE, mFontSizeId).apply(); + // 显示新选中的字体大小标记 + findViewById(sFontSelectorSelectionMap.get(mFontSizeId)).setVisibility(View.VISIBLE); + + // 根据当前模式应用字体设置 + if (mWorkingNote.getCheckListMode() == TextNote.MODE_CHECK_LIST) { + getWorkingText(); + switchToListMode(mWorkingNote.getContent()); + } else { + // 设置编辑器文本外观 + mNoteEditor.setTextAppearance(this, + TextAppearanceResources.getTexAppearanceResource(mFontSizeId)); + } + mFontSizeSelector.setVisibility(View.GONE); // 隐藏字体大小选择器 + } + } + + // 返回键处理 + @Override + public void onBackPressed() { + if(clearSettingState()) { // 如果有设置面板显示,先关闭它们 + return; + } + + saveNote(); // 保存笔记 + super.onBackPressed(); // 执行默认返回操作 + } + + // 清除设置状态(隐藏所有选择器) + private boolean clearSettingState() { + if (mNoteBgColorSelector.getVisibility() == View.VISIBLE) { + mNoteBgColorSelector.setVisibility(View.GONE); + return true; + } else if (mFontSizeSelector.getVisibility() == View.VISIBLE) { + mFontSizeSelector.setVisibility(View.GONE); + return true; + } + return false; + } + + // 背景颜色变化回调 + public void onBackgroundColorChanged() { + // 更新背景选择标记 + findViewById(sBgSelectorSelectionMap.get(mWorkingNote.getBgColorId())).setVisibility(View.VISIBLE); + // 应用新背景颜色 + mNoteEditorPanel.setBackgroundResource(mWorkingNote.getBgColorResId()); + mHeadViewPanel.setBackgroundResource(mWorkingNote.getTitleBgResId()); + } + + // 准备选项菜单 + @Override + public boolean onPrepareOptionsMenu(Menu menu) { + if (isFinishing()) { // 如果Activity正在结束,不处理菜单 + return true; + } + + clearSettingState(); // 清除设置状态 + menu.clear(); // 清除原有菜单项 + + // 根据笔记类型加载不同菜单 + if (mWorkingNote.getFolderId() == Notes.ID_CALL_RECORD_FOLDER) { + getMenuInflater().inflate(R.menu.call_note_edit, menu); + } else { + getMenuInflater().inflate(R.menu.note_edit, menu); + } + + // 设置列表模式/普通模式菜单项标题 + if (mWorkingNote.getCheckListMode() == TextNote.MODE_CHECK_LIST) { + menu.findItem(R.id.menu_list_mode).setTitle(R.string.menu_normal_mode); + } else { + menu.findItem(R.id.menu_list_mode).setTitle(R.string.menu_list_mode); + } + + // 根据是否有提醒设置显示不同的菜单项 + if (mWorkingNote.hasClockAlert()) { + menu.findItem(R.id.menu_alert).setVisible(false); // 隐藏设置提醒 + menu.findItem(R.id.menu_delete_remind).setVisible(true); // 显示删除提醒 + } else { + menu.findItem(R.id.menu_alert).setVisible(true); // 显示设置提醒 + menu.findItem(R.id.menu_delete_remind).setVisible(false); // 隐藏删除提醒 + } + return true; + } + + // 菜单项选择处理 + @SuppressLint("NonConstantResourceId") + @Override + public boolean onOptionsItemSelected(MenuItem item) { + switch (item.getItemId()) { + case R.id.menu_new_note: // 新建笔记 + createNewNote(); + break; + case R.id.menu_delete: // 删除笔记 + showDeleteNoteDialog(); + break; + case R.id.menu_font_size: // 字体大小设置 + mFontSizeSelector.setVisibility(View.VISIBLE); + findViewById(sFontSelectorSelectionMap.get(mFontSizeId)).setVisibility(View.VISIBLE); + break; + case R.id.menu_list_mode: // 切换列表模式/普通模式 + toggleListMode(); + break; + case R.id.menu_share: // 分享笔记内容 + shareNoteContent(); + break; + case R.id.menu_send_to_desktop: // 发送到桌面 + sendToDesktop(); + break; + case R.id.menu_alert: // 设置提醒 + setReminder(); + break; + case R.id.menu_delete_remind: // 删除提醒 + mWorkingNote.setAlertDate(0, false); + break; + default: + break; + } + return true; + } + + // 显示删除笔记确认对话框 + private void showDeleteNoteDialog() { + AlertDialog.Builder builder = new AlertDialog.Builder(this); + builder.setTitle(getString(R.string.alert_title_delete)); + builder.setIcon(android.R.drawable.ic_dialog_alert); + builder.setMessage(getString(R.string.alert_message_delete_note)); + builder.setPositiveButton(android.R.string.ok, + (dialog, which) -> { + deleteCurrentNote(); // 删除当前笔记 + finish(); // 结束Activity + }); + builder.setNegativeButton(android.R.string.cancel, null); + builder.show(); + } + + // 切换列表模式/普通模式 + private void toggleListMode() { + int newMode = mWorkingNote.getCheckListMode() == 0 ? TextNote.MODE_CHECK_LIST : 0; + mWorkingNote.setCheckListMode(newMode); + } + + // 分享笔记内容 + private void shareNoteContent() { + getWorkingText(); + sendTo(this, mWorkingNote.getContent()); + } + + // 设置笔记提醒时间 + private void setReminder() { + // 创建日期时间选择对话框,传入当前时间作为初始值 + DateTimePickerDialog d = new DateTimePickerDialog(this, System.currentTimeMillis()); + + // 设置日期时间选择监听器 + d.setOnDateTimeSetListener((dialog, date) -> { + // 设置笔记的提醒时间 + mWorkingNote.setAlertDate(date, true); + }); + d.show(); // 显示对话框 + } + + /** + * 分享笔记内容到支持分享功能的应用 + * @param context 上下文对象 + * @param info 要分享的文本内容 + */ + private void sendTo(Context context, String info) { + // 创建分享意图 + Intent intent = new Intent(Intent.ACTION_SEND); + // 添加要分享的文本内容 + intent.putExtra(Intent.EXTRA_TEXT, info); + // 设置分享类型为纯文本 + intent.setType("text/plain"); + // 启动分享活动 + context.startActivity(intent); + } + + // 创建新笔记 + private void createNewNote() { + // 首先保存当前正在编辑的笔记 + saveNote(); + + // 结束当前Activity,确保安全性 + finish(); + + // 创建启动新笔记编辑Activity的意图 + Intent intent = new Intent(this, NoteEditActivity.class); + // 设置操作为插入或编辑 + intent.setAction(Intent.ACTION_INSERT_OR_EDIT); + // 传递当前文件夹ID + intent.putExtra(Notes.INTENT_EXTRA_FOLDER_ID, mWorkingNote.getFolderId()); + // 启动新的笔记编辑Activity + startActivity(intent); + } + + // 删除当前笔记 + private void deleteCurrentNote() { + // 检查笔记是否存在于数据库中 + if (mWorkingNote.existInDatabase()) { + // 创建笔记ID集合 + HashSet ids = new HashSet<>(); + long id = mWorkingNote.getNoteId(); + + // 检查笔记ID是否有效 + if (id != Notes.ID_ROOT_FOLDER) { + ids.add(id); // 添加要删除的笔记ID + } else { + Log.d(TAG, "Wrong note id, should not happen"); + } + + // 根据同步模式选择删除方式 + if (!isSyncMode()) { + // 直接批量删除笔记 + if (!DataUtils.batchDeleteNotes(getContentResolver(), ids)) { + Log.e(TAG, "Delete Note error"); + } + } else { + // 同步模式下将笔记移动到回收站 + if (!DataUtils.batchMoveToFolder(getContentResolver(), ids, Notes.ID_TRASH_FOLER)) { + Log.e(TAG, "Move notes to trash folder error, should not happens"); + } + } + } + // 标记笔记为已删除状态 + mWorkingNote.markDeleted(true); + } + + // 检查是否处于同步模式 + private boolean isSyncMode() { + // 通过偏好设置获取同步账号名称,长度大于0表示处于同步模式 + return !NotesPreferenceActivity.getSyncAccountName(this).trim().isEmpty(); + } + + // 当提醒时间发生变化时调用 + public void onClockAlertChanged(long date, boolean set) { + /* + 用户可以为未保存的笔记设置提醒,因此在设置提醒前需要先保存笔记 + */ + if (!mWorkingNote.existInDatabase()) { + saveNote(); // 保存笔记到数据库 + } + + // 检查笔记ID是否有效 + if (mWorkingNote.getNoteId() > 0) { + // 创建闹钟接收器意图 + Intent intent = new Intent(this, AlarmReceiver.class); + // 设置笔记URI + intent.setData(ContentUris.withAppendedId(Notes.CONTENT_NOTE_URI, mWorkingNote.getNoteId())); + // 创建待定意图 + PendingIntent pendingIntent = PendingIntent.getBroadcast(this, 0, intent, 0); + // 获取闹钟管理器服务 + AlarmManager alarmManager = ((AlarmManager) getSystemService(ALARM_SERVICE)); + + // 更新提醒头部显示 + showAlertHeader(); + + // 根据设置状态取消或设置闹钟 + if(!set) { + alarmManager.cancel(pendingIntent); // 取消闹钟 + } else { + alarmManager.set(AlarmManager.RTC_WAKEUP, date, pendingIntent); // 设置闹钟 + } + } else { + /* + 用户未输入任何内容(笔记不值得保存),我们没有笔记ID, + 提醒用户需要输入内容 + */ + Log.e(TAG, "Clock alert setting error"); + showToast(R.string.error_note_empty_for_clock); + } + } + + // 当关联的小部件发生变化时调用 + public void onWidgetChanged() { + updateWidget(); // 更新小部件显示 + } + + // 当编辑文本被删除时调用 + public void onEditTextDelete(int index, String text) { + int childCount = mEditTextList.getChildCount(); + if (childCount == 1) { + return; // 只有一个子项时不处理 + } + + // 更新后续子项的索引 + for (int i = index + 1; i < childCount; i++) { + ((NoteEditText) mEditTextList.getChildAt(i).findViewById(R.id.et_edit_text)) + .setIndex(i - 1); + } + + // 移除指定位置的视图 + mEditTextList.removeViewAt(index); + + // 获取要处理焦点的编辑框 + NoteEditText edit; + if(index == 0) { + edit = mEditTextList.getChildAt(0).findViewById(R.id.et_edit_text); + } else { + edit = mEditTextList.getChildAt(index - 1).findViewById(R.id.et_edit_text); + } + + // 处理被删除的文本 + int length = edit.length(); + edit.append(text); // 追加文本 + edit.requestFocus(); // 获取焦点 + edit.setSelection(length); // 设置光标位置 + } + + // 当在编辑文本中按下回车时调用 + public void onEditTextEnter(int index, String text) { + /* + 不应发生的情况,用于调试检查 + */ + if(index > mEditTextList.getChildCount()) { + Log.e(TAG, "Index out of mEditTextList boundrary, should not happen"); + } + + // 创建新列表项并添加到指定位置 + View view = getListItem(text, index); + mEditTextList.addView(view, index); + + // 设置新添加的编辑框获取焦点 + NoteEditText edit = view.findViewById(R.id.et_edit_text); + edit.requestFocus(); + edit.setSelection(0); + + // 更新后续子项的索引 + for (int i = index + 1; i < mEditTextList.getChildCount(); i++) { + ((NoteEditText) mEditTextList.getChildAt(i).findViewById(R.id.et_edit_text)) + .setIndex(i); + } + } + + // 切换到列表模式 + private void switchToListMode(String text) { + // 清除现有所有子视图 + mEditTextList.removeAllViews(); + + // 按换行符拆分文本 + String[] items = text.split("\n"); + int index = 0; + + // 为每个非空行创建列表项 + for (String item : items) { + if(!TextUtils.isEmpty(item)) { + mEditTextList.addView(getListItem(item, index)); + index++; + } + } + + // 添加一个空列表项用于输入新内容 + mEditTextList.addView(getListItem("", index)); + mEditTextList.getChildAt(index).findViewById(R.id.et_edit_text).requestFocus(); + + // 切换视图显示状态 + mNoteEditor.setVisibility(View.GONE); + mEditTextList.setVisibility(View.VISIBLE); + } + + // 获取高亮显示查询结果的文本 + private Spannable getHighlightQueryResult(String fullText, String userQuery) { + // 创建可样式化的字符串 + SpannableString spannable = new SpannableString(fullText == null ? "" : fullText); + + // 如果用户查询词不为空,则处理高亮 + if (!TextUtils.isEmpty(userQuery)) { + // 创建匹配用户查询词的正则表达式 + var mPattern = Pattern.compile(userQuery); + Matcher m = null; + if (fullText != null) { + m = mPattern.matcher(fullText); + } + int start = 0; + + // 查找所有匹配项并设置背景色高亮 + if (m != null) { + while (m.find(start)) { + spannable.setSpan( + new BackgroundColorSpan(this.getResources().getColor( + R.color.user_query_highlight)), m.start(), m.end(), + Spannable.SPAN_INCLUSIVE_EXCLUSIVE); + start = m.end(); + } + } + } + return spannable; + } + + // 获取列表项视图 + private View getListItem(String item, int index) { + // 加载列表项布局 + View view = LayoutInflater.from(this).inflate(R.layout.note_edit_list_item, null); + final NoteEditText edit = view.findViewById(R.id.et_edit_text); + + // 设置编辑框文本外观 + edit.setTextAppearance(this, TextAppearanceResources.getTexAppearanceResource(mFontSizeId)); + + // 设置复选框状态变化监听器 + CheckBox cb = view.findViewById(R.id.cb_edit_item); + cb.setOnCheckedChangeListener((buttonView, isChecked) -> { + // 根据复选框状态设置文本删除线 + if (isChecked) { + edit.setPaintFlags(edit.getPaintFlags() | Paint.STRIKE_THRU_TEXT_FLAG); + } else { + edit.setPaintFlags(Paint.ANTI_ALIAS_FLAG | Paint.DEV_KERN_TEXT_FLAG); + } + }); + + // 处理复选框初始状态 + if (item.startsWith(TAG_CHECKED)) { + cb.setChecked(true); // 设置为选中状态 + edit.setPaintFlags(edit.getPaintFlags() | Paint.STRIKE_THRU_TEXT_FLAG); // 添加删除线 + item = item.substring(TAG_CHECKED.length()).trim(); // 去除标记前缀 + } else if (item.startsWith(TAG_UNCHECKED)) { + cb.setChecked(false); // 设置为未选中状态 + edit.setPaintFlags(Paint.ANTI_ALIAS_FLAG | Paint.DEV_KERN_TEXT_FLAG); // 清除删除线 + item = item.substring(TAG_UNCHECKED.length()).trim(); // 去除标记前缀 + } + + // 设置编辑框变化监听器和索引 + edit.setOnTextViewChangeListener(this); + edit.setIndex(index); + // 设置编辑框文本(处理高亮查询结果) + edit.setText(getHighlightQueryResult(item, mUserQuery)); + return view; + } + + // 当文本内容发生变化时调用 + public void onTextChange(int index, boolean hasText) { + // 检查索引是否有效 + if (index >= mEditTextList.getChildCount()) { + Log.e(TAG, "Wrong index, should not happen"); + return; + } + + // 根据是否有文本设置复选框可见性 + if(hasText) { + mEditTextList.getChildAt(index).findViewById(R.id.cb_edit_item).setVisibility(View.VISIBLE); + } else { + mEditTextList.getChildAt(index).findViewById(R.id.cb_edit_item).setVisibility(View.GONE); + } + } + + // 当笔记的列表模式发生变化时调用 + public void onCheckListModeChanged(int oldMode, int newMode) { + // 切换到列表模式 + if (newMode == TextNote.MODE_CHECK_LIST) { + switchToListMode(mNoteEditor.getText().toString()); + } else { + // 切换回普通模式 + if (!getWorkingText()) { + // 去除未选中标记 + mWorkingNote.setWorkingText(mWorkingNote.getContent().replace(TAG_UNCHECKED + " ", "")); + } + // 设置编辑器文本(处理高亮查询结果) + mNoteEditor.setText(getHighlightQueryResult(mWorkingNote.getContent(), mUserQuery)); + // 切换视图显示状态 + mEditTextList.setVisibility(View.GONE); + mNoteEditor.setVisibility(View.VISIBLE); + } + } + + // 获取当前工作文本 + private boolean getWorkingText() { + boolean hasChecked = false; + // 如果是列表模式,处理所有列表项 + if (mWorkingNote.getCheckListMode() == TextNote.MODE_CHECK_LIST) { + StringBuilder sb = new StringBuilder(); + // 遍历所有列表项 + for (int i = 0; i < mEditTextList.getChildCount(); i++) { + View view = mEditTextList.getChildAt(i); + NoteEditText edit = view.findViewById(R.id.et_edit_text); + // 如果编辑框有文本内容 + if (!TextUtils.isEmpty(edit.getText())) { + // 根据复选框状态添加相应标记 + if (((CheckBox) view.findViewById(R.id.cb_edit_item)).isChecked()) { + sb.append(TAG_CHECKED).append(" ").append(edit.getText()).append("\n"); + hasChecked = true; + } else { + sb.append(TAG_UNCHECKED).append(" ").append(edit.getText()).append("\n"); + } + } + } + // 设置工作文本 + mWorkingNote.setWorkingText(sb.toString()); + } else { + // 普通模式直接获取编辑框文本 + mWorkingNote.setWorkingText(mNoteEditor.getText().toString()); + } + return hasChecked; // 返回是否有选中的项 + } + + // 保存笔记 + private boolean saveNote() { + getWorkingText(); // 获取当前工作文本 + boolean saved = mWorkingNote.saveNote(); // 保存笔记 + if (saved) { + /* + 从列表视图到编辑视图有两种模式:打开一个笔记,创建/编辑一个笔记。 + 打开笔记需要返回时保持原来的列表位置,而创建新笔记需要返回列表顶部。 + 这里的RESULT_OK用于标识创建/编辑状态 + */ + setResult(RESULT_OK); // 设置结果码 + } + return saved; // 返回保存结果 + } + + // 发送笔记到桌面(创建快捷方式) + private void sendToDesktop() { + /* + 在发送消息到桌面之前,应确保当前编辑的笔记已存在于数据库中。 + 因此,对于新笔记,首先需要保存它 + */ + if (!mWorkingNote.existInDatabase()) { + saveNote(); // 保存笔记到数据库 + } + + // 检查笔记ID是否有效 + if (mWorkingNote.getNoteId() > 0) { + Intent sender = new Intent(); + // 创建快捷方式点击时启动的意图 + Intent shortcutIntent = new Intent(this, NoteEditActivity.class); + shortcutIntent.setAction(Intent.ACTION_VIEW); + shortcutIntent.putExtra(Intent.EXTRA_UID, mWorkingNote.getNoteId()); + + // 设置快捷方式参数 + sender.putExtra(Intent.EXTRA_SHORTCUT_INTENT, shortcutIntent); + // 设置快捷方式名称(使用笔记内容前10个字符) + sender.putExtra(Intent.EXTRA_SHORTCUT_NAME, + makeShortcutIconTitle(mWorkingNote.getContent())); + // 设置快捷方式图标 + sender.putExtra(Intent.EXTRA_SHORTCUT_ICON_RESOURCE, + Intent.ShortcutIconResource.fromContext(this, R.drawable.icon_app)); + sender.putExtra("duplicate", true); // 允许重复创建 + sender.setAction("com.android.launcher.action.INSTALL_SHORTCUT"); // 设置安装快捷方式动作 + + showToast(R.string.info_note_enter_desktop); // 显示提示消息 + sendBroadcast(sender); // 发送广播创建快捷方式 + } else { + /* + 用户未输入任何内容(笔记不值得保存),我们没有笔记ID, + 提醒用户需要输入内容 + */ + Log.e(TAG, "Send to desktop error"); + showToast(R.string.error_note_empty_for_send_to_desktop); + } + } + + // 生成快捷方式标题 + private String makeShortcutIconTitle(String content) { + // 去除复选框标记 + content = content.replace(TAG_CHECKED, ""); + content = content.replace(TAG_UNCHECKED, ""); + // 截取前10个字符作为标题 + return content.length() > SHORTCUT_ICON_TITLE_MAX_LEN ? content.substring(0, + SHORTCUT_ICON_TITLE_MAX_LEN) : content; + } + + // 显示短时Toast提示 + private void showToast(int resId) { + showToast(resId, Toast.LENGTH_SHORT); // 默认显示短时Toast + } + + // 显示Toast提示 + private void showToast(int resId, int duration) { + Toast.makeText(this, resId, duration).show(); // 创建并显示Toast + } + //路径字符串格式 转换为 图片image格式 + private void convertToImage() { + NoteEditText noteEditText = findViewById(R.id.note_edit_view); //获取当前的edit + Editable editable = noteEditText.getText();//1.获取text + String noteText = null; //2.将note内容转换为字符串 + if (editable != null) { + noteText = editable.toString(); + } + int length = 0; //内容的长度 + if (editable != null) { + length = editable.length(); + } + //3.截取img片段 [local]+uri+[local],提取uri + for(int i = 0; i < length; i++) { + for(int j = i; j < length; j++) { + String img_fragment = noteText.substring(i, j+1); //img_fragment:关于图片路径的片段 + if(img_fragment.length() > 15 && img_fragment.endsWith("[/local]") && img_fragment.startsWith("[local]")){ + int limit = 7; //[local]为7个字符 + //[local][/local]共15个字符,剩下的为真正的path长度 + int len = img_fragment.length()-15; + //从[local]之后的len个字符就是path + String path = img_fragment.substring(limit,limit+len);//获取到了图片路径 + Bitmap bitmap = null; + Log.d(TAG, "图片的路径是:"+path); + try { + bitmap = BitmapFactory.decodeFile(path);//将图片路径解码为图片格式 + } catch (Exception e) { + e.printStackTrace(); + } + if(bitmap!=null){ //若图片存在 + Log.d(TAG, "图片不为null"); + ImageSpan imageSpan = new ImageSpan(NoteEditActivity.this, bitmap); + //4.创建一个SpannableString对象,以便插入用ImageSpan对象封装的图像 + String ss = "[local]" + path + "[/local]"; + SpannableString spannableString = new SpannableString(ss); + //5.将指定的标记对象附加到文本的开始...结束范围 + spannableString.setSpan(imageSpan, 0, ss.length(), Spannable.SPAN_EXCLUSIVE_EXCLUSIVE); + Log.d(TAG, "Create spannable string success!"); + Editable edit_text = noteEditText.getEditableText(); + edit_text.delete(i,i+len+15); //6.删掉图片路径的文字 + edit_text.insert(i, spannableString); //7.在路径的起始位置插入图片 + } + } + } + } + } + //重写onActivityResult()来处理返回的数据 + protected void onActivityResult(int requestCode, int resultCode, Intent intent) { + super.onActivityResult(requestCode, resultCode, intent); + ContentResolver resolver = getContentResolver(); + if (requestCode == PHOTO_REQUEST) { + Uri originalUri = intent.getData(); //1.获得图片的真实路径 + Bitmap bitmap = null; + try { + if (originalUri != null) { + bitmap = BitmapFactory.decodeStream(resolver.openInputStream(originalUri));//2.解码图片 + } + } catch (FileNotFoundException e) { + Log.d(TAG, "onActivityResult: get file_exception"); + e.printStackTrace(); + } + + if (bitmap != null) { + //3.根据Bitmap对象创建ImageSpan对象 + Log.d(TAG, "onActivityResult: bitmap is not null"); + ImageSpan imageSpan = new ImageSpan(NoteEditActivity.this, bitmap); + String path = getPath(this, originalUri); + //4.使用[local][/local]将path括起来,用于之后方便识别图片路径在note中的位置 + String img_fragment = "[local]" + path + "[/local]"; + //创建一个SpannableString对象,以便插入用ImageSpan对象封装的图像 + SpannableString spannableString = new SpannableString(img_fragment); + spannableString.setSpan(imageSpan, 0, img_fragment.length(), Spannable.SPAN_EXCLUSIVE_EXCLUSIVE); + //5.将选择的图片追加到EditText中光标所在位置 + NoteEditText e = findViewById(R.id.note_edit_view); + int index = e.getSelectionStart(); //获取光标所在位置 + Log.d(TAG, "Index是: " + index); + Editable edit_text = e.getEditableText(); + edit_text.insert(index, spannableString); //将图片插入到光标所在位置 + + mWorkingNote.mContent = Objects.requireNonNull(e.getText()).toString(); + //6.把改动提交到数据库中,两个数据库表都要改的 + ContentResolver contentResolver = getContentResolver(); + ContentValues contentValues = new ContentValues(); + final long id = mWorkingNote.getNoteId(); + contentValues.put("snippet", mWorkingNote.mContent); + contentResolver.update(Uri.parse("content://micode_notes/note"), contentValues, "_id=?", new String[]{"" + id}); + ContentValues contentValues1 = new ContentValues(); + contentValues1.put("content", mWorkingNote.mContent); + contentResolver.update(Uri.parse("content://micode_notes/data"), contentValues1, "mime_type=? and note_id=?", new String[]{"vnd.android.cursor.item/text_note", "" + id}); + + } else { + Toast.makeText(NoteEditActivity.this, "获取图片失败", Toast.LENGTH_SHORT).show(); + } + } + } + //获取文件的real path + public String getPath(final Context context, final Uri uri) { + + final boolean isKitKat = true; + + // DocumentProvider + if (DocumentsContract.isDocumentUri(context, uri)) { + // ExternalStorageProvider +// if (isExternalStorageDocument(uri)) { +// final String docId = DocumentsContract.getDocumentId(uri); +// final String[] split = docId.split(":"); +// final String type = split[0]; +// +// if ("primary".equalsIgnoreCase(type)) { +// return Environment.getExternalStorageDirectory() + "/" + split[1]; +// } +// } +// // DownloadsProvider +// else if (isDownloadsDocument(uri)) { +// final String id = DocumentsContract.getDocumentId(uri); +// final Uri contentUri = ContentUris.withAppendedId(Uri.parse("content://downloads/public_downloads"), Long.valueOf(id)); +// return getDataColumn(context, contentUri, null, null); +// } + // MediaProvider +// else + if (isMediaDocument(uri)) { + final String docId = DocumentsContract.getDocumentId(uri); + final String[] split = docId.split(":"); + final String type = split[0]; + + Uri contentUri = null; + if ("image".equals(type)) { + contentUri = MediaStore.Images.Media.EXTERNAL_CONTENT_URI; + } + + final String selection = "_id=?"; + final String[] selectionArgs = new String[]{split[1]}; + + return getDataColumn(context, contentUri, selection, selectionArgs); + } + } + // Media + else if ("content".equalsIgnoreCase(uri.getScheme())) { + return getDataColumn(context, uri, null, null); + } + // File + else if ("file".equalsIgnoreCase(uri.getScheme())) { + return uri.getPath(); + } + return null; + } + +} diff --git a/src/mi_note/app/src/main/java/net/micode/notes/ui/NoteEditText.java b/src/mi_note/app/src/main/java/net/micode/notes/ui/NoteEditText.java new file mode 100644 index 0000000..42c075d --- /dev/null +++ b/src/mi_note/app/src/main/java/net/micode/notes/ui/NoteEditText.java @@ -0,0 +1,256 @@ +/* + * 版权所有 (c) 2010-2011,MiCode 开源社区 (www.micode.net) + * 根据 Apache 许可证 2.0 版本("许可证")授权; + * 除非符合许可证的规定,否则不得使用本文件。 + * 您可以从以下网址获取许可证副本: + * http://www.apache.org/licenses/LICENSE-2.0 + * 除非适用法律要求或书面同意,本软件按"原样"分发, + * 没有任何明示或暗示的保证或条件。 + * 详见许可证中规定的权限和限制。 + * (注:这是一份标准的Apache许可证2.0版本的开源声明) + */ + +// 定义当前类的包路径,指明该类属于net.micode.notes.ui 包 +package net.micode.notes.ui; + +/* 导入Android基础类 */ +// Context类提供应用环境信息访问接口 +import android.content.Context; +// Rect类表示一个矩形区域,用于处理视图边界 +import android.graphics.Rect; +// Layout类用于管理文本布局和测量 +import android.text.Layout; +// Selection类用于处理文本选择操作 +import android.text.Selection; +// Spanned接口表示带有样式的文本 +// TextUtils类提供文本处理工具方法 +import android.text.TextUtils; +// URLSpan类用于标记文本中的超链接 +import android.text.style.URLSpan; +// AttributeSet接口表示XML属性集合 +import android.util.AttributeSet; +// Log类提供日志记录功能 +import android.util.Log; + +/* 导入Android视图相关类 */ +// ContextMenu类表示上下文菜单 +import android.view.ContextMenu; +// KeyEvent类表示按键事件 +import android.view.KeyEvent; +// MenuItem类表示菜单项 +// OnMenuItemClickListener接口定义菜单项点击回调 +// MotionEvent类表示触摸事件 +import android.view.MotionEvent; +// EditText类是基础文本编辑框 + +/* 导入项目资源 */ +// 导入项目R类,用于访问资源ID +import net.micode.notes.R; + +/* 导入Java集合类 */ +// HashMap类实现哈希表结构的Map接口 +import java.util.HashMap; +// Map接口表示键值对映射集合 +import java.util.Map; +import java.util.Objects; + +// 继承自AppCompatEditText的支持兼容的编辑文本框 +public class NoteEditText extends androidx.appcompat.widget.AppCompatEditText { + private static final String TAG = "NoteEditText"; // 日志标签 + private int mIndex; // 当前编辑框在列表中的索引 + private int mSelectionStartBeforeDelete; // 删除操作前的选择开始位置 + + // 定义支持的URL协议常量 + private static final String SCHEME_TEL = "tel:"; + private static final String SCHEME_HTTP = "http:"; + private static final String SCHEME_EMAIL = "mailto:"; + + // 创建协议到资源ID的映射表 + private static final Map sSchemaActionResMap = new HashMap<>(); + static { + // 初始化协议对应的字符串资源 + sSchemaActionResMap.put(SCHEME_TEL, R.string.note_link_tel); // 电话协议 + sSchemaActionResMap.put(SCHEME_HTTP, R.string.note_link_web); // 网页协议 + sSchemaActionResMap.put(SCHEME_EMAIL, R.string.note_link_email);// 邮件协议 + } + + /** + * 定义文本变化监听接口,由NoteEditActivity实现 + * 用于处理编辑文本框的删除和新增事件 + */ + public interface OnTextViewChangeListener { + /** + * 当删除键按下且文本为空时删除当前编辑框 + * @param index 当前编辑框索引 + * @param text 当前编辑框文本内容 + */ + void onEditTextDelete(int index, String text); + + /** + * 当回车键按下时在当前编辑框后添加新编辑框 + * @param index 新编辑框的索引 + * @param text 新编辑框的初始文本 + */ + void onEditTextEnter(int index, String text); + + /** + * 当文本变化时隐藏或显示选项 + * @param index 当前编辑框索引 + * @param hasText 是否有文本内容 + */ + void onTextChange(int index, boolean hasText); + } + + private OnTextViewChangeListener mOnTextViewChangeListener; // 文本变化监听器实例 + + // 第一个构造方法 + public NoteEditText(Context context) { + super(context, null); + mIndex = 0; // 默认索引为0 + } + + // 设置当前编辑框索引 + public void setIndex(int index) { + mIndex = index; + } + + // 设置文本变化监听器 + public void setOnTextViewChangeListener(OnTextViewChangeListener listener) { + mOnTextViewChangeListener = listener; + } + + // 第二个构造方法 + public NoteEditText(Context context, AttributeSet attrs) { + super(context, attrs, android.R.attr.editTextStyle); // 调用父类构造方法 + } + + // 第三个构造方法 + public NoteEditText(Context context, AttributeSet attrs, int defStyle) { + super(context, attrs, defStyle); + // TODO: 待实现的构造函数 + } + + // 触摸事件处理 + @Override + public boolean onTouchEvent(MotionEvent event) { + // 按下事件处理 + if (event.getAction() == MotionEvent.ACTION_DOWN) { + // 计算触摸点的准确位置 + int x = (int) event.getX(); + int y = (int) event.getY(); + x -= getTotalPaddingLeft(); // 减去左边距 + y -= getTotalPaddingTop(); // 减去上边距 + x += getScrollX(); // 加上水平滚动量 + y += getScrollY(); // 加上垂直滚动量 + + // 获取布局并确定触摸点对应的文本偏移位置 + Layout layout = getLayout(); + int line = layout.getLineForVertical(y); // 获取垂直方向的行号 + int off = layout.getOffsetForHorizontal(line, x); // 获取水平方向的偏移量 + Selection.setSelection(getText(), off); // 设置文本选择位置 + } + + return super.onTouchEvent(event); // 调用父类处理方法 + } + + // 按键按下事件处理 + @Override + public boolean onKeyDown(int keyCode, KeyEvent event) { + switch (keyCode) { + case KeyEvent.KEYCODE_ENTER: // 回车键 + if (mOnTextViewChangeListener != null) { + return false; // 交给onKeyUp处理 + } + break; + case KeyEvent.KEYCODE_DEL: // 删除键 + mSelectionStartBeforeDelete = getSelectionStart(); // 记录删除前的位置 + break; + default: + break; + } + return super.onKeyDown(keyCode, event); // 调用父类处理方法 + } + + // 按键释放事件处理 + @Override + public boolean onKeyUp(int keyCode, KeyEvent event) { + switch(keyCode) { + case KeyEvent.KEYCODE_DEL: // 删除键 + if (mOnTextViewChangeListener != null) { + // 如果在起始位置删除且不是第一个编辑框,则触发删除回调 + if (0 == mSelectionStartBeforeDelete && mIndex != 0) { + mOnTextViewChangeListener.onEditTextDelete(mIndex, Objects.requireNonNull(getText()).toString()); + return true; // 消费事件 + } + } else { + Log.d(TAG, "OnTextViewChangeListener was not seted"); + } + break; + case KeyEvent.KEYCODE_ENTER: // 回车键 + if (mOnTextViewChangeListener != null) { + // 分割文本:光标后的内容放入新编辑框 + int selectionStart = getSelectionStart(); + String text = Objects.requireNonNull(getText()).subSequence(selectionStart, length()).toString(); + setText(getText().subSequence(0, selectionStart)); // 保留光标前的内容 + mOnTextViewChangeListener.onEditTextEnter(mIndex + 1, text); // 触发添加回调 + } else { + Log.d(TAG, "OnTextViewChangeListener was not seted"); + } + break; + default: + break; + } + return super.onKeyUp(keyCode, event); // 调用父类处理方法 + } + + // 焦点变化处理 + @Override + protected void onFocusChanged(boolean focused, int direction, Rect previouslyFocusedRect) { + // 通知监听器文本变化状态 + if (mOnTextViewChangeListener != null) { + mOnTextViewChangeListener.onTextChange(mIndex, focused || !TextUtils.isEmpty(getText())); + } + super.onFocusChanged(focused, direction, previouslyFocusedRect); // 调用父类方法 + } + + // 创建上下文菜单 + @Override + protected void onCreateContextMenu(ContextMenu menu) { + if (getText() != null) { + // 获取当前选择的起止位置 + int selStart = getSelectionStart(); + int selEnd = getSelectionEnd(); + + // 计算最小和最大位置 + int min = Math.min(selStart, selEnd); + int max = Math.max(selStart, selEnd); + + // 获取选择范围内的URLSpan对象 + final URLSpan[] urls = getText().getSpans(min, max, URLSpan.class); + if (urls.length == 1) { // 如果选中了一个URL + int defaultResId = 0; + // 根据URL协议类型获取对应的资源ID + for(String schema: sSchemaActionResMap.keySet()) { + if(urls[0].getURL().contains(schema)) { + defaultResId = sSchemaActionResMap.get(schema); + break; + } + } + + // 如果没有匹配的协议,使用默认资源 + if (defaultResId == 0) { + defaultResId = R.string.note_link_other; + } + + // 添加上下文菜单项并设置点击监听器 + menu.add(0, 0, 0, defaultResId).setOnMenuItemClickListener( + item -> { + // 点击时执行URL跳转 + urls[0].onClick(NoteEditText.this); + return true; + }); + } + } + super.onCreateContextMenu(menu); // 调用父类方法 + } +} diff --git a/src/mi_note/app/src/main/java/net/micode/notes/ui/NoteItemData.java b/src/mi_note/app/src/main/java/net/micode/notes/ui/NoteItemData.java new file mode 100644 index 0000000..bf120a7 --- /dev/null +++ b/src/mi_note/app/src/main/java/net/micode/notes/ui/NoteItemData.java @@ -0,0 +1,261 @@ +/* + * 版权所有 (c) 2010-2011,MiCode 开源社区 (www.micode.net) + * 根据 Apache 许可证 2.0 版本("许可证")授权; + * 除非符合许可证的规定,否则不得使用本文件。 + * 您可以从以下网址获取许可证副本: + * http://www.apache.org/licenses/LICENSE-2.0 + * 除非适用法律要求或书面同意,本软件按"原样"分发, + * 没有任何明示或暗示的保证或条件。 + * 详见许可证中规定的权限和限制。 + * (注:这是一份标准的Apache许可证2.0版本的开源声明) + */ + +// 定义当前类的包路径,属于net.micode.notes.ui 包 +package net.micode.notes.ui; + +// 导入Android基础类 +import android.content.Context; // 上下文对象,提供应用环境信息 +import android.database.Cursor; // 数据库查询结果游标 +import android.text.TextUtils; // 文本处理工具类 + +// 导入项目自定义类 +import net.micode.notes.data.Contact; // 联系人数据类 +import net.micode.notes.data.Notes; // 笔记数据常量定义 +import net.micode.notes.data.Notes.NoteColumns; // 笔记表列名定义 +import net.micode.notes.tool.DataUtils; // 数据工具类 + +/** + * 笔记项数据类,封装单条笔记的所有数据 + */ +public class NoteItemData { + // 数据库查询列名投影(指定需要查询的列) + static final String[] PROJECTION = new String[] { + NoteColumns.ID, // 笔记ID + NoteColumns.ALERTED_DATE, // 提醒日期 + NoteColumns.BG_COLOR_ID, // 背景颜色ID + NoteColumns.CREATED_DATE, // 创建日期 + NoteColumns.HAS_ATTACHMENT, // 是否有附件 + NoteColumns.MODIFIED_DATE, // 修改日期 + NoteColumns.NOTES_COUNT, // 笔记数量(针对文件夹) + NoteColumns.PARENT_ID, // 父项ID + NoteColumns.SNIPPET, // 内容摘要 + NoteColumns.TYPE, // 笔记类型 + NoteColumns.WIDGET_ID, // 关联小部件ID + NoteColumns.WIDGET_TYPE, // 小部件类型 + }; + + // 列索引常量定义(对应PROJECTION顺序) + private static final int ID_COLUMN = 0; // ID列索引 + private static final int ALERTED_DATE_COLUMN = 1; // 提醒日期列索引 + private static final int BG_COLOR_ID_COLUMN = 2; // 背景颜色列索引 + private static final int CREATED_DATE_COLUMN = 3; // 创建日期列索引 + private static final int HAS_ATTACHMENT_COLUMN = 4; // 附件列索引 + private static final int MODIFIED_DATE_COLUMN = 5; // 修改日期列索引 + private static final int NOTES_COUNT_COLUMN = 6; // 笔记数量列索引 + private static final int PARENT_ID_COLUMN = 7; // 父项ID列索引 + private static final int SNIPPET_COLUMN = 8; // 摘要列索引 + private static final int TYPE_COLUMN = 9; // 类型列索引 + private static final int WIDGET_ID_COLUMN = 10; // 小部件ID列索引 + private static final int WIDGET_TYPE_COLUMN = 11; // 小部件类型列索引 + + /* 笔记数据字段 */ + private final long mId; // 笔记唯一ID + private final long mAlertDate; // 提醒时间戳 + private final int mBgColorId; // 背景颜色资源ID + private final long mCreatedDate; // 创建时间戳 + private final boolean mHasAttachment; // 是否有附件 + private final long mModifiedDate; // 最后修改时间戳 + private final int mNotesCount; // 包含的笔记数量(文件夹用) + private final long mParentId; // 父文件夹ID + private String mSnippet; // 笔记内容摘要 + private final int mType; // 笔记类型(笔记/文件夹等) + private final int mWidgetId; // 关联的小部件ID + private final int mWidgetType; // 小部件类型 + + /* 联系人相关字段 */ + private String mName; // 联系人姓名(通话记录用) + private String mPhoneNumber; // 电话号码(通话记录用) + + /* 位置状态标识 */ + private boolean mIsLastItem; // 是否是列表最后一项 + private boolean mIsFirstItem; // 是否是列表第一项 + private boolean mIsOnlyOneItem; // 是否是唯一一项 + private boolean mIsOneNoteFollowingFolder; // 是否是单个笔记跟随文件夹 + private boolean mIsMultiNotesFollowingFolder; // 是否是多个笔记跟随文件夹 + + /** + * 构造函数,从游标初始化笔记数据 + * @param context 上下文对象 + * @param cursor 数据库查询结果游标 + */ + public NoteItemData(Context context, Cursor cursor) { + // 从游标读取各列数据 + mId = cursor.getLong(ID_COLUMN); + mAlertDate = cursor.getLong(ALERTED_DATE_COLUMN); + mBgColorId = cursor.getInt(BG_COLOR_ID_COLUMN); + mCreatedDate = cursor.getLong(CREATED_DATE_COLUMN); + // 将整型转换为布尔值 + mHasAttachment = (cursor.getInt(HAS_ATTACHMENT_COLUMN) > 0); + mModifiedDate = cursor.getLong(MODIFIED_DATE_COLUMN); + mNotesCount = cursor.getInt(NOTES_COUNT_COLUMN); + mParentId = cursor.getLong(PARENT_ID_COLUMN); + // 处理内容摘要,移除复选框标记 + mSnippet = cursor.getString(SNIPPET_COLUMN); + mSnippet = mSnippet.replace(NoteEditActivity.TAG_CHECKED, "").replace( + NoteEditActivity.TAG_UNCHECKED, ""); + mType = cursor.getInt(TYPE_COLUMN); + mWidgetId = cursor.getInt(WIDGET_ID_COLUMN); + mWidgetType = cursor.getInt(WIDGET_TYPE_COLUMN); + + // 初始化通话记录相关信息 + mPhoneNumber = ""; + if (mParentId == Notes.ID_CALL_RECORD_FOLDER) { + // 如果是通话记录文件夹中的笔记,获取电话号码 + mPhoneNumber = DataUtils.getCallNumberByNoteId(context.getContentResolver(), mId); + if (!TextUtils.isEmpty(mPhoneNumber)) { + // 根据电话号码获取联系人姓名 + mName = Contact.getContact(context, mPhoneNumber); + if (mName == null) { + mName = mPhoneNumber; // 如果没有联系人信息,显示号码 + } + } + } + + // 确保姓名不为null + if (mName == null) { + mName = ""; + } + + // 检查当前项在列表中的位置状态 + checkPostion(cursor); + } + + /** + * 检查当前项在列表中的位置状态 + * @param cursor 数据库游标 + */ + private void checkPostion(Cursor cursor) { + mIsLastItem = cursor.isLast(); // 是否是最后一项 + mIsFirstItem = cursor.isFirst(); // 是否是第一项 + mIsOnlyOneItem = (cursor.getCount() == 1); // 是否是唯一一项 + mIsMultiNotesFollowingFolder = false; + mIsOneNoteFollowingFolder = false; + + // 如果是笔记类型且不是第一项,检查前一项是否是文件夹 + if (mType == Notes.TYPE_NOTE && !mIsFirstItem) { + int position = cursor.getPosition(); + if (cursor.moveToPrevious()) { // 移动到前一项 + int prevType = cursor.getInt(TYPE_COLUMN); + // 前一项是文件夹或系统文件夹 + if (prevType == Notes.TYPE_FOLDER || prevType == Notes.TYPE_SYSTEM) { + // 判断是多个还是一个笔记跟随文件夹 + if (cursor.getCount() > (position + 1)) { + mIsMultiNotesFollowingFolder = true; + } else { + mIsOneNoteFollowingFolder = true; + } + } + // 移动回原来的位置 + if (!cursor.moveToNext()) { + throw new IllegalStateException("cursor move to previous but can't move back"); + } + } + } + } + + /* ========== 以下是各种访问方法 ========== */ + + public boolean isOneFollowingFolder() { + return mIsOneNoteFollowingFolder; // 是否是单个笔记跟随文件夹 + } + + public boolean isMultiFollowingFolder() { + return mIsMultiNotesFollowingFolder; // 是否是多个笔记跟随文件夹 + } + + public boolean isLast() { + return mIsLastItem; // 是否是最后一项 + } + + public String getCallName() { + return mName; // 获取联系人姓名 + } + + public boolean isFirst() { + return mIsFirstItem; // 是否是第一项 + } + + public boolean isSingle() { + return mIsOnlyOneItem; // 是否是唯一一项 + } + + public long getId() { + return mId; // 获取笔记ID + } + + public long getAlertDate() { + return mAlertDate; // 获取提醒时间 + } + + public long getCreatedDate() { + return mCreatedDate; // 获取创建时间 + } + + public boolean hasAttachment() { + return mHasAttachment; // 是否有附件 + } + + public long getModifiedDate() { + return mModifiedDate; // 获取修改时间 + } + + public int getBgColorId() { + return mBgColorId; // 获取背景颜色ID + } + + public long getParentId() { + return mParentId; // 获取父文件夹ID + } + + public int getNotesCount() { + return mNotesCount; // 获取包含的笔记数量 + } + + public long getFolderId() { + return mParentId; // 获取文件夹ID(与getParentId相同) + } + + public int getType() { + return mType; // 获取笔记类型 + } + + public int getWidgetType() { + return mWidgetType; // 获取小部件类型 + } + + public int getWidgetId() { + return mWidgetId; // 获取小部件ID + } + + public String getSnippet() { + return mSnippet; // 获取内容摘要 + } + + public boolean hasAlert() { + return (mAlertDate > 0); // 是否有提醒 + } + + public boolean isCallRecord() { + // 是否是通话记录(在通话记录文件夹中且有号码) + return (mParentId == Notes.ID_CALL_RECORD_FOLDER && !TextUtils.isEmpty(mPhoneNumber)); + } + + /** + * 静态方法:从游标获取笔记类型 + * @param cursor 数据库游标 + * @return 笔记类型 + */ + public static int getNoteType(Cursor cursor) { + return cursor.getInt(TYPE_COLUMN); + } +} \ No newline at end of file diff --git a/src/mi_note/app/src/main/java/net/micode/notes/ui/NotesListActivity.java b/src/mi_note/app/src/main/java/net/micode/notes/ui/NotesListActivity.java new file mode 100644 index 0000000..4de9b0a --- /dev/null +++ b/src/mi_note/app/src/main/java/net/micode/notes/ui/NotesListActivity.java @@ -0,0 +1,1358 @@ +/* + * 版权所有 (c) 2010-2011,MiCode 开源社区 (www.micode.net) + * 根据 Apache 许可证 2.0 版本("许可证")授权; + * 除非符合许可证的规定,否则不得使用本文件。 + * 您可以从以下网址获取许可证副本: + * http://www.apache.org/licenses/LICENSE-2.0 + * 除非适用法律要求或书面同意,本软件按"原样"分发, + * 没有任何明示或暗示的保证或条件。 + * 详见许可证中规定的权限和限制。 + * (注:这是一份标准的Apache许可证2.0版本的开源声明) + */ + +// 定义当前包名为net.micode.notes.ui +package net.micode.notes.ui; + +/* 导入Android基础包 */ +import android.annotation.SuppressLint; +import android.app.Activity; // 基础Activity类 +import android.app.AlertDialog; // 警告对话框类 +import android.app.Dialog; // 对话框基类 +import android.appwidget.AppWidgetManager; // 小部件管理类 +import android.content.AsyncQueryHandler; // 异步查询处理器 +import android.content.ContentResolver; // 内容解析器 +import android.content.ContentValues; // 内容值对象 +import android.content.Context; // 上下文对象 +import android.content.Intent; // Intent类 +import android.content.SharedPreferences; // 共享偏好设置 +import android.database.Cursor; // 数据库游标 +import android.graphics.Point; +// 异步任务类 +import android.os.Build; +import android.os.Bundle; // Bundle数据包 +// 偏好设置管理器 +import android.text.Editable; // 可编辑文本接口 +import android.text.TextUtils; // 文本工具类 +import android.text.TextWatcher; // 文本变化监听器 +import android.util.Log; // 日志工具 +import android.view.ActionMode; // 上下文操作模式 +import android.view.ContextMenu; // 上下文菜单 +import android.view.ContextMenu.ContextMenuInfo; // 上下文菜单信息 +import android.view.Display; // 显示设备信息 +import android.view.HapticFeedbackConstants; // 触觉反馈常量 +import android.view.LayoutInflater; // 布局加载器 +import android.view.Menu; // 菜单类 +import android.view.MenuItem; // 菜单项 +import android.view.MenuItem.OnMenuItemClickListener; // 菜单项点击监听器 +import android.view.MotionEvent; // 触摸事件 +import android.view.View; // 视图基类 +import android.view.View.OnClickListener; // 点击监听器 +import android.view.View.OnCreateContextMenuListener; // 上下文菜单创建监听器 +import android.view.View.OnTouchListener; // 触摸监听器 +import android.view.inputmethod.InputMethodManager; // 输入法管理器 +import android.widget.AdapterView; // 适配器视图基类 +import android.widget.AdapterView.OnItemClickListener; // 列表项点击监听器 +import android.widget.AdapterView.OnItemLongClickListener; // 列表项长按监听器 +import android.widget.Button; // 按钮控件 +import android.widget.EditText; // 编辑文本框 +import android.widget.ListView; // 列表视图 +import android.widget.TextView; // 文本视图 +import android.widget.Toast; // 提示信息控件 + +/* 导入AndroidX支持库 */ +import androidx.annotation.NonNull; // 非空注解 + +/* 导入项目资源 */ +import net.micode.notes.R; // 自动生成的R资源类 + +/* 导入项目数据相关类 */ +import net.micode.notes.data.Notes; // 笔记数据库常量 +import net.micode.notes.data.Notes.NoteColumns; // 笔记列名定义 + +/* 导入Google任务同步服务 */ +import net.micode.notes.gtask.remote.GTaskSyncService; // Google任务同步服务 + +/* 导入项目模型类 */ +import net.micode.notes.model.WorkingNote; // 工作笔记模型 + +/* 导入项目工具类 */ +import net.micode.notes.tool.BackupUtils; // 备份工具 +import net.micode.notes.tool.DataUtils; // 数据工具 +import net.micode.notes.tool.ResourceParser; // 资源解析器 + +/* 导入项目UI适配器 */ +import net.micode.notes.ui.NotesListAdapter.AppWidgetAttribute; // 小部件属性定义 + +/* 导入项目小部件相关 */ +import net.micode.notes.widget.NoteWidgetProvider_2x; // 2x尺寸小部件 +import net.micode.notes.widget.NoteWidgetProvider_4x; // 4x尺寸小部件 + +/* 导入Java IO类 */ +import java.io.BufferedReader; // 缓冲读取器 +import java.io.IOException; // IO异常 +import java.io.InputStream; // 输入流 +import java.io.InputStreamReader; // 输入流读取器 + +/* 导入Java集合类 */ +import java.util.HashSet; // 哈希集合 +import java.util.concurrent.ExecutorService; +import java.util.concurrent.Executors; + +// 定义笔记列表Activity,实现点击和长按监听接口 +public class NotesListActivity extends Activity implements OnClickListener, OnItemLongClickListener { + // 查询令牌常量 + private static final int FOLDER_NOTE_LIST_QUERY_TOKEN = 0; // 文件夹笔记列表查询标识 + private static final int FOLDER_LIST_QUERY_TOKEN = 1; // 文件夹列表查询标识 + + // 上下文菜单项ID + private static final int MENU_FOLDER_DELETE = 0; // 删除文件夹菜单ID + private static final int MENU_FOLDER_VIEW = 1; // 查看文件夹菜单ID + private static final int MENU_FOLDER_CHANGE_NAME = 2; // 重命名文件夹菜单ID + + // 偏好设置键(是否已添加引导说明) + private static final String PREFERENCE_ADD_INTRODUCTION = "net.micode.notes.introduction"; + + // 列表编辑状态枚举 + private enum ListEditState { + NOTE_LIST, // 普通笔记列表模式 + SUB_FOLDER, // 子文件夹模式 + CALL_RECORD_FOLDER // 通话记录文件夹模式 + } + + // 成员变量声明 + private ListEditState mState; // 当前列表状态 + private BackgroundQueryHandler mBackgroundQueryHandler; // 后台查询处理器 + private NotesListAdapter mNotesListAdapter; // 笔记列表适配器 + private ListView mNotesListView; // 笔记列表视图 + private Button mAddNewNote; // 新建笔记按钮 + private boolean mDispatch; // 触摸事件分发标志 + private int mOriginY; // 触摸起始Y坐标 + private int mDispatchY; // 触摸分发Y坐标 + private TextView mTitleBar; // 标题栏文本 + private long mCurrentFolderId; // 当前文件夹ID + private ContentResolver mContentResolver; // 内容解析器 + private ModeCallback mModeCallBack; // 多选模式回调 + private static final String TAG = "NotesListActivity"; // 日志标签 + public static final int NOTES_LISTVIEW_SCROLL_RATE = 30; // 列表滚动速率 + private NoteItemData mFocusNoteDataItem; // 当前焦点笔记数据 + private int mode = -1; + // SQL查询条件 + private static final String NORMAL_SELECTION = NoteColumns.PARENT_ID + "=?"; + private static final String ROOT_FOLDER_SELECTION = "(" + NoteColumns.TYPE + "<>" + + Notes.TYPE_SYSTEM + " AND " + NoteColumns.PARENT_ID + "=?)" + " OR (" + + NoteColumns.ID + "=" + Notes.ID_CALL_RECORD_FOLDER + " AND " + + NoteColumns.NOTES_COUNT + ">0)"; + + // 请求码常量 + private final static int REQUEST_CODE_OPEN_NODE = 102; // 打开笔记请求码 + private final static int REQUEST_CODE_NEW_NODE = 103; // 新建笔记请求码 + + @Override + protected void onCreate(Bundle savedInstanceState) { + super.onCreate(savedInstanceState); + this.setContentView(R.layout.note_list); // 设置布局文件 + + initResources(); // 初始化资源 + + // 首次使用时添加引导说明 + setAppInfoFromRawRes(); + getWindow().setBackgroundDrawableResource(R.drawable.anqila); + getWindow().setBackgroundDrawableResource(R.drawable.aguduo); + getWindow().setBackgroundDrawableResource(R.drawable.yao); + initResources(); + setAppInfoFromRawRes(); + } + + @Override + protected void onActivityResult(int requestCode, int resultCode, Intent data) { + // 处理笔记打开/新建返回结果 + if (resultCode == RESULT_OK + && (requestCode == REQUEST_CODE_OPEN_NODE || requestCode == REQUEST_CODE_NEW_NODE)) { + mNotesListAdapter.changeCursor(null); // 清空当前游标触发刷新 + } else { + super.onActivityResult(requestCode, resultCode, data); + } + } + + // 从raw资源读取并设置应用引导信息 + private void setAppInfoFromRawRes() { + SharedPreferences sp = getSharedPreferences( + getPackageName() + "_preferences", // 与原默认文件名一致 + Context.MODE_PRIVATE + ); + // 检查是否已经添加过引导说明 + if (!sp.getBoolean(PREFERENCE_ADD_INTRODUCTION, false)) { + StringBuilder sb = new StringBuilder(); + InputStream in = null; + try { + // 从raw资源读取引导文本 + in = getResources().openRawResource(R.raw.introduction); + InputStreamReader isr = new InputStreamReader(in); + BufferedReader br = new BufferedReader(isr); + char[] buf = new char[1024]; + int len; + while ((len = br.read(buf)) > 0) { + sb.append(buf, 0, len); + } + } catch (IOException e) { + Log.e(TAG, "Batch delete error", e); + return; + } finally { + // 关闭输入流 + if (in != null) { + try { + in.close(); + } catch (IOException e) { + Log.e(TAG, "Save introduction note error"); + } + } + } + + // 创建并保存引导笔记 + WorkingNote note = WorkingNote.createEmptyNote(this, Notes.ID_ROOT_FOLDER, + AppWidgetManager.INVALID_APPWIDGET_ID, Notes.TYPE_WIDGET_INVALIDE, + ResourceParser.RED); + note.setWorkingText(sb.toString()); + if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.R) { + if (note.saveNote()) { + sp.edit().putBoolean(PREFERENCE_ADD_INTRODUCTION, true).apply(); + } else { + Log.e(TAG, "Save introduction note error"); + } + } + } + } + + @Override + protected void onStart() { + super.onStart(); + startAsyncNotesListQuery(); // 启动异步笔记列表查询 + } + + // 初始化视图资源和变量 + @SuppressLint("ClickableViewAccessibility") + private void initResources() { + mContentResolver = this.getContentResolver(); + mBackgroundQueryHandler = new BackgroundQueryHandler(this.getContentResolver()); + mCurrentFolderId = Notes.ID_ROOT_FOLDER; // 默认设为根文件夹 + + // 初始化列表视图 + mNotesListView = findViewById(R.id.notes_list); + mNotesListView.addFooterView(LayoutInflater.from(this).inflate( + R.layout.note_list_footer, null), null, false); + mNotesListView.setOnItemClickListener(new OnListItemClickListener()); + mNotesListView.setOnItemLongClickListener(this); + + // 设置列表适配器 + mNotesListAdapter = new NotesListAdapter(this); + mNotesListView.setAdapter(mNotesListAdapter); + + // 初始化新建笔记按钮 + mAddNewNote = findViewById(R.id.btn_new_note); + mAddNewNote.setOnClickListener(this); + mAddNewNote.setOnTouchListener(new NewNoteOnTouchListener()); + + // 初始化触摸相关变量 + mDispatch = false; + mDispatchY = 0; + mOriginY = 0; + + // 初始化标题栏 + mTitleBar = findViewById(R.id.tv_title_bar); + mState = ListEditState.NOTE_LIST; // 初始状态为普通笔记列表 + + // 初始化多选模式回调 + mModeCallBack = new ModeCallback(); + } + + // 多选模式回调实现类 + private class ModeCallback implements ListView.MultiChoiceModeListener, OnMenuItemClickListener { + private DropdownMenu mDropDownMenu; // 下拉菜单 + private ActionMode mActionMode; // 操作模式 + + @Override + public boolean onCreateActionMode(ActionMode mode, Menu menu) { + // 加载多选操作菜单 + getMenuInflater().inflate(R.menu.note_list_options, menu); + menu.findItem(R.id.delete).setOnMenuItemClickListener(this); + + // 初始化移动菜单 + // 移动菜单项 + MenuItem mMoveMenu = menu.findItem(R.id.move); + if (mFocusNoteDataItem.getParentId() == Notes.ID_CALL_RECORD_FOLDER + || DataUtils.getUserFolderCount(mContentResolver) == 0) { + mMoveMenu.setVisible(false); // 通话记录或无文件夹时隐藏移动选项 + } else { + mMoveMenu.setVisible(true); + mMoveMenu.setOnMenuItemClickListener(this); + } + + // 设置多选模式状态 + mActionMode = mode; + mNotesListAdapter.setChoiceMode(true); + mNotesListView.setLongClickable(false); + mAddNewNote.setVisibility(View.GONE); // 隐藏新建按钮 + + // 设置自定义多选操作栏 + View customView = LayoutInflater.from(NotesListActivity.this).inflate( + R.layout.note_list_dropdown_menu, null); + mode.setCustomView(customView); + + // 初始化下拉选择菜单 + mDropDownMenu = new DropdownMenu(NotesListActivity.this, + customView.findViewById(R.id.selection_menu), + R.menu.note_list_dropdown); + mDropDownMenu.setOnDropdownMenuItemClickListener(item -> { + // 全选/反选处理 + mNotesListAdapter.selectAll(!mNotesListAdapter.isAllSelected()); + updateMenu(); + return true; + }); + return true; + } + + /** + * 更新多选操作菜单的状态显示 + * 1. 刷新选中项数量显示 + * 2. 更新全选/反选按钮状态 + */ + private void updateMenu() { + // 获取当前选中的笔记项数量(从列表适配器中获取) + int selectedCount = mNotesListAdapter.getSelectedCount(); + + /* + 设置下拉菜单标题文本 + 使用字符串资源 R.string.menu_select_title 作为模板 + 将选中数量 selectedCount 作为参数插入字符串 + 示例:当选中3项时显示"已选3项" + */ + String format = getResources().getString(R.string.menu_select_title, selectedCount); + mDropDownMenu.setTitle(format); // 将格式化后的字符串设置为菜单标题 + + // 从下拉菜单中获取全选功能菜单项(通过资源ID R.id.action_select_all ) + MenuItem item = mDropDownMenu.findItem(R.id.action_select_all); + + // 确保菜单项存在(防御性编程) + if (item != null) { + /* + 检查是否所有笔记项都被选中 + 根据状态更新菜单项: + 1. 已全选:显示选中状态和"取消全选"文本 + 2. 未全选:显示未选中状态和"全选"文本 + */ + if (mNotesListAdapter.isAllSelected()) { + item.setChecked(true); // 显示复选框选中状态 + item.setTitle(R.string.menu_deselect_all); // 设置文本为"取消全选" + } else { + item.setChecked(false); // 显示复选框未选中状态 + item.setTitle(R.string.menu_select_all); // 设置文本为"全选" + } + } + } + + /** + * ActionMode准备时的回调方法 + * + * @param mode 当前的ActionMode对象 + * @param menu 要显示的菜单 + * @return boolean 返回false表示不需要重新创建菜单 + */ + public boolean onPrepareActionMode(ActionMode mode, Menu menu) { + // TODO: 需要在此处添加菜单项的动态更新逻辑 + return false; // 默认返回false + } + + /** + * ActionMode菜单项点击事件处理 + * + * @param mode 当前的ActionMode对象 + * @param item 被点击的菜单项 + * @return boolean 返回false表示事件未处理,会继续传递 + */ + public boolean onActionItemClicked(ActionMode mode, MenuItem item) { + // TODO: 需要添加其他菜单项的点击处理逻辑 + return false; // 默认返回false + } + + /** + * 销毁ActionMode时的清理操作 + * + * @param mode 要销毁的ActionMode对象 + */ + public void onDestroyActionMode(ActionMode mode) { + mNotesListAdapter.setChoiceMode(false); // 禁用适配器的多选模式 + mNotesListView.setLongClickable(true); // 恢复列表视图的长按功能 + mAddNewNote.setVisibility(View.VISIBLE); // 显示新建笔记按钮 + } + + /** + * 主动结束ActionMode + */ + public void finishActionMode() { + mActionMode.finish(); // 调用当前ActionMode的finish方法结束多选模式 + } + + /** + * 列表项选中状态变化回调 + * + * @param mode 当前的ActionMode对象 + * @param position 发生变化的项位置 + * @param id 项ID + * @param checked 新的选中状态 + */ + public void onItemCheckedStateChanged(ActionMode mode, int position, long id, + boolean checked) { + mNotesListAdapter.setCheckedItem(position, checked); // 更新适配器中对应项的选中状态 + updateMenu(); // 刷新菜单显示 + } + + /** + * 处理上下文菜单项点击事件 + * + * @param item 被点击的菜单项 + * @return boolean 返回true表示事件已处理 + */ + @SuppressLint("NonConstantResourceId") + public boolean onMenuItemClick(@NonNull MenuItem item) { + // 检查当前是否有选中的笔记 + if (mNotesListAdapter.getSelectedCount() == 0) { + // 显示"未选中任何项"的提示 + Toast.makeText(NotesListActivity.this, + getString(R.string.menu_select_none), + Toast.LENGTH_SHORT).show(); + return true; // 事件已处理 + } + + // 根据点击的菜单项ID执行不同操作 + switch (item.getItemId()) { + case R.id.delete: // 处理删除操作 + // 创建删除确认对话框 + AlertDialog.Builder builder = new AlertDialog.Builder(NotesListActivity.this); + builder.setTitle(getString(R.string.alert_title_delete)); // 设置标题 + builder.setIcon(android.R.drawable.ic_dialog_alert); // 设置警告图标 + + // 设置提示消息,显示要删除的笔记数量 + builder.setMessage(getString(R.string.alert_message_delete_notes, + mNotesListAdapter.getSelectedCount())); + + // 设置确认按钮,点击后执行批量删除 + builder.setPositiveButton(android.R.string.ok, + (dialog, which) -> batchDelete()); + + // 设置取消按钮,点击后不执行任何操作 + builder.setNegativeButton(android.R.string.cancel, null); + + builder.show(); // 显示对话框 + break; + + case R.id.move: // 处理移动操作 + startQueryDestinationFolders(); // 启动目标文件夹查询 + break; + + default: // 其他菜单项 + return false; // 返回false表示不处理 + } + return true; // 返回true表示事件已处理 + } + } + + /** + * 新建笔记按钮的触摸事件监听器 + * 处理透明区域的特殊点击事件分发 + */ + private class NewNoteOnTouchListener implements OnTouchListener { + + /** + * 处理触摸事件 + * + * @param v 被触摸的视图(新建笔记按钮) + * @param event 触摸事件对象 + * @return boolean 返回true表示事件已处理,false继续传递 + */ + public boolean onTouch(View v, MotionEvent event) { + switch (event.getAction()) { + case MotionEvent.ACTION_DOWN: { // 按下事件 + // 获取屏幕显示信息 + Display display = getWindowManager().getDefaultDisplay(); + //屏幕高度 + Point screenSize = new Point(); + display.getSize(screenSize); + int screenHeight = screenSize.y; + int newNoteViewHeight = mAddNewNote.getHeight(); // 按钮高度 + + // 计算按钮在屏幕中的起始Y坐标(屏幕底部向上偏移按钮高度) + int start = screenHeight - newNoteViewHeight; + // 计算触摸事件的绝对Y坐标(相对于屏幕) + int eventY = start + (int) event.getY(); + + // 如果是子文件夹模式,需要减去标题栏高度 + if (mState == ListEditState.SUB_FOLDER) { + eventY -= mTitleBar.getHeight(); + start -= mTitleBar.getHeight(); + } + + /* + HACK: 处理按钮透明区域的点击事件分发 + 透明区域定义为:y < -0.12x + 94(基于按钮局部坐标系) + 94表示透明区域的最大高度(像素) + 注意:如果按钮背景改变,这个公式需要相应调整 + */ + if (event.getY() < (event.getX() * (-0.12) + 94)) { + // 获取列表最后一个可见项(排除页脚视图) + View view = mNotesListView.getChildAt(mNotesListView.getChildCount() - 1 + - mNotesListView.getFooterViewsCount()); + + // 检查触摸位置是否与列表项重叠 + if (view != null && view.getBottom() > start + && (view.getTop() < (start + 94))) { + mOriginY = (int) event.getY(); // 记录原始Y坐标(局部) + mDispatchY = eventY; // 记录分发Y坐标(绝对) + event.setLocation(event.getX(), mDispatchY); // 修改事件坐标 + mDispatch = true; // 设置分发标志 + return mNotesListView.dispatchTouchEvent(event); // 分发事件给列表 + } + } + break; + } + case MotionEvent.ACTION_MOVE: { // 移动事件 + if (mDispatch) { + // 计算Y坐标偏移量并更新分发坐标 + mDispatchY += (int) event.getY() - mOriginY; + event.setLocation(event.getX(), mDispatchY); + return mNotesListView.dispatchTouchEvent(event); // 继续分发移动事件 + } + break; + } + default: { // 处理ACTION_UP和ACTION_CANCEL + if (mDispatch) { + event.setLocation(event.getX(), mDispatchY); // 保持坐标一致性 + mDispatch = false; // 重置分发标志 + return mNotesListView.dispatchTouchEvent(event); // 分发抬起/取消事件 + } + break; + } + } + return false; // 不处理事件,继续传递 + } + } + + /** + * 启动异步查询笔记列表 + * 根据当前文件夹ID决定查询条件 + */ + private void startAsyncNotesListQuery() { + // 选择查询条件:如果是根文件夹使用特殊查询,否则使用普通查询 + String selection = (mCurrentFolderId == Notes.ID_ROOT_FOLDER) ? ROOT_FOLDER_SELECTION + : NORMAL_SELECTION; + + // 执行异步查询 + mBackgroundQueryHandler.startQuery( + FOLDER_NOTE_LIST_QUERY_TOKEN, // 查询标识 + null, // cookie对象 + Notes.CONTENT_NOTE_URI, // 内容URI + NoteItemData.PROJECTION, // 查询列 + selection, // WHERE条件 + new String[]{String.valueOf(mCurrentFolderId)}, // WHERE参数 + NoteColumns.TYPE + " DESC," + NoteColumns.MODIFIED_DATE + " DESC" // 排序 + ); + } + + /** + * 后台查询处理器 + * 继承AsyncQueryHandler实现异步数据库操作 + */ + private final class BackgroundQueryHandler extends AsyncQueryHandler { + + /** + * 构造函数 + * + * @param contentResolver 内容解析器 + */ + public BackgroundQueryHandler(ContentResolver contentResolver) { + super(contentResolver); // 调用父类构造函数 + } + + /** + * 查询完成回调 + * + * @param token 查询标识 + * @param cookie 附加数据 + * @param cursor 查询结果游标 + */ + @Override + protected void onQueryComplete(int token, Object cookie, Cursor cursor) { + switch (token) { + case FOLDER_NOTE_LIST_QUERY_TOKEN: // 笔记列表查询完成 + mNotesListAdapter.changeCursor(cursor); // 更新适配器数据 + break; + case FOLDER_LIST_QUERY_TOKEN: // 文件夹列表查询完成 + if (cursor != null && cursor.getCount() > 0) { + showFolderListMenu(cursor); // 显示文件夹选择菜单 + } else { + Log.e(TAG, "Query folder failed"); // 记录查询失败 + } + break; + default: + // 其他查询类型不处理 + } + } + } + + /** + * 显示文件夹选择菜单 + * + * @param cursor 包含文件夹数据的游标 + */ + private void showFolderListMenu(Cursor cursor) { + // 创建对话框构建器 + AlertDialog.Builder builder = new AlertDialog.Builder(NotesListActivity.this); + builder.setTitle(R.string.menu_title_select_folder); // 设置标题 + + // 创建文件夹列表适配器 + final FoldersListAdapter adapter = new FoldersListAdapter(this, cursor); + + // 设置列表项点击监听器 + builder.setAdapter(adapter, (dialog, which) -> { + // 执行批量移动操作 + DataUtils.batchMoveToFolder( + mContentResolver, + mNotesListAdapter.getSelectedItemIds(), // 选中笔记ID集合 + adapter.getItemId(which) // 目标文件夹ID + ); + + // 显示操作结果提示 + Toast.makeText( + NotesListActivity.this, + getString(R.string.format_move_notes_to_folder, + mNotesListAdapter.getSelectedCount(), // 移动的笔记数量 + adapter.getFolderName(NotesListActivity.this, which)), // 目标文件夹名 + Toast.LENGTH_SHORT + ).show(); + + mModeCallBack.finishActionMode(); // 结束多选模式 + }); + + builder.show(); // 显示对话框 + } + + /** + * 创建新笔记 + * 启动笔记编辑Activity并传递当前文件夹ID + */ + private void createNewNote() { + // 创建编辑意图 + Intent intent = new Intent(this, NoteEditActivity.class); + intent.setAction(Intent.ACTION_INSERT_OR_EDIT); // 设置操作为插入或编辑 + intent.putExtra(Notes.INTENT_EXTRA_FOLDER_ID, mCurrentFolderId); // 传递当前文件夹ID + + // 启动Activity并等待结果 + this.startActivityForResult(intent, REQUEST_CODE_NEW_NODE); + } + + /** + * 批量删除选中的笔记项 + * 根据同步模式决定直接删除还是移动到回收站 + * 使用ExecutorService替代AsyncTask + */ + private void batchDelete() { + // 创建单线程线程池 + ExecutorService executor = Executors.newSingleThreadExecutor(); + + // 提交任务到线程池 + executor.execute(() -> { + try { + // 1. 获取选中笔记关联的小部件集合 + HashSet widgets = mNotesListAdapter.getSelectedWidget(); + + // 2. 根据同步模式选择删除策略 + if (!isSyncMode()) { + // 非同步模式:直接删除 + if (!DataUtils.batchDeleteNotes(mContentResolver, + mNotesListAdapter.getSelectedItemIds())) { + Log.e(TAG, "Delete notes error, should not happen"); + } + } else { + // 同步模式:移动到回收站 + if (!DataUtils.batchMoveToFolder(mContentResolver, + mNotesListAdapter.getSelectedItemIds(), Notes.ID_TRASH_FOLER)) { + Log.e(TAG, "Move notes to trash folder error, should not happen"); + } + } + + // 3. 切换到主线程更新UI + runOnUiThread(() -> { + // 更新关联的小部件 + if (widgets != null) { + for (AppWidgetAttribute widget : widgets) { + if (widget.widgetId != AppWidgetManager.INVALID_APPWIDGET_ID && + widget.widgetType.get() != Notes.TYPE_WIDGET_INVALIDE) { + updateWidget(widget.widgetId, widget.widgetType.get()); + } + } + } + mModeCallBack.finishActionMode(); + }); + + } catch (Exception e) { + Log.e(TAG, "Batch delete error", e); + } finally { + executor.shutdown(); // 关闭线程池 + } + }); + } + + /** + * 删除指定文件夹 + * + * @param folderId 要删除的文件夹ID + */ + private void deleteFolder(long folderId) { + // 检查是否是根文件夹(不允许删除) + if (folderId == Notes.ID_ROOT_FOLDER) { + Log.e(TAG, "Wrong folder id, should not happen " + folderId); + return; + } + + // 1. 准备要删除的文件夹ID集合 + HashSet ids = new HashSet<>(); + ids.add(folderId); + + // 2. 获取文件夹关联的小部件 + HashSet widgets = DataUtils.getFolderNoteWidget(mContentResolver, folderId); + + // 3. 根据同步模式选择删除策略 + if (!isSyncMode()) { + DataUtils.batchDeleteNotes(mContentResolver, ids); // 直接删除 + } else { + DataUtils.batchMoveToFolder(mContentResolver, ids, Notes.ID_TRASH_FOLER); // 移动到回收站 + } + + // 4. 更新关联的小部件 + if (widgets != null) { + for (AppWidgetAttribute widget : widgets) { + if (widget.widgetId != AppWidgetManager.INVALID_APPWIDGET_ID && + widget.widgetType.get() != Notes.TYPE_WIDGET_INVALIDE) { + updateWidget(widget.widgetId, widget.widgetType.get()); + } + } + } + } + + /** + * 打开笔记查看/编辑界面 + * + * @param data 要打开的笔记数据 + */ + private void openNode(NoteItemData data) { + Intent intent = new Intent(this, NoteEditActivity.class); + intent.setAction(Intent.ACTION_VIEW); // 设置为查看模式 + intent.putExtra(Intent.EXTRA_UID, data.getId()); // 传递笔记ID + startActivityForResult(intent, REQUEST_CODE_OPEN_NODE); // 启动编辑界面 + } + + /** + * 打开文件夹显示其内容 + * + * @param data 要打开的文件夹数据 + */ + private void openFolder(NoteItemData data) { + // 1. 更新当前文件夹ID并查询内容 + mCurrentFolderId = data.getId(); + startAsyncNotesListQuery(); + + // 2. 根据文件夹类型设置状态 + if (data.getId() == Notes.ID_CALL_RECORD_FOLDER) { + mState = ListEditState.CALL_RECORD_FOLDER; + mAddNewNote.setVisibility(View.GONE); // 通话记录文件夹隐藏新建按钮 + } else { + mState = ListEditState.SUB_FOLDER; + } + + // 3. 更新标题栏显示 + if (data.getId() == Notes.ID_CALL_RECORD_FOLDER) { + mTitleBar.setText(R.string.call_record_folder_name); // 固定标题 + } else { + mTitleBar.setText(data.getSnippet()); // 使用文件夹名作为标题 + } + mTitleBar.setVisibility(View.VISIBLE); // 显示标题栏 + } + + // 处理新建笔记按钮点击 + public void onClick(View v) { + if (v.getId() == R.id.btn_new_note) { + createNewNote(); // 调用新建笔记方法 + } + } + + /** + * 强制显示软键盘 + */ + private void showSoftInput() { + InputMethodManager imm = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE); + if (imm != null) { + imm.toggleSoftInput(InputMethodManager.SHOW_FORCED, 0); // 强制显示 + } + } + + /** + * 隐藏软键盘 + * + * @param view 当前焦点视图 + */ + private void hideSoftInput(View view) { + InputMethodManager imm = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE); + imm.hideSoftInputFromWindow(view.getWindowToken(), 0); // 根据窗口token隐藏 + } + + /** + * 显示创建/修改文件夹对话框 + * + * @param create true表示创建,false表示修改 + */ + private void showCreateOrModifyFolderDialog(final boolean create) { + // 1. 初始化对话框 + final AlertDialog.Builder builder = new AlertDialog.Builder(this); + View view = LayoutInflater.from(this).inflate(R.layout.dialog_edit_text, null); + final EditText etName = view.findViewById(R.id.et_foler_name); + + // 2. 自动弹出软键盘 + showSoftInput(); + + // 3. 根据模式设置初始文本 + if (!create) { + if (mFocusNoteDataItem != null) { + etName.setText(mFocusNoteDataItem.getSnippet()); // 修改模式:预填原名称 + builder.setTitle(getString(R.string.menu_folder_change_name)); + } else { + Log.e(TAG, "The long click data item is null"); + return; + } + } else { + etName.setText(""); // 创建模式:清空输入框 + builder.setTitle(this.getString(R.string.menu_create_folder)); + } + + // 4. 设置对话框按钮 + builder.setPositiveButton(android.R.string.ok, null); // 先设为null后自定义点击 + builder.setNegativeButton(android.R.string.cancel, (dialog, which) -> hideSoftInput(etName)); + + // 5. 显示对话框 + final Dialog dialog = builder.setView(view).show(); + final Button positive = dialog.findViewById(android.R.id.button1); + + // 6. 自定义确认按钮点击逻辑 + positive.setOnClickListener(v -> { + hideSoftInput(etName); + String name = etName.getText().toString(); + + // 检查文件夹名是否已存在 + if (DataUtils.checkVisibleFolderName(mContentResolver, name)) { + Toast.makeText(this, getString(R.string.folder_exist, name), Toast.LENGTH_LONG).show(); + etName.setSelection(0, etName.length()); // 全选文本方便修改 + return; + } + + // 执行创建或修改操作 + if (!create) { + // 修改现有文件夹 + if (!TextUtils.isEmpty(name)) { + ContentValues values = new ContentValues(); + values.put(NoteColumns.SNIPPET, name); // 新名称 + values.put(NoteColumns.TYPE, Notes.TYPE_FOLDER); + values.put(NoteColumns.LOCAL_MODIFIED, 1); // 标记为已修改 + mContentResolver.update(Notes.CONTENT_NOTE_URI, values, + NoteColumns.ID + "=?", + new String[]{String.valueOf(mFocusNoteDataItem.getId())}); + } + } else if (!TextUtils.isEmpty(name)) { + // 创建新文件夹 + ContentValues values = new ContentValues(); + values.put(NoteColumns.SNIPPET, name); + values.put(NoteColumns.TYPE, Notes.TYPE_FOLDER); + mContentResolver.insert(Notes.CONTENT_NOTE_URI, values); + } + dialog.dismiss(); // 关闭对话框 + }); + + // 7. 初始禁用确认按钮(当名称为空时) + if (TextUtils.isEmpty(etName.getText())) { + positive.setEnabled(false); + } + + // 8. 添加文本变化监听 + etName.addTextChangedListener(new TextWatcher() { + @Override + public void beforeTextChanged(CharSequence s, int start, int count, int after) { + // 文本变化前(无需实现) + } + + @Override + public void onTextChanged(CharSequence s, int start, int before, int count) { + // 文本变化时启用/禁用确认按钮 + positive.setEnabled(!TextUtils.isEmpty(etName.getText())); + } + + @Override + public void afterTextChanged(Editable s) { + // 文本变化后(无需实现) + } + }); + } + + // 处理返回键按下事件 + @Override + public void onBackPressed() { + switch (mState) { + case SUB_FOLDER: + // 从子文件夹返回根目录 + mCurrentFolderId = Notes.ID_ROOT_FOLDER; + mState = ListEditState.NOTE_LIST; + startAsyncNotesListQuery(); // 重新加载根目录列表 + mTitleBar.setVisibility(View.GONE); // 隐藏标题栏 + break; + case CALL_RECORD_FOLDER: + // 从通话记录文件夹返回根目录 + mCurrentFolderId = Notes.ID_ROOT_FOLDER; + mState = ListEditState.NOTE_LIST; + mAddNewNote.setVisibility(View.VISIBLE); // 显示新建笔记按钮 + mTitleBar.setVisibility(View.GONE); // 隐藏标题栏 + startAsyncNotesListQuery(); // 重新加载根目录列表 + break; + case NOTE_LIST: + super.onBackPressed(); // 默认返回行为 + break; + default: + break; + } + } + + // 更新指定的小部件 + private void updateWidget(int appWidgetId, int appWidgetType) { + // 创建小部件更新Intent + Intent intent = new Intent(AppWidgetManager.ACTION_APPWIDGET_UPDATE); + + // 根据小部件类型设置对应的Provider类 + if (appWidgetType == Notes.TYPE_WIDGET_2X) { + intent.setClass(this, NoteWidgetProvider_2x.class); + } else if (appWidgetType == Notes.TYPE_WIDGET_4X) { + intent.setClass(this, NoteWidgetProvider_4x.class); + } else { + Log.e(TAG, "Unsupported widget type"); + return; + } + + // 设置要更新的小部件ID数组 + intent.putExtra(AppWidgetManager.EXTRA_APPWIDGET_IDS, new int[]{appWidgetId}); + + sendBroadcast(intent); // 发送广播更新小部件 + setResult(RESULT_OK, intent); // 设置操作结果为成功 + } + + // 文件夹长按菜单创建监听器 + private final OnCreateContextMenuListener mFolderOnCreateContextMenuListener = + new OnCreateContextMenuListener() { + public void onCreateContextMenu(ContextMenu menu, View v, ContextMenuInfo menuInfo) { + if (mFocusNoteDataItem != null) { + menu.setHeaderTitle(mFocusNoteDataItem.getSnippet()); // 设置菜单标题为文件夹名 + menu.add(0, MENU_FOLDER_VIEW, 0, R.string.menu_folder_view); // 添加查看菜单项 + menu.add(0, MENU_FOLDER_DELETE, 0, R.string.menu_folder_delete); // 添加删除菜单项 + menu.add(0, MENU_FOLDER_CHANGE_NAME, 0, R.string.menu_folder_change_name); // 添加重命名菜单项 + } + } + }; + + // 上下文菜单关闭时调用 + @Override + public void onContextMenuClosed(@NonNull Menu menu) { + if (mNotesListView != null) { + mNotesListView.setOnCreateContextMenuListener(null); // 移除菜单监听器 + } + super.onContextMenuClosed(menu); + } + + // 处理上下文菜单项选择 + @Override + public boolean onContextItemSelected(@NonNull MenuItem item) { + if (mFocusNoteDataItem == null) { + Log.e(TAG, "The long click data item is null"); + return false; + } + + switch (item.getItemId()) { + case MENU_FOLDER_VIEW: // 查看文件夹 + openFolder(mFocusNoteDataItem); + break; + case MENU_FOLDER_DELETE: // 删除文件夹 + // 显示删除确认对话框 + AlertDialog.Builder builder = new AlertDialog.Builder(this); + builder.setTitle(getString(R.string.alert_title_delete)); + builder.setIcon(android.R.drawable.ic_dialog_alert); + builder.setMessage(getString(R.string.alert_message_delete_folder)); + builder.setPositiveButton(android.R.string.ok, + (dialog, which) -> deleteFolder(mFocusNoteDataItem.getId())); + builder.setNegativeButton(android.R.string.cancel, null); + builder.show(); + break; + case MENU_FOLDER_CHANGE_NAME: // 重命名文件夹 + showCreateOrModifyFolderDialog(false); + break; + default: + break; + } + return true; + } + + // 准备选项菜单 + @Override + public boolean onPrepareOptionsMenu(Menu menu) { + menu.clear(); // 清空现有菜单 + + // 根据当前状态加载不同的菜单布局 + if (mState == ListEditState.NOTE_LIST) { + getMenuInflater().inflate(R.menu.note_list, menu); + // 根据同步状态设置同步/取消同步菜单项 + menu.findItem(R.id.menu_sync).setTitle( + GTaskSyncService.isSyncing() ? "取消同步":"同步"); + } else if (mState == ListEditState.SUB_FOLDER) { + getMenuInflater().inflate(R.menu.sub_folder, menu); + } else if (mState == ListEditState.CALL_RECORD_FOLDER) { + getMenuInflater().inflate(R.menu.call_record_folder, menu); + } else { + Log.e(TAG, "Wrong state:" + mState); + } + if(mode==-1) + menu.findItem(R.id.menu_aguduo).setVisible(false); + else if(mode==0) + menu.findItem(R.id.menu_anqila).setVisible(false); + else if(mode==1) + menu.findItem(R.id.menu_yao).setVisible(false); + return true; + } + + // 处理选项菜单项选择 + @SuppressLint("NonConstantResourceId") + @Override + public boolean onOptionsItemSelected(MenuItem item) { + SharedPreferences.Editor editor = getSharedPreferences("note_prefs", MODE_PRIVATE).edit(); + + switch (item.getItemId()) { + case R.id.menu_aguduo:{ + mode=-1; + getWindow().setBackgroundDrawableResource(R.drawable.aguduo); + break; + } + case R.id.menu_anqila:{ + mode=0; + getWindow().setBackgroundDrawableResource(R.drawable.anqila); + break; + } + case R.id.menu_yao:{ + mode=1; + getWindow().setBackgroundDrawableResource(R.drawable.yao); + break; + } + case R.id.menu_new_folder: // 新建文件夹 + showCreateOrModifyFolderDialog(true); + break; + case R.id.menu_export_text: // 导出为文本 + exportNoteToText(); + break; + case R.id.menu_sync: // 同步操作 + if (isSyncMode()) { + // 根据当前状态切换同步/取消同步 + if (TextUtils.equals(item.getTitle(), getString(R.string.menu_sync))) { + GTaskSyncService.startSync(this); // 开始同步 + } else { + GTaskSyncService.cancelSync(this); // 取消同步 + } + } else { + startPreferenceActivity(); // 未设置同步账号时打开设置 + } + break; + case R.id.menu_setting: // 设置 + // 启动设置Activity + startPreferenceActivity(); + break; + case R.id.menu_new_note: // 新建笔记 + createNewNote(); + break; + case R.id.menu_search: // 搜索 + onSearchRequested(); + break; + + default: + return super.onOptionsItemSelected(item); + } + return super.onOptionsItemSelected(item); + } + + /** + * 处理同步逻辑 + */ + private void handleSync() { + if (!DataUtils.externalStorageAvailable()) { + Toast.makeText(this, R.string.error_sdcard_unmounted, Toast.LENGTH_SHORT).show(); + return; + } + + SharedPreferences pref = getSharedPreferences( + "${applicationId}_preferences", + Context.MODE_PRIVATE + ); + String syncAccount = pref.getString(NotesPreferenceActivity.PREFERENCE_SYNC_ACCOUNT_NAME, null); + if (TextUtils.isEmpty(syncAccount)) { + Toast.makeText(this, R.string.error_no_sync_account, Toast.LENGTH_SHORT).show(); + startPreferenceActivity(); + } else { + if (!GTaskSyncService.isSyncing()) { + GTaskSyncService.startSync(this); + Toast.makeText(this, R.string.ticker_syncing, Toast.LENGTH_SHORT).show(); + } else { + GTaskSyncService.cancelSync(this); + Toast.makeText(this, R.string.ticker_cancel, Toast.LENGTH_SHORT).show(); + } + } + } + // 处理搜索请求 + @Override + public boolean onSearchRequested() { + startSearch(null, false, null /* appData */, false); + return true; + } + + /* + 将笔记导出为文本文件的后台操作方法 + 1. 使用异步任务在后台执行导出操作 + 2. 根据导出结果显示相应的提示对话框 + */ + /** + * 将笔记导出为文本文件的后台操作方法 + * 使用ExecutorService替代已弃用的AsyncTask + */ + private void exportNoteToText() { + // 获取BackupUtils单例实例 + final BackupUtils backup = BackupUtils.getInstance(NotesListActivity.this); + + // 创建单线程线程池 + ExecutorService executor = Executors.newSingleThreadExecutor(); + + // 提交任务到线程池 + executor.execute(() -> { + // 在后台线程执行导出操作 + final int result = backup.exportToText(); + + // 切换到主线程更新UI + runOnUiThread(() -> { + // 处理导出结果 + switch (result) { + case BackupUtils.STATE_SD_CARD_UNMOUNTED: + showExportDialog( + R.string.failed_sdcard_export, + R.string.error_sdcard_unmounted + ); + break; + case BackupUtils.STATE_SUCCESS: + showExportDialog( + R.string.success_sdcard_export, + R.string.format_exported_file_location, + backup.getExportedTextFileName(), + backup.getExportedTextFileDir() + ); + break; + case BackupUtils.STATE_SYSTEM_ERROR: + showExportDialog( + R.string.failed_sdcard_export, + R.string.error_sdcard_export + ); + break; + default: + showExportDialog( + R.string.failed_sdcard_export, + R.string.error_unknown + ); + } + }); + }); + + // 关闭线程池(实际应用中可以考虑复用线程池) + executor.shutdown(); + } + + /** + * 显示导出结果对话框 + */ + private void showExportDialog(int titleResId, int messageResId, Object... formatArgs) { + AlertDialog.Builder builder = new AlertDialog.Builder(NotesListActivity.this); + builder.setTitle(titleResId) + .setIcon(android.R.drawable.ic_dialog_info); + + // 处理带格式化参数的提示消息 + String message = formatArgs.length > 0 ? + getString(messageResId, formatArgs) : + getString(messageResId); + + builder.setMessage(message) + .setPositiveButton(android.R.string.ok, null) + .show(); + } + + + /** + * 检查当前是否处于同步模式 + * + * @return true表示已设置同步账户(同步模式),false表示未设置(本地模式) + */ + private boolean isSyncMode() { + // 获取同步账户名并检查是否为空(去除前后空格) + return !NotesPreferenceActivity.getSyncAccountName(this).trim().isEmpty(); + } + + /** + * 启动设置Activity + * 优先使用父Activity启动(如果存在),否则使用当前Activity + */ + private void startPreferenceActivity() { + // 获取父Activity(FragmentActivity情况下),不存在则使用当前Activity + Activity from = getParent() != null ? getParent() : this; + // 创建跳转到设置页面的Intent + Intent intent = new Intent(from, NotesPreferenceActivity.class); + // 启动Activity(startActivityIfNeeded保证单例) + from.startActivityIfNeeded(intent, -1); + } + + /** + * 列表项点击事件监听器 + * 处理笔记/文件夹的点击逻辑 + */ + private class OnListItemClickListener implements OnItemClickListener { + + @Override + public void onItemClick(AdapterView parent, View view, int position, long id) { + // 检查是否为笔记列表项视图 + if (view instanceof NotesListItem) { + NoteItemData item = ((NotesListItem) view).getItemData(); + + // 多选模式下的处理 + if (mNotesListAdapter.isInChoiceMode()) { + // 仅处理笔记类型的项 + if (item.getType() == Notes.TYPE_NOTE) { + // 调整位置(考虑HeaderViews的影响) + position = position - mNotesListView.getHeaderViewsCount(); + // 切换当前项的选中状态 + mModeCallBack.onItemCheckedStateChanged( + null, position, id, !mNotesListAdapter.isSelectedItem(position)); + } + return; // 多选模式下不执行后续操作 + } + + // 根据当前状态处理点击 + switch (mState) { + case NOTE_LIST: // 根目录状态 + if (item.getType() == Notes.TYPE_FOLDER + || item.getType() == Notes.TYPE_SYSTEM) { + openFolder(item); // 打开文件夹或系统文件夹 + } else if (item.getType() == Notes.TYPE_NOTE) { + openNode(item); // 打开笔记 + } else { + Log.e(TAG, "Wrong note type in NOTE_LIST"); + } + break; + + case SUB_FOLDER: // 子文件夹状态 + case CALL_RECORD_FOLDER: // 通话记录文件夹状态 + if (item.getType() == Notes.TYPE_NOTE) { + openNode(item); // 打开笔记 + } else { + Log.e(TAG, "Wrong note type in SUB_FOLDER"); + } + break; + default: + break; + } + } + } + } + + /** + * 查询可用目标文件夹(用于移动笔记操作) + * 查询条件: + * 1. 文件夹类型 + * 2. 非回收站文件夹 + * 3. 非当前所在文件夹 + * 特殊处理:在根目录状态下包含根文件夹选项 + */ + private void startQueryDestinationFolders() { + // 基础查询条件(类型是文件夹,且不是回收站,且不是当前文件夹) + String selection = NoteColumns.TYPE + "=? AND " + + NoteColumns.PARENT_ID + "<>? AND " + + NoteColumns.ID + "<>?"; + + // 在根目录状态时,额外包含根文件夹选项 + selection = (mState == ListEditState.NOTE_LIST) ? selection : + "(" + selection + ") OR (" + NoteColumns.ID + "=" + Notes.ID_ROOT_FOLDER + ")"; + + // 执行异步查询 + mBackgroundQueryHandler.startQuery( + FOLDER_LIST_QUERY_TOKEN, // 查询标识 + null, // 附加数据 + Notes.CONTENT_NOTE_URI, // 内容URI + FoldersListAdapter.PROJECTION, // 查询列 + selection, // 查询条件 + new String[]{ // 查询参数值 + String.valueOf(Notes.TYPE_FOLDER), // 文件夹类型 + String.valueOf(Notes.ID_TRASH_FOLER), // 排除回收站 + String.valueOf(mCurrentFolderId) // 排除当前文件夹 + }, + NoteColumns.MODIFIED_DATE + " DESC" // 按修改时间降序 + ); + } + + /** + * 列表项长按事件处理 + * + * @return true表示已处理事件,false继续传递事件 + */ + public boolean onItemLongClick(AdapterView parent, View view, int position, long id) { + // 检查是否为笔记列表项视图 + if (view instanceof NotesListItem) { + // 保存当前长按的数据项 + mFocusNoteDataItem = ((NotesListItem) view).getItemData(); + + // 笔记类型的长按处理(非多选模式下) + if (mFocusNoteDataItem.getType() == Notes.TYPE_NOTE && + !mNotesListAdapter.isInChoiceMode()) { + // 启动多选模式 + if (mNotesListView.startActionMode(mModeCallBack) != null) { + // 自动选中当前长按的项 + mModeCallBack.onItemCheckedStateChanged(null, position, id, true); + // 触觉反馈(长按震动) + mNotesListView.performHapticFeedback(HapticFeedbackConstants.LONG_PRESS); + } else { + Log.e(TAG, "startActionMode fails"); + } + } + // 文件夹类型的长按处理 + else if (mFocusNoteDataItem.getType() == Notes.TYPE_FOLDER) { + // 设置上下文菜单监听器 + mNotesListView.setOnCreateContextMenuListener(mFolderOnCreateContextMenuListener); + } + } + return false; // 允许事件继续传递 + } + private void updateBackground() { + switch (mode) { + case -1: // 阿古朵 + getWindow().setBackgroundDrawableResource(R.drawable.aguduo); + break; + case 0: // 安琪拉 + getWindow().setBackgroundDrawableResource(R.drawable.anqila); + break; + case 1: // 瑶 + getWindow().setBackgroundDrawableResource(R.drawable.yao); + break; + default: + getWindow().setBackgroundDrawableResource(R.drawable.aguduo); + } + } + +} \ No newline at end of file diff --git a/src/mi_note/app/src/main/java/net/micode/notes/ui/NotesListAdapter.java b/src/mi_note/app/src/main/java/net/micode/notes/ui/NotesListAdapter.java new file mode 100644 index 0000000..ca18491 --- /dev/null +++ b/src/mi_note/app/src/main/java/net/micode/notes/ui/NotesListAdapter.java @@ -0,0 +1,276 @@ +/* + * 版权所有 (c) 2010-2011,MiCode 开源社区 (www.micode.net) + * 根据 Apache 许可证 2.0 版本("许可证")授权; + * 除非符合许可证的规定,否则不得使用本文件。 + * 您可以从以下网址获取许可证副本: + * http://www.apache.org/licenses/LICENSE-2.0 + * 除非适用法律要求或书面同意,本软件按"原样"分发, + * 没有任何明示或暗示的保证或条件。 + * 详见许可证中规定的权限和限制。 + * (注:这是一份标准的Apache许可证2.0版本的开源声明) + */ + +// 声明当前Java文件的包路径(表明该类所在的位置) +package net.micode.notes.ui; + +// 导入Android相关的Context类(用于访问应用资源和系统服务) +import android.content.Context; +// 导入Cursor类(用于数据库查询结果的遍历) +import android.database.Cursor; +// 导入Android日志工具类 +import android.util.Log; +// 导入Android基础视图类 +import android.view.View; +// 导入视图组类(用于视图的容器管理) +import android.view.ViewGroup; +// 导入CursorAdapter类(用于将Cursor数据适配到ListView等控件) +import android.widget.CursorAdapter; + +// 导入当前应用的数据模型包 +import net.micode.notes.data.Notes; + +// 导入Java集合框架相关类 +import java.util.Collection; // 集合框架的根接口 +import java.util.HashMap; // 哈希映射表实现 +import java.util.HashSet; // 哈希集合实现 +import java.util.Iterator; // 迭代器接口 + +/** + * 笔记列表适配器 + * 功能: + * 1. 管理笔记列表数据显示 + * 2. 处理多选模式逻辑 + * 3. 跟踪选中状态 + */ +public class NotesListAdapter extends CursorAdapter { + private static final String TAG = "NotesListAdapter"; // 日志标签 + private final Context mContext; // 上下文对象 + private final HashMap mSelectedIndex; // 存储选中状态的映射表(位置 -> 是否选中) + private int mNotesCount; // 笔记总数(不含文件夹) + private boolean mChoiceMode; // 是否处于多选模式 + + /** + * 小部件属性封装类 + */ + public static class AppWidgetAttribute { + public int widgetId; // 小部件ID + public final ThreadLocal widgetType = new ThreadLocal<>() { + @Override + protected Integer initialValue() { + return 0; + } + }; // 小部件类型 + } + + /** + * 构造函数 + * @param context 上下文环境 + */ + public NotesListAdapter(Context context) { + super(context, null); // 初始化CursorAdapter,初始cursor为null + mSelectedIndex = new HashMap<>(); // 初始化选中状态集合 + mContext = context; // 保存上下文引用 + mNotesCount = 0; // 初始化笔记数量 + } + + /** + * 创建新列表项视图 + * @param context 上下文 + * @param cursor 数据游标 + * @param parent 父视图 + * @return 新建的NotesListItem视图 + */ + @Override + public View newView(Context context, Cursor cursor, ViewGroup parent) { + return new NotesListItem(context); // 创建新的笔记列表项 + } + + /** + * 绑定数据到列表项视图 + * @param view 要绑定的视图 + * @param context 上下文 + * @param cursor 数据游标 + */ + @Override + public void bindView(View view, Context context, Cursor cursor) { + if (view instanceof NotesListItem) { + // 创建笔记数据对象 + NoteItemData itemData = new NoteItemData(context, cursor); + // 绑定数据到列表项视图 + ((NotesListItem) view).bind(context, itemData, mChoiceMode, + isSelectedItem(cursor.getPosition())); + } + } + + /** + * 设置指定位置的选中状态 + * @param position 列表位置 + * @param checked 是否选中 + */ + public void setCheckedItem(final int position, final boolean checked) { + mSelectedIndex.put(position, checked); // 更新选中状态 + notifyDataSetChanged(); // 通知视图更新 + } + + /** + * 检查是否处于多选模式 + * @return true表示正在多选模式 + */ + public boolean isInChoiceMode() { + return mChoiceMode; + } + + /** + * 设置多选模式状态 + * @param mode true进入多选模式,false退出 + */ + public void setChoiceMode(boolean mode) { + mSelectedIndex.clear(); // 清除所有选中状态 + mChoiceMode = mode; // 更新模式状态 + } + + /** + * 全选/取消全选所有笔记项 + * @param checked true全选,false取消全选 + */ + public void selectAll(boolean checked) { + Cursor cursor = getCursor(); + // 遍历所有项 + for (int i = 0; i < getCount(); i++) { + if (cursor.moveToPosition(i)) { + // 只处理笔记类型(不包含文件夹) + if (NoteItemData.getNoteType(cursor) == Notes.TYPE_NOTE) { + setCheckedItem(i, checked); // 设置选中状态 + } + } + } + } + + /** + * 获取所有选中项的ID集合 + * @return 选中项的ID集合 + */ + public HashSet getSelectedItemIds() { + HashSet itemSet = new HashSet<>(); + // 遍历所有选中项 + for (Integer position : mSelectedIndex.keySet()) { + if (Boolean.TRUE.equals(mSelectedIndex.get(position))) { + long id = getItemId(position); // 获取项ID + // 检查是否为根文件夹(不应该被选中) + if (id == Notes.ID_ROOT_FOLDER) { + Log.d(TAG, "Wrong item id, should not happen"); + } else { + itemSet.add(id); // 添加到结果集 + } + } + } + return itemSet; + } + + /** + * 获取选中项关联的小部件属性集合 + * @return 小部件属性集合,可能为null + */ + public HashSet getSelectedWidget() { + HashSet itemSet = new HashSet<>(); + // 遍历所有选中项 + for (Integer position : mSelectedIndex.keySet()) { + if (Boolean.TRUE.equals(mSelectedIndex.get(position))) { + Cursor c = (Cursor) getItem(position); // 获取项数据 + if (c != null) { + AppWidgetAttribute widget = new AppWidgetAttribute(); + NoteItemData item = new NoteItemData(mContext, c); + widget.widgetId = item.getWidgetId(); // 设置小部件ID + widget.widgetType.set(item.getWidgetType()); // 设置小部件类型 + itemSet.add(widget); // 添加到结果集 + /* + * 注意:不要在此处关闭cursor,只有适配器可以关闭它 + */ + } else { + Log.e(TAG, "Invalid cursor"); + return null; // 遇到错误返回null + } + } + } + return itemSet; + } + + /** + * 获取当前选中项数量 + * @return 选中项计数 + */ + public int getSelectedCount() { + Collection values = mSelectedIndex.values(); + Iterator iter = values.iterator(); + int count = 0; + // 统计选中状态为true的数量 + while (iter.hasNext()) { + if (iter.next()) { + count++; + } + } + return count; + } + + /** + * 检查是否所有项都被选中 + * @return true表示全部选中 + */ + public boolean isAllSelected() { + int checkedCount = getSelectedCount(); + // 选中数量不为0且等于总笔记数量 + return (checkedCount != 0 && checkedCount == mNotesCount); + } + + /** + * 检查指定位置是否被选中 + * @param position 要检查的位置 + * @return true表示该位置被选中 + */ + public boolean isSelectedItem(final int position) { + if (null == mSelectedIndex.get(position)) { + return false; // 未记录的位置默认为未选中 + } + return Boolean.TRUE.equals(mSelectedIndex.get(position)); + } + + /** + * 当内容变化时的回调 + * 重新计算笔记数量 + */ + @Override + protected void onContentChanged() { + super.onContentChanged(); + calcNotesCount(); // 更新笔记计数 + } + + /** + * 切换游标时的回调 + * @param cursor 新游标 + */ + @Override + public void changeCursor(Cursor cursor) { + super.changeCursor(cursor); + calcNotesCount(); // 更新笔记计数 + } + + /** + * 计算笔记数量(不包括文件夹) + */ + private void calcNotesCount() { + mNotesCount = 0; + // 遍历所有项 + for (int i = 0; i < getCount(); i++) { + Cursor c = (Cursor) getItem(i); + if (c != null) { + // 只统计笔记类型(TYPE_NOTE) + if (NoteItemData.getNoteType(c) == Notes.TYPE_NOTE) { + mNotesCount++; // 计数增加 + } + } else { + Log.e(TAG, "Invalid cursor"); + return; // 遇到错误提前退出 + } + } + } +} diff --git a/src/mi_note/app/src/main/java/net/micode/notes/ui/NotesListItem.java b/src/mi_note/app/src/main/java/net/micode/notes/ui/NotesListItem.java new file mode 100644 index 0000000..01b7cf4 --- /dev/null +++ b/src/mi_note/app/src/main/java/net/micode/notes/ui/NotesListItem.java @@ -0,0 +1,183 @@ +/* + * 版权所有 (c) 2010-2011,MiCode 开源社区 (www.micode.net) + * 根据 Apache 许可证 2.0 版本("许可证")授权; + * 除非符合许可证的规定,否则不得使用本文件。 + * 您可以从以下网址获取许可证副本: + * http://www.apache.org/licenses/LICENSE-2.0 + * 除非适用法律要求或书面同意,本软件按"原样"分发, + * 没有任何明示或暗示的保证或条件。 + * 详见许可证中规定的权限和限制。 + * (注:这是一份标准的Apache许可证2.0版本的开源声明) + */ + +// 声明当前Java文件所在的包路径(net.micode.notes.ui 表示笔记应用的UI层) +package net.micode.notes.ui; +// Android注解库,@SuppressLint用于忽略特定Lint警告 +import android.annotation.SuppressLint; +// Android上下文类,提供应用环境信息和访问系统服务 +import android.content.Context; +// Android日期/时间格式化工具类,用于友好显示时间 +import android.text.format.DateUtils; +// Android基础视图类,所有UI组件的基类 +import android.view.View; +// 复选框控件,用于多选操作 +import android.widget.CheckBox; +// 图片视图控件,用于显示图标 +import android.widget.ImageView; +// 线性布局容器,用于水平或垂直排列子视图 +import android.widget.LinearLayout; +// 文本视图控件,用于显示文字内容 +import android.widget.TextView; +// 导入应用R资源文件(自动生成,包含所有资源ID) +import net.micode.notes.R; +// 导入笔记数据模型和常量定义 +import net.micode.notes.data.Notes; +// 导入数据工具类,提供数据处理方法 +import net.micode.notes.tool.DataUtils; +// 导入笔记项背景资源定义类 +import net.micode.notes.tool.ResourceParser.NoteItemBgResources; + +/** + * 自定义笔记列表项视图组件 + * 继承自LinearLayout,展示单条笔记/文件夹的完整信息 + */ +public class NotesListItem extends LinearLayout { + // 提醒图标(显示时钟或通话记录图标) + private final ImageView mAlert; + // 标题/内容文本视图 + private final TextView mTitle; + // 时间文本视图(显示相对时间) + private final TextView mTime; + // 通话记录联系人名称(仅通话记录可见) + private final TextView mCallName; + // 当前绑定的笔记数据对象 + private NoteItemData mItemData; + // 多选模式下的复选框 + private final CheckBox mCheckBox; + + /** + * 构造函数 + * @param context 上下文环境 + */ + public NotesListItem(Context context) { + super(context); + // 加载布局文件(R.layout.note_item )到当前视图 + inflate(context, R.layout.note_item, this); + + // 初始化视图组件 + mAlert = findViewById(R.id.iv_alert_icon); // 提醒图标 + mTitle = findViewById(R.id.tv_title); // 标题文本 + mTime = findViewById(R.id.tv_time); // 时间文本 + mCallName = findViewById(R.id.tv_name); // 联系人名称 + mCheckBox = findViewById(android.R.id.checkbox);// 多选复选框 + } + + /** + * 绑定数据到视图 + * @param context 上下文 + * @param data 笔记数据对象 + * @param choiceMode 是否处于多选模式 + * @param checked 是否被选中 + */ + @SuppressLint("SetTextI18n") // 忽略国际化的Lint警告 + public void bind(Context context, NoteItemData data, boolean choiceMode, boolean checked) { + // 处理多选模式显示逻辑 + if (choiceMode && data.getType() == Notes.TYPE_NOTE) { + mCheckBox.setVisibility(View.VISIBLE); // 显示复选框 + mCheckBox.setChecked(checked); // 设置选中状态 + } else { + mCheckBox.setVisibility(View.GONE); // 隐藏复选框 + } + + mItemData = data; // 保存数据引用 + + // 判断笔记类型并设置不同显示样式 + if (data.getId() == Notes.ID_CALL_RECORD_FOLDER) { + // 通话记录文件夹的特殊处理 + mCallName.setVisibility(View.GONE); // 隐藏联系人名称 + mAlert.setVisibility(View.VISIBLE); // 显示提醒图标 + // 设置标题样式和内容 + mTitle.setTextAppearance(context, R.style.TextAppearancePrimaryItem); + mTitle.setText(context.getString(R.string.call_record_folder_name) + + context.getString(R.string.format_folder_files_count, data.getNotesCount())); + mAlert.setImageResource(R.drawable.call_record); // 设置通话记录图标 + } else if (data.getParentId() == Notes.ID_CALL_RECORD_FOLDER) { + // 通话记录笔记的特殊处理 + mCallName.setVisibility(View.VISIBLE); // 显示联系人名称 + mCallName.setText(data.getCallName()); // 设置联系人名称 + // 设置次级标题样式 + mTitle.setTextAppearance(context, R.style.TextAppearanceSecondaryItem); + mTitle.setText(DataUtils.getFormattedSnippet(data.getSnippet())); // 设置内容摘要 + // 处理提醒图标显示 + if (data.hasAlert()) { + mAlert.setImageResource(R.drawable.clock); // 设置时钟图标 + mAlert.setVisibility(View.VISIBLE); + } else { + mAlert.setVisibility(View.GONE); + } + } else { + // 普通笔记/文件夹的处理 + mCallName.setVisibility(View.GONE); // 隐藏联系人名称 + // 设置主标题样式 + mTitle.setTextAppearance(context, R.style.TextAppearancePrimaryItem); + + if (data.getType() == Notes.TYPE_FOLDER) { + // 文件夹的特殊处理 + mTitle.setText(data.getSnippet() + context.getString(R.string.format_folder_files_count, + data.getNotesCount())); // 显示文件夹名+笔记数 + mAlert.setVisibility(View.GONE); // 隐藏提醒图标 + } else { + // 普通笔记的处理 + mTitle.setText(DataUtils.getFormattedSnippet(data.getSnippet())); // 设置内容摘要 + // 处理提醒图标显示 + if (data.hasAlert()) { + mAlert.setImageResource(R.drawable.clock); // 设置时钟图标 + mAlert.setVisibility(View.VISIBLE); + } else { + mAlert.setVisibility(View.GONE); + } + } + } + + // 设置相对时间显示(如"2分钟前") + mTime.setText(DateUtils.getRelativeTimeSpanString(data.getModifiedDate())); + + // 设置背景样式 + setBackground(data); + } + + /** + * 根据笔记位置设置不同背景样式 + * @param data 笔记数据对象 + */ + private void setBackground(NoteItemData data) { + int id = data.getBgColorId(); // 获取背景颜色ID + if (data.getType() == Notes.TYPE_NOTE) { + // 笔记项的背景处理 + if (data.isSingle() || data.isOneFollowingFolder()) { + // 单一项或紧接文件夹的项 + setBackgroundResource(NoteItemBgResources.getNoteBgSingleRes(id)); + } else if (data.isLast()) { + // 最后一项 + setBackgroundResource(NoteItemBgResources.getNoteBgLastRes(id)); + } else if (data.isFirst() || data.isMultiFollowingFolder()) { + // 第一项或跟随多文件夹的项 + setBackgroundResource(NoteItemBgResources.getNoteBgFirstRes(id)); + } else { + // 普通中间项 + setBackgroundResource(NoteItemBgResources.getNoteBgNormalRes(id)); + } + } else { + // 文件夹项的背景 + setBackgroundResource(NoteItemBgResources.getFolderBgRes()); + } + } + + /** + * 获取当前绑定的笔记数据 + * @return 笔记数据对象 + */ + public NoteItemData getItemData() { + return mItemData; + } +} diff --git a/src/mi_note/app/src/main/java/net/micode/notes/ui/NotesPreferenceActivity.java b/src/mi_note/app/src/main/java/net/micode/notes/ui/NotesPreferenceActivity.java new file mode 100644 index 0000000..e2c529f --- /dev/null +++ b/src/mi_note/app/src/main/java/net/micode/notes/ui/NotesPreferenceActivity.java @@ -0,0 +1,452 @@ +/* + * 版权所有 (c) 2010-2011,MiCode 开源社区 (www.micode.net) + * 根据 Apache 许可证 2.0 版本("许可证")授权; + * 除非符合许可证的规定,否则不得使用本文件。 + * 您可以从以下网址获取许可证副本: + * http://www.apache.org/licenses/LICENSE-2.0 + * 除非适用法律要求或书面同意,本软件按"原样"分发, + * 没有任何明示或暗示的保证或条件。 + * 详见许可证中规定的权限和限制。 + * (注:这是一份标准的Apache许可证2.0版本的开源声明) + */ + +// 声明当前Java文件的包路径(该Activity位于notes应用的ui包下) +package net.micode.notes.ui; + +// Android账户管理相关类 +import android.accounts.Account; // 账户基本类 +import android.accounts.AccountManager; // 账户管理系统服务 + +// Android基础UI组件 +// 顶部操作栏 +import android.app.AlertDialog; // 提示对话框 +import android.content.BroadcastReceiver; // 广播接收器基类 +import android.content.ContentValues; // 键值对存储(用于数据库操作) + +// Android核心组件类 +import android.content.Context; // 应用上下文 +// 对话框按钮回调接口 +import android.content.Intent; // 意图(用于Activity跳转) +import android.content.IntentFilter; // 意图过滤器(广播相关) +import android.content.SharedPreferences; // 轻量级数据存储 + +// Android基础框架类 +import android.os.Bundle; // 数据存储Bundle + +// 设置相关类(Preference) +import android.preference.Preference; // 设置项基类 +// 设置项点击监听 +import android.preference.PreferenceActivity; // 设置Activity基类 +import android.preference.PreferenceCategory; // 设置分组容器 + +// Android文本工具类 +import android.text.TextUtils; // 文本处理工具 +import android.text.format.DateFormat; // 日期格式化 + +// Android视图相关类 +import android.view.LayoutInflater; // 布局加载器 +// 菜单 +import android.view.MenuItem; // 菜单项 +import android.view.View; // 基础视图类 +import android.widget.Button; // 按钮控件 +import android.widget.TextView; // 文本控件 +import android.widget.Toast; // Toast提示 + +// 应用资源类 +import net.micode.notes.R; // 自动生成的资源ID类 + +// 本地数据模型 +import net.micode.notes.data.Notes; // 笔记数据常量 +import net.micode.notes.data.Notes.NoteColumns; // 笔记数据列名 + +// 同步服务相关 +import net.micode.notes.gtask.remote.GTaskSyncService; // 谷歌任务同步服务 + +// Java工具类 +import java.util.Objects; // 对象工具类(判空等) + +/** + * 笔记应用的设置Activity,继承自PreferenceActivity + * 功能: + * 1. 管理Google账户同步设置 + * 2. 处理背景颜色偏好设置 + * 3. 控制立即同步/取消同步操作 + */ +public class NotesPreferenceActivity extends PreferenceActivity { + // 偏好设置文件名 + public static final String PREFERENCE_NAME = "notes_preferences"; + // 同步账户名的偏好设置键 + public static final String PREFERENCE_SYNC_ACCOUNT_NAME = "pref_key_account_name"; + // 最后同步时间的偏好设置键 + public static final String PREFERENCE_LAST_SYNC_TIME = "pref_last_sync_time"; + // 背景颜色设置的偏好设置键 + public static final String PREFERENCE_SET_BG_COLOR_KEY = "pref_key_bg_random_appear"; + // 同步账户设置项的键 + private static final String PREFERENCE_SYNC_ACCOUNT_KEY = "pref_sync_account_key"; + // 账户权限过滤键 + private static final String AUTHORITIES_FILTER_KEY = "authorities"; + + // 账户设置分类 + private PreferenceCategory mAccountCategory; + // 同步服务广播接收器 + private GTaskReceiver mReceiver; + // 原始账户数组(用于检测新增账户) + private Account[] mOriAccounts; + // 是否添加了新账户的标志 + private boolean mHasAddedAccount; + + @Override + protected void onCreate(Bundle icicle) { + super.onCreate(icicle); + + // 设置ActionBar显示返回箭头 + Objects.requireNonNull(getActionBar()).setDisplayHomeAsUpEnabled(true); + + // 从XML加载偏好设置 + addPreferencesFromResource(R.xml.preferences); + // 获取账户设置分类 + mAccountCategory = (PreferenceCategory) findPreference(PREFERENCE_SYNC_ACCOUNT_KEY); + // 初始化广播接收器 + mReceiver = new GTaskReceiver(); + // 创建意图过滤器,监听同步服务广播 + IntentFilter filter = new IntentFilter(); + filter.addAction(GTaskSyncService.GTASK_SERVICE_BROADCAST_NAME); + registerReceiver(mReceiver, filter); + + // 初始化原始账户数组 + mOriAccounts = null; + // 加载设置页面的顶部自定义布局 + View header = LayoutInflater.from(this).inflate(R.layout.settings_header, null); + + } + + @Override + protected void onResume() { + super.onResume(); + + // 如果用户添加了新账户,需要自动设置同步账户 + if (mHasAddedAccount) { + Account[] accounts = getGoogleAccounts(); + // 比较新旧账户数量 + if (mOriAccounts != null && accounts.length > mOriAccounts.length) { + // 查找新添加的账户 + for (Account accountNew : accounts) { + boolean found = false; + for (Account accountOld : mOriAccounts) { + if (TextUtils.equals(accountOld.name, accountNew.name)) { + found = true; + break; + } + } + // 找到新账户后设置同步账户 + if (!found) { + setSyncAccount(accountNew.name); + break; + } + } + } + } + + // 刷新UI状态 + refreshUI(); + } + + @Override + protected void onDestroy() { + // 注销广播接收器 + if (mReceiver != null) { + unregisterReceiver(mReceiver); + } + super.onDestroy(); + } + + /** + * 加载账户偏好设置项 + */ + private void loadAccountPreference() { + // 清空现有设置项 + mAccountCategory.removeAll(); + + // 创建账户设置项 + Preference accountPref = new Preference(this); + final String defaultAccount = getSyncAccountName(this); + // 设置标题和摘要 + accountPref.setTitle(getString(R.string.preferences_account_title)); + accountPref.setSummary(getString(R.string.preferences_account_summary)); + // 设置点击监听器 + accountPref.setOnPreferenceClickListener(preference -> { + if (!GTaskSyncService.isSyncing()) { + // 首次设置账户 + if (TextUtils.isEmpty(defaultAccount)) { + showSelectAccountAlertDialog(); + } else { + // 已有账户时显示确认对话框 + showChangeAccountConfirmAlertDialog(); + } + } else { + // 同步进行中不能更改账户 + Toast.makeText(NotesPreferenceActivity.this, + R.string.preferences_toast_cannot_change_account, + Toast.LENGTH_SHORT).show(); + } + return true; + }); + + // 添加设置项到分类 + mAccountCategory.addPreference(accountPref); + } + + /** + * 加载同步按钮状态 + */ + private void loadSyncButton() { + Button syncButton = findViewById(R.id.preference_sync_button); + TextView lastSyncTimeView = findViewById(R.id.prefenerece_sync_status_textview); + + // 根据同步状态设置按钮文本和点击事件 + if (GTaskSyncService.isSyncing()) { + syncButton.setText(getString(R.string.preferences_button_sync_cancel)); + syncButton.setOnClickListener(v -> GTaskSyncService.cancelSync(NotesPreferenceActivity.this)); + } else { + syncButton.setText(getString(R.string.preferences_button_sync_immediately)); + syncButton.setOnClickListener(v -> GTaskSyncService.startSync(NotesPreferenceActivity.this)); + } + // 只有设置了同步账户才能点击同步按钮 + syncButton.setEnabled(!TextUtils.isEmpty(getSyncAccountName(this))); + + // 设置最后同步时间显示 + if (GTaskSyncService.isSyncing()) { + lastSyncTimeView.setText(GTaskSyncService.getProgressString()); + lastSyncTimeView.setVisibility(View.VISIBLE); + } else { + long lastSyncTime = getLastSyncTime(this); + if (lastSyncTime != 0) { + lastSyncTimeView.setText(getString(R.string.preferences_last_sync_time, + DateFormat.format(getString(R.string.preferences_last_sync_time_format), + lastSyncTime))); + lastSyncTimeView.setVisibility(View.VISIBLE); + } else { + lastSyncTimeView.setVisibility(View.GONE); + } + } + } + + /** + * 刷新UI状态 + */ + private void refreshUI() { + loadAccountPreference(); + loadSyncButton(); + } + + /** + * 显示选择账户对话框 + */ + private void showSelectAccountAlertDialog() { + AlertDialog.Builder dialogBuilder = new AlertDialog.Builder(this); + + // 加载自定义标题布局 + View titleView = LayoutInflater.from(this).inflate(R.layout.account_dialog_title, null); + TextView titleTextView = titleView.findViewById(R.id.account_dialog_title); + titleTextView.setText(getString(R.string.preferences_dialog_select_account_title)); + TextView subtitleTextView = titleView.findViewById(R.id.account_dialog_subtitle); + subtitleTextView.setText(getString(R.string.preferences_dialog_select_account_tips)); + + dialogBuilder.setCustomTitle(titleView); + dialogBuilder.setPositiveButton(null, null); + + // 获取当前所有Google账户 + Account[] accounts = getGoogleAccounts(); + String defAccount = getSyncAccountName(this); + + mOriAccounts = accounts; + mHasAddedAccount = false; + + if (accounts.length > 0) { + // 构建账户列表项 + CharSequence[] items = new CharSequence[accounts.length]; + final CharSequence[] itemMapping = items; + int checkedItem = -1; + int index = 0; + for (Account account : accounts) { + // 标记当前已选账户 + if (TextUtils.equals(account.name, defAccount)) { + checkedItem = index; + } + items[index++] = account.name; + } + // 设置单选列表 + dialogBuilder.setSingleChoiceItems(items, checkedItem, + (dialog, which) -> { + setSyncAccount(itemMapping[which].toString()); + dialog.dismiss(); + refreshUI(); + }); + } + + // 添加"添加账户"视图 + View addAccountView = LayoutInflater.from(this).inflate(R.layout.add_account_text, null); + dialogBuilder.setView(addAccountView); + + final AlertDialog dialog = dialogBuilder.show(); + addAccountView.setOnClickListener(v -> { + mHasAddedAccount = true; + // 启动添加账户设置界面 + Intent intent = new Intent("android.settings.ADD_ACCOUNT_SETTINGS"); + intent.putExtra(AUTHORITIES_FILTER_KEY, new String[]{"gmail-ls"}); + startActivityForResult(intent, -1); + dialog.dismiss(); + }); + } + + /** + * 显示更改账户确认对话框 + */ + private void showChangeAccountConfirmAlertDialog() { + AlertDialog.Builder dialogBuilder = new AlertDialog.Builder(this); + + // 加载自定义标题布局 + View titleView = LayoutInflater.from(this).inflate(R.layout.account_dialog_title, null); + TextView titleTextView = titleView.findViewById(R.id.account_dialog_title); + titleTextView.setText(getString(R.string.preferences_dialog_change_account_title, + getSyncAccountName(this))); + TextView subtitleTextView = titleView.findViewById(R.id.account_dialog_subtitle); + subtitleTextView.setText(getString(R.string.preferences_dialog_change_account_warn_msg)); + dialogBuilder.setCustomTitle(titleView); + + // 设置操作菜单项 + CharSequence[] menuItemArray = new CharSequence[]{ + getString(R.string.preferences_menu_change_account), + getString(R.string.preferences_menu_remove_account), + getString(R.string.preferences_menu_cancel) + }; + dialogBuilder.setItems(menuItemArray, (dialog, which) -> { + if (which == 0) { + showSelectAccountAlertDialog(); + } else if (which == 1) { + removeSyncAccount(); + refreshUI(); + } + }); + dialogBuilder.show(); + } + + /** + * 获取所有Google账户 + */ + private Account[] getGoogleAccounts() { + AccountManager accountManager = AccountManager.get(this); + return accountManager.getAccountsByType("com.google"); + } + + /** + * 设置同步账户 + */ + private void setSyncAccount(String account) { + if (!getSyncAccountName(this).equals(account)) { + // 保存账户到偏好设置 + SharedPreferences settings = getSharedPreferences(PREFERENCE_NAME, Context.MODE_PRIVATE); + SharedPreferences.Editor editor = settings.edit(); + editor.putString(PREFERENCE_SYNC_ACCOUNT_NAME, Objects.requireNonNullElse(account, "")); + editor.apply(); + + // 重置最后同步时间 + setLastSyncTime(this, 0); + + // 在新线程中清除本地同步信息 + new Thread(() -> { + ContentValues values = new ContentValues(); + values.put(NoteColumns.GTASK_ID, ""); + values.put(NoteColumns.SYNC_ID, 0); + getContentResolver().update(Notes.CONTENT_NOTE_URI, values, null, null); + }).start(); + + Toast.makeText(this, + getString(R.string.preferences_toast_success_set_accout, account), + Toast.LENGTH_SHORT).show(); + } + } + + /** + * 移除同步账户 + */ + private void removeSyncAccount() { + SharedPreferences settings = getSharedPreferences(PREFERENCE_NAME, Context.MODE_PRIVATE); + SharedPreferences.Editor editor = settings.edit(); + // 移除账户相关设置 + if (settings.contains(PREFERENCE_SYNC_ACCOUNT_NAME)) { + editor.remove(PREFERENCE_SYNC_ACCOUNT_NAME); + } + if (settings.contains(PREFERENCE_LAST_SYNC_TIME)) { + editor.remove(PREFERENCE_LAST_SYNC_TIME); + } + editor.apply(); + + // 在新线程中清除本地同步信息 + new Thread(() -> { + ContentValues values = new ContentValues(); + values.put(NoteColumns.GTASK_ID, ""); + values.put(NoteColumns.SYNC_ID, 0); + getContentResolver().update(Notes.CONTENT_NOTE_URI, values, null, null); + }).start(); + } + + /** + * 静态方法:获取当前同步账户名 + */ + public static String getSyncAccountName(Context context) { + SharedPreferences settings = context.getSharedPreferences(PREFERENCE_NAME, + Context.MODE_PRIVATE); + return settings.getString(PREFERENCE_SYNC_ACCOUNT_NAME, ""); + } + + /** + * 静态方法:设置最后同步时间 + */ + public static void setLastSyncTime(Context context, long time) { + SharedPreferences settings = context.getSharedPreferences(PREFERENCE_NAME, + Context.MODE_PRIVATE); + SharedPreferences.Editor editor = settings.edit(); + editor.putLong(PREFERENCE_LAST_SYNC_TIME, time); + editor.apply(); + } + + /** + * 静态方法:获取最后同步时间 + */ + public static long getLastSyncTime(Context context) { + SharedPreferences settings = context.getSharedPreferences(PREFERENCE_NAME, + Context.MODE_PRIVATE); + return settings.getLong(PREFERENCE_LAST_SYNC_TIME, 0); + } + + /** + * 同步服务广播接收器 + */ + private class GTaskReceiver extends BroadcastReceiver { + @Override + public void onReceive(Context context, Intent intent) { + // 收到同步状态变化时刷新UI + refreshUI(); + if (intent.getBooleanExtra(GTaskSyncService.GTASK_SERVICE_BROADCAST_IS_SYNCING, false)) { + TextView syncStatus = findViewById(R.id.prefenerece_sync_status_textview); + syncStatus.setText(intent + .getStringExtra(GTaskSyncService.GTASK_SERVICE_BROADCAST_PROGRESS_MSG)); + } + } + } + + /** + * 处理选项菜单项点击 + */ + public boolean onOptionsItemSelected(MenuItem item) { + if (item.getItemId() == android.R.id.home) { + // 点击返回箭头时回到笔记列表 + Intent intent = new Intent(this, NotesListActivity.class); + intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP); + startActivity(intent); + return true; + } + return false; + } +} diff --git a/src/mi_note/app/src/main/java/net/micode/notes/widget/NoteWidgetProvider.java b/src/mi_note/app/src/main/java/net/micode/notes/widget/NoteWidgetProvider.java new file mode 100644 index 0000000..1d46efd --- /dev/null +++ b/src/mi_note/app/src/main/java/net/micode/notes/widget/NoteWidgetProvider.java @@ -0,0 +1,208 @@ +/* + * 版权所有 (c) 2010-2011,MiCode 开源社区 (www.micode.net) + * 根据 Apache 许可证 2.0 版本("许可证")授权; + * 除非符合许可证的规定,否则不得使用本文件。 + * 您可以从以下网址获取许可证副本: + * http://www.apache.org/licenses/LICENSE-2.0 + * 除非适用法律要求或书面同意,本软件按"原样"分发, + * 没有任何明示或暗示的保证或条件。 + * 详见许可证中规定的权限和限制。 + * (注:这是一份标准的Apache许可证2.0版本的开源声明) + */ +// 定义包路径 +package net.micode.notes.widget; + +// 导入Android相关类 +import android.app.PendingIntent; // 延时意图 +import android.appwidget.AppWidgetManager; // 小部件管理器 +import android.appwidget.AppWidgetProvider; // 小部件提供者基类 +import android.content.ContentValues; // 内容值对象 +import android.content.Context; // 上下文对象 +import android.content.Intent; // 意图对象 +import android.database.Cursor; // 数据库游标 +import android.util.Log; // 日志工具 +import android.widget.RemoteViews; // 远程视图(用于小部件UI) + +// 导入项目资源 +import net.micode.notes.R; // 项目资源文件 +// 导入项目数据类 +import net.micode.notes.data.Notes; // 笔记常量 +import net.micode.notes.data.Notes.NoteColumns; // 笔记列定义 +// 导入工具类 +import net.micode.notes.tool.ResourceParser; // 资源解析工具 +// 导入Activity类 +import net.micode.notes.ui.NoteEditActivity; // 笔记编辑界面 +import net.micode.notes.ui.NotesListActivity; // 笔记列表界面 + +/** + * 抽象笔记小部件提供者类 + * 提供笔记小部件的基本功能,具体样式由子类实现 + */ +public abstract class NoteWidgetProvider extends AppWidgetProvider { + // 笔记查询投影列定义 + public static final String [] PROJECTION = new String [] { + NoteColumns.ID, // 笔记ID + NoteColumns.BG_COLOR_ID, // 背景颜色ID + NoteColumns.SNIPPET // 笔记摘要 + }; + + // 投影列索引常量 + public static final int COLUMN_ID = 0; // ID列索引 + public static final int COLUMN_BG_COLOR_ID = 1; // 背景颜色列索引 + public static final int COLUMN_SNIPPET = 2; // 摘要列索引 + + private static final String TAG = "NoteWidgetProvider"; // 日志标签 + + /** + * 当小部件被删除时调用 + * @param context 上下文对象 + * @param appWidgetIds 被删除的小部件ID数组 + */ + @Override + public void onDeleted(Context context, int[] appWidgetIds) { + // 创建内容值对象,用于更新数据库 + ContentValues values = new ContentValues(); + // 将笔记的小部件ID设为无效值 + values.put(NoteColumns.WIDGET_ID, AppWidgetManager.INVALID_APPWIDGET_ID); + + // 遍历所有被删除的小部件ID + for (int appWidgetId : appWidgetIds) { + // 更新数据库,解除笔记与小部件的关联 + context.getContentResolver().update(Notes.CONTENT_NOTE_URI, + values, + NoteColumns.WIDGET_ID + "=?", // 更新条件 + new String[]{String.valueOf(appWidgetId)}); // 参数值 + } + } + + /** + * 获取与小部件关联的笔记信息 + * @param context 上下文对象 + * @param widgetId 小部件ID + * @return 包含笔记信息的游标对象 + */ + private Cursor getNoteWidgetInfo(Context context, int widgetId) { + // 查询数据库获取关联的笔记信息 + return context.getContentResolver().query(Notes.CONTENT_NOTE_URI, + PROJECTION, // 查询列 + // 查询条件:匹配小部件ID且不在回收站中 + NoteColumns.WIDGET_ID + "=? AND " + NoteColumns.PARENT_ID + "<>?", + new String[] { String.valueOf(widgetId), String.valueOf(Notes.ID_TRASH_FOLER) }, + null); // 无排序 + } + + /** + * 更新小部件(公开方法) + * @param context 上下文对象 + * @param appWidgetManager 小部件管理器 + * @param appWidgetIds 需要更新的小部件ID数组 + */ + protected void update(Context context, AppWidgetManager appWidgetManager, int[] appWidgetIds) { + update(context, appWidgetManager, appWidgetIds, false); // 默认非隐私模式 + } + + /** + * 更新小部件(私有方法) + * @param context 上下文对象 + * @param appWidgetManager 小部件管理器 + * @param appWidgetIds 需要更新的小部件ID数组 + * @param privacyMode 是否为隐私模式 + */ + private void update(Context context, AppWidgetManager appWidgetManager, int[] appWidgetIds, + boolean privacyMode) { + // 遍历所有需要更新的小部件 + /* + 生成启动宿主Activity的延时意图 + */ + for (int appWidgetId : appWidgetIds) { + // 检查小部件ID是否有效 + if (appWidgetId != AppWidgetManager.INVALID_APPWIDGET_ID) { + int bgId = ResourceParser.getDefaultBgId(context); // 获取默认背景ID + String snippet; // 笔记摘要 + + // 创建编辑笔记的Intent + Intent intent = new Intent(context, NoteEditActivity.class); + intent.setFlags(Intent.FLAG_ACTIVITY_SINGLE_TOP); // 设置启动模式 + // 添加小部件ID到Intent + intent.putExtra(Notes.INTENT_EXTRA_WIDGET_ID, appWidgetId); + // 添加小部件类型到Intent + intent.putExtra(Notes.INTENT_EXTRA_WIDGET_TYPE, getWidgetType()); + + // 获取关联的笔记信息 + Cursor c = getNoteWidgetInfo(context, appWidgetId); + if (c != null && c.moveToFirst()) { + // 检查是否有多条笔记关联同一个小部件(异常情况) + if (c.getCount() > 1) { + Log.e(TAG, "Multiple message with same widget id:" + appWidgetId); + c.close(); + return; + } + // 从游标获取笔记信息 + snippet = c.getString(COLUMN_SNIPPET); // 获取摘要 + bgId = c.getInt(COLUMN_BG_COLOR_ID); // 获取背景ID + intent.putExtra(Intent.EXTRA_UID, c.getLong(COLUMN_ID)); // 添加笔记ID + intent.setAction(Intent.ACTION_VIEW); // 设置操作为查看 + } else { + // 如果没有关联的笔记,显示默认文本 + snippet = context.getResources().getString(R.string.widget_havenot_content); + intent.setAction(Intent.ACTION_INSERT_OR_EDIT); // 设置操作为新建 + } + + // 关闭游标 + if (c != null) { + c.close(); + } + + // 创建远程视图 + RemoteViews rv = new RemoteViews(context.getPackageName(), getLayoutId()); + // 设置背景图片 + rv.setImageViewResource(R.id.widget_bg_image, getBgResourceId(bgId)); + // 添加背景ID到Intent + intent.putExtra(Notes.INTENT_EXTRA_BACKGROUND_ID, bgId); + + /* + 生成启动宿主Activity的延时意图 + */ + PendingIntent pendingIntent; + if (privacyMode) { + // 隐私模式下显示特殊文本 + rv.setTextViewText(R.id.widget_text, + context.getString(R.string.widget_under_visit_mode)); + // 点击跳转到笔记列表 + pendingIntent = PendingIntent.getActivity(context, appWidgetId, new Intent( + context, NotesListActivity.class), PendingIntent.FLAG_UPDATE_CURRENT); + } else { + // 正常模式显示笔记摘要 + rv.setTextViewText(R.id.widget_text, snippet); + // 点击跳转到笔记编辑界面 + pendingIntent = PendingIntent.getActivity(context, appWidgetId, intent, + PendingIntent.FLAG_UPDATE_CURRENT); + } + + // 设置点击事件 + rv.setOnClickPendingIntent(R.id.widget_text, pendingIntent); + // 更新小部件 + appWidgetManager.updateAppWidget(appWidgetId, rv); + } + } + } + + /** + * 抽象方法:获取背景资源ID + * @param bgId 背景颜色ID + * @return 对应的背景资源ID + */ + protected abstract int getBgResourceId(int bgId); + + /** + * 抽象方法:获取布局ID + * @return 小部件布局资源ID + */ + protected abstract int getLayoutId(); + + /** + * 抽象方法:获取小部件类型 + * @return 小部件类型标识 + */ + protected abstract int getWidgetType(); +} diff --git a/src/mi_note/app/src/main/java/net/micode/notes/widget/NoteWidgetProvider_2x.java b/src/mi_note/app/src/main/java/net/micode/notes/widget/NoteWidgetProvider_2x.java new file mode 100644 index 0000000..9dccd4f --- /dev/null +++ b/src/mi_note/app/src/main/java/net/micode/notes/widget/NoteWidgetProvider_2x.java @@ -0,0 +1,77 @@ +/* + * 版权所有 (c) 2010-2011,MiCode 开源社区 (www.micode.net) + * 根据 Apache 许可证 2.0 版本("许可证")授权; + * 除非符合许可证的规定,否则不得使用本文件。 + * 您可以从以下网址获取许可证副本: + * http://www.apache.org/licenses/LICENSE-2.0 + * 除非适用法律要求或书面同意,本软件按"原样"分发, + * 没有任何明示或暗示的保证或条件。 + * 详见许可证中规定的权限和限制。 + * (注:这是一份标准的Apache许可证2.0版本的开源声明) + */ +// 定义包路径 +package net.micode.notes.widget; + +// 导入Android相关类 +import android.appwidget.AppWidgetManager; // 小部件管理类 +import android.content.Context; // 上下文对象 + +// 导入项目资源 +import net.micode.notes.R; // 项目资源文件 +// 导入数据常量 +import net.micode.notes.data.Notes; // 笔记相关常量 +// 导入资源解析工具 +import net.micode.notes.tool.ResourceParser; // 资源解析工具类 + +/** + * 2x大小笔记小部件提供者类 + * 继承自NoteWidgetProvider,实现2x尺寸小部件的具体功能 + */ +public class NoteWidgetProvider_2x extends NoteWidgetProvider { + + /** + * 小部件更新回调方法 + * 当小部件需要更新时由系统调用 + * + * @param context 上下文对象 + * @param appWidgetManager 小部件管理器 + * @param appWidgetIds 需要更新的小部件ID数组 + */ + @Override + public void onUpdate(Context context, AppWidgetManager appWidgetManager, int[] appWidgetIds) { + // 调用父类的update方法进行基础更新 + super.update(context, appWidgetManager, appWidgetIds); + } + + /** + * 获取小部件布局资源ID + * + * @return 返回2x小部件的布局资源ID + */ + @Override + protected int getLayoutId() { + return R.layout.widget_2x; // 使用widget_2x布局文件 + } + + /** + * 根据背景ID获取对应的2x小部件背景资源 + * + * @param bgId 背景颜色ID(如ResourceParser.YELLOW等) + * @return 对应的2x小部件背景资源ID + */ + @Override + protected int getBgResourceId(int bgId) { + // 通过ResourceParser获取2x尺寸的小部件背景资源 + return ResourceParser.WidgetBgResources.getWidget2xBgResource(bgId); + } + + /** + * 获取小部件类型标识 + * + * @return 返回2x小部件的类型常量 + */ + @Override + protected int getWidgetType() { + return Notes.TYPE_WIDGET_2X; // 返回2x小部件类型常量 + } +} \ No newline at end of file diff --git a/src/mi_note/app/src/main/java/net/micode/notes/widget/NoteWidgetProvider_4x.java b/src/mi_note/app/src/main/java/net/micode/notes/widget/NoteWidgetProvider_4x.java new file mode 100644 index 0000000..28a49a8 --- /dev/null +++ b/src/mi_note/app/src/main/java/net/micode/notes/widget/NoteWidgetProvider_4x.java @@ -0,0 +1,82 @@ +/* + * 版权所有 (c) 2010-2011,MiCode 开源社区 (www.micode.net) + * 根据 Apache 许可证 2.0 版本("许可证")授权; + * 除非符合许可证的规定,否则不得使用本文件。 + * 您可以从以下网址获取许可证副本: + * http://www.apache.org/licenses/LICENSE-2.0 + * 除非适用法律要求或书面同意,本软件按"原样"分发, + * 没有任何明示或暗示的保证或条件。 + * 详见许可证中规定的权限和限制。 + * (注:这是一份标准的Apache许可证2.0版本的开源声明) + */ +// 定义包路径(说明该类所属的Java包) +package net.micode.notes.widget; + +// 导入Android系统类库 +import android.appwidget.AppWidgetManager; // 小部件管理类,用于管理App Widgets +import android.content.Context; // 上下文类,提供应用环境信息 + +// 导入项目资源 +import net.micode.notes.R; // 自动生成的R.java 文件,包含所有资源ID +// 导入项目数据类 +import net.micode.notes.data.Notes; // 笔记应用的常量定义 +// 导入工具类 +import net.micode.notes.tool.ResourceParser; // 资源解析工具类 + +/** + * 4x尺寸笔记小部件提供者类 + * 继承自NoteWidgetProvider抽象基类,专门用于4x大小的小部件实现 + */ +public class NoteWidgetProvider_4x extends NoteWidgetProvider { + + /** + * 当小部件需要更新时调用的方法 + * 覆盖父类方法,提供4x小部件的更新逻辑 + * + * @param context 上下文对象,提供应用环境信息 + * @param appWidgetManager 小部件管理器,用于更新小部件 + * @param appWidgetIds 需要更新的小部件ID数组 + */ + @Override + public void onUpdate(Context context, AppWidgetManager appWidgetManager, int[] appWidgetIds) { + // 直接调用父类的update方法完成基础更新操作 + super.update(context, appWidgetManager, appWidgetIds); + } + + /** + * 获取4x小部件的布局资源ID + * 实现父类抽象方法,返回4x小部件特有的布局文件 + * + * @return int 返回4x小部件的布局资源ID(R.layout.widget_4x ) + */ + @Override + protected int getLayoutId() { + // 返回4x小部件专用的布局文件ID + return R.layout.widget_4x; + } + + /** + * 根据背景颜色ID获取对应的4x小部件背景资源 + * 实现父类抽象方法,返回4x尺寸的背景资源 + * + * @param bgId 背景颜色ID(来自ResourceParser的颜色常量) + * @return int 返回对应的4x尺寸背景图片资源ID + */ + @Override + protected int getBgResourceId(int bgId) { + // 通过ResourceParser工具类获取4x尺寸的背景资源 + return ResourceParser.WidgetBgResources.getWidget4xBgResource(bgId); + } + + /** + * 获取小部件类型标识 + * 实现父类抽象方法,返回4x小部件的类型常量 + * + * @return int 返回4x小部件的类型常量(Notes.TYPE_WIDGET_4X) + */ + @Override + protected int getWidgetType() { + // 返回4x小部件的类型定义常量 + return Notes.TYPE_WIDGET_4X; + } +} \ No newline at end of file diff --git a/src/mi_note/app/src/main/res/color/primary_text_dark.xml b/src/mi_note/app/src/main/res/color/primary_text_dark.xml new file mode 100644 index 0000000..7c85459 --- /dev/null +++ b/src/mi_note/app/src/main/res/color/primary_text_dark.xml @@ -0,0 +1,22 @@ + + + + + + + + + \ No newline at end of file diff --git a/src/mi_note/app/src/main/res/color/secondary_text_dark.xml b/src/mi_note/app/src/main/res/color/secondary_text_dark.xml new file mode 100644 index 0000000..c1c2384 --- /dev/null +++ b/src/mi_note/app/src/main/res/color/secondary_text_dark.xml @@ -0,0 +1,20 @@ + + + + + + + \ No newline at end of file diff --git a/src/mi_note/app/src/main/res/drawable-hdpi/bg_btn_set_color.png b/src/mi_note/app/src/main/res/drawable-hdpi/bg_btn_set_color.png new file mode 100644 index 0000000000000000000000000000000000000000..5eb5d44f561b5484eb094e18159ac10e0a32b53d GIT binary patch literal 3588 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 QZ~y=R07*qoM6N<$g4u_m#{d8T literal 0 HcmV?d00001 diff --git a/src/mi_note/app/src/main/res/drawable-hdpi/dropdown_icon.9.png b/src/mi_note/app/src/main/res/drawable-hdpi/dropdown_icon.9.png new file mode 100644 index 0000000000000000000000000000000000000000..55250257a0cd618f2dd365cfa27a38d323c7975b GIT binary patch literal 443 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 literal 0 HcmV?d00001 diff --git a/src/mi_note/app/src/main/res/drawable-hdpi/edit_red.9.png b/src/mi_note/app/src/main/res/drawable-hdpi/edit_red.9.png new file mode 100644 index 0000000000000000000000000000000000000000..bae944a5f822df5d030a91466d439b5a7f7259e3 GIT binary patch literal 3458 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 Glm7#CUYk+? literal 0 HcmV?d00001 diff --git a/src/mi_note/app/src/main/res/drawable-hdpi/edit_title_blue.9.png b/src/mi_note/app/src/main/res/drawable-hdpi/edit_title_blue.9.png new file mode 100644 index 0000000000000000000000000000000000000000..96e60925b9ddf7115029b6c3a5eab53ab509b0d4 GIT binary patch literal 5100 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 literal 0 HcmV?d00001 diff --git a/src/mi_note/app/src/main/res/drawable-hdpi/edit_title_yellow.9.png b/src/mi_note/app/src/main/res/drawable-hdpi/edit_title_yellow.9.png new file mode 100644 index 0000000000000000000000000000000000000000..bf8f580aaf01a744d9e7ad6b1464883eb2ed2b60 GIT binary patch literal 6000 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 literal 0 HcmV?d00001 diff --git a/src/mi_note/app/src/main/res/drawable-hdpi/edit_white.9.png b/src/mi_note/app/src/main/res/drawable-hdpi/edit_white.9.png new file mode 100644 index 0000000000000000000000000000000000000000..918f7a6b19dbddf940ff3e75b9558779ef570d57 GIT binary patch literal 3441 zcmaJ@X*3l68va=-OO|YtUA7imL?K%wLla}{WSx**_90uclw#~*NGJ_Mkuqe4M3%8c z5o2E`S;i8Rwd;PlAMX91`<(Nh=RN0r-sk=Bet90jjSbjX1Xut7Y=+S5h$FrN0G$%k z@uSYc8G7xAnEjzPfdH^_|GVfw9_BOvEVn%L^x*KjenEbLcm4du4E6NH`~&>lJiJ{2 z2qPDmg<5CO__QWzt{j%S!)w(!-mySj0>{+BX;aLZ4xArya_O|iC$U)a@SegzEm|K8 zvOo)xW{S??-LE}PvQ4(Qt-2~YR`xzJoVv2I_hYY-f}!m9qWU;uPH{=6EfjkKHAK9I z`mkuK3ADA75JS%konjQ@Tp+c$A8P|(jR6%F74%knpYDwxpa=eg@{(Nb(|_X{;L=t= zEDcPFb5U67&fJ^|qQTKJlK{*>({%xpr3=Cs4#vow0SP07m zp3;Hba|V+1Iv;_PMJz&=zPSYy;dI318Jnx*ybkhth#&QdUpS&4Eii_^hu2p&M&cGiPR6ysLGcA?G>W znCHYXIr$RYPznRA_ap!UJN=&yRkhKSg}LbkH;Om)cU$qH*P5TW)|vIm!^S7{jDXX) zk4ko&pC4lIZ>M`3+~kF|17u5ZcXG%6(kOG0Ez8&Non(~izK%%Y3wVcyun-F?>xz`i z3&O?OWUarKrv0XpqqdKxhoj+Z;9j0iZe?>x+`&C(-;gRq3Wda|tLRIkNF27uM<1k| z@1IewzAel9c-{ID9xi^X9aWD=yMCrKYldqvT4`N0`+zwklnvk#Oqz{9oOn<2ZjM@| zqfchH9tZ(CQJZp41X$Amr@OKeiUvSN(@v_63?1mnDV+tN@#pE=uQMUAFH8VjFN(eJ z_S%V)pLlT1?3ho&jm;2x=i}FPPD(awaOxhPixFaZaXR}Nzj?FzFys5T3<5=`@}@a! zKPjrRQKq(Y>g?ycluzR`q!cYkG~WJ z_6I3**vDiSd-V&{ifG1sC@$;2`7<~OL_SVI#`G()yFD3kzWpRo-|3OHfOI<_a^70S zGF1gBY<(q!SFpLznaU(dpB%%z%;fNpv&H)X8f{<=v(|epwJcG~)xc!M9QRPM<*azd zYm-{3aIT%!Fc~^y(RrGlfzPXW6+OGoX^}o#}JNEN7(9N`|b4UeHmfT&Y>9 z)&Qpm1}43P_UW9MW2%Y4iRGl#p*hed>3f}@=jwRW+mdEr%*B$3(o8NR6<6(f#+T2P zbaRW!O?$9~--(T#{CXG$(Fzt*A8_#$M3}-!C!W|j$a`c_UhQToZJrci$9bEbKReD zJoB@#zOa4aK5tqVSC)E~WmZ%crQF;i&_a6W)9hQ&MhESC8@U&SC+ z*y1Dha#b%P6p;$=Gj%K>IvzaOMY7c-#NQ}NfR>me>%Q$gw@a5QPYsnOZvug5sXpqnO?Tu2ss8hZMo_p z&q}w-sLCtka59nXvJ$Yux3Wa02KyK26v!5Asr#tYf|(mGH<&iWH;e}N{nGk|TtY1} zZ*^_4FOK&cZ29~y*@FC{4pI9>uUu4Sx{T)cR#Zi$zdl8}+mP0J zx1`^&`-DY>TYeyCt75*lGV+lX~s<8qIp< zUiWN4S$X8q!zF4NoF=1(SQuUX2^!%4)W5NyKG)RZx>SmudU$j#cpYs$k3^jgg&N8 z&M3cEJFvy>4@^l@2Hr_{Q4juH$WA2B`3p+r^1n=L&4TU)(PW2kb2fYKgp~DE?34Pd zqn;lELfmnl-Ux5xay~u=UyhFrOZ=n1p2HQyEy=v{Xs&g*RrAqoAU(x9?-FJ%&pbN_ zSv5aaTn|}T>?IY3YS^gQpzo{3KjX@&(VmYJ(}gRXHkmK;y(P@O@i0H$M4wpvwAi$| z4sWE9zEEJ9wXHgSHBxW)Zi2~;;4hb$O%O7uH2(B@iOpM<*M}x>eIxfqbhU4j{jU9>rgoxsgeUhjBVe@QK(3eL_4Q+O>CW_Q{y z3=bthZNFcdbUXaDBf+(j7LI@WZWteCvpyx>r2mmmBH0WQDz9jdXt)#Ru{ID% zx=X6bK7h|yBP=#NQDYk^h`525FZE;|SSe>=GdoGXRljZPk-W}XcPyx$IfHhV(H9_D zjyQkZ>#9F*Z{QbZtc)E8?{A@e$m9v5x~`Qa=u+vDFOFu@^u~zbd2R4(!Wvtp;QG^f zK}R2>iJ%wZo?9tBwLM)u3@XklD|X!WCxKdz-71;P%(2E@9*QB=iQWN^Dms#Rf8!8y(Kow)}Yvt@V6 z3JZ+2HNWSMp=hxETrYc5dxE=OU!gW6XcboHNbB63prqQbHTwS+r@4$u)!nSrtkN`y z@;{h{zOnOLa;1@0tTd{Ee&1TU+E4u!z3bUL82IDQ4|)6NC<67%vS6LB^tcdSs$uI- z$o2{(lw}n*W*?p!_GX_*KKONFm*ZD-?P0ZRv(MBYr)H$Ef5tIWD_84-097jE~_cy?(2%O{EJ!&te{LD%N3)E^noz%HJN$&e<_{^+GrYd!Sc~9zI~yCrbPhwJ^hnbLoM=9{dGwVh?X%rR8M#yGca#OB zI!)8Bj7MVT#Itk!aFVq2F{1#ayE|oZWMssAHak1JhCn#D*ojJ~8fr-MUaeZ z94)S7j5#5rquplI~n&>xeB!rI5d*;9Wx>htuEA}#=i`o`C*be$gj3*qLzX#fBK literal 0 HcmV?d00001 diff --git a/src/mi_note/app/src/main/res/drawable-hdpi/edit_yellow.9.png b/src/mi_note/app/src/main/res/drawable-hdpi/edit_yellow.9.png new file mode 100644 index 0000000000000000000000000000000000000000..10cb64213f33586622830edd55bf8ed6349fca16 GIT binary patch literal 3634 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 literal 0 HcmV?d00001 diff --git a/src/mi_note/app/src/main/res/drawable-hdpi/font_large.png b/src/mi_note/app/src/main/res/drawable-hdpi/font_large.png new file mode 100644 index 0000000000000000000000000000000000000000..78cf2e6fcc38567b27f1fba2d5518eb3b71b2682 GIT binary patch literal 3161 zcmV-f45ssmP)KLZ*U+5Lu!Sk^o_Z5E4Meg@_7P6crJiNL9pw)e1;Xm069{HJUZAPk55R%$-RIA z6-eL&AQ0xu!e<4=008gy@A0LT~suv4>S3ILP<0Bm`DLLvaF4FK%)Nj?Pt*r}7;7Xa9z9H|HZjR63e zC`Tj$K)V27Re@400>HumpsYY5E(E}?0f1SyGDiY{y#)Yvj#!WnKwtoXnL;eg03bL5 z07D)V%>y7z1E4U{zu>7~aD})?0RX_umCct+(lZpemCzb@^6=o|A>zVpu|i=NDG+7} zl4`aK{0#b-!z=TL9Wt0BGO&T{GJWpjryhdijfaIQ&2!o}p04JRKYg3k&Tf zVxhe-O!X z{f;To;xw^bEES6JSc$k$B2CA6xl)ltA<32E66t?3@gJ7`36pmX0IY^jz)rRYwaaY4 ze(nJRiw;=Qb^t(r^DT@T3y}a2XEZW-_W%Hszxj_qD**t_m!#tW0KDiJT&R>6OvVTR z07RgHDzHHZ48atvzz&?j9lXF70$~P3Knx_nJP<+#`N z#-MZ2bTkiLfR>_b(HgWKJ%F~Nr_oF3b#wrIijHG|(J>BYjM-sajE6;FiC7vY#};Gd zST$CUHDeuEH+B^pz@B062qXfFfD`NpUW5?BY=V%GM_5c)L#QR}BeW8_2v-S%gfYS= zB9o|3v?Y2H`NVi)In3rTB8+ej^> zQ=~r95NVuDChL%G$=>7$vVg20myx%S50Foi`^m%Pw-h?Xh~i8Mq9jtJloCocWk2Nv zrJpiFnV_ms&8eQ$2&#xWpIS+6pmtC%Q-`S&GF4Q#^mhymh7E(qNMa}%YZ-ePrx>>xFPTiH1=E+A$W$=bG8>s^ zm=Bn5Rah$aDtr}@$`X}2l~$F0mFKEdRdZE8)p@E5RI61Ft6o-prbbn>P~)iy)E2AN zsU20jsWz_8Qg>31P|s0cqrPALg8E|(vWA65poU1JRAaZs8I2(p#xiB`SVGovRs-uS zYnV-9TeA7=Om+qP8+I>yOjAR1s%ETak!GFdam@h^# z)@rS0t$wXH+Irf)+G6c;?H29p+V6F6oj{!|o%K3xI`?%6x;DB|x`n#ibhIR?(H}Q3Gzd138Ei2)WAMz7W9Vy`X}HnwgyEn!VS)>mv$8&{hQn>w4zwy3R}t;BYlZQm5)6pty=DfLrs+A-|>>;~;Q z_F?uV_HFjh9n2gO9o9Q^JA86v({H5aB!kjoO6 zc9$1ZZKsN-Zl8L~mE{`ly3)1N^`o1+o7}D0ZPeY&J;i;i`%NyJ8_8Y6J?}yE@b_5a zam?eLr<8@mESk|3$_SkmS{wQ>%qC18))9_|&j{ZT zes8AvOzF(F2#DZEY>2oYX&IRp`F#{ADl)1r>QS^)ba8a|EY_^#S^HO&t^Rgqwv=MZThqqEWH8 zxJo>d=ABlR_Bh=;eM9Tw|Ih34~oTE|= zX_mAr*D$vzw@+p(E0Yc6dFE}(8oqt`+R{gE3x4zjX+Sb3_cYE^= zgB=w+-tUy`ytONMS8KgRef4hA?t0j zufM;t32jm~jUGrkaOInTZ`zyfns>EuS}G30LFK_G-==(f<51|K&cocp&EJ`SxAh3? zNO>#LI=^+SEu(FqJ)ynt=!~PC9bO$rzPJB=?=j6w@a-(u02P7 zaQ)#(uUl{HW%tYNS3ItC^iAtK(eKlL`f9+{bJzISE?u8_z3;~C8@FyI-5j_jy7l;W z_U#vU3hqqYU3!mrul&B+{ptt$59)uk{;_4iZQ%G|z+lhASr6|H35TBkl>gI*;nGLU zN7W-nBaM%pA0HbH8olyl&XeJ%vZoWz%6?Y=dFykl=imL}`%BMQ{Mhgd`HRoLu6e2R za__6DuR6yg#~-}Tc|Gx_{H@O0eebyMy5GmWADJlpK>kqk(fVV@r_fLLKIeS?{4e)} z^ZO;zpECde03c&XQcVB=dL;k=fP(-4`Tqa_faw4Lbua(`>RI+y?e7jKeZ#YO-C z0ftFLK~#9!?3J-f!%!54|0Cj%F-UOERw~KfIyse)7wGEj(y4I~H;2B1-P#9;(8(%= zPNG=p>L4gMG=)N;v>?Z&kr0#grj546`@@BB&P~4j_ne#%Gh-dv!I~t&5-ho3DFM&Wx5!x#nkxUSoa+L!1U00E$K zx%}2>G&%rYi0H#l>bibD-}9~UcswPd=G+-<+g5GcHZ99KYPDJiqBSN>)27vG^@fPL zL1^&BB34jC0JpVTt*t1^XGA`_xk{zdt7)1~tJXE2&)-{?^)Bo;HjM*LX6S?1{t{zI~c8M?@z8j$_hoX1>Y{ zOhktO&Qcn>Waj=#HD=}kfa{dtL8eEYrM?CLKhmjg8Qgx+00000NkvXXu0mjfG3g3z literal 0 HcmV?d00001 diff --git a/src/mi_note/app/src/main/res/drawable-hdpi/font_normal.png b/src/mi_note/app/src/main/res/drawable-hdpi/font_normal.png new file mode 100644 index 0000000000000000000000000000000000000000..9de7ced77ee2bd01542f6853b52f05e9301a81e5 GIT binary patch literal 3097 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 literal 0 HcmV?d00001 diff --git a/src/mi_note/app/src/main/res/drawable-hdpi/font_small.png b/src/mi_note/app/src/main/res/drawable-hdpi/font_small.png new file mode 100644 index 0000000000000000000000000000000000000000..d3ff104884a11386b10830b13b34e430e1b22a45 GIT binary patch literal 3099 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 literal 0 HcmV?d00001 diff --git a/src/mi_note/app/src/main/res/drawable-hdpi/font_super.png b/src/mi_note/app/src/main/res/drawable-hdpi/font_super.png new file mode 100644 index 0000000000000000000000000000000000000000..85b13a1d31218ac8e264808e743f14cdfaada1ec GIT binary patch literal 3188 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 literal 0 HcmV?d00001 diff --git a/src/mi_note/app/src/main/res/drawable-hdpi/list_background.png b/src/mi_note/app/src/main/res/drawable-hdpi/list_background.png new file mode 100644 index 0000000000000000000000000000000000000000..087e1f97a35a36bd5c168d62996e54573446c2d9 GIT binary patch literal 567323 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

bugsGA_N!+86-i*}5>zZ*_* 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 z

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

K~e=Xj^!m==^?uA2#d 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

plp!9Ko0*47^YF?b4}}i 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 z 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

XkNud$|rS*`LI7vgK=*tU3ARJEPi<$PE2 zkbqK2f*TXcOM%kXdH$AP?ntSC+^e3Pu)yWDMoCAFoDl#h`;4E_ySw$-TN(L#jXW2M zLJcR!$_i*{24f->L zXLmEGfxbSX%r=rss0;hd3Z+p>8pyvIw~4fe|L`{9(22j)TjGSZYlydIrA$^#-H##! zKw?=COpSJXtzuA_z7)|NcT!?v4ge@nfm^GdC?_;HWv#|k%256N8<(U@RFh;TW9h>$ z8%cFeG!#SewpB6DjCq03GnJPn;ZP31ePLY9e3*7`iqblZ6_KCtg<;hMBlp>5%>?*t zR%HXM+@wo%8y5Zaaml!k)+2^pH)G{|XPP#{B_*IhOPdVC4KQq__-{<)L>HAhFA3x~BeO7aBx%m=Ov!p__NXxq6!xg=-`35LlsPAreal8j2! z)JY`u?R*O=u0~hRq#vMeCnN$1EmlroWru%T^F`b~)!j>Lcor#;Nf7Z4_Mh#J zAiQ`t>c_)ULz=Rw_`xf^#n_MFg4ouD5%c`Q-cZGdvE!(^o^3plHVZ5y>j9o7GdngzJ7JIT3T?Oa*n%^=_i<~@wVI`;b#(=GNDZlg@jBY_em;M(O$EMVp|_(+efw%YwF(-egT9^e`(0zPk2 z)rzQEB>{u@bLF#3(5e#1iN?_O@&MDM@({0QNMy}BA9Q?X)QM~Effb(bI1mQuHM++= zpOSM8Ayy~Sviz$1es?WIw}pT5t*el>BxBlhqA{!2}=>3v0rP}Z8B7N)p-Fmp>Te1 z@=#2-sUQphs@vDm9j1vutd@Jz#e_u7V3>y&6p_8GwvjhE9_KC%WDDa|?98f}uPKku z7W_(AfmG>*RZ!@Y{-b(&{F2h|&XTd00s_x}&knYNZg!pGxGl`@p*^0xv#sy&9Q-&L z$cRq)Y-WA`RUAeMF>QT+x^EyG4%34bjqtdeSXrLP2t*=`JxsAr zI5>o@WdMWJJV6d~Ds?)-nHFj2(%p?I6e_;`{85{Vu(4T#rCq9q7AGe(^tEjEyb6|% z%HpNCkIR$S+Zg!#`lMU)G;b4gY!+_PPorYNdIYVTx=CwJJ1^x?9pDdng51JMfc#A~ ztU+y$(`ZhLPa!5vB~OXTe1OM8&q^yyvFSlk1D!9PrU!f7ZDpOss3@Ki_r2U5M_zll zW#-EPF-mq+?<9Bd%WMQO?vDJG=SGw6%pdTr;2yE`t7ry-XzBbrv4(iGZv=XlHJ6nUQZ*@2rQ>ZE9j|2fX;CfHEo znYXQvJ1ZqzS*jn*n{y znWiIF=a9pG0<)X0J%7lA6CjV3l)Z8nQ*-+l7sO=!XKvWzY`8VB3Glyd^XOw92C}XI zqhe7b7&C@o(t>+2vJz97j4$#xf1@HH?7jnU5)P}6{SO`#J+j`swAXc^Tz3ON4Q-!B zpnY#gt0^?Xv|)G8TW!t@Bb@-UH<2?3`eV+<0w*vYO8&+H^4o82oTI5=1zsgi7Lg}H za$krtLpd>|Y=;m5_pwU@2siq4nYp?!8piY8#ejxN7$1Rgt8GaYHay#$w)x!T;(zSo z%y_oCY>Dc%h-z&jvWns5?mCHGcTrL5opxrJ5R?_m^0c;V-=F6)@40z7{TK{UW@jL` zx)Tu+&R@OmjMy~2CXqZc)bTOFYyVtBwC

v16tv1~dCNXheHF>5(*JP`az`0m`!I z_=tom@xE%kP0l2etoJ*PUyJ@Nh47&N@+EtKD zN#V+_23(2ktAZ$1PY=BXc`($$;NGI#k&h}^qS|yu{p0fTalsG8neqt-nhjU}G zJ1^=){o2iNG>2mMX}1q6AsnT*q)LEw7z(I>uIY2+JD;5E0zf!sS+-np~89Q&@_e2!dhF^#$7CCplW%$EQCwuzrz+UT?aR^}mTv2vU`f z0gZae)cdEbd)OtpAFvN<-%;leB67z;0x~l7$QxYDtmjuav|#@04L^0#?|$n=^Zar_ z>fFs;U39S$es41<<7My7yLsMee?eKkI53VS5W z^aBJ-zpCbF=;Pj$MEbOI{&6}rHFUtQapLJj4?x zK`J&4lRQa{5(s7n_;caJKKePQG$hqhdH9~DuYG%A95G!&{%8k*7v6npZVKj*_k_B6 z4u_S85!f0%D<=7a48-pjSn1Ljr>PB>gtFC5PcBhEpYKRX7$B4WMn&MAdcKyV=!@EJ?tCpcTEu-RS_<#%Kj&=M8J1y5R7U8;or(fOfn zVSm10NoS=aGs|3|0}k=(S};dm1K3P2zMMI!6w<7ctYMQn^XpM=(yc4KPlP7dkn&zv z%R`;nGxt8s3JSq?A2N?d|9>G)i`!4N6Ak5*4?ycQUxD2Yvw3K}7=Td}!>HZn%&

e6V5FRup@?R_P~$5#0ato4?dx|UT+YZe!uO{R^{ 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
ccgGPtth9g(3C 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%0DofVu@{9+M?15 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 literal 0 HcmV?d00001 diff --git a/src/mi_note/app/src/main/res/drawable-hdpi/list_blue_down.9.png b/src/mi_note/app/src/main/res/drawable-hdpi/list_blue_down.9.png new file mode 100644 index 0000000000000000000000000000000000000000..b88eebf67ab0a5e65237187408873878ef7130cb GIT binary patch literal 4361 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 literal 0 HcmV?d00001 diff --git a/src/mi_note/app/src/main/res/drawable-hdpi/list_blue_single.9.png b/src/mi_note/app/src/main/res/drawable-hdpi/list_blue_single.9.png new file mode 100644 index 0000000000000000000000000000000000000000..d7e7206fc2e942f9cdb0645af8855bb2bbd24206 GIT binary patch literal 4618 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 B+)@Al literal 0 HcmV?d00001 diff --git a/src/mi_note/app/src/main/res/drawable-hdpi/list_blue_up.9.png b/src/mi_note/app/src/main/res/drawable-hdpi/list_blue_up.9.png new file mode 100644 index 0000000000000000000000000000000000000000..632e88c844ee1d377841adb49c0a80ffe3957a2d GIT binary patch literal 3301 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 literal 0 HcmV?d00001 diff --git a/src/mi_note/app/src/main/res/drawable-hdpi/list_green_down.9.png b/src/mi_note/app/src/main/res/drawable-hdpi/list_green_down.9.png new file mode 100644 index 0000000000000000000000000000000000000000..64a39d9516f8c9df1034a1830235a64db4c663ea GIT binary patch literal 4488 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 Ee?o7YP5=M^ literal 0 HcmV?d00001 diff --git a/src/mi_note/app/src/main/res/drawable-hdpi/list_green_middle.9.png b/src/mi_note/app/src/main/res/drawable-hdpi/list_green_middle.9.png new file mode 100644 index 0000000000000000000000000000000000000000..897325a4f62defad10d745c527cf39b6acf2c833 GIT binary patch literal 3179 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 Ofr_H$lTvxh*Z%`qbR0MU literal 0 HcmV?d00001 diff --git a/src/mi_note/app/src/main/res/drawable-hdpi/list_green_up.9.png b/src/mi_note/app/src/main/res/drawable-hdpi/list_green_up.9.png new file mode 100644 index 0000000000000000000000000000000000000000..141f9e1678a0b34a5343614e38d3fda52ed47cfb GIT binary patch literal 3351 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 literal 0 HcmV?d00001 diff --git a/src/mi_note/app/src/main/res/drawable-hdpi/list_red_down.9.png b/src/mi_note/app/src/main/res/drawable-hdpi/list_red_down.9.png new file mode 100644 index 0000000000000000000000000000000000000000..42243095f3c249d529d55523ff1aba2823ff61f9 GIT binary patch literal 4307 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 literal 0 HcmV?d00001 diff --git a/src/mi_note/app/src/main/res/drawable-hdpi/list_red_up.9.png b/src/mi_note/app/src/main/res/drawable-hdpi/list_red_up.9.png new file mode 100644 index 0000000000000000000000000000000000000000..46b475797d7636ee9ac20ffdab422853612ea876 GIT binary patch literal 3277 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 UYW(2rmj(cxy9Rfv)$POo2Q$;Ge*gdg literal 0 HcmV?d00001 diff --git a/src/mi_note/app/src/main/res/drawable-hdpi/list_white_up.9.png b/src/mi_note/app/src/main/res/drawable-hdpi/list_white_up.9.png new file mode 100644 index 0000000000000000000000000000000000000000..e23cd5cb09c271ccd56716f3d61d11892f70151a GIT binary patch literal 3220 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 literal 0 HcmV?d00001 diff --git a/src/mi_note/app/src/main/res/drawable-hdpi/list_yellow_middle.9.png b/src/mi_note/app/src/main/res/drawable-hdpi/list_yellow_middle.9.png new file mode 100644 index 0000000000000000000000000000000000000000..b6549b2945d0d92247366118297633d69031cbe9 GIT binary patch literal 3150 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 XsAQrV2j1U2(LhB}^J$5^Meu(B#^L)R literal 0 HcmV?d00001 diff --git a/src/mi_note/app/src/main/res/drawable-hdpi/list_yellow_up.9.png b/src/mi_note/app/src/main/res/drawable-hdpi/list_yellow_up.9.png new file mode 100644 index 0000000000000000000000000000000000000000..4ae791cecb795142f46ceb5fb2352ac0af82ee2a GIT binary patch literal 3335 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 literal 0 HcmV?d00001 diff --git a/src/mi_note/app/src/main/res/drawable-hdpi/menu_delete.png b/src/mi_note/app/src/main/res/drawable-hdpi/menu_delete.png new file mode 100644 index 0000000000000000000000000000000000000000..ccdfc4ba5468ad2a5c865f2e2c9bd1f210c69b67 GIT binary patch literal 3426 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 literal 0 HcmV?d00001 diff --git a/src/mi_note/app/src/main/res/drawable-hdpi/new_note_normal.png b/src/mi_note/app/src/main/res/drawable-hdpi/new_note_normal.png new file mode 100644 index 0000000000000000000000000000000000000000..e24e0d142cb9685ba598a2f838c6697d8a1f12b5 GIT binary patch literal 89221 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
>ZVDwitaE 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�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%0A_#trX&}SgOfFQUml39{ezh%g|F$RNFw0xo} zp%k&`|9i1?a3xoBz_L-FSFXskLS?DCJcMmiVaX@Gaz@~sT@fghPz-BwG2)%&NVnX& zlg*aI8$zcVi&UQ6mQo55FHCvvnN;~$`mf2G=QOS{(`NGDpTQe}lYXcWl8%AAeO=#? zI7Hf%G3e>Je30aXY{k|gafZm7f>hI`H&2jrF(p{`iI+$?S+taejQh5Jg3i0{C|HHG3{PGw~} zn1Uu4CIfB}O1m|RN7dMspQCf)knKqlFfT&JitS@EmJ(s3TtBgbWTonTC`8g8jkyRE zL6YD%mCWZX4D3pADw)8B6~qSQU#_^=q8WD7B1Xh!V*yz3-l2h&_nOXB3kipg?Ih**(ub^Z#0#WHsZsobu>#F3ks4C}F zJd+S+fW)B6K~05Pl`8d#vtIKvL-$&W94R;iW+JCq8AT~ngGT_ytcvdh{6n+%pz~mT zS0Y84O2So!7SVN}5SOvAXQn)kgS`F7mLNh@QW*ztDFGI z1D9uBV!z1NfE;$9=6kLlj5Qj{05;agVv{G*jZ-0$DZG^;K+4F(pfhWE*wx_g?F#F+ zRQQ#w+LCrswv1E+fNZ}CocvPqkINIA%!E)dMI{?EQ*?s9pp*tg4^=5z5^%aGR7J*5 zbFQE>89Bw2!Vj`(8Eub9TQDbwK)VET;srJEW|pj0#xEZTphHoP!N)p#mO?6LZue)LNHSoZ?I8dr&vc%Di4$fHE_b z&VU3mkQaQ=h`5xpQdAbt6s5?r`tPMkpam(e04`)cD$len$W3`>4!s_dkxVw6+-4KT zu`fhzv9OiMpN}c0XbnS;N!#!uo%zsw4lCHda!o14M?xZGqZD?ww0-4yk^)CQFTpd) zZcXNS`{ERv`R5~Ff6F90t5K0MKbFrSv(~n$S5kbuqFY0r0ZXTkUsCxFE9~hMi|ZJR z;x5n3)wUP%Xf5AQ6k`jc?}ehe zDN)y62`CV&-Z1nlYob$8--x=Yc{5IWAG1|76!T=pK!$OJ#Y}7XP~dhXp-kXPQ8h@) z442LW+f=ji-RKz17KN$`*is@5h;~VXcGSFg0J}8A*+Zc#t80|J1Cov4CFM;lYDGs? zx?wU;cdd7qNLvJjhZL|pV5cvz?3S2L*IBsIt9Zgl0k;)M>M(RM!wf{a{n<~oh1Yjs;jv~I3 z_bC-#aD4_D5G0GYShR$REQMN#S+S1dEy~@&q$kW6k=xcfQgPZYuY9GaClMk^=fPE; zTdOGE%RG0KQJb8C$1&<>k}w^K-Sibl!<=ox*3FRD&e^>L~lm?n#v_R|l5k zoTM6;)|Q;&#DZfBR`8yaPNE&3s~G1j7K;UDJ3DA9>h(|BDeAf|)S>~)WsmuMN84k2 z_Uu7bRb*u6O?9zcU^bh>avij5_bya*t%ZVsD`vADj;xE=y}66nv&2SZ@P3c^e5Sqs zU7Ne~1^1rX4fFX7+uPf!gkD=)BjJ-3l!&<0KYiDPUzF%naP2IE#d>2~PI1ZTY?5M!4 zZd&HM%E^&VQr&W?h|#L9Q8x|Sh`7BI0tK(LxMk8#C~$zi(}BPHY-b0RC-K5`GC}0f z0mpgH%dW$0XG`0oYwK(9RgJ20+&U(%>|#DwM4@#~lWe4YHVgy$ehF{sy3x<5Rf$fU z&`3(@5YY8KCet;nZ|*_}0o{UfZ-;Tj&i0my_3EZYJDI?_3Mmcf`w=k&^nItwf{l$$ zeIdomnK-Lg#COxRDVnyW#mIYvm@uEuF`Lg&adA;MEv9QzcoyFcV}Lcl*47qhl{(Z- zi}j6l7V(U_@Ga(Z)Z9vgv6xIIda|X^i5@4mPB1yjp=ldTCR4^eMpSi$7y`Dow)9ld zG%c#SLR;5x-eG%Zrr)asM6{C@ZC&eoGmZh<+gofyqFF6nL#OjXYYld`cNq0bMcL-& zCcP6OVry#)m3OGT1FXYjZHm6@iJSXDK4@7jei2J~Ie&#J@r)(N#|Rds{)_4V9o11X}nx3<($R#i17>ua!F ztOI~ez*>%Mi@K?>|K0;gksJqY z+tT_3V9_nLjXvAiR{P*&x`ws2sX9_DES6n|BS#LSscSlwT8DNrWi_)^5$J*a2Whm% zowN0gP1H4Amt{w%+MTWADza?b33lz?wUQ%kVR7j2L5#zQF^rf@ra1ZJQ?#=t!nZ>Q z4{E{V>l&w=e6k7;1ksj3EhPTB*jc0IC19p=x|4aouI<{+?7Q6QBMi}WGABO?+#f%l#W`$FbxcCRGb|=kd>yx*Zq}1Bx%z_rjDK?f{ zzlQtRGN&_!PF;Z^1+H=sszx?z=N3j?*XX;Rs>ni#X{=>0F)$2y{$&3Dvd(TvZX8#_ z$sbkEytUtX&zW(FBC!`hCLr&HBPPb~>ME5)fS2GJkL+`*OeheM+Voc-FjNo&*KwwZPR%{g@Ms0fQ>9Qo79ZD;4nfM+dvzMn`h8a-_^-}T_H zACJ?!*CU6)PkjDNO-iy@?;SHv?`-AvK4Br=Ix(u4y=z3Yp8W#)xIpj1y6^N3$7e#Z z?U6iZ0X*U&%wQJT-O!8 z>iue+OSTa|aLwu33>m;fj{L|RJrY8Hi8j45~SJ1){pzqy5P zdybCZ-}?omNgql}k@0gddTYNvb4XZJJz1pu&=%Ax=$bKb(FVR|2z%_ErHGRPfKhTS z(M+uxS(swh(TW%=J3E$;f$;2Q^^(acGfqeZcTjlF5NTof;zCI*7PF2Mo8_3(8!KUf z@U=HRVD$RT5sN*5&zxoUL1l1qMSHXmrCK$D$-4+U{2rQGx&{zJ62vmLQR;hAdeXWb z*JsDC@gHqiCxi8vDO&LiXU3`+utnj^dxLXmKKy5IobZLNnA-^0kE7QYsR-F-r~SvR zFVS)g`jLgW3kHnYMaMxXzWKc{=FH*`7p6G|=IlujvlI7KSea(bFqwcA*HfuBG1H?3 z#^Du1_OfF+mu;Mta;(tG7$#C_Eam|t2u&47>7IGV@)@7GNR63{=`-Lbgos1_WD_;2 z7jHYXsqv&0MilydOA!V5b*65BA|~4=`-U&pkM3c%)<&^4oq(`NtY>f09SXvejau85 z|E~BdX>;r$2>ki^s0H~%9O8_bA|lQd!D6S-ZEs(T_!(Le>YUizz1A)9b}cx|OrqLH zYIFK*DDRpx7%lFr9PCl8cQp!V|Eer^o#>C$1~K#$7yl z|M?c3J%0bZS3GgCdk=x89n_eT0MjdoK(_`}OzdQz%L21^gB&tsuk-Eub)z+k1g6 zwu0*AteK8h!T^{SL3>b=Y+4$d3*f)1SX;69jN;?diJ@#li9(z*pH~|UtGMs?t0WxG zl6R4y)4vCLKvu|HF@&7 z*AfhZ%MUkX@pq9v-nAZ|`wGZ$_y0(B8^} z*jj7%buR=lFsvy@L5B>97wZ;6$+fqe#JOdtir0dWEXg55bZl-F`g; zK3yOZ^1nSB)r%)DVj8+y{?$gq*B_(5W|~w5`^=+>y-sZb)&8@@`T6`D$tMU12;VEa zbYo7vZVCmv>@bXM6xnKAB>G*zE34t&v9cHnE`Ws zy`M)T3$)BSXJ#~MU9hIVR|b0^NLx?8H33nGb>G+pBTVD$|5=kW!79T(YR&=gmH+(v z#W1s9El!RO-pEQ8CBlpfRD?i_LJhQr!^KqXQzS6HrG<}PTUH2l6BfL~((~y>Egv{& zUfd!gk0J^bVFG_4xzs|OonZM|O{nlUwn|1Xtt#Fg82Vkj3u)Q%i|lb;E81HYR1_;| zFln=D86a*ggV1R&*&B$3%*7q1_gaI(pXZd|2XBvMq~VcoF1?FI1Tlve7so9Qe7|>u zt51mzo+rd-hM>w=REq;JKe3$>Yc~3fZ~}jCt1wm9dK9cd93wN6_pyMer@zrZOUVn3 zd*ungs>BgHmFSE^%mQYhhCKS zz1oWysxE@on8eg%qh$WBEGEq14Z+qa@t$5VH)&&7bc36*xkxj!u>Jm2>?fL@4SM}) zV{uzjQz#7sHvAcdM4;@vG;yDgNP)*t?&b8w_m+Y$S|aNxDx%t7m{r<+TzfGUz`?xb z1b`eBB&P_TtQ7l9LgGEZQ3RtQY5nN|H`&4JNPv0WlX8CrtSlu$r5N_)OX{y?^p zs~f^Ca;Ac=p;8Qw;5Scj8YrR#oiAwF1w{io#JN_)r0|_PGO1C}qkj7R{cH>Xzt%qZ zjLhETyljT&iqtEH*XvDpwo@Td6HV@Q z^I9s`sI+C}*o)m_lz?rXK-lu>MTJP^Z`Wdw7&0b<^xm;cHR%y`I~CqCeD|DxBIC@g zd3DB;l8t#?ylD^Y-`>AVQ?4$7{zY(kgz!jxPq-q!FBsbZN9c-@{!d-l^ znxTh)aTio+rHgfbKhYr~0jb9VX-J9_TZy$(!xm*dfwMb6>jV|vt-XEozCdmLw-+ss zeCmYCq*X7ym-b?XWf8$S?m2j|&aGNcNM9P+$wI*larmK;E@MXm$9W>@ARCC zfzOD&M;$+=cU4V;6@bcfHhw<7rahq!H&l!zU#Da3rSD~2L*X@DD();cN6^$*Orm9H zrS%@O$~d`2n1))@WepOR5|$}&FbPk$?SkChsW@&B_=MMUFu`gc&9OZT88P?v8skO$ z>d4m%K#;pcI>zi;d&PS1O|~iudBwoYE^Ijg*oJ?p%qdbi(3`i1@B1#RBeZ~2q{Qn97?bP6lQ*Q zX5?1hwkf6R2}0S?^F-*zD9m6W1%k9|Q8@Xm%$sGJ4oOSYge1Jc)cpv7K?X$B?Ao4( zgbG+qzj-V8RlJHZF5V-4=en0@X790>iC;jt4>cCg+A1Q69P}_2dv##gaT7xKvwysu{^Ub08=OwPFQ#0_+e)ofg0El=t+MCc>U(B9!3Ji%)nIY;*np zK0Enf>EIUBE2j1Jux{=kABv6`{DC~#b{5pzB;0D~5}~x15A)PQsCJJ9K0)tR z@+fQ7*Hxj36jdrOV%W6k67$GSi@3?-8^T36M)UzvtiaFGbd9JK>_uSZ?NU0Ec}NHOiZbtuxKUqn$`qaUV@dGRh1s-3k_0&$Bf~$yQ#v zN*&vWS7D{obju9ZS@^+B;8EVG)pQ}elD1kAv#9$}Lg8m2Eu9cc?Q>qx6ZssYP!LFe zpM0%2Z4rPn%k`LZC{Tf*|3^9v(>#!y$&By|Z8U{ab_!B(D77d3$1KM3b3x!9-Xqs! zch0ny5nM!FgtO318<>jxV5J-E1$#l!H`H*NT4+$G(KN#zIc8FqV7zjw`G>BCmvG2( zjX5XZ9|0PzoaidiuHsmSJi$9N#alA?`MS#G6$yCSzXwoOz;EkPt zef*Sqte$BUS2$TrSUK@>J#E>7e{rlS1}hpE6jW;soZ-UCgX(#8vb=L@`xLf+4`#)| j+J^tX7gkAc1AzYm>=-@C)jXrh00000NkvXXu0mjf(&VhB literal 0 HcmV?d00001 diff --git a/src/mi_note/app/src/main/res/drawable-hdpi/new_note_pressed.png b/src/mi_note/app/src/main/res/drawable-hdpi/new_note_pressed.png new file mode 100644 index 0000000000000000000000000000000000000000..c7489362c9809fff748149c72fd927b27c9871d3 GIT binary patch literal 90126 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 BQtE)ii5P5i05$W&ov$xCC9R2x(7B)oHDR zw&aX8O#_;?Ww)Z^j(Va3^dNgdHL>L3tc$n-s#m3Og zJ_A-626TfE6Z(#wxHCWkZbceBTQgbZw9A*5Yv3W1J@3>~3I;rB?fDEw#4S86#+1CtWdF*<=yJk6y z)_^gkCgU^+|ek^^Eie|*!o={ z&~8`BSjX#O`TOdf$23o?7*U{YT7(>qUg5Gi;WoQ-zE;5cJs|=b&nF=j0p2RQ0}4o6 zUxV5!pwh~!uyTM>fF{z0)@(Gv=T+8oYW-^0eBrfz-Ff>5R;xRs^=C$_A1I}6v{v8M zY>lWm(krKg##0qJ3yAIZSaC8x!Y~<)h~aE7#3tl zAI@Psz$i^KGixv}T%B7BuTXE$B?jc7plus$Ha)a9*eWt27>5Jm65u-v@5zi_^X4N( z@{G+TLrL|+f@iHwW#JYM{%#r~cxa`u*=$L#$W@epZ-@~o9dk$rmN_*1+6p8q66dV# zc1scrOPds0uo|>YI@yg%-mQG0ob?FYl7~9Br+wQXL}HL<2HwqI2KQjwg2s-^{!``|x zeA9B}c_e3u3`4J~ovLk&5sOmr-lFX~q*d5~f`T(NHi#i0H=gVz4+EKhXoC<*4g{qE zt?4rg5s5Q-OD@Q|ps=|F&7}(_Hb{|b^SE(r*d~%lE1S(0!$2f5lM_-Q+fZ#ZOgUE0 zAqGxdD!hTCpBI&2t>f?Jgr;q=+3pbLrOt6POJEd^BMkCqHE4WW7hKsWY`RSami>N@ z6p8#Igd*n~*buPHxvGQ7YgyGwM$&$SOR*;UNGml9nUC*HV+;<%P^-+8R@!2g$cgu` zRD#s%WF<$_q7;hWi{WS@)3z;^d8t1uOfWmLz)_CR-09nsg*A@7>iWFd!Dp%Uh z^6%$|fXdo;S%7)HS&`3S-O^qIyv%`bZf_IG`K0yk zXGY;8ZS?0>tM4hOTdnbZ1$tH^W&$}=LV*GrZ_zc>ei)_^Ez41ycWB!VuV25y!~H$k zC^CaFrGz(c-T)=z;r^anZ=4u*bM@sMM~@X=G|5gZtble}W^B4mjjj`opJqlZGSD_2 z`~3rU+Z#;d1aGO*o8}Q+*Wz|}i)k9Gg`I$n4hF8QNGkehzm-#hwF)T)3oU+hCq%v~7p|;h`>M;z8}*u`3}-OF0+hnmy~V-R&^X z6B{!arufqrUuNJ^6S%%gQxkOAenV~49G5(T*=Ve18Z8F7S1d7R2MJZ@= zB(%sZj}nyjFvju>-_%yH7+i$F@)X{Dr6es!vbJ;_gh0+(rg8(M1s-EUN(H`gh|yOz zwc@>Z5REI(GL-_Fw!=J)N z>9E=CFdX)^UAXW@O6HH2y}@IM81ezTn;Rn6EV0H04g-Bx+NQz%!$W013n59`w)3)} z@4BPe$Vwta-G+|+ze5G~!g^!^Wj1+P8DP-ovY_jFmdG3`2uVjn*u2u&n3tuF3-qcb zEiGgr4@pZ`h*8qAUk5M?x_rg@CXuOoDuxgr%OD1Fzc6mhBMBI#q}gde%fPqS&gE zU~c>7s~b3CbmrjrGTz!ft<0VrD{aw=As3z z#og^IVhsl(Cs<4Km#_p3`#qLr!8FnQOtWT7==mlkq!7`y9S-{eF~}%q@-d{E+T$I$O%cGLN-{Lhn+tNS7!)WU*d+(wICkqHV3r)9HUOg4^lqGJZFM9Z~pLvBsZbHGDj=dtFPz{Raev2$%2&KeB?+wBGl z1>=}%YR|mPWO-R#dt&uyK2`{(61jx2>p47QZP_R7OszHAuC23MBY_FTO~S&@K~gbl z=RI(ukF~b?D@!b%vmR~NQxJXMbIMGvB&M!!u`C)Xh1wc**0JYx;?|(5&Qi|PdJvWc z<2c~v=BCDBTWb+gL`Ff1iL~1MJ&~aI!{LCO(uswjfI`kkXC>M6XsrQ$U*eN24p%W9 z%_wNW)eIJ@+BUL30dLG2Ec1L!;E|Sm2(Xr-E1h*!n>{ZJG*_Z+*Hx1WX|Jy5tJ2~X zV3j|M3~22%CT!<5xoQp6^7wUt{koc!`-MERZ3STgZecOY^Q<`pa?aAuJ=%7b6X0K` z7fHZ^XnWU{^tys2In|MTCEd<-n1gf%$VxTU*AnTQTo;lZS;ROq5Yz97-dkMXgpUwo zs9cel0yFm)^c#gGEYO^)WVm~f(sD73K|N9Nu7KL|e3u-;i!R!b>4e(0&Bwhr-)o%x ziBfoNwf>=2>T?ZsqqO?5%wTmXEWlSVM!{PTt*GUjQ^KoPud##~jc;MBM&E4_6A$0B zMGO(QyBi$F5&Odf4i68wfA$kwnyDT?jfB62E7g?9P#65#xT z&XB{20lD!I!?nS*Ocb;n7c6n%yjdb>-Ry4h_T5{a!4h+r7GPAO(z}QIs%Mp*V=}~` z4NJgmW^6Xx*5jN}*&RcCW#p}cWcKZK9$mws-)!1IbE>7zLffW6(|E3E)?}vy z9Z1``EHgbnGoHn5$ax11!26aW`^3)vGIGA$T}137*jhPq2{ zo3<`YL?WS?zfyG0IT9G=6p3tP9SS>P<&@Asq3e6xzq^NPtoXen#Kif*1O=%XNrsO=<$+NaBj#7{i4E zjdCOobDF1>9?Myc$2Z}09l%}+nR>Hg)H@A)ZSNg{P=e$<`+18q$T8+=G!YijToKf&bq3g)~r)wG#$(Mrf zeDNJLEg3wlcb~&J!YGY*5AU#l*kgY-{f%_>;|$`^nt8n6bL+Vb8vh&k3Te9pOM zdsb&$CLoZnF=!4b;(ue<)Bx2R*(gIS@fC4rnHO|@PlEKE*g!%Yb#!fe6Nv*yW@ySa zN>FPYqs>^$D`xk`7$!+kS40*n#dE)E5ou|2rq$8as>Y@n!&Z|Nf}Xi5a)xXu=Y=*m zP2*|`l5|ge1*lh;G_Q#x8@xyi~#%$pVKOvu8D%NwAJuByvJxv&;xzyDE+2p{^ZT8#r!p zQ$!_gzG9%~k~wisiO%0Tc67@%_OERkIPYu4X^es5_NK_Dj4?#y<5sAA?n*|M2fO(vGuk(P{DNoK4 z7eh8NN}-yybQ|iZdVgeA%kvnm^`}py@SJFBozd-gUful5pWHP6laIFT|Ma%=|JJ6l z|FuS|ztuYZ#kT8SH3}#xp!E)~?rw0i-JtJUZ2As2H#=b4CVz z3FES0yWQ1UvSRPkEYcx%j@ zO1ZM7YhCJuQLzWE;%GL@L>&Rl!e5-GZMa&~H6qMdt~5AqPC?aKtr(;W8`ArhTbYpp zEo3IA=<`Z3QJi4gAS|J_vopI)iMfGdQd?M-s=A^C8O!#eiCe$4*^))DVL4a`R7nY- z3phx$p2VJML;1hr5iE-qZGJSoYbr4;7r^oWD!b# z9>C&2XAM_73ooRhriN*@&J-;!wMDz*g3GP-rtx*; zkpLysDDLWJW-EUFEG?)N8O?M-s|rSO8WCP@!&y z2($%+*I<`dI`4Jx!a5>xUEQ8X4X)eS>$$gl&(^x+b)NCMeJ%gK1~&PxTwft`<(!!T zouHJ)G>!G~@|u#EcGMZOIR}3?)d|q58WmZ`3JO)0Sx|6y_X_*{J^Ottmj01G{1O1K zD_`9@+kf|?-M{yG)BSH6tN%HN@|iWDM3@5foyV)2JKWvf;-imV(;H!L-Fcd-H>*Oy za2QZZCSO?Yzl$v))#z05sH{-bO6+ePYfdwkd4Vd_0yA>6QCWn|cFV1$#4|b4nG*P_ z<3hnH!6B08vC$;(4|^?GFb6;kHAF3nUZ68bc9qVd3mvcf9#QHhhP1!0qk^ z^DemCiC?e1KNhPyz@BM%u~melvE~-CoLYz5m4ho?IKA9^4=q}tV0{>zxRF5 zk`byds&PI`IK&U7>ssWMiMrON`T{RYII_wM;EV zIpwMqaNbilf&F4hFOBLM?AfAIT9s>^Y1_4&AIy2je4o+$7MxLRYWRV5q(=~!Bl@oD zN)8KQ;mAW*o3`TIlvbo8ib|YF`@pSd={Uq3>nv1=a8&&z0(54-uNP1Hz8)7_D6qW4 zRDOoi>ZrTrnX1x9Cb7(oy=NwRN&NX!MHnQEL8>=nkxC|_Sv+>i==v*4Y~l`8Z5eV< zL0K7nEc3#K3&#qNszFuR&}(NYsR)nvxV|{YT+c`a&;(osm<4F1LS8>^%{&$mURSSc z@|(<8rTSZYMXz0_1kl>93;v04jhgt?YT8>lk4T{sM?=Mz&P8>o&8T%NkhadaRR} zS~%79QJz*!+?kT zdyMl`+eOtIm%m7jZ%C?=6B;&hkT0l$t`0$sr+iVRXegf;kP_Pzq7VZZE0KTUtlPDr zIAw6soHL|YtC4zv*=*c#ODc)rTqzQ2v(Q>=&GR~GTcHAp68S>T6tvB`x3Wu=$^hk< zuNhOUJ5ag#WYa*z016W?rI3D80pl=|E|FcUVvKBL&{0d9{aWRw?b;4XD-4H$s}~2$ zt-8b+yrqy0qq7brQFUdVr};U9v`A89v9OjTO0+p})n6Hf{GBtXHQBZuRj7_yeub_2 z3P|4KoaK3R#CEqKGE^zmgd(wY%ks`#=JgsHuJLtOTHB&fbtI8ds%(SW&y*sS3q}9Q zoJwg^Gh1s*iQAAeLlPFUWvfl^8?Z>^VM*ku2Q<1i;$aHsM4zSCbg7xETgGpFRVzOQuTB0H?*+QdGRhh zI#{oMue6n`nqeielj>6}6xW``Qd!C4)-78J7TE1}CzZ8;*SZzGX8*1MUIc*Ct==+*}0b8m&AEUDv5C#F^mIlZ*LGY&4g1*(A+k))>6Egw52&4 zGNpvJX$d@HWapd)RwN-Hs`rKsz1PF}qed{--O{Gt)H&LE7n~B!TaC430HDd;r+OZ1 zjkSh{@)**%?c}B^6 zS-LJj(|X=GWnwOOEh2|%i`PE|Bl@k~&24TU>MH^n&$ zln@W*YG|)?wf`hnw=J1qB)SK@v`?+88=O?gz@%}$GTj4nIV3$vDUIQ<=S=7gX+Cp? zVh|pO2~Fd9)0ZnBLf4G}xwNevoz_(;&5e&)xdJNdd8uEePe~hCI$&%2&UF<@e;ht~VFwRc>5` zPOQ&eIwtab=dp+DYqWO1TA!1|iAoz<&Z86EOM1GyB||FY2r z;|oP*S_)oSaU&WYcZ3jOwANpo&wYRJ$?gBT)#{&byv66AeTH!w@u$D|M_4$KgcxG9 zVC9t2HZ9sJamgsmiWPdc?8-H>kZJC=Ag7325(gSG2ck0|usl+iWWr(tmZ$e z>glwi*1EB#GEKn*s+<#z9DIW%CH&d_0SgRXefkOh;17R>zxr2xj-UUfpW=Jp`wl+& z_#?c2{R-PnkFM{r-EMdm$L-h*-o1izN~vmSSy#ERPpk7Dk-HpPX>zGy5}kZ8B}UI! zgK-*abzK*WLLC?1wA|5gRhJ0}8+JZQHh6?WY*^~R_@=3wNVU=>Hr`_n#{?E3b*xD+ z@|{9KjW!b^nqN6JStel-`LBi28WZy+GHXd?!H+SaFL^I8EbQv?~`kWLvpqK~HwL~(r++{*3_>*_EMs$s@ zT4!wx=6NDAW{m7hZmLWzXX?^yHe0H0c{AO3PqvjQBS&&7$~9!YRL^JuA2GwxD?-rP z8A?Dw=8o&2c#>eHV~W=bSRx16pIc3?Gj7-H-nA4-)&&8wHK@w(%UaQOT?IM0-s_gD z0Iqze*ROG2^{#Cp^s{dGpt5vH%)vn39i?H@dDAM|eT1o%d$c5AFtTnY7KCn(-0Jwth z_dmY*A325p%68MkIg78p`ikd<8rqu5fK0+3G$c2%-c`MzF*L9B))R}Eorq4i8yjja>%2@9Yq!}@lv^&f zbs?q)(%+I)lf*4VSzJ-ba;~h%6`Re5*nRU{WBBBKROtgJbco0tBFizPxit1TV{yF8 zBQ0qGpsNnsXj7%(6cAxZ1kZ^w1WJ81iXd>LMRCa)zj$}R-6x;o@BA13^Y~Z)rGEi` z`=9+=_{opHkB>iojZNQS3ITIW80Q81X~7gC5~$Ua0eC}{e`DQ=Gght8gfx*8dN%L~ z%TncI#*jr|W?$&zyiOy9#6}VhD5{PoBx(?ae6+i+uMRpw9HYgsRDxRL+iKdO6ji{Q z!IT`RHoWlXT3Le~!Xy=^a6F*w)}=iw-HKd*IUEBPQX=CB6rk-|S}bBZNhlK85XGd$ zs%w-so6PA`B|YUD*QgYaVGNNO$rdzK?`V=2X=d&RVt%h|3W?yAR#gj=CReRY+3Ys# z_gi>w`#=02{CjA(Tl_!%+32ly5t$g~D_@n#qHvb1;wfTc+0wwn~17PS%qCxGNatXE0ULhqxfix23$5pWTX@7=d|7!WZvKjDRG(Ss(dh9 z2-Lug6mfI=igN=ZW1wXsB(PMrzGC>HwZB>)0SqI@*%_+&~JLg6j{61oP2OGMtJ97HA_`Ad5LsggNaT4j~|w; z!RKZ*@1PH>RAGHgv9@b1yZ+GZD|4ml;GM5kedKGPw5p_?%90!gt~^LTnsTZ#7pg!D z8g{o@@3Q5*jkT4;rM0RC4l<9`Y*#5J0Z`?{aYlTcobxD(*tjtzpwPTcW<`n#HZuPe z;W|{o+cBWOdxd}Vzy7b{U;kJB4*u}xKf!LhS;+w$K7REI-}}zz_}P!Yk3anRPwO6Ue2Kp^gNgQ1y^&0}qkYR6-nAqe@Y0 z8SIh0uIxmrq4~Vmh78`jRrFqT=TnzlvG1^?o|_;>J6|C4_c|J*sIQT-7LT^e-;3e`T06rKCk3d^15p_u{@_3a;&wp(wePdA}gk_ zyyhB|)-7StFN+zCRQT(h;I%Qx`Fj$nl>oF<+H2;tu$j-Rk=8O0gPSq?O^mkPT`srlU=eRJckV@VZy_6C3Q^;`Vnt2eM(!#aZ$sD-HN zmy#CIc~xmRPQ9_#VF{tKqU%P57YENw<#8NP3b5%nP|Wa_DjIC?&zc?>W9$4sm%=Se zUXWKT=Z-6r5F@5>MAvUP7Lhhlh9yPPN;O*7PKdbtkapHq>q_rE90$u+cPci4S5S2$ z;2Ux?6CjBkyiw<}D@P~+2Wc-0cuQQLFp?`-Cgl_D_u5N0^Q=rOT`OyuVM2&O9NB2? zu|=zS@rp6vkN)T%;-C7b{|Rh28~nq6@DK4vfAmMlF;^*=x&QmHNTvWmQPY%>{8HWLD#A{P=5;dPGex;?vY4NLJM?oYBolj>A{zShmk zbF3o-#q>hJdhL}gKqMrvb#*Aux1NE@=eXHyDrm0fw({9eOcIsW`+EL848w8b$*(8l zlr=F-HUa{$>#Du$y4sOAZ+)*@>&L<>p2Q!n=jQ8;pKL^gEGge}!`;8Mvc6r*jbuZu zjX7}zTerv?-_-Xl?sS{o4S9g`cR+YkJmxXqEr9;=ZujpPVHG ze#J3L3CJ0-q-qeM3aTr}n!y=k1T;xGphU+@k0WjB$f*SX`E?CYnGdp9u-I6qlUuEK1 zJh5+MZCTbZZN34U#?!8Sp?0;{=z&e`We4Xx5v?)`Zgx91{a|qCFPzvXitg5EA{;sH z02DT!P&GY=oMx!Iz;04SVKE;6&cFTNz(4a({>^GJD#?nkz3JGBr!&@_p7eJ6H|sZ3YG&9sLe&UO2A&72kx zSw|hpYe*ZrM&ea{yRM+S&eC0zI@hG7H2|$=y6a7WT&p!et~Uy6;9JX%+5pl#T+YpxxP}VOC`LXSIdU*xCykY*hp1lN#!wXnbNTW#;V(qk4|6QdY1ILwfcrh z8Z<&+e{8*Sd*dKL*aGOrnl9(~ufM+8VmR!Hrfn@6Z_#!e#6T8$C1+S?pt6Fp3XLUq z9_M>v1qU(<*T%pANJ~Wa$C*(9pjAQQ6dh|V_J@7d7)VQPo|n4VSxecZP2;eHh{Je5 z-}Pvk25;}*RR&?>JqmaZvj<+f7fq?q!D7>Ll!Xo)@GA;FjKheM6SO70G|l~wv14R8Ib(_m!yGV#h$R*LjlcGX`00;-fG2Br)km*UO2Xg! z`~NBaP|7j`Mf zlpI;8MZ4;oruv$TPqfhnuA>o~;zeDIFl5b_K$)uw zxl0Uq#56-@z3a+*&8V08@GuN@^SuW4^+seJ!mun0Hk-|fo#T22E?t*(Cs4j;0`Btf zYk84?s8svw^Okdxh(cowZf!3nHm?xB!keR8dWq!e$z{7rz ze!GP=7B|~1?jQEmF=|N*dCBVI2X3^+-R>4|-o2$8!UK^5=(RRb)&ZGjW=0zn1+-m< zz-AO=xkp;lG9QgP4u=`b9QezVYwKy6Clr8)G#oQFFH;r%qZAayRUEhE9v&X5g&)PR zk(^}V*>+|(28oEvIb+G9zg3)y{{~!FP|LGs&{^5ZuU}|MHZHpWe z4$Fx9hdut}kAH#x_&@qju-R_#<(Hr1um6p|il6-Chv>T&|JuLuU&POU@&o+u{}2C1 zgmFO2#t6=lq=;t!RLO}nCY@+Y!5bY;txK3~}3oT}8gfy%OEE7-nQmOb`(&GH?rN%AyikL z+WY(7@I1fgLcH%?Z^6I$_a8^UwFz%2w$AcICZ+_$0R?2YbCalT>m0%mwc77e##!f| zj~5TVj1m(ZGLg$Hr$g^r$T*CW7Sp6NC{}`8nd=hL}@Y^M>dx@=iGCV z!hk$<>|8Lo-~y7aeE)$*5KF-;n@beu@ZR^n3vavi^|<7c3t&L+(E7Z^5pE2|yw_Se z&_V~B3W;*2(1smr1{fmdasF#ASwSir8yi@$Wl}GC?p~++VfpWpZ%ZqhPIrpXBr&tY zwj&p#6yS0xZEtVuWjc)joL-{x-=*l6j`h{nBiRE_8<44;NB(+BNkv*}%i>~+EIg|n zKgaaad-Yg%hmx3oRw+EBI1o{nOjqR6lcr>AYikFkOFo||AA8z;OXEai>apAJn7}s; zjv#%=Slr0hn}$ye!=M@9)6a}(bsk%rn=BdzW00Fs(N2nM`x9$x4ez+<(#ov3TrL*K zF~NHBZ^jsrvO~f6Ay{t^dfJf=uo`)mQo+#mSewtVC_n{bGD~$_u^$TD!iTO$K##g< z(6%kX-BX0ij&oP3I$W$4=!3_`+6LCwH?Ul8W5pL_T~$C%7~(+cYyNivS4Gu)oh(oj z`bjJaE@gu4Hx*w(11I!Y^h1ZHCfg2Cc8Y%ZS`Au5Y-v#39SZHLW&F0iy+l*f_}N*D z?d`>+f{QBPk_WYETl7QV&;+6r6;4%3De~bObQ~?YyjeKIiS}?YM$FdcC@5HU6b1oT zRA4p29q8wl_&8GQ7KD&lP&X>WLkw`fLetb(tvXiW76OoWy`mz0RbjbYVZQfF{Q58b z6wW*EEPZKDotD_c8jnBzB<}t0{WyJUTS--Q)iBpNs3>m5_7{0k<@0*-iKp@KLyzLh zt6qcm{J`6>ckfLeMuC9S)y5jagme%(Vv2J9I0JuEm?*cpbe5izN;o zd>Nnn?3Z!+)FxJ4hr=%)!I4*vVts9m#{5IX+2`!TyWjUNTzmCvan}Ab@xT1jU&n9% z&L86V%P(UH1J>#_zC?P(v<^d$*=$b5Pz(gWVOv?r8P{F?TKwI=_j5RM^f>PM?t?h+ z?2CBr>8H`Ov{SA!X*+z~;P~b?n)MC*lmGdraoyFgA)(`{!n!d7AbkUA25Y$+2CnR{H--7dYL4PSwNG@k&U;+S;08G-dZHmzIpXWpyBbO)gd0 zPs=5Si5GgxTV5`gJCy8lNl)!u@>z&2NcQJas7%%7!or>k-=-sTu}aC;kxqTuEl)dl zDq6zC_q$T^8%-stDB9TA(5Vn~+QB=1{(aW$sF|*p=v_srY3 ztu@up?%Q()PMNYq1OjZ{$1IP znF3UW}XCR%~VRVf5S4y4XZ+3`Hn@0m_S59OFo*|6%G z_7D~3vl+beN=gyLm{_R9J~RYUsjjWBGYN${ImbJ{z-cy8`PZC>It*mfna$>OvG=`l zX2;K$M)tM%-MHJ$nM65wRh6i`UEaYJjH0gT%T!fzsg7fisv@w-o-_6UW)ymOU#ZGh zlYKx6T?&a$s;rfLsSt)_&q~#(!y;w;^3VSSF23kI#TCAM_$ZdE6}rU|-}uJ2anIfN zW4Y|K)1XwR5r-*AL%}V|?_4ZC1kX=6c<>M&d*li1+Pw>BoxKkm>+5*km6zkeN1w)W zdmEMaSS%K*5+;&XM&-!1Ce$Rt9T^6c$S!H@#w%YTX8N6+f8IIxrC<7K>_7V~eEZ%9 zaca@y%(KtNkA3)k_(y;L7xC`5--4!gxaXex@R`5-8~o*`{u=jw_kJ8W@EndEJAtjO zZES6B5qgeEJVP#c?D>~*<8`mY1?Qj5;*J_yr%&UV1J99in~S2vd8J@Ps&v$|ITc-G zJ7W9U5U^M*anlXg;;PqPhFjlsBVK&rMI1kRg7&*1;pDOhnig-p?Tz>+|L_-a_Wpf% z>7~QC=kELPsZae4o_gw;Nq1v;Z|hJ=_ogGw!aH)OE&xpSWGRzyDa44|-+3E8`2Kg{ z2X4O&u>jxx-Xpl^(u?uW{^wu8m9M!3r%s;6BM(20XP$Wu-dE^D#K%7NVT2HI{KN_T z#xMU2`qc_|-+eEB??3+$o_OMEY;JC`)y%S=zMx@m^K`^J?mx3mNkjlwH?;~aN9V-| zx0rT^^7W>>xMLW%*| z?@qCnQ-tHxHk2o}Gz~kM?0KgRitJORL!4&xPCp;{_ojuwv=f)_dCFp*erEEyNnxXO zH|z{k$gHbbE?2xR^E-a#S7$uS&nec*>GwC~I)oU20uFL0h#@eFc3d&kwb0V2fb|=* z_J`NzEoSWuM`9qshj)zeqYJh&_1J}Uqk1iug4J?`zU#2DYd7YzIkrx30v52w={T}! zsJmY9zIVR9PP6?G5Qk9)Ez?KoPDkpOi=YTd*yU`!F#lgP+8hrk}$%sgJIY%)>`sQMmt-C)=5T{wR1IO?WB z9|F2nr@vH*-4@G9*L8}mo3G8W;AAIbD!9r}3R8-jQdEgAukXk}Ud#2IwY(7`fjfg)A z3O1K3yzl+*#%o`5DT!xN#Iw&G#H#DD+}gt3-@X^8H@7sIDTIKv^>rARbj;%`qMT(; z1%jbxi_(M)tMREzH>Ss_Q=9m!JHLQaCr{&TZ@UF&@864`{)rFbcYgPeP^U4|ci=d_ z)pCg;($2;)7(;S)t>d&C=djq?;%A6PpcaHZJbwHbF2D3*+;sibID7w@ID7v-Tygou z=vOP;^{wyVd-p$t=U+U8wrybKKvDl_qV-K8wSNI{WOIRwFS!W+?4SMv?BBNs$Bv!A zO9v0(r9+4Dh0lML#Bb~`^i>TXDe1}>+7I_Vi=B8(UU7<&F$Rm}5?}uMJ$U;&ZpHfA z8V(&kf)}2D2}2Axz6^NnYc9jBZ@eD2zwON^rQq<COC&dOkoU& z5b}s`A{YQ*Z&xC0)?Y+mwu3gyL+$3bKD7z<}rgWE68dbwgd)X`ds=^wN zd8H$tT7;$%g3~y}>1DcFt+4xyGbS;N^c+?-p_68N)d|mdmA%6Ab9E5EXM(Rm4_at+Xo>3|=lp4k{%Ro8L1Rq2D~nX4<1@AdU{<~H{n9$-Kw0~jDADt3)E_}EYWFn;c*K8(XJAHioo{}p`lzkM1{Jb3`mJoCKz!eM9{L-Z-0 zC^s%L16M zui!wWATMeUsOcqxU*!#Z+N2n*X)UW+IRq0n6(T~g+ z5D#(1-e398DK1eiGWvPPb3vdlMLRsh-uXzRI~FAd?xdy|+NNpMf0`$w@wRCJPG%Z$ zs$=x1d$onej2DV@&vf?CpQ)_ls^TD+IEv`_a}_91)3jK19U`wFVTd-C`LmPaQB>q* zqS}@VNkpCU%*F}AQr49)hOL9c1lMc-2L<=En2|M&e6EHO#^Se-_kK$CvMh)daV=%7 zdwvcq)8HCC`zhQeqGCFpF$9M?WA9#c%aw}SC}oWO?;DN(f1S1eOt-bUNkSs=S}|gA zA@r3LIb2+Vmo0am4f`F**B3%SVT({saWXzBEYhhFdKw`U;teXCnzaqZcjdx9OR#N7 zNImqT3lcALDw4I9EJQp)5-59!VWQL{f{`F0m)%MqJ_!hzV#}7xm9m2^UnQz2GB?YK$Tl8VjOxU%xH8f34cug^f z%P&+9zR~(nSG9KD(qS%EOBy9NHCMf)ZqKElZ5r}Z7pQyySJ&z*>iA4m^tsFTMbK&e(;EFFY5IA9w+a)0;f)=V(NRpmcqwFO7Ge zgolN(dCXrHz=DK{6adjy_~oDf36zrY)h~YwpZwEL-mLyQT|SJ=I49sm2k`saAZ zTi=MQuet(9j-0@1u~7cDjJ8z;9wWZ`m2cs@-+2IskGw)JbX9BSZVYM1cvF1#vc{0h zs%HMIwDd7X^f36rna$SaK1tg*f}$7k;R0>1gpd+_wr&*HMnFTtMO zyYSE>Phx9x6U!lBtLw0g1?QfB9u6El3~w#kn%+0f3T7*stPqNh9E%=&08LUHAC?zh zdJ%58_DZZ)9e(F`K8~uc@PYTf6W_l75o~WSU>WezHZ4vsR`|7F{%JgO;CX!Q>v!Y% z=MJLs9=E>f^|<|QZ^mn`xCDbKPrbP^7Jc=aNG`axX>}?wwfn4AOXA0K*C}G4G>I3SGLntm$wt=jhpL9- z0%VG;m2P<|)EeXTKvS&=Pg)e;dO1pQz<;Jt{lv=+0~Ke9pIhi|DJ9}7WGWJxx?z6u z&Jcw%`8=n;55=xd#_(hOs@cK1mhb!3e&Z39Tr{+!l&mBAsr^WJ&+_jQ?JezCrAP>g zSRyHJr|hsj6$9*A-^D^PvdX%OR$eH8+tpP6a^D%daPstNSVn~b0>8)rvf|x5Gi?V3 z(|hM(nJ6@ywG>L933X^DJ}yZwGS(r60lAFdaEvt8kvO@;!XYD-vp4969w>y1b4*u~ zU5aI;ZU_kiFS!JeID}~+qOa92Qp&w_n*1zZJ6Lho?)xINBV`;JQ5lY zYk>ub6`=2X7+4HpK*N9!`hFvOTxm}xm%joCc<(74WyLDyoC_?hhK3VSN>qiT51E86 z6;|C!ae_-t5p@d6e3!gI*(P~ zo|My+89(A1rRg0^WmM?z{gHw3UOi)Xk=pkeSFP z6)@RfER9$>EQACgev+aCbRpw?KlmP8bJgWIdh8_r%g6r&mcOp3j~B}&wzsx%(~Z~S z?6daa5Q4X!y`LcKifZ%MO*NHA_mICM_7Ln z&T=VO^#LDv|GRM3{xk87Z+-_)K5+nh&e(<5-*g?`{D$lC>`O;*^p#_1*qeOq4cFq$ zH(!rCKl6DUJ9Zqo6g>Il0le`1L0o#-MY!zZ3-JT*yai7@^&GZOZ&HyO0{gwma%PR? zlqSiTHki+7YLN066DY|?ri{;|_YNu2c_4H^H@TRmC)6# z#;HnRhIh=S7FNDQA#$pi{P|&$n=TjFs|i=~{yCnYs2I!IG00}}KXS=hv(rXJ*j-vF zOqJFe=h?Q%DPzT=s=|auni!5Tg^@*52K3oUCcSqa-g+%0yz}bru&mQC)?v1`hSR4{ zE0xXhWQ|rTLZ%6kb1_E&O$ZUrRYZ_77S_?u!4OT5X7`Dp6J6ia0=l9ud{>4~hTJ6pr#rjBfON!AA90ZEr6z3ON*P0l*j_A90IY4S z6EK~-?Jx`|nFSaYT;*g=gP{j}v0P4sP4xW<2)>k}>OR^vB^_b(!=N-GV}OzhhJg<4 z`MkyY+8QybOVYg6n4&7G<$@)6gV8W&a4)!6EGCubpcu;ee69h|bxnTghUsDcdgPU3_|~_+0~Fw@D=x*Qmt9Pqf6Nmy4HW1iKYPka|9=6p)h~aY)-%pw&Y$Nn1msk3*IoDOsQvKEui)gO!->^^gD1B!KXV`6`Odc> zS;A=2yFvCY!$LV>%ML?OG2E? z_U=Jq!k7rjB*=h9&tB7$>bj!%N=KaPVHmLg{Bv;K)vrO<4Y>Ea_ao(m`@i=vKKr?^ zV0~?l-~82|#Z_0n2AiuMFQ3@Nhu-&2eEn;8VJ8YU*4N1+ z-V+m?q8zj8VyLKO=Zg23&t{Y?R!Ed7`{X%`vq~;IP{MSn@EH*X6~9_zIiZX`^R@Y0 zS6C$%wrpAbxgkwi76!HmRw)|OF$J!g*tqCyrv0jX1|(uldUjVVOayzj>1$a%&tn{a zSM)s?o_f+cEb_fbci}i17yi9G3qpddDtZrvgKuHbR<-_|DJJw?PZxYj@U^eduR2XC zS#>>O9xH2AGr^;#=dII3*qT{~4A5eHCy|H^27K?3ks}4q&+w^c6OW_UHSj^YP*eUUT zZf$R)ozJmcEHH$CN<>mJdf~mGEk&31f}SMd#u6!KG_w{%*CPx8XYAR-q5!evI2A~V zu%Hh?(S%clvGWuhUNe(e_Dq%!v&vqyKaRL0%r3WE3-+}Z5? z=&=)c_PH0(FIPBn_$aL_rb_0LLHd|TXiET9-5^H#jL+wT)NzF!!w8>GJedi@z|}jC zaZ@6HGTW){f8Zh9c;mI$zwb=kcFXJW{DEg-h0eydt=U}AgB?;#G}f;@Vh~hcU<;Ii zcNI=AxA7al@-hAykK-F(|F-U$s;a_l)(`^JTJ$WEDy86b*W=dPZpPVX?ZtIhzXoUR zI}@c8?3vg2+E?$IaHxxFDvaqTlb)cknTjDBaw%9YDq{>tCSty}p+4Im`Js0Krr=w5 z-HYXtJmJ{Kym7-df<$%SW)i?C|S< z?`O1gjvTp``91ZfX0LT(MYiP>ql9kNp_#R48o~>nS`GNeANw#0GQRcAdk_Lmr(#U_ z+Sl%awFZ}5asd`YkDK0b1Fn7D<>ML4HqDb#e#)C0d-BT0bv9@Te*R3{PFNfAE{3lKFd zCKv~~2o;q&VLXq)2wufVf-@B>op9U>pIcKN`uaLp*f@HKtE$>DBJR3QpDQ6r{i2@a}OjxlM_1p%Rg7Wy(3k>C!Qtdv3p8q7#Q zEL>R7KO5kE4ez}})l{gO8YLwJ7BsoaVQqa4TU(m|IFB>&-ij5-xd6^{vWl~aT}0nU zPKQ}?oF5bkxEdC4&ZBKwtgWqKYq3B90V%eZ3nfO$=tFwslz4Q)Q1!wA3r$U+@6}?- zDrTx~z?ZeNo-utilW*EqEAz^;DvvMR%2!yfmgH}(YpNEFfr&{g*PJqaz`P%?T!mZ_ zF{x+e92m<;zvjY~Wu>7E#B5FUee&ohgs8c%Jzw~eQJj=06gi+_jBQKLq`{`p-_nsBZd$$Uz@89p&NRv&)0Z&Q^Qv@YKf{oHf*t?sl;lz zf?Fr=q_1lI8osJ<CM-)@0H7i~{bJw%XT8yP|d(NMhs7bJ@o$5qG>z)`8GVs>7 z-GWOmJ|EA$a0p-j<~?xEVQqaK+p8WQ{gEHUJ8pXezI*>8xb%_>uz&9!7yw&~1=eOW z{Lz2=44!!UIn0|1wiN6+>nz&S7lTjy@uvu}$Gcv!!ogZZ?#z89b}`4f%VdjNh7~^e zfp=m5zB6&pJ@?})U%iV3Qx2ZB9N+lnckt=I`3ipZ@BTEdecfvS0RQ^8f1g)a-~xwt zd)x>#RgJ1ns#-Qy)+GVfd3bAJy`L1qq@@^E9h$ab4=cr==2Ecdj5D$7SwO?jreko7 zb&dp}EZ7vGR@1gH!+_HFTC`X7C`b~%zN~$8TwCot_e9*J9B*Eelvklzo3_P@wK{U0 z4-+r3T*kB690f~0tDupUg5s4+m@v03>oQgvw^^8JE{=r2A}1NAHf^Ii7745uw~S0` zG{ucm*;Kfh6AGM)Uk!&Gh&aqThsA>Y+16UDZ)_-w8l0Aw8MdOTW`1uwR)1UPP&hhJ z((8Oxp|Ijw@sSf-Q((6Td3Xb*igAIHb7ldhn=qC~Ir$L_o4eRm+)oBDoY4-enT~$+3+m=q!Fv{wvuwhJok*rl4fX zDMc}G#`0gI++Oi$3Wrm2cMU@>h{QsjbyL-v&XSmFBvr0Hkhx&FTJFF{`pWN!0wb#e zjqV!8&q=U+V0;~oP^6BgKeW+oEz~ zFot7sRS4sYDE19!Ip^6@PU`KqzXf~t?84Ue0{7ngeJqzNoIG(#Ro+w`*jE|u$9PBC zA2w}+H@yB@v<-C&k3aqly46yZte(~9;=vOkh@e5ISiIAlo4D@!*I_Z+66fsK^tSRZ~vLN z<(4jJn{ryJa~x3LStHtL>@{2NJ^wW6>AFRQai+!C4+yWTjymR-XTdi>S z-4EcipZhBIoVf@4_wK>-FTEU{Q+S;18iivwHXGY^W7}q9r?G9@wv)zog9eQn8;zZb z_xJDPIhdL2n|ZO;z19;P!z4iR3y)gSeospHRw%a>*kOIPLp*n06HY}SLWqjVcsCfY zZVxRQmrVgH`|_pcMosv|f8#Fi_2xL>L#y^Lk=5UQQQTAS85fp$zQ?5w=(L^W zo1WL9^e`^+59iz(K5q-DD_d1GDl9*aCKaWM6Dm-03Vh0Lyo->TQLDG_?@v_J!XX}F zJiTKp?y2JlePmh{^~w=##gHA&)7f~U;MG zK9uQR>I6kJDbOse-zAimHceU69I|RvL&ehq^QsQ5m(ej+*$+a_4S#%OYkB!qY#nPE zMN<5%eGqVa<3+(pEdzPbyGc7aTpyg_v&^`j==?)|ucdc?`}IuLrnveZ18XFVlSveN z)^yjN^4_g7hbDoJ>|}Yh>K4I0U}HSjTOt_Ol3o$apbVjmrN~0fGvASAp@f({&TZ8F6JJ(kd%yXO3r_RpP*jxcU;JA6rpREE4^wtptK<`rX*KiIeK6$vFZ52qQ1N`V8%4`V>WQ!VDxvV_* zw`hbyzEFWnn3Oth9QGy5hnMW`yXoA$#IwEE=pWYrka0IlGV&PQRa;%}j!9aBy6YR} zP>5)@%*8*JF>*qs5T4>ppafOhgzsr;;?#@+I_`g-f+O9TGJ3{#==;Z~|F9-^GXRM~ zei&R&;B-ge2nM$CG*AK>P6$As75GGt&s`f^ckmN*x3ArG(=v>Y%dw4itSk6 z7goyU+Rd;GUtUgM)Q)P_} zY|R?Kd$@e4;qBer9Zz&uX<|}Kh5foSw|!po$9MA!&rK@t3Vk+<-?8fR#dMaW87=vw z#LA;TG|)OGHMhu1L(yCOd1(LORQZnfqfTk&CPA6?!phIft+R=XjgifGov*bLX#7@j z&q|$%3c?-JmKEGP<^0i1Up^V*LQ$jvTXlUR%C*M|)7aYkRsO)Y9Hjz;^cvsQnR&1` zi~n$>BSJshcidETEWe72A&P|SdC=9@q-gwdC@W)VdXk9E13ow7jssgZ0erEmpVXk*3vV zV8mI|T`1EfhDAnI-V45)8T1t* zPdFT?_Wf9EmaXJz;T`K)s2<#8!EMm)#82~hv6ML`^yd3177Z6w{&nimMcpAhvQ8ty ztfKAac7l@e=bsfEvPFO5 zsi=FJTSpw<$7Tl$|I16v0*ab1>@0~us2r0(g5V>xl%W^2(c2z37}$T(0S^0&fGx?# zv+xV0zVCb|OStA2kF943-{WqSoi$s-5LLE(&r=;jLHFGEw{Hu}Ht*M4^E!hO3I{`> zTi`E33B#=1@4(Z&8w_eB144FM6kTs}%`=LIqoxRB~1Zg+d-YYq)H{PGkeBrWL$IX#u3CNU@Dog~fAvu3wsVFLx*&v#tuU)-kXI*G)5A8p z@RY@d#!k*f(xv@33c*bBkPuMpn!>yD4fTb3zHhH_e8G;PL`TH0u7)}Kri(d}IyYl^ zf)ON4X2ek*DNU*H){;8WrRz4y|5yuW;6_Ak4wVZ~7|Y8mO}ce+4@3dK6eramU(pj< zt!<}IJ1^a!f=Tx=hW05{4J#rcWU~;!r8@^g;T&lZe{||ML6?WOmaHVmUkM`COXs4R z5)OaKMAAgyv6!)jP(^ZX<|jwe-;RrtqA{j84#Z1%tEmpI`l2akTJBwb6p9LVZ0t$W z%vIoOB{lf(H)B^WY;jD|T4pm>oGu*MMPC>x;~g@hdYYQ8xPcdT1g_uiL6IVFaT9jU z_XKxIvo}m~0ZTt!IgT81srcf9;Fia$(X|)8HpRSU({F0ZJmTHf_%E9kA|;R2&+^?E zr$^ShDPELna`MHLv-LknaSWZ9z;-%ukath27{$S290pneoo1R%f~ z@gdDV^5T7m2kmaX5|8+7y<_Y94)S&!Dsb;e3BMWQ;sOrQQ44m#%QVi-$i9+E3!>+K z+)5#s=lwi&W%qIL$SwP#v#!Q(|L2D|w;wh6ovUUe`%@7{^A0s<{L{y-Ur{R~#LeK_ zHy%5kAA*5eqbmP35I)(;{GM{ z>>bwGGAzVU2fbFSmUU{^OLnCUuf61I{4AWh)c62uyreXIE{Mh8`F#YH&Q_6 zUht4*)7$ykS~Bi&-J$oGP)8k$Vx4Qubmb>O6bC+5$H&MyfB7YR*0XDVt*QL=uyv*Htj~m{>b2V2uk8GrxxmLbZT1Q(aD{yuzIC)GB4g)RGJ)DVti;8MG z0B91+%gX?qr7oQ=SN@>Mp*#KisO82oA5=;E(jYNDlbMR{JcASUFV@}e1T^bVV`rc&4Vr$> z)xX25zlRmM zo0SwphSI?Mw>vfTViX;EpIb&J2TG}-Iygwp9hh?Pa!3r*uc}eo z4kHaZOA6x~+@gIOyDHzGK`pUd7{bH6G&PtHAAeQj4TDS>d?Ai z4A^qWUHN9NG46S(u^i>2+EQkThc;D9r!IJ2+j7AK!ATUwT4B@Vm~10cLX=2m9=*NV zroVC7^6wn2{p@G3o;wz_>!s()o_osXR(2^ev+b3pG$JzD^pSF@OgZ{H?X5X_I%S&D zX{n1@of{=^VFJgsUxV)90CEhY;+IoA47& zoKFv^9v!BuuBFLS+Ryki7Y2@&u^)4ra=L6C)7}l1I4RS#@x8)uJp&g1_3P^-zSKO4I|EaDHcEh&39reDw=i0idZ{LZQV;W%OHk!T3h53)tG352dMDe{c z5o|oV!*l3==lYL268=bf+D#C?vBZ5TJS`vj|p6A9v;j<-Va8ck)Ru(7P_JB0nVTsE>i?ful!rF8uC0nog-5I z*Y4BDjI!XDomVCu$tE3lrL3mVkO;cY*>A&t71=Fx zQ~MwIX)|bnrj*_p1tXw&`Usu&9~y>zg@*gzwEE-vKW&9$J}->klt2vuAMKzwoc^fy z?xR|c@5woLzEPN^nY%>#{1?5FiS4S!Kgnjsd*&IhR zG5f=WrBV@j#-ce<7?!9s0r)I_9=C~vrkdK~3>T5kf_hW1g68VJ81Bzu*aj!l*l&(M zhbfE~PMi$^^7aZReEz;lDwcvKZ`MNFNKYyfyap?3yGug~8nI@D-(i5lQr}b+8tG3P zn#0)p2sp_a-943!0MwRN$M~6uIA>O)cnV3IV#*= zUQG0O@6tjP=VMEPhk$?Vj7LU0oI^w8+Sa$#sZKSAB^PFiRx)%-h@A8k_orWGq6X zjmavWc&<=+x3wN?@0TSn$5j9w1;3x@byMmpzWanss zd9T(=ifuheizodDDsSS{EBageyCBLnWgeZR?|sg!*RX=ga|uAv|M2L7oomDer}-oE zF5q_9OwteK;tp~++ufH?GyZ~Z8TgT$2o18y258mu$ZRh3~U+q z4oIXn8zl&^h*(TzU`oPwWFL=rMq+gIU&ZVx{YZB029_TYEYG)~r_!TUgZq9pFO>V` zNjXE$ETv?Adoge;FB#4ocV6aOGq5ZvuKUI8M+@EF`;V#+O!$2sWdIld_qNyZ@y+7G zEKvKlABy+`ID#driU{9#ysXtYJ@&CT=`!rrMdYaXw<*t+?<8lEacK$G_wV9w_^%UO z-w40419-#3kev0sT>h4!@$49%PA+~(1hE$afc!B57q0!OC!t9Fz?2-sLa-~paYoSY zQ$HjiR?HXwGjR05==+Gfy3UgIvDD+P%n4Vne`A>2y+9QeSx`UGBnl_Bz6pi+BH*-4 zb`bm^=yQ!I{4o3tybl!Cus=F1HD3`t#ncPee|_gT-l}B~q>AvdPAwerdG8YtT=4u? z>Uu%=5nSJU{u$J(^aj05mr#Ct(utVdnjP9%n%TIw*}Y?}mKF#G-KEX0Ye{H^jFnjA zvod6Dt*A4n`KRb_@u6SXYV8ta{tQAze}f6G6^DM*sG?mo;WBDv35Ga5{1#Fkt7uP+ zRDSD^HFIXd#1<(N#&H(fU*yM2lTgL=HV;HkL~(xvTelHfaC=|KmGHo@*JGl*bBq;& z@5`p>&n&f`qgSCIuRP;!TYF2EwoN-rEn-3(LyZ`(F`xB+NlMH>VO`wdGf?Iu+={at zLSaaG>m2Hp(iLG2Z!$V}u*U>q<+4qvE7A^8(H+svfUtYVIcVkb+kefDsed76#{!{W z20?fxB_5|HqN?B}V8UXu5JhXGl~H%4H3*=i>zM|+b5-=LI?PQejiE&i!}U}s4miC! z>J(Wap@KpdY(nh85rKv$(@w9+tQ+_I2~|ibKM6n2gCQ#aQ!pT(QV$O6^rrm>Cq;5> zaj-*2Vh&9#O>KQ<*F|Iod}jWa(qiti3x}C>>=6UdEJ6V1rHYZjTRqZ7aSTR*&)bs0 z;(F41ZW~)=oHt&rH>4Z!(8@V|#BOJAProF)bLcP>!t^Ex_`QDi26uv#-PjB~7{qpw zL7{YR!v+mv^7Od-o<9`R3ThZiUXa33=NqZ{TfR#NgQtGQ7#sG0Lo;YEg)B|%9pR1X zL+JqB#$2a!Zw4aH3d35SuYD646K9wL!&1TdW3<`Y6b}LPzV|FncD7=3Z~x%@4=?ZT zb8f$c`R81^-3e;`@@taJT1~Uj|EnC-cO8h%#6aq?!18+KSdr}qr#da8A56s?hj~e5 z4ynzVMQXv_moH4jKIbw5FMrh*S3MhcptZ;I%^@wntgRBhKIMZK?f}lJ)nzl`2rZR) z3Tuv9;kY}_b$Cw0IPh;Le)}MKqc!CF0oCnpU#Uz_8BN7O(*bIhyZL3NWHPH86D~FM zZSbt2A0Z+kf8b>e$+7nk<{;PUM&eji1p>c+E8vqHblHo7h8n!IcTb2^;+;Ahn9JTw z8JMtZ5U}!8ZKJ?T`VeL1JZk#X=Lf3W2IS>K{~+*uf6&@DaO}og>AOS# z8yHRyh`-vn12gozp#;t*Zx!3G4WRjix33OfcM2Vsr}Wp|0ia_~P!e@xjdM03m4voz z*qwpT7wE46ty%#L!>w)=TAnC`qQuNY@F0mofkmDU8C8|=Ct!R7^>fSKDweI>9(+6) z`HTP8YcZtBpvReEb#t|Q4fT%}%O)+2ln&Zvn{{2tDU5{aP*~oKP?4|Jnv~RTkv}hx ztO7gaqdVi0SUPA*-I6xTT72_4zrZMVts62J%R|V9>G1Ef`j5YYh^;yX_YhkeA-rV= zWob=(e1ZV=*umzVxRl>*d5}}lW8+Wduay*eBUu64CSAtyf*k15sU=mFx?z?|A<5=J z@{q98YEc?IXY?MCPa(I{Vn|fBlCPQ)(#ub&v4`~IG;#>ENyQU3JZtF)^d?QRF!dmkgj*}KtW@lFt^9r91Iy)M4|yZo*rf28;ow(tl+IFU=}4@ zv7NSwwwu4EkfO~+zfTymsnC{mz|uISt)SHibdbS0p*!sWE#ToxHWFshxGHl+n0)6s zT_!`*2nzIYf~t(Va$9D*12b#9=ecwWc$)~X9M>QOUl1~b>M8764z5{KTVFf|b$m^< zDqV4#+d;R5lJ&wO5*W1rRcuguEx!EEf{CbL2nwHMC}@r`eP;oDXS3mW2wKvGJ2U(OY@?c!oPM@S;abta4?{yA+yqUseGl8=xL`Nbp0wi ziKnpN)Y&S2^dJkatbLtIx3>LMv|?bh7ZufnT_nCqiUZdFzTOWD#^Zh-+J^%bQ?-bk zEGrV9^d2%msij}Omv5QxpMQ>$^|&J@{Iy&<1pyNY&vW7T%I-ybANc2u@Vgdan&+Sf ziV<%n$Jz}-;5MiXV3mL?RKfN$Wv-AvM27m0$P3`y*?*lPTw0(+3#|mOi`y^D9ycQ? zu#1x-Yp{i;h+m1gdXwv4{4vMDptrcsfA-DI)K72X`o((FQ=W?;(_0mAdqiUs>lIwPHR6zcoDn0DgWR>rB#jHL4O)n2R2O-dma1*@+tn!_7}d zG@a(K-sfPVf2A*?tUXM^bzJdJ zTeu#iHt91pH8qKZJG3EPthFKnrXQ(Ya#=V^Pggx{m6fPm`3DU#J%dNq09ms$e; z7l$P?F6!@2+aCCLk{Rql5}L!Z9={++Y0C<&3Fykvb;@0cm&PgQ1B{r`uhYiI#+as` zU2oieqlM!sT!^#=k$!_GF>JvDKlJ&?rNcIyuwPl`%q|~Gr)b0t8NyK|@g@|yM*xCc zzS*&XBRUICFcYc{r@8_4OVt%B*)63KiHPgpJldH_yrEHq??dT!BSs<8C8Wk6ZSCch z;1j0Hp%YuPp3WqheUIr5&^a-5tenPhfi&B6Xin-0t1Y6h#6k%R6abt^8S+YIiq6Cv z{vcvQLWj_-6%{nQRQ5W>G>hhW+Gtsfc0V7HsRvoNi%V#k0!_Vo+rH#Swv7I-9v^{H zuAH>vf(q8E(eh741!ws_{RspO0Yv_1EB-K_?=#H1t2oHktas-v%zGcO#G^Tmo$xpY zPE5!GuMqiOk6|ir{zqt#~87Z`IC%aZ_pWZQDgaVCRVnpcH&sSO14em#;8g* zXN>Gfgy)KD>P=ng_f?cztH_S?33Zd-tvCyHKINyLr{fbne*&SxC-Kn)T3T&Wt{fAg zg8jv+g%``Q6O92{Xpx0QyNqT8&uZIYx+?)R*Dui(Whzej2luL^l%ae@NqAqu93R~v0>w0Xk8E3mDJ)6}ml<87$%X6RL5Qx=HgIRb zex`Vr_QL>$oqL>R3#qFR%v!KB;2?hCO$=FBp0=)oub~aj%9cP_Utj;*>%+a)HtN!8 zjOuGnK{hezd)E4=&2IRnR(p|VB-6c8{!qewhCE{+IIggbcHw4f$VR)_u*tKudZ%Lu z`l`)(T87+$d@gkk(yEcmXrJlZhc0Q@Gn9kk&5r}yoZq_m+c%z)+G{@Ubr==+=}a^! zX_YB*gB4eA5Hmbx+zIp6wdAjkvo=qyt-M0_gC1sAS=~Vp0@ribl?a;d25ec*Y2)<ON?@gZoW(fQDR~+PEUXomMFU4y)spA4T~I(@NfJ@cB6L^l8F!B0}i? zqzmiLO{&`n4jjd`D^=fp%hKPSv6h~u==|DI7&M3Bc~Uff!wx`4{vXr{p?$2eEPN%Qt7j4<`Sa0-%lK{_yV0E)+M7-TeTNrM6MQJ}7EI`yPA?|0kj8W$mDp z5Xiyqd<{sz_@fZ}-dpE(ZtWcoH|%VGtZ$D>1)N7X4S&(vKMvRn0X3oY5^Q%J`vWsL z$8QEg5=w-7#V@|toGJ4w&kwXE{W7$e$i!mu-+u5tsUUh4I`uDl6&uz$`m>o%dzQQ6 zV80GTvId*d)6FnoFQ;S6Qzs}l-8kxMJZIP3=*Ln_VaHTGckhKXatXP0`@=~a0rJUc z_Sp5IAw{T6Eww&6%9BrG4(DW+7J|{Mo~*)s;s6$R{By6pyee#7&LA7D3pFm>?AIYx zMqMlUKv<21--9v_nW)9Lydd7a4R#mp4ukCwk z6UbEQ%a}^XnRJ?O=aUTnqfB8_m4#L$xb1^LXq2bV^dDGz!FRvfQfLGF2=kJ{Y3TuT z6C5LP7bM-6CjEzI_H7%5V)&|3jkt3;T)BkTHpny!#=KTdWdapO!E-l^RCVH-VRkl4 zj9xThiSAE+h4Q_L`L=QYX``+ikRCfeHt#Xowa%k3Kg*nj- zAqEh+)vc}N?E-g+^L4C4YuW=|l;Au_Yw#J~Cp!+eFbry?7Sy?~Wvpm&<9{}Ee54!# zf5~sBBG5U~oPZyo6|`QQsLkTJEfgZ6`EeH_f^QxnSmw3j0LX`p{%04x)4rRQiJ#EI z^%pOu2CoZBP>b-Zt@d%_xsSfft``mE{#;SUIKzf&xP}3# zGg~|>Ark4UtflkG&J+lx|8?B+%$|Ec4#+ZcZ#!XqoCDj}+4cvqi#{!)_YPJ#))PeF z^a#^vkBfu7BKVA+`qumhQz9jE(?x`1>9U9vRG5v;ua1`bonn=9w#S&Ddb9Jd`#gmgIS#VX? zeXv=h!jdzQ@P-GtsNLBrQ8F3DvW8)3evTHJ7>_Tai*I<0e+u90ur6B>cT`4wL3ID# zOoKO9a$?5?bBEg!lCME^#vC-Kd?UQ4C$Z0R8C8@uwWm^k&{^3Rfb;K}y{CpKyfB?^ z;5xFK1e{3pAmlKKCC|rAY@lo!?dJ=V2IqI3CqadC7Yh@%-lrNYh0*Lb%G!UZi}l~x z+=jL=!fH^67#JGpz?eJxmhnePyC#Q6I9ORQ9verH5C^K7UmN>!BE}FTMv#a+$S*>BmV@M5T$t)+QQQ!9(hLTEN3?UrD z0c(%yDl)ijk8QdGowV{J%SoTu*MABMTm`@DemmEysm_*{#WEwvodK$D}3n zYt?7f?i(5?+TG$+C#2Z)PLR+?XG`tBsy~~*m1Dj!*qT2nJJU3uFcES;VvRE+?x1O* zM7SA=O5t&{LA14H&-J;~@jOqWPWmEUHv=UrLbsM2G`+=R%K;yTfT`3^5LS;F_d?*g zMw%}q3v>}r;Hru%6uOoNeK$XIngDhn+>i_ul2M!1;0E}vzQ6g(;Z*WQ;bZ9F6MU(J z8iOblKUhtiz2!UpG4!@cW& zv@hVqU;+tuVIUG{kAKc*#yztYK&2d5k?$*+6hnawc`?Ag3qm@uB#D7*R?*vX^~$#} z|H>AZLWH^xu}ZKY0oH?%9MMvS#;3Zqz0p zw=N;^9RoA3*QS_;l>85R!2&-YK0ygQe&;-*aG>ctqk$VWJx~%#UrrID*;l_Ayr=C? zmdoxdk)AuE_Pt4Z=JC$syf8nX*%7P^gU~7FUR0U^?mjORp_}mlWG#MdD#__JUTa1| zo$%AHWovB>FAldlA{#}#A_oq>RP}mAYC3$#Uo|mR%0Gm1=*_+*4|)^d&FDhZhAvci zBo0#8l@@+Q(dky|+-cf};Ic6rDm8t~UV?Dsk44K#lg|ZO2n} z8W}b4Ct>j~npkL6P(@X|OPvE)6$6+mY*U|gnd7w-3}12@5zf(Yqd@J4It3P#G2S{S zTGhyw9m)sV+9Kizt+D0S*g%a9V1hU0-*=zuyxCrG?wZARJYv3U# zs#iTwO+^jS2fC|m1|-1@%@7eG2hX}-Ttuc*i(710m~LyDEn~a*B`qg+1r*qu=ltMF zPk*WV-yYDSQ=AM+2Q-+*QZXLUo*19_Ao(Rc`^Hy00HMYnW}+R8i&RnB#b@v4M`>#5 zQ%ii_h)hg}O9Tb9ks92r#XlV8lNnQLNUsVDCp0{zk#TKS}x0O0^Jia z=A~ZLc?u`~4DnM3%{Br(o;d2;$jwIG&AqObUYIgWLIDt4x|}Q+1}EKLM>x#PJrjEi zR#N!Q+=reTssrmuybJ?pTK9q`g0nk3W5)W915u#k##`Q^jJ}+_fP~M(wu{RI>WM)7Aq5qx$PNMCPQlFf(Yz07+70t93lT%N|9v@CNSt zJGn%DB4xY`{U5|&J5?3=OYdL7dVZX+e1MdMLiDzL$sK^^CC^P;rZ85R**+(@@pk@P zR!7NJt}A2cY*QZWKe)FV72moY!IcuPt;DmI?L$bOf4w?Sj2`d17JTAgemp+y(0Mn6 z_eD5kw{P9TZ1`P0&GP{7R509r`Aod!0;B>S+qYt8KOQoYT!xBC8f~AL2Edqss-5k= zGs6c5z41-`8PMs<)tJF{U&if_7QMP#Sj+5MLR=iDz{d!E0_vO3K>0Q;1`QmM|=B!K#ictwnxbh=K_afHbkeD7~EoyZpifGUwt;2?=s6x>89pj7tfD> z#EI$Dqq-K8?PoR{iYM)&-?oayLR~)YhuHKC znzn9;Or!0D!}x$9ngD?IAL6Eb1V`mK`TkIbDw?OQ?cU&nx z`a6-B&b`;1fSQa5+M5xRd-FaW3wAEAeA>mp9vAw`gPjuHHz@rJo_{0c8KHg59iTl# zr_0q>W!bR>CBc%W@LPrm(pc7{ScWpD^}DHzU4yV_sa{seo;yaz0sHo?9!PS~B>lM4 zQ~T8@`)pqzb%DUQIhYyBG%+!4l7CQOdYG4H{Mvtg|;+uffgLmgwG)par^f=JnT z3f0P@?R+_{A?QaDb{a!C$Z-A>AiN~8!03_J;SWdm< zBwoPdKjyu~=3z-7G$d$OYMn(Bsa11W+2y9G#XTfE!)q(j-6u3`0Hjs=pU<^C_o#$4 zVU9yX3tr}*_PT8A2Lj$^1A^nq$ACVKgmwTB0VtM)J!{~LL-ZUIIYNNFWdK%KTRV=^ zh6o~kE}v^Q`dn&QsL+4q9z_`_DaR?}BQtRsGB*+^ht9`x(00*KDpu9_5|7O_SntI9 zJVYm5$Y*C~+Vz?U7mkFlyIx(EbrJ?ikw00SWf5Nezb1WWfy`^DSNQ^?z>kz%O6p9? z-5UvS3XYz&3}v4LTIsvmrJvPz1M+>fJR<#6prI6Nj83y?@9&3f%b}gsYbq2_1n!X= z2YdG^E!qY+zER%CyDKN>^!Ox^M4$5OKO>oJuKkcycrU~6GF>MFE4FR7Qw$@Nd+Peg z*}luu+S2LnG|=+FG_%als&pbul&Y+&fO#Uy>umK{lyuW5qGrO!UwC$vOT*`Dcgt7M zhC0*=R6sG}oP%@d7X4CWLJG26&##jV>a{kUP(*M0nxy5oUF2W`LaP14#k@)c8{t#d zjsz*!`8-TAREYjj>?1ncHmJP zgFcTRl-MkkL|PWOeW8NKTe4*a#w2MA#XUu?Hw0m9I6j? zE1qG7bQ3LROERJ;KHSs_>ctt#$BxoXYr{sEEr7rh+;IZ887Zgh9nxskGaslA|ASk~ zE$;6)ITI3>p2hPhkXwt}WyXcHfle)Q{yD1$+^D&M+F#y6Qsl z*JzAkuMBJWI7O?x%YU2aO$q<@(Z>oj{~Tn3Ffm*tL`52TW(Rg|sPhLo0T`ITu?Gg0 z*arcCOc($-AMW^E7>LW7*}{Q*`d`>tU_j@`eeq^e3AUu9VLuA^h)iU6zJVw5Olc%L z&}dAZ>XbVd{qDd_nX`a-h$bsxl5jOr7>@| zXwGE)UBZZvlu8ClwyXuZL8q|MT5aq?8E6K6GF!%hD(2f;tB%$ux>C559sX)q2*Y{Au`Nw)(`MyChR%e(*3w6tRKJ&2DGls$;zJf*+s1F#?1G z#%k?RdB4aO(x;en$7H5^QnPTINl>}25?nN#JM$btxdX3n`NVSmjEeBBS1(xr7 ziU)|T$%_m6huxFI)`v<>N$+!mIG(H| z)LBa=L(W)UWkU`f)TaNRD#PROOm2fbQ5l?9`Yt@|COvlHV?R5%?7fM(C zc>n7~!v4s_LIFp zJt+t(7UwqlU+F)hoXM<~FIGC#ab>V$pkXM- z$HnF_Rb_{@lV;23G^@_a8|mTuu!E(o&Lok+&zD4m2fqNxXf_@`!4DDbeCBuZR-WRg zYlWANw0WcOd}N8kk`JKj{L|5#p3-$$d1111w09=8qJl==apznjTGquRPerfL5W|IF zm>RWCBH^5%$*848ixM_gSeSd0Ylc6}>?xYgfOWzdlced7FHfK->DxJ_T*|cEDq@OA9vhV! z*`$&|%98>y)HAWB!T4iVldapOSacB!Vjc`!u|-K$H43xJ0`6Y zZ{+%8i0V8ZY^3Ko=?K$2-Fr!Ws<4cM)U*=|s-_$)oTa4kDG0pcp6`+lxGm(DiepQB zyFhW9oy;^oov4sb{zjCjHj@j#;Q%z*QIx*+EatookMD?$KjXbYT9oFIsTmRk3%O{D znMe$JbFASx+ioaJh7O0Gxs46d5z=8|VWI$<_>xP6nY2H%k%A-XVy4rjPOR>sK8wEPYZFG0NNZi1CPf<(ZtK-y(n9>UV~Bd8 z+VQmRy5^pL@ZjTJfZ~a|ItA=lFLh36?vc!$Wjc?DCjq8-8AfIn=x+C`G1JZiqkG&j zw!iFRKu$yK$&^T^>2a5qpPZi1w)ugR5elfV1!vXL{BSGd4?qk+AsU&niF z1nX^kLdw#D)`0+#lHhyo3&H4A&d7QudqTuC1uLAqHvPu;`4aPK{HUuC$#h6*a6=Eh$svLII&ki;HpSW%2=d$ zY}6$Rw(pZB-{<2i05LXZWX)w5{vh7+pHlFg%5fO+75Y!piqj5kjdQcJJ0D76CLEfO zh*(>w)Mrp;Q%pm2z(1x|qXhH3?8I@t2Xy9}1NIY9(O=M0>em6UQvJbQ^*0Tl@6>Y@ z!Ggd)rk>s1#NG_&=pB+;bC9U^hky0Kp+jT7uK`+sjec!x z;qzR&>7SNy`9BtPwDO?BA&FjMs1KD;)L zg;ueHZ$(BXmqRm}7KUuT8pX)LgO~;0QIAt4yfBj%j$h z2bP@Ix&CVFjRR~T+8zZbEQ4+mq`aXwZ)Gei%S_-v+7Iw(5np?IA(^Ty^087_Mg(RlLb<4D&nzIJVR2sGC@%--$TTw>EkJL59r#ohE!gD*Y02bal=P-78Npo+ zsQc)&I32mDdx5ESx*3M{5s68Cu0M^c3CLXM4=wM%(UlpW(55$72bJfUbeeIfi%;CHkA zBFqn7p=7^T-+fs!oA$ZF7nAAj_pieA%j%LF>E11%p`v{5tb=0;Jc7Ult_RG3C3-!k zOm#ssh(Umtk8!!@>04@j#R(Gw>D^XKY?EnnAm_h()#=dW89cP4F`aXJrp}YYw}TX= z{rG^FGf==szz5iDpC?@Z1ByS|nXRkuqpQ*Au2y`p=}19CWH-aN@)2_Rt7=vVM>41+ zG)e_w1^{*YF7UkA;(7Ydvh`b%<)=MB4v~E9_+0OZCG55sfx<7(d!8Cu;CKg@IrDvQ z@dRE#z_g*$mAwl`KXSv@wJ9(&r$?Z`Xz-~|0q@^J>`^ZJ$2CU5(EF2cDQv}$upxPD zX^6it?XB8m*gIwW6*qCOB(Pxm{u9p~PM=wz)dYVqf-~0x{p6r(J{k$t!Y+>p8p zXrb4#ZlHL^Ujf=NlQ5c=T5<4(aB=?XuZf;5_!Y}Nco6e-b@2g( zKftVTnaPr9r*KwgMnVgIW|G47{Erx%)v_(7x|8o9!l2EmEL!G-O>6dv8{yoY4?cQy zk&F>-=whAr)qd`9Pae?Z0ES@uBQsp%FZRE`RJurY0;byu3}-CYbb*8s*p!8*HFC+F-I_ZObY`KI<45O zWQDn?rNl>sB|C=Ci9>*v%Kwv@#9K6>U2%=P3Oliq0t`UZvTJDWS=j%@5NnOcww!2A zk#ui~jjS@QwLAAR9dw!g)V={9Rv6&|9v8}frHzCHQF6v6M!wbt?MZET=f8RFARc(e z@uD~>KvkWw6f7CLKch1En|IiZ#p4K9cBp59MjW~5 zU!*<98V*&64nsO(?$*W_R)$eQt>p@%sc!d7 zsre%v>a>AY4C!uPeiA~=bnocDtuephTG)pG=IFkX@Us@~3zmUtSlTF-<lr|FwXN?# zY9JI05`JD#O5q9Pm%?-PriVqiDgI7U@OMm#>}CY~I8~Y|Z>0B0F!Z=Uxbh5QDr3O3 zX~gLBBI9OmSjqV0-!0tmz?Nlv!lFU*XjDoC0KN4m9Ov^#CIdl3SMC@St8AyY5!(N} zA>ZRI*#86QS(ZivkB_4K2~D=!ypkKb^-iWhr>@?(ovUZ<%;S8E2~fLHY8710_kZDmlp-N@e8EVQ8Fi!MHZg}noE(z?Y{1=W z!-=bnd!*;yFK%hPJDr$OmokY?)>3{nlXCe!$qvbRxdIOSeb7&m7iWfSDW;}e$Yfax z3a)v9$VuEcL%2J`=yf!DUOu97TPS#&q_nIoQI?Ls^Lb2X_~vy>KjW~eAheU>^=D*u zIWR_wS=M=rtZf+`B*hPC)X~4Q&9~ojq^e?#7n>xu{PwBXX7d@Bi{_d3yH*L zN{f#|T0-IW>5&9xYUwYHU5e&816XZw^+}39(AAC-J%`c!)9FT+Y@o-#emM*F=07w^ zs}z>4kBr`2JYh(ZQ*`HN{WCMezQAKMxzNGSb~|`yNnH{-WHW0F|5L>!%Xo2v#vtQO z=@IcLUW$em@@suf?3e@)@*6`%kpEgsC^%i~%T768~s*HGZg_Im09Sc*F;G%?!&vqeVE&H&Q{-ZivV<;`{LT( z@oH`c@?X87#~1KK;TDtK!E9v!(AEY0Bsel8@KURnSPIzqd_+^Fazb=zv`PlWVlm|6 zEtI+XY`Q89Z7pT!rj5jgZqi=Be$MtFCD1z~ym&~z$GUD5Js4wTkU#y;{(XD#hBsV?rw=?2@5IVi@tI~ha!~Xp zq!14wY1E*g7k30LuqH*m_ok^e^Ho*=vP#m9UV=*|_CqB>59=zbTKKB)5Kb*Asl@_ z=p?YJoZ4+9+B5JaMrW7RXGA6+GQw?{&LtyYxg6C$&6Cfa1<+W0NS8hxV~Z0&rV*pi z6->vf)p`qKIcbc~_F^X1sWEJ%T%)m*3SP00#)eyxt zO?<%<8rC#!N*>h23OrHANr<(Mr8Ji@YG4t8Rt1o#{R&?GQU;RX66GImV7dt)1naHnejU2+G>p9DUcR zU81fl+8xV5J?Z|XkcmmU;-V0WoC}(!)*Z75)<{r6|Jm{wTXwgCrW0(V<;X^7Nd+ou zTo{96$4;Uf23&UOMW`x|t6zI5Hg<2|{zslx%Y;k84QfII*CD|q_pXVDJ>Lq=%FZ!NImE)x?KJjIZCnojVZMkXM} z8eTA{B{!}HI-gg^W5e}yAQj;bX_goTy& zJ7UgcN|JI?AsfYIaHpQhN=IP=gI4Oox}K)x2(C}QpTH9m!)jLcDyoo7pea*N{5X9X z_@KAES51mM6@jPN7{`l+)X^XM!0ov4+N>?X9H> z<3!v94m!z_+{M1jt?eZa9C!}P23Q zI3-F-rZg$;-4ruMIT&%7{i7SJn3>A6J-LAZ{_Yq^W!a;W0J@A((4F;^+0uIXTwU9HG9kv zDB~{IP2~FWLezDmhmdnl1v8Pm2(ey>m0;kVtz*Xa$&;Hny}6A`Ehu== z^3E^d+2@`|iV3Gqoz{R4(K;pu!i?R2VU@8_kw#%9<*3xo$XwKst!|`gsmipBUeFYi zjx{Zhg$YC>d90+7ICks=x{gN6;(Z>|v!WK9a;eB3)qAJ@XW1{wW$Y)kD;kAmE<~Mz zQ$h$lk~I{$#=cX*UkYg`MG}hBAp|^d z|0DR@&wdq89e8dO*{L|jVr#J=`k9rT?pO>HTDIbjh9@Xy+_R2_an>}WlJf+_z=c!{ z3WSls0kX{{JX?R0nnZJmgstGh``aiVarJ~62 z>T6&hujAjn6haa{ARQ*r|2UXsGO<%S6eAs_LzgqCscQ@&B7{K`gye#(>q@mb)1Skz z_)5gIf{Rr|ZytHj;y4j^3koL1*@%twD*B}7tL9)ISsj5VjpEIf3)+!%^9-$au-+r|1B!vF)Esweg)d?0el2r;qgYkErw6W#^Y#>p zzGV&BI>H1;Sth#<8J|&AMvHv;Fi4T@RVJ^hM$Yh+%L$tKniz&bi}M+$kT|woHFd?d zCC62z(Gcj0D>CuR(tgx1JGN!wjwq7VtT0hyJB3cjFHFGgn!C$YH>vSPKc}j-Q^qjR z*Qja&iI+S|^nN9Cuwsvo~qX6?de9h*HrQOWjEs zU(U)`2r=U1$i9<(EP%duCq!ZxJ&Kj#; zzz`FLn6bI+V5%CIU4Ah>@!kN(i@IBVaTFfe%bg@gFq7rud)4!(?T)#3E!_IQ!- z&e@dF#w1;}F(jlQkzM4Vi3;67p$ERI^k);#t?o5p`1#|>11wozyyt_$@c|Uoekd=h zjH^S4N~bEBUe?;vR74c?G7=l3GAm842`oY>a)V?j?QLKWzD6&KcRz#I7Cc?z&zd^1 z3b5d!G3vB~Y>4#zr0HjMucS3^B})60Yfo?_O*rX;d| z8F`naI0L1s>2%F`w%2f%$~L*Wst^+qxgP0kHBMfkB}lag;pC% zUpbzNVu&Fc#Rg>kL9$qVP0k0$*Bh{2hWp+ad4fk*z==bV<$! zG1-JF7;n*cy(V@T=`7ONMN6fZ`Q;OYAbISvD(ajg%1}&+#5cw>|8CSy zsqpthzr3WCOUCGB6C=8YrSqlU)U`%@5n_zSC&W6XLs_~y`99^dp@^!&HWtFYk(CH+ z7cvacC@gNH1RW95h@y`$aD$Fe5{H?CyKS)0O!rhMD#ma;Lb1Gu&nODH5O_yjF;s;u z7a@i5e4&LkJX;KmHK?0<92c?xLc}0q7n8mCC`uTqPlJ%fkhLoeAz^cK69->B3}0EC zwf{^wYjMH3XW{L)-GnQzxCFkgvFHO%Y;I$_>#-UFR>OeB5HOU2c5RM}FS!tJd&}$b z;U9cE-uKR1aQ?abVU5A*(_8r71CQX|`yRsf<`zz#I)$yRZ9Y%}kImya2D6N<%Sl<{ zbycx7fmGzqQW!=`2`NPQ+N;pd@g#*jfq{Mx)**y}bpa#sOXApa%7oM8z;(!u8wO$M zb!;Vj?y8z}IXQ8)ZFeX^#Zr@a{7kz|gPbY3EAhqbIcPq_pha@w;+nb#7I-mov6={D zq(c$Q9MrQKSV5acAxkMRa)R-nGlT&~Q?;^Ai>k`&L`(kN%xfQ@@boH9{KQ2Q%0&4b zdEzBg0_PpNzJqs`gBq-AN1`Av`E&OS=PA=MYMH=qcuelS$EsiHzEk$^Bv#`{LLNoR zXg!KIcLJiwdPaD(P0jBTgI;1Junv34rD&I^!meAvSngW+yvcdGBOQgG29j}Yxl#Z( z9eENGK?FeWDA(C=m`q)d6HoAUCy*QogplvMAS-=OgiwVW7GKfyf+kIL7RrdnG0?~u zx~!dJmOuY_fngn%r>HVv6U~F@EOywOm=7C?a`5_L$CzNb zA|vq%Rp~t^8v#H`Orf$8=v<*~S}gMlAtuy3A}ABJ;Hq1pa+PBJLL@O%2m!IKbZnfF z6?K?PX`O|k$gXr3(Z2h_?1=DC^?)yMg$G#ZM!Z+3nhPg1mA2VeV91eKvd-9mQh zmYw1QbyO^>U`|sq)*uH`2^&MUs=!|Cs;+p%6kwCxAr7f4La))TZ+xgo5M?KcCxcea zAw{%xqx7)#$>e*p)a~sR$3a3t;#tSbT!kgc81I{`7ET90dd+nvT z>a~|3#f0N0PUGl_Q#i%l>#mJ8oVjN=&OBp-!#76p+Sc|GFCRII=bwKGhYugYsS~Gg z=;b3AhJctj2X!*0Cl7g1oM_HPcR%7y@7Ojs1hRU}+LlssIEg}jFM#KtJEI$VG&Nf@ zcnn4gOgf;tj;19fh#I&<$b7l*grg)qWGt*s8bth6afj!4&n}2dIrNRO$YFd&E1wh` zQ%XT=8_b#(DUo=o73S57fu$Qjo1ZaVcm zVM$86ay)ec7h@fFI~DJ4tsyFzb(G}PhhCpSp_8e17g_Bxl7TB8aFmSYvST7!WPhgP z@b_{5EaQ60$u$~E0xtM7BUfVKZ6pPieAZ$)iY0 zF}li1DEb`9pJ@!Ry;$%BqUiU)n`h$A8;j*~$*D)3j7>G&42U}7m#LCybi@`YqC(0M z<_JaJbBiWq7yF^A>Iv62lE#!)bNgAKf^bkt!v&_3qLIM0wpr)_J*kPuQr z&cvLqE8732l2JK_oM`9cII$%0Zkl$SR&k9|)e*DXVqpHVkb@)=P`K9AIS^9Kad@?^ zK8qAsWd|ra0JI%x-rin}B+2?lV6_UMJXkq|RZ zZEoVw;aBj?vj?%cxsBPp#qM1j>d#$Un_>UnJ-G1vvvKhS=ir>P_hQfP4I16C+H$d6 z;>5{K96o#$M~)oDi!U6)qmMm>Bd;8zJZk=0PIiqk=!oC*_*|=82G<({3^A#$fDWhv z6c%Ri%Yy>qWrv7a+raSetmYk>vE#TA#;71q4nTnx(8c0(q)1Z+ngWR^a8yl3CHF)I z#)z$E2o!9PVwrqhJ2IJhOio23?VlyvRSGEi^W;ATGLRJpVstMiF`NRu0dv;{OR3~5 zK4_^JqVvGOuzk^LAcBY~WrU~y%kS(E17jS=70b8^h&t8N6RlFoDp)KNDw$!FFStOGk*A!Kh2Jv@jNtLOAWN-9 zF@_>UjU6=v){%gyjASoqKCE>ZScIfm)1~N{W?*(`07M)rqusiy(Q#LwQP6T2!=Uk- z(3POG4nw4Ohr$hjz$->+2(oBx80qSGDww!2kms#%MyX}7l>BVQjDp!BcB!VO5qqIE zg~Z)jGd3aymZnC=>ZF0*hw(ik>*ff9%DKQwCO|H#wU7c(QuCzCmmC3E1(=EDa7>S4 z<-ccZUJp^7M_-#ROxpv9W>0Vw=SeR!0(4xnSJkz#tbH`xZ7D z7dCy1J;|tHT*X0$FcRXJFftv_TH|ydQ&o-w zu4SB8lr|&2VdorN< zct2c9K{xb7nDNz)98v0u#4ioKWN1XzX@yRgO&-~)g7b8q##?2y$w*~xcDfj|ND>Px#tgIdwYph z*U?L>99<>nVF&@MRfm%&H}TS;BY67h=WyTm9>hbBJc$=xJcQ+PsbfwN>WClQ%8rr+ zdi}s7|19Qq*%|O5tce?+6H=Q_{oRc?V>S-fq5pC8UJV ztYMsN@EBj#Ii(oICPFU99APnnW-8_ui&B5&v{M%zQdB`5b>$Cw3ik9q(E0PkCiQG5;&z$C7#5n@Qwws-c{Po%6l2vhe}HN zF)SqUIbL~A8spASrZOl{nija|)@<%Ldgb+Jo9ycqpK1-S2IyyYh6)H8>yE-WX)5T? zH7u4bETGEztWSU5VpyCtRsQp&hF}?BT@2|QD(+Ovgp8+?Frjj>;#PMxLq!V^p&t7lAv7|sGt{9A$}#=9JSr}X2J_inLzBka~5S?&|<`*t~?9J==+uZrzPpD?tQ@H=#0^9@2u4- zbKtSz=#h(vtk6wEM$7)qV#e@pzBx&d786`eU2R>}6msn?j2lBT#GWL6V+rW)h8|r= zs2TBD*OfAG+nO%T7@~?AGEX;hAf zC!czjqugfLy?Yl0F-W=ohm8Pv+}292ix~OoVTdz8W|bB_UKnUZggcF6-#l5tY}io8g?oeqRXX& zcQkg4A?cyyeWg71rfCs5kxT#()NwI$m?uG9Kd4|RCccQB#}EqdwzDeg1>-8IEpV3i z$62RAgN$$aU|lX(`n`Ki{z^JVtSTaEMJ}XC*l4)ZV6V3XpNQ&}*8nDvLcAcM<`_9= z9jv!#WIx(ejDe*|m**ncSc@D<>)@@!a<#;)nkfihEO}9$1B_t-mM;?F;>#*(-p=XV z;Uq0_SBPB@lS>BXzc!{w{&eJhxrHTa9*g(XzijBzO)0^6 z!d-ef6zC<$1V&E*nLk9aEa-?D1(^jnBQ3?FZj1uU)tEIExf%j}%y)ES@~7#_4D4`yR7dOYj4Z z*;<>m6b?}`iB$~ktRo+`)FDvbD-8I7rhtd4sxWJ3*xK4+7I#Fcs3VQRE6v4#E*sjl zF{8Gwb+ypc4R?oyQ(kDKSy!}AYG(~r%Z?I{N=C{QUha5A6k-o+JzFEpjs&Y*n6WH? z65iSLLr+iz9{&aokv9f7eQFD*Pi^h+zglCMl0_rvm;#OXog<8#v&igWRh&;LD0b`$ zymjbePtWhf4_Qh^Kde|e${`G5QA!cueUXrcoVB!KNQ9lFQ>8;y)g;{G3!T3AqMcI1 zs`kF`k#b?u9ChE_5LE0K!jkDmP&fn?iWVgeaJf>dnm{IUh?)RZstQ$IDLF~P(<`q2 ztBUjhW!OJnVF(GCoerc( zuE{>dQxRgPM-5RC0ooA5*jH8$mQs!r$CJYs4sE?qIqS?KT zqu*0536-r>K*+(*DtMwI!lP+xq~%I&cp^%Lp^h>2QFGZH+>Xh@z`6qY{N&QK-V#4v z{NF63Yg~i*d6*Eb{(~;K3EQ=K3 zn|3^tI6Ii2NHk@VB23m@)_M|YItrFZ0`tfPKE;H(a)_oN$B1Mzd~rHz%P45PpaCO~ zRd}D|1-K#cRaprvBr=K$t)|7kLu4C>n8<|_DyDY&#%UBHotSuYduBdc=a3`+usOpP zO4cAQ=b+jq3xoC}LR?{OzQ*$O5g$hvI-rwxuJYx=m7sw6 z+6-X`I*yYUqagExH145N&L|-PND`W^gUhjUEi}mj>fQIAZ(oYX9;|eRB%A5(=x%oWgUB~inb)6Dk|!T zlQDnJ85Ljdg+nonF)(@blp0Of;fT2?1yzDA87Yxh+&ingu#$O<&IfBUP#?JXss-^U zpGg?{9eK@B#-^IM1r&H5%TwTaN;Jk=^#hu=fpZ@7bqXUP;Ebq3od(&<)W=L<0J1I! zF{#&6U?e$Hz^x1fBxS+8IS0a#vM(nquUXc%*FgU8CaH!&;Egj$7TZf5BZd$VL%@<(P$^S!A6cwZRrLg{LYG|E_v+6~ zoJ?eSB%fl`=s#H}7%LPqx(t@frCNpL&{QhY5EQjY-gd+9HQj!3piZ}{Dx$#`qfvKa zX(~BmNP+j#W2m}y4kbnwp}KLj%~KAU)XBQZPS$zksUN3#UDshYYe%5ZWFjX%Ykikv zLe7D;3x;7FPK!Qk3yY3q3gLeKhhShb7 zwR}d7EP`Pe#;M~lXyAv~ccKc2O3 z9}d3sB1$o^7475)w$OT7idV3fZx#au9t?etk_rL_;%%}@&2V;V%7Ei;CS|GoMx0yB z1tZ@B=-a1L;;g0W%3E{1wdBUf5Y-C)(N z2oKkjzqqMe8uRoWjScxCqTL2B^@o6_aq3wF2EHu)SjiTnOz56RmA_hi6}T?ZbA=7>A(Te5$fk=WBZi(${=mQ_B2oB{ z`O`)%Ys4#eFed5#S>P&xIlUX}>o{Zg8T{T5Fu<}ENq6V0V#Z`Dqe(P8E*G_MN(J7H zo^VP0lKq-9a=<2yK9t?*78kQU)32I__~K(&L`I64FCeFd%@6{Hp{L(V#aPM|(Nr~Q z5e$H0^iuRyjT{q$MF`l?u(DeYHUpp*Ay41y<*9`#7I2nA*;lJ2QM;J;Et52>LL1_e zkMFR6e4x>!BG!@>&M*v!G1H%6J(5lOKIJ5+T@u(4;fd{1teozLF)Sd)#8acpwnfi+ zfk7F^f;$u!XT@-%5Jt@et;<>>UL~eVd7cvSa}wfs$$&ld5^JNBSHb{jAP0bGoKNWwq)!B2=)BVUi3aZZo6m;f7=TLX7aDb#{&~9ntzwGbTxE z;;onUO>wfi3Gl8$+qUR?66uvb=$cTV9yvoDI06G2QJdq>Erl3$x>Q73Hx?e6dIzI6 z*{T-k3^bQOY)8_jkQml#27%x#WxW|vp!1$PeI?Q<5mJtpf*}St_Kx?%054V(Us)7G z`xc6WE7;uJf-wat(f&y-G_bJVlK+k?)XG|92gD)hK14nw8OfATG|k3yAiGedLLiKn zbUqcM|6-)nj=t};`b(ToYuLDNtwGQ2zlfMHc{n5uMJg5p%X?(PzIlf06Xi&Z=j4qh z#h?d}^lPU?lL2{QFxhd%lu&E7t${I)b4EuDrwALwGbm%mo@Mm2b~Z-Zu^6RrP=jJ8 zE5ajoea{aZD~?(DtUz>u5b!Q<8rNqyAC(SDV$$YP;P~s%%jyt}WjdA7q?-buq|9B2 zqytIXPeRFdM`Dju^HSVEK}36%udv)+U!toZX- z_A7lZ#tUIa)}lC&fUl}yoyQQU035d6d5l9Wg+6o3d*mWP zDRqt6tVLcfSvycG??KGdB7Twrplw@Dof>u!`h<~eox^-S$8xzOf3pNHFRi|T;Krf?txsZi^<|pAInXO6FpHHSJMc(>iXf4Z; zzJeyr1*0muV8>WGvY5^n7{KyqlI89&v;?O~p6H_iK!|K3P zG8(3#$R%1iKe6)Ao|X0oMaQe+^(z7a0FVlG-y`p|AR7s3@CYHPKuKPR5QD1K-efdQFb1!v zI%5n9e>TY^bbY6}qe9iO#!%!L3`|`k@@Gw*eS)dMDK^j?XDPyB>=imuGWm1cwnbev zNNE^D;wNj26eCtKvM-pkz`bBs$1GS9%5)RBhCxUP@U#abpKKV_%7uQ1C1)yVnYSIn zpq4oS?^`)YdH)^bK;oDX5%@w;r+`3!`kq9LIU|OG*{nrVS6Fo&GJB{UPuNJjBe9}c zMS1d06&||^?B5rfRB*jKitKoWBSbD~3IcN#BxW)*X{~0?d*Wh6L_vXpKUNs^iB<|$ zqEJiG$zjTDzscietaw=#5Ec}8O0p^ZThx+{Dbs^*#h7ok zBB~g|O*=26!YzsJYB=$wuuMGWOi&2VJ~2k(nThpCJdh){F6#>z#87e z7LFn`9B5B){7TYwV&G1Qfdu>uEjgnY?v&`};|pl?hsKn26bS=OHKJgIqRL4b^-$oq z9eLX<6lmD*CxP7~$Yb>PCEgRt!8PqnC4!M4{%#WH0QGYEs?vS(IDPPwE?{T%N`W4Z z1MSCWV2rE-bHDk(iHY|uUdP&1?J@K+_JqPeWb7-SVV;bj3|r==9fSymGIMgL)*2bp zW`^V!9tVzr0`xq_L>8BUbEN5z4Z63Z&wPw4RF3mRSsy16X`(PUV%}#mPu~v=63NP~ zmRwg&zloFhPr2~fOD_4rB9;`+w87}N)X4%2y1v&UQDOuI>Obu+El(20tkqX3U)4^6 z9cf6@E>WHn`FzGbBh-H>e})8jNbYb|)%v_kBT@2bQyJGCMngm-C`R-M){P2c8EIw? zu*hsdn}Q+wA*gVxs%qti)1{Ypq^imLCe46+=55pJv`M%KQG)0h_9F$8+jRoLuKdkmxNfXol0 z08wZ}opi6_ywh>a5F*ogro4E`=fRiqU&gB9M+?*N53#4(V7zpkt| zO2)_q=4VPQ2_-}Sy*ROpiMGM;UR+=kB(@`7b&OdBF=7ofuoE>Z6+j~jazu3ITsRxo zaK%6Fe#QEwpcKaH(JnFZ9?>gj)^HM)6gvuw&ousQ+m<_)2xr-gUDIe@AQd767k@ro zIwOHi_I#0jzI5Sa_L@2-nQ>9bJMj>b(xsH16cY-Jj%8&EAP2ek6YjKl@6DK5EMJeN z6GjP15?)}LGo2VzF$_@)1nJ&|uqE$UnF#0T-7N~a5DOI@q%wXTlh($(So*m|-%-~U zKZj$kYsrFqG+M07nKj}k^T=jbLDm=_DWXcUAytgowE9`f&m@1QG#u04^B5gyCdfr7 zKS8t~!c~{mUrt3i1@b&lScRy9y{iAMbsTwEG@`ID6I_1hDpKOrmw-ZKg(-MU%iMm) z=aUg_1D{dOI|7xk*I7O%*;N~6`rAq2;rW~*K@~W~&oXn`?SRwNRi$USV1&)28FLe` zhOw64#iU$uFe5>J9x1RTb2z6FG_qWER4nrEM?!C44BT2(-60ER6lVEyb-8O}1Ixui z7t>O~nvnoOJ00i8z;dOV80B4R+~LIXVRuO0X>0*^7AD-cF_b# zu^^Tz0sIR!jH2kWsN%HnQx-87IcjC&=d|Z&J7UMONRht}#}#~3ZuZ!57{;_}MQs4< zEf+hC3RT~-;r9pQw16ip0*D~NmQzSWjEPo8){<2SWWB3u&#K&_x(o54W`+=C=1Uhd zf>#QU>YKJ1{nBEoV^LvBWGj*o5~HgH=<=$85DP8phbi7?p0l1P&iIb!qW>!e~Kti(%OokOEsph zj6QY#T}AeIPgB@*`oTq@bj#x7l^onr|B*%p1AD~vKPT^-orE{!!XXorxK&a9VnRJ5 zMZTYi`2@_9Cm|0>6~BeQ2WuS%TO^GO9N&2^JiSNXbxH^`tnk+`gPeElf;D)DClNx* z5=A+!C`L@A>MZ!|mle-ceQtDuWOPa(>r81jsi81CCKke+mSRSV0PDt%U!HNt8XBF7 zDq|s!1y0WF4l-~II+FLp8Uwd6YwmDUEzqQcov*Etw4Zs|VqB}FoF`*o zqi_T8=aqSMDBVOZg)c-YB%O|1p<_4^1m+$2z9}c<$>BZ(T0!`V1bZ@aD-*)fpq$xJ zm?js8P?qFC5Zs|Wlft$pY-H9VLTOKvRG(=my!`u7nbzRc9J^!WJ3d3)Rd}Z&yuKgU z&R6lccP!5HDElXX35({u0u4A9JEa}}yoNqZ#;f3qT9S*V7mp-0Nk%yU1b*k_-=B(- zB44tpWPP8EmGx7E^^Px>q~s&TE9Rm$t1QotOvv=&W>Oe`u7(9lg<5&#$tQh33LGPK zi{c(fANBNdlIPcRl2X!`JfofW81OP;BQ>he`yDHu%1^snJMj=R)yt1(-?W>Tzn|DP z={W3$zY7+{27S)xyti8HkGbPn3+aj{io&p-MxV-`o4L!C3B>dn5z?Btc;rHr01=^D zjUha7Ox|KpN}8nb#R)wR7*+OBfQi?w0V1Hkc7`IY(WX)=DfQ(aFI7R==_|Mbw+)j2& zB->BM*5X^$f;<&os98gB2pJ7pR0_>DnVEB4!UCclO+5& z<_kxSdZXVpAr}*4>FD6sSiOm!u@qT{Sj3X_f-`pf+@v!RKDdn9FfI6aZ5MLXi*G~* zI`tN(lohnl)P(&^e0dd&d)}t1(6j&48jHHB$MIxgp<+(j0ZCB2VeyH2Z*x`^xs1o8 zDwol{jMj%Ca5ijBhk7c=6HP;AG^*~YQr3|q_^_}#+M}N%veO`@kx6V>%Mp1OUHQ>( zN!{rfjaf8bJ1GT92xBR+ScxY!vQrB&Vb(Mx?22UP5heS;V{6aB6k=}yAJ8$gn?d%y z!uJKxGw4Rnm^eWN)=i^pi=?0rj8mABF=HZEVcxp%w1qh?z@H%mc4Zjm5tk7ME0Zl& zRZ9^lJ88@R=d@5AwJs7CqFpebU*p=3!z;M{ak55Y+M0M?b^Og!JK3kp*&;$(IU6G* zXj3Mbkl3SyE+-^8$E!z)pOr$e;>j8LU+El_@1LFt>PAJ8E-;Xa5y^5M%0=!ul&6~H z6_X!1>YiK+0OokhDxsjjFob2=c+h!ZIR70x+yXS5Dq7qK64g!`A}Q8mq?D+U0+|(6 zJJS5+HbW7RF`^5a9c6a!>VojpHD zqGFcOT8xR)gev7kPo?|va!3*5oSk?Br@PRyBSTYYDjLKtzA*#kEYpa!?C`QF7=5Cw zt=NMm)w{P&eXwI^HL9-DB=x8i+IJItVc;O_sI(iA-BYzVKIk%fqcJr5{;X&Ocn>cx z2d9V_6|LooHG|dOG3@{_gfQqXSoVC<4N>?9b)DoH_mgUrE`0ejtTEi_k)l)%J$Xh9 zsF*X8V1N+;=`=)p>_nKr!{R{jA%*Ehz=s@Jl}6!{_?j)RK(fSYPR3_)s7VDr?hD!4 zB+PDB+g85j18gASimPCa!N4(z8RQ|B^+_op2Lg}trEmjxx-wc7QH|_)GiOfAyC~V- zhDWH=F`(yeRb3NO$XQ}3%eYYr7EIK-X_A`?r7C5zj&WftMS_TgrUEaq+eNlDIqN4E za@K!-D%O%i)p4;*Nnb^UUZsqlbXl!fGZurnWb~}?C#Oc%_cb#ofmq)aK}ne4B);jX zUO+~xiNhD981!m=lpN!rA|`1_WYQ()myUP&ugO^~>T?~Dzv|h`g#?^EgI^qn?AWO; zCa1}sdn{_@d{zM#dy~c6FBiTP&cckJvbQBQsAheID9Z(CBE_jr1^Ba;Jn1~q3PGPs z3eczpv&>&ZK2thFF!B0wab&r(<}O|eAo|=b-*-h<3?xLMfB)R`&d28IO{Iv96PW}z zuiYKiSj}ye%R~<9uIn{KVA?gR!IvCSIa0UVZ*$P8>SDZbQoj>8kKr=RVxE|tmGK4$Ul3| zlRuBEzp5HTt1Tbc8WPTztM?vVKd2O5#x4TuHaxO|O6W&fJ7l-YV-68f(7_foxLrDR zQ6<)OO;UZCHgGPk>?38LV(qw#vucq^aMhUcEMqq5?qvi@5CE%c&dl^P2{!=mT!&$p z2=&-I%6l+^qGXyd$R3*2j3Gwd|BR_7Q19S$XBh+M@@Ddu7CvNS}V37d-wl*TCrne(KR5fmnM zz4U$3%7zP4)ijKjAS+WEGag7Xf$AA;Xhd983U>@+fV-UruOKVhR5;Q?SqoeoODCK` zf41%}wb13&OCGzknj;2>A!_216ec17&D`CWR5*nv=wUteY0Dl~8w+bDMQ53OUG8L@ z8Glx1G?&{tM}(u8xBwl~iApLe&XOodCE#aQ!;a96fNsNUwIWKWu7iMN7hwAHcC-1@3oA&rBD=2fGVYxg)jm$1V5?D z>_WOBP5z2e0Y-uc&3vDT=vG%*{5-4tS&BjV+Gbo;ZtU8H#r9$p2lEO90Nh$r-yu6g zS-{J`W*(mLUm|)xF%K8y*v=OncJlxrt<52vqd&i~$K^CeLL|2_c^xN2xKq zK*lmMR+W8K*5&*dW2l%r13je2hl;8x&saU>gPL)CEr~}{ONxqrbkFDbp~;H(Gn$|@ zLg_W6n_(E1FF;A4G1h8^q~sLmY4PElzHC~-P7m(S#=I)Q0xrMCBU#LB%&RqO+Eu{4~i3 zs^q7xii=1trm3)^B3GsZmJc8iHwCsosdWgWSWm{qMFf?T%w-YYi7r4Ax#Yab6BmN$ zMZ`_vy(e~fPNRaGc>xrG$(P|I^GKhO39U@mWp4Q zKB6RWmN{g6Q-6b;c8QJk~MHc zmFd=?6oaO2(Df@7`%S-3w^mnoh}T@R4Rs8H$#OpHzE_cr>cfQ+sq~PY;N+%~eU0@J zz_kcP%!rknW-&_4pL1Tvxn>d*XPI;*0uWM6CRJ-!Ld4-tMJgEYobFD=o*;{Q$z(HJ zxyhktC%#z`J_-G5n!BrGCl(Zl;6P|QWkTqhvYzD^C>>wQ8Q+$Y^kpMBgeUTwvwC@11`5dK zL_aHw_al6f~Wo5gOyk~F6&lWTWA3e&30UKsQhQf}3gNi2XJPnO=-5qpWM45CZQXv#vPCTwJ50)ReNGIc4(M7U^IzO|86hH0PjXyUF)L zhk4+5y^6nQQ3uPYS-v;%-l|@sj7)d2>`BN2%m{uVIE!TxThd9Gejk&9Ol&i1ho%>r6gG0E3uL9P>QNa!aiWaSCp#9E)@T&y_~(0#4HPhozSC+Uvm=Ar zj5agj-wOdS=WzllYZJp0oLth_5VNMFX=i{1R*R)7tkt>+z_s4p;hlwXMxhY$(xDi& z6jgiy7TuW$P+?ME?ii9LV zsgAN*sQ5x9@RM#y#2Qm5!qncNRs#0&nTcEHGI)(*6x zkVtGGDURxUIXJCc^qibSyJ?`RYO=#vgOW0O&H){F^<{@qpVfxC<04v8HDUG2m2Eg# zX8e7)NqnEINo2%G(+H!;Iz1%VLYH!3-Gyhn$mmC;2)e-OHKPY#ghXWLc-5|1tQxY9 zF4*C**LXP@1(vZm%!zG9Y*`Vdyb5%9#OEf&p)zqBSbnCaD*BwqSU6FgOQB!N2x5@J zUWzsOEOHum$g)~e#q7k&C+CW+cy#AIQH)Q)A%gm>>zcBZWjvnpWQ_zEzVPJL8^S1B z6u^uM;uy*zS{6GAgdbCiFh;40wUTujrQ}!HbMokc<|0E@Oi+7R(cg_)CHeOtB3WzQ zm}Ofg+1eP3n;k9*=5R}HHYQzl;(}5lP}8(&VdlOx6loH4Ftss~riQJG7=KRf_{EQF zNBx3lahK2)<#UqMBQt5rWQtTKX-1-2ccRFb^O*~htWl{LRnU@mZGb&{_F%EtR)KDw ztVBuyTwD1&V=N7;~|`eg=2D|Tkbr?53C=glg@dx8psG76Kjs{9r!XehWw?%f6kL% zkSeW(pk>A?T|Ln|E=&;+*pVp3-Mv)x@=(b|Xsp$pkZ^u=JZFs_+Nw%!8r^}(9!i8~ zq?8>0p0IuiKj%4&0{XLqy@O*iPhz|v)X*-U5hi3AN%@(o3k@qnSKYuCn#AN7>Vmwl z6s1S!Sz(X@CaB1yLJ?B#N_9FO;NU_ivK2wBVDhq65^^q<2ZpEg!=O7R8mSj8CS;uI z?AXm{;uZf40xXdWXgU=Uid7Puim^Kso8wsAOh6ydkO7#T9f?}^`8^EkL>-DOm^6sQE~!U`7f&tD&&Q+8~LBhx|Wh?IN7@y zH%3Sn-KTMPECe_?tV`K3@zJl#t0iAmJlPu6@Zw_?)p-#MlXmN)3SBhP7N1MVX z1s9jlJF7p_X*Fh-L}5q7|OFYOOk= zw$%n#f?;yghl5}eGjwfTn6gi(tW#IPriXHX3lCuz-p`yxTAy@1pfOW>>oB%MVWEL@ z0fit6EKIJ@TvE{-Goke`mezK8+;^sKaeZY!Z+YI9Z&8JYRGXO`XZi8tPqH7o@`x?Y z4e$$kN6{tOL4?Bxwik>x4pg+_9TgeUVg6r(_yW6Ubk^*i?So>43c`>*gqLlR`@Wyl zaEP~x0)+_0$jOV5TCzpD4PKI+UP~x&haED>(RrbJz~R$v6c%^3NzVRj_2!jRI#0LJ zTnb|m9H<&YriBnD26+24Yj+_HOh@)EPI8jdq$ouL-4SOv!$sz(1BVMlECmXDW$7EL&J9l`cmzAHN`~YS+VH4wclp>_cfR}9ePG()_B*~_Bk;jW?qFN}${eG9liY=ytS$7S~ zOACO7S_@+u32lfwM_iJDu7`C}Gw(Bs{3y~wq#~m*iFcLrlxw(q0lQpX>l7={_4h>F zwf=1!*q?~bA$FJ*3aL&4{EOJnA0A_-2 z7T$0|HEacd6#@Z&N3_j0%%pZLLq320Y`eozeR0N!(GF0^KG6ZH2d?vB11)Rv!}PEN#|YXeB`1b5;P4pXl2_7Ap^yoxI*k1y z>Jf^;5`+rGkX83zN=Qb@*()jsC!9yZ5=dD|B<%j0)TL7F6~!0+KM5WDU^b>xbUI&9 zMEz|R2F(l7!0F%`L&mRruFjnd_8s&%+b$0x9Q+KC<&2+!!a70%x>fm;<0D+^eRNWV zrVI-O*P!l-a0L@NoRfNn6PH4W0`g>`o`+b(N4t~0V4_MxGEHRXHmHA-=L|zNe^@jg zed!a--{lm1juD{#oQacxl6@E0EJHTicLSv;4o|>GAfU=DV2ADKt#GmDu(gBsGcQCO zB!g!J|G!vh24EAy-`5U6tHu$j=wKG>s!VS&hGxWGwvD698Fp>hzq?pS4{!W^_5BVh zCGiqT3DmgcpQCxlaS`+*QX4gy?757Q!F30!orz|J?mkJS_t6q+__b>hkdePAbUHp znDq=lBqSQxBrSz^V{%6fwzu2nTJZlT61#FJR4HJaQ%Xr;O4_M|sI@5V&AMFO$|l6# zpM20IWFyqNnD;;ZWuhurm!Y7z)bfoLWAKoQWE-{VFK~a{<>~2z0o-@0>=J^Z!wxqw z2UUq89hH1`UzG%vVG~T=pv(vUz6%QB}n$=6uIeU!ea(`f={Q&R_F+;tY zyc5|JL{HimrF%qk!0BM}m`pv2hZl@y>^Y0E zYVo-;fMF&{MZqO=OfpeZRt%bogLJw9@{TD6{J=(O8y^+}5AXuAeYSS>i`*Z3AYci7 z)E-}$S8-k^I&B$A8@vjHl}`#?T^#J$qsW2CwXDtt;p2QcM07Sgh(K!m8IHf zRp=FFhen03cfqX<{!9qd0bryqit)YgyERApe7E4b(4xl1(xz|*4RAFZlgBA$#+yP_ z&og#-2nK|KEueYlX*v|N5zPp8e8!vx=b#b)oYQG-k;D0JR-y?SpJix=NYK{2U_n98 zX_-;!`kar-{Ned0d3w62y@h6bk;miRex4~` zK7XN_P!)Yu9*eHVR3;a7g^R-)@@@X;IMA_et%cLX328BT;+1P*q=>{A#3vX`l=MG zTIK0_l_5!%r5OFC$zwm{_4S1UtfvppvaG8KGxX&>T9fVLIB-?hel$9cVOu5}|@^*WZ#fpn{yU5e? zlT<5Kj@Bh7k(ZYjX8dlKt9B%5uG4PBydS*yYccKc!liyiH!>$Y8FSr@sitK?eb_4Q5WobrCVod6M+>qRcBj*a(2?M>gm ze>b~cmMKY|p084JWp`C_lGoQ)L%j~E>nfjq`pBa5<>keQMMY9Ba(#Nzz>;9o`s2?( z<+4=iW6H9wB);JS)9>{`07|WkT(1{e*IH|`?}xm-y|R#AmQ_A~`XsGuO4YLH*!la* zpPGv+BFnn*JAlaUXidJqyih2(EUR2UJgb))9oZDQy}iobban9b{4AI2l_SwwirgO$ z`QwlO(W|;_t9<(SncZPdS=MclUw`?x%%Rq^%jKfylZd=O?p$HKy?*Cf;QI6|&(BYE zq-4o*e>~*(-~Y>a&6JB=u1}_B&Mcb${p)YKTC>U7ho3&my6We0e`r_x`tk>%DwoSu zK7IalnoecO@}K|yrZJ(t$@TgqKmYtUPS!Bi|Icr~vEZreDu4U=XGe`1>)>Di_b(T~ zt*iX~?|-Mwuo*Dtmw)|2Tj2HjBtL!n7*=Uo^!@Mm-&r6p%O+pGevwSOp4y`RYd?<$ z$z0^?*RSDjQ~kt0|M5>M?U(H$U%z~{#>JD>e*NWFPT{ugBA>o|mfrLoZ^t3G_cv2q z{}uDQ)FL8o!Al=6b=It){KPS*`;|b?$<|RMn_~m7my%Zcy_w2wDFUj7o3(v}v97D^ zk6o+Cpu|i$Q;cyO9<`Oi{Ie9@XC5))O%ivVDv}tqO<<>!Q`YFZ6-XS0RqL}m4W<-XimF)m$1bTP$pUMU z1R9ZpP9S^&`qRa0i5~2$jeXqmF=g7N7HL@M1|P?+pONuX7j*Pilw|V?(wC>Z2HO=^ zj)PN5a@{UG{A*P!!0}KeakI*N*%s||!nl21H@UsPo9$+*NY5(dbzOX%-E_G9-<)QGs-AG?&L(z|@@&Fm`f=Y|Kd5T7?$r5C#tt66sT z$1ZhQ=q(qEs(kE+9Q!VHsp=2j4_CoknEU(+HMv(_T9b1_B(NGI-EQ= z4S0kuJlA|G+?J)X+2|oE5JIG7SxmW~IVNtslgf2jS3UdeePN)CO?#F_v$r8gJfnJ@ z`Ks%YEJFsruj6PZYh5XN{vV@BKYUV>VLh}d2=b6Qjy5I&a{(jt#N8N|kr#F)xDyd_hIG)+fROP2d% z=a~=dDK!od8Mh%Nr}S;Dg}bxp$x@(&+k#RAT^r~EW8kHluxFmL6lJ&opafK)q{&eY zEljrSNI{I{lbuP_T5pX>NfL?%6^N`kPTO&26F1G^8SeD)kpUYNzIZlz$g0f-jnF(`9X};|Nj%si`A{yTVI_FPCCTWG zd*=aSmf4PEPD{w?-2Z!J*@F^!(2I^2tJW-o-oHT~Xy%^3tEzLjf*T|KjEJ%%GG%ad z4z)LTJQz4f4|fV{7)zy@RtOZstU@c1?ay;oc*MjzXX2!42bN5c&4h@>E_ty~c-Ysf zbq;eF2GVw8*dN0yn~2;S6vmA?^s}#7^AgxwuXJLike_$6N@ty_|T_E1Sb2g>7lT^aaffiSxzr_<1AZ^6usr} z;U*hD=Hjt(&AtOn1CW=g`^m=cO~h7e!!!lVun{G{fsH@IJCW@2hW-H0HqHtvtLKz$U35eaFDxu#;;@{-btY~8MgT0l zbhEg)tWb<4+||p8`98yU(QNXk`{JDZ&!hKy2AvCY+bPQPsSX9hz@b_WK(>oE2XwCo znq(@@CG60X316elEhk`*9nAE;A5x~IZ`XC@1;_l+>@i)4!6J2qYN2sL%hAglxW`O5 z%K4PbDyR1|F)af2AozP>{04c)GceEHGd;6G@yd=NTte`t6(iOR?hVo@spIi@Sd3QT zF1ZH@I{bSAZ`_!KV2tpEYrd@8vm|sT*t5WQ{G&P%ond5Ir!cnj3f_a);~oY3TZGDE zhZh6Wk-&nzbPm~@Dhg>79s$TPLn@X70ICVY1_L&**VWIZ@cBwfdE-!l#^|}2;mR(_ zia`j@09E0%AVy(^{R{vrV9FA}Ke`q(mV6T<(S(UiHnLwl8}{_MPq(S9>uNaFLHm-w zn2FCkP=3*CNR>K$|;nGUYPRq$ud{?=K~vcA8KHtFb##GXR?q)c!TZ`RV>#oKG;d>%z~< zbR?rT*&3Ume1u=m!43H;_!@sQ>+D+rQ;O+iGK!r&2GZM#WKgM zk>g?r075amK@kdjj^mIXo(t}UYc&v13um6kTtci0&uk84JQTJBLnQ6cH36>Z=WV64 z&^udAn5BTC)utT%2OlzuM4Y>k*U*MfIv$TBgg{JpLJTFV;XR$?A?WwKE{ke_!VVZ` z(cVDoLab}`5(^;+O^JQ@b58yYL7KArtt0*(m0!D~l1DBeJvw_r%AtciAK;eH2Pa!N@`XQ@u=dke>n7;nv zjbO7%Ob5a5ga57zgt7qx3K#c4^uZk8+6ci9Iv(>#!$IGidl!QUq81)5N^C0fc~VPZ=go+0u87WjM;(ac zI8RIyXic#$a!>`TQZcrGQNN45LCw=P9Q zz8!tYTC#gM6Dpp}?dX_;;r0BXffXD=Q4>t=@#4<9-1L{+Oy^KnDd4;EMbz<5vD78^ z-ANAlywjCy$n!+yn1kJ-gn(^yAUFVWP$4?eDCvtHFk}EefyT7=jD!nVrdkzZ2IIByC0D3RKfcJ$WsR)=0hy|Bg};saq`8va8VnDuFMt*2Mewz2f+vaNciHCuD&DkFQ5lakb$<>&{$m$DRU z7qEhYS{Fq$ikof$BX~bk&bF(x&aGxL8Gby2e7Z3`1BG>xc!DV{VCqb#); z4J}*Lq>t)=?}R@Yk&(4jgFXnu%i|tuitd7u@Fb$0+cZyc51}6T(2t|}^dw0%frNdG z^N*3A3#8_rwI%uZbaw~{~cY6A(p9}C5a^LGw^vDmm7^$KZy*{qx0$cLmO8u<+G?3jKB zopOjvKC7T-lH1e2 z#kN}}DFhfb$rPa^+Yh5_0aP1-;KXMJkDr{P*D@7zOw!&t0X8?UPes#cn!z25SxcU?lJ`?-U)D zy`wQ{D+MtNrw<_%z6R3LFtHTA!*fUPg#tnPefYo2x-IOGYxq2BEe7aG1pPPaG$!|f zxJ+~x94?wbDH{PPSh7z{5Hg>voAuwzp)PnvmWt`zO)NB^(}0~2yW&U*i{T5A=?z!INjNn9jKTM*&*3x{v;=@fJ{7npWbK$-CH9Vs zt)89}=JH}aV$&gX{~9xB@v!i91K?9KEqR!DPBCGiIZ{GT!??nVVq%7l7w2j65&Vf` z4KY~Iz+mzOP6MYz$;HK)@E_qB+D*LZZ2xR)t0709^0psxgk(Jtk^cunkjYj-Goo1l O00006iq%^F6G|JMjpoAiwE3tGfEGS4WDUvQBDcuqa zNH5aget+CMb7y|f+%xx{bDsB1jDemyB^fgr005Ml8Y&mIgi@PHL1kA#X{LNF( z8044E9H~r|rVnah?(YCjE+k1m^~*x)6u>@`nntlF>LZyc9sRu=4U_KolVlq3kE{87 zP0lYqeYA)*v6BAFHeXgB8nnN+clrCWbu(x4YB+F&D*PS|Z}LW=EAR{yB`Y({mZ-1M zJ}T^b)y zen>k+z^+4(FFMw-jIi~NYSO?1I??GvFzqo3x~BAB%>G9Q%c~r#UG6nX_Kf`0PNeIc zIk0RlT8&KtonZ<9U_KxHej}}rw7Idqvf;GpzJJnFc;j~9#VOBmxOCGRhffGl>y7Ns z+Wz@7Md00s_tm$<4Pgn)ngXwv&aEZpNb@boeg&P!21;KkKFlpJ=$B=EKt@i!$Kz1Y zCb||Ye=D)#wHyn@;%0B=f)0Q;S&EreokbDXZ|pt&szC{xXhJ11&$CUgo4%;9>jeJM zRmmDFLHbXJ<}pnMoVtC1&7fozj)C-5n(Z+0L$-`-(o}y+02!^{sn8(O zy=y+^2Pi_1h2ogWlL2aHN%6ol07&gPPgE4Z1BPJ5YXH!?#bi~U#;DUv0st!c?;d}B zK}_+T4%vA(=R0d_CnLW79Ti0i?oL^1r912456B9bGG5#_?v$A(tp7^DoPRHCg}Uy$ zm^9_)GL6-{9dE`vc1*clOs&zRgfIF@Xze*jq`>SAf{Y7Ge{@O>4V%h{Me_2&DG zLL{lI!!ruqMw#m#%7r%+mW^s}`9gruPYK}gQL(#DaWnQ-aUWFeV$7L&`xwA~%%7Mh zJ^{0uOZm~WbmrRclW^n5hSTnn*hEryxxY_JQa9HzS1#w-<*K7Wk(iN2M2dAi;!G{q zuj2`#Iqwc|kf}*BS3~mt<#@=E%VYECF0E~<2KU{8lyyBa4xS`&O>#{)jX4dWVxwaD zF>03_9p0TJkAcN?lG<=2J1n^|i7H7y<#OQ1dLx}o&&O3A(n4-faT<-*6Gw$Vge7_6 zN}2f;hC_(l36hGBGIYDAI+9 zhpMn&uraqS;_c1th!cMb%4o`nJ`D%H`)>Dx@0T$(-WSQ#DJ2?*W%e73{uXD+bpA~B z*~`TIG4^o?eezG5beVM1bZGi!g|Uf`iNa)H1-Wsh300+yX=tgM$v1;F1nC4r6GjQ-*_{Gcel4@`QX`1j@B^8Fy(Nt5P^__P|cKU zl~Wb8N@_M}wtd!N@9iGL-p=g4uQyx~E(kxB@sK(5B}F|&8KR<4bG{=O`El@0;5O;$ z&(pix3#00%9w$YojF|nY{ZTe4QAv`gN%!5wq`?P+N#HHF&n``)2azk~_t39V$=$Du zMm38bHSzxa;Jo%EfKlEF>Gi+?DY@u4?&CUe|!?b~Ns=dR+TN>p=tv|^ve_GQdwgrJEsbTiJ7pH1aW15Hm&e-PM z$fN92nP*-QI{gpxU({Ir_-RpgOZI%#jK{>npj=OA<)yB0Hp_tZ54rspCkJQdt8WI^ z;APomUB^kAA~t?DFKsT{9_oL~;mw^A_2{4Lwp?yQ2iwWW%Q;>QZxhJ(%H!t+<$Y)` zZRcE)Yv+PaK{KJmSGkwZFVNSC|2kFzj~EX1i0tsbpi|Tvm7g*u>^?Ka=r1l#c(gc!e;=u+9kb2684igD-oZn23mLem>{g z@Yc^6>FN%02k&M#g*R0+y$ks8PxTN+1EJ+6-HTc8p6-^5S@Xf)bkCB=S1Gi>VIF=nl@I=^lT?XP6It=XBV{^f9~yQ>=f^KBF|oSe9>xieKGkf`hc>E-&&BBUV5^)z9qZs_L_!4vx@dzOO@$ho6}r$yKxc$hWX^t!6Dv3-VjcB*5+Klu1= z1S|dX#r?G1)_Q>eGq*O?&{NN`zwZ|knH^YA9UIVvCUt-Pp4`OXl3-%2>i&)^#LIpD zOGig7sR!t3{6h^H??2h$UbESIS^o9j7LV_Cz4-I}(Nbwh@S4F^!SIjyA45x-VU4FG zI~sukV=^7SNTDK+e7Si$P_H5vIaWm2Spw;_?^UPt6r%}5~u3AnV z>V3VU@x{_>$MFokXC_+>InmvDKDs|1cH!DN>GS*FZ(-}az_$I~U6w{q-h~HEJgC!u ze%L)mf3m+i^VUI$0bj1#XRk5D7gU(Ax|$4FDa6~4(;A}Y0V&0(Qilk1-ZT!SKXhn%3rd1-* z{9EZj{KbSdx3Uf@jnhFWts(!KCc91Mj*a6MmY2eD4CAzQ2l(cA`F5^P4MqUy!l{+8 z_$9`Vl)aw#xPe=iFK;^Vn|>WN>uuZx9M(cFpm)A5mH+Sk=?nx*&$Q2QJm`S z?Y()>NeR#>&SO89)BPycBjMO)335|X_+LV!CLi}oxvT%O{Z=OYTN}4umJCN^Ty()4 zpobem8LP>YIV$&xe^Q!Bavh)6_X@Ff?bS1S6q)p$`@|?a`r$xynm9hd??|U=8Fy`* z6$5|bt3+}?uHe?-F&CTKVQGPv=0vppOh%?eBr-leK9r?X2pH{UC>mjI+46BF;fRcG z_uNubSB5Q6UWSA)1W_(TiKAmf32y_M-)hjQU0iX zswF1WyO=xmoCk}o1o>M*)ZD*~PLpz6E=*)cL&uI=e@{6#?+*WJWNK-1*$pFIe%c`N z12W(Jw2Yyuj0yhGs0Eo$tt9S*sp7wG+6?^Cqjlo3wb$!OHYthKKm3>PQrX-XruRv> zLv&WBwYeE61?YhF*Bg;Z*9rftK}eX@>J4S+`1H^zD9**5Irur5B7q`(Crx;eb_%Re zTT5#8DQ#yekbCuSE%DaX&+o4Q7z}ofq|VvYBboV)G}%e);?wH+Wf{NFfV8Svei$$~ znx4|Wzhq@4c#G+ZBEO|rK8_dq`wFwLVf`?8r|R|s`@0=GpEuheF-g*8K^^&oV!4_% zl3J-jRXPDa^2|@3BBF#!;c8iZ>1sm?O0p~*UOop(t|9<@_S-MNnTgo6p1>{IR*3A4 z%St1uYtN(`{%kDF|GT0Lb-c7Q2~9l1`88g8_5 zof?mokoac%>AkewX%4lLS}I>$LExb@r}8Infa|c3CF9*_)zdRV`XeXGJ;sml67%Q9x$S@rNc}_cjjC2z8Ld)(dCLV@lhv96Dy0c8iw^^(USS(61Z8HXeR{!g?3Ev9XQ)Yy?gA#1&fH z?0)NuEg4H~exEG$%{P%bssh=AM(0WWwXxNxXH$Jq6!3Q<<`6M3kdy5rz9sUawXSxo z$@k2r7F+vwyzs*j`Gp=PcQfY5VJ76yALml5;2D(=)^almf6&^e_s`DO-R)i9KK1|O z8i-gmnM&cN9664|X)k)wOIgwB62BetQ@#_$>n2O&eU>-=cl3(?EW47eaMh%hTeAp( z76?13+7`?@cM5*vvoXJ0&}EEBYdL!H81?c0_njw-=s(Ml|d5&c+`ZjrO4aojPl0)H~g2iXoXCs(qbtqgu|{ zscSx!6}Y>tj5sMm+g|^yn|uAa+*sUY3z!Pq*CO&Pvd@*5g(2HcKu}GP(U-}JULBVn z)vNn;>^Bq=MyidbmCTyG_g(8N3D zMJH>CbMR4c@lc`-KvX7lfQva|%i(2)=~-Jn5&{uZUHDknOvo9@kJ+w+@rkqhZfoEU zXilrNk9p)M(s(n+%Aaa6$>_$+Pv@zO%br>Wym)e}UmlxVTo9We#7kri$@Z+G*(wau z#&Bwy8Cg8lNDoL%%cx+dx0bAjV8r>XAuTc>9xM!w7Ky=#Xz3g27sp_$a}5|h7GhBb zFuWb{xOX6HGk=|+7Yx1y!q=@fuEqL0$j>T!s_5dyJYhMiG+r4_SNOykR!B|E>g%v* zzYGCR*d`WPTn*NR$E0b(QE_p?S(F)fWe|@nc@J|sHY!ET_kNBr=-Zsu&$^4` z1cH*7Qp8!>#CTSEl^L%tI1f^lMuSnZ#wx*VV2irQmeSJUhJJZ1Ype~U5N?Bzdvb$N z&9zS;go(iVzv1QK?Q*o=^+z)&g;Me_d>;D>ZB~X^P36@uYm7@k+$LEADO$u}LpaKS zkz1(3XOEHBm-jSotFTUHP1mQitWa1ecfnFu?oh?|Zdz%m9h0sJ=&|JM3C$>K*?G#b zsVDHU&x){zQ%3rzqw0kC6oEkyBhENA9mdI>_cp;{k`H?z9OXadw{0(qEp#p8s=wLN z0r~evqq(Ojgj+r6lqlNblLKzH|J9qaDh- z3vW(aM$@|Z%#9{j=j`pEu?1yX$~^^g=ALU!H4%c6Yk%=7*rJJ*R(+B9gkw004>P98 zsA`>MLrLM7Z~P-mX3)5>%E9&Rf;Ae)^f4se%_qX_Oam2BSPKK#4N74Rlofn zf=2{I&&Tq0;P)d~W2sX(?gXuEi|81%s4Bbc$*xnrWRznh(`Z%C;ywMo7?7nIYS*Aj zusczDYEfcXBK=i(CKelypprxwot&uRAPet%@o^F`iu>U z0A7R^hBNuKmeHja>Zo`s*3{ttpNdt1o&NrM)s>-A+j%k1STcDdilE{~P_6WiTb0!8 z*z5gBmuv*chS|W?3%{c~emymYi|y9-r?}yX3>7MBmqWXmd~UBq;GmdTjlwBMO%$ zGaBWg;Np)Ig^2ob5O#@bslxaYxOLD5%qLuUB&~(Xe8{w;w2+sE#zppRCsE8H*~v2OTis-K9hTJL@6WP^tgq{f5g z>~C2SIwIIc=tIP`%m`n$#gLc>_VgI)J$DdT?WI#0^iNb^s!VZ0mkIs)-72Z(n z4<=S21Dr^9MA>uPpQ_jsOxfce|6#ADf7Yz^rC>O#hi)BQhAJbgNlB82{_=OD3cduU zAIzrbDaiO;ea6`{0=>Bz!?^N59uO;i9D1vh@f7fWKwMdwez0%`&5RcQw+tUKeSBlF zwMs&m6UPf-5l+Zo{StNT6_%l;5ae9YS~o_b6qiWgq-K=jg1@$A?n1aS=Z}t=)s~2f zjqmn!XzTSP@CMd_tCgWS^4q4mR@9W6w99qp8~1NEl^Y7@>lXi3_p5XsJfmADtFEgp z4XpC)Ca21|2xil*&Q%B-_B)Qk0pA;#7nOgILSIc)P?g2idaB#^%rEk`k6E*PSf%ow zS-%ewvVj^@FSK4Lpf^YIeC9*!g-E*EcL=IbS2yI0+8?M!P*EXR2x1a**mn76R%9`6 z-walLy*2YiUw7~Uyq{iZ4#fF9bvzPOu4;c}XJ3D_b8CYsVcVOASarkQ^;p?Fy*?R&c=&TH!6u)%}iCl^~^853xL5yeRN%IZ;qXsP!@*u7D7HfBENlm z*4HE7UF9`t~*aAm1Eebf2r$85b2V z$DvpWP2?P}Fa`%>P{|yucupYZ1=G(FHX*YYv%WD3VRgHPr2kK1Qy2)~*Gf3}D<_Fy zrdIkWPk{?798cegcK|(#q`uC_WrluvF<+v)X*5b283FEE;7j^4t)J2i_)3SvM3EG+ zNi<2;B|bl>?U@JxhsvQ}b3<(_fr}O3=RIoFD(-POE)J4za6E5s#Ap9HOVJh@`dPiB z1$y0EvS}MoFiOIyg+tjQb&foL==JF29B}ic8LRDc%}8$fJ1p~#_qqS=<@S}YH zIvgRt(r9|t=eLk^ev(Oh3oOI-2ug+`g{2xyfU~8LwIwJ>aKi`Oqm)2HgJWhfwq3{djrr{RF&FQJ0Q>Z-+gK|mjn#!5gEmcbkGY>Bs ze^JN_Wn2a>U~0iQ>}FfG+>gDRs0LFng(#8CwA3w1VucdngXVQ|`wj0(aUVO_0RvBI z!Ow4ySi{xh%>NhBX*G?^A^OpRDA}?CoMSBB4=zib^wiDd{l9u~Ke|-_#KaUTA>2zu QxT6g~Q&mr;TFLJHe@{=aV*mgE literal 0 HcmV?d00001 diff --git a/src/mi_note/app/src/main/res/drawable-hdpi/notification.png b/src/mi_note/app/src/main/res/drawable-hdpi/notification.png new file mode 100644 index 0000000000000000000000000000000000000000..b13ab4a9232b11f23a3eda4c4c80e543e6802c7d GIT binary patch literal 3107 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 Y0NbM{;)bwtBLDyZ07*qoM6N<$f~1kZuK)l5 literal 0 HcmV?d00001 diff --git a/src/mi_note/app/src/main/res/drawable-hdpi/selected.png b/src/mi_note/app/src/main/res/drawable-hdpi/selected.png new file mode 100644 index 0000000000000000000000000000000000000000..b889bef091f6f8bb3630195a02f908db4b0b17de GIT binary patch literal 4959 zcmV-l6QJygP)I00009a7bBm000XU z000XU0RWnu7ytkYO=&|zP*7-ZbZ>KLZ*U+5Lu!Sk^o_Z5E4Meg@_7P6crJiNL9pw)e1;Xm069{HJUZAPk55R%$-RIA z6-eL&AQ0xu!e<4=008gy@A0LT~suv4>S3ILP<0Bm`DLLvaF4FK%)Nj?Pt*r}7;7Xa9z9H|HZjR63e zC`Tj$K)V27Re@400>HumpsYY5E(E}?0f1SyGDiY{y#)Yvj#!WnKwtoXnL;eg03bL5 z07D)V%>y7z1E4U{zu>7~aD})?0RX_umCct+(lZpemCzb@^6=o|A>zVpu|i=NDG+7} zl4`aK{0#b-!z=TL9Wt0BGO&T{GJWpjryhdijfaIQ&2!o}p04JRKYg3k&Tf zVxhe-O!X z{f;To;xw^bEES6JSc$k$B2CA6xl)ltA<32E66t?3@gJ7`36pmX0IY^jz)rRYwaaY4 ze(nJRiw;=Qb^t(r^DT@T3y}a2XEZW-_W%Hszxj_qD**t_m!#tW0KDiJT&R>6OvVTR z07RgHDzHHZ48atvzz&?j9lXF70$~P3Knx_nJP<+#`N z#-MZ2bTkiLfR>_b(HgWKJ%F~Nr_oF3b#wrIijHG|(J>BYjM-sajE6;FiC7vY#};Gd zST$CUHDeuEH+B^pz@B062qXfFfD`NpUW5?BY=V%GM_5c)L#QR}BeW8_2v-S%gfYS= zB9o|3v?Y2H`NVi)In3rTB8+ej^> zQ=~r95NVuDChL%G$=>7$vVg20myx%S50Foi`^m%Pw-h?Xh~i8Mq9jtJloCocWk2Nv zrJpiFnV_ms&8eQ$2&#xWpIS+6pmtC%Q-`S&GF4Q#^mhymh7E(qNMa}%YZ-ePrx>>xFPTiH1=E+A$W$=bG8>s^ zm=Bn5Rah$aDtr}@$`X}2l~$F0mFKEdRdZE8)p@E5RI61Ft6o-prbbn>P~)iy)E2AN zsU20jsWz_8Qg>31P|s0cqrPALg8E|(vWA65poU1JRAaZs8I2(p#xiB`SVGovRs-uS zYnV-9TeA7=Om+qP8+I>yOjAR1s%ETak!GFdam@h^# z)@rS0t$wXH+Irf)+G6c;?H29p+V6F6oj{!|o%K3xI`?%6x;DB|x`n#ibhIR?(H}Q3Gzd138Ei2)WAMz7W9Vy`X}HnwgyEn!VS)>mv$8&{hQn>w4zwy3R}t;BYlZQm5)6pty=DfLrs+A-|>>;~;Q z_F?uV_HFjh9n2gO9o9Q^JA86v({H5aB!kjoO6 zc9$1ZZKsN-Zl8L~mE{`ly3)1N^`o1+o7}D0ZPeY&J;i;i`%NyJ8_8Y6J?}yE@b_5a zam?eLr<8@mESk|3$_SkmS{wQ>%qC18))9_|&j{ZT zes8AvOzF(F2#DZEY>2oYX&IRp`F#{ADl)1r>QS^)ba8a|EY_^#S^HO&t^Rgqwv=MZThqqEWH8 zxJo>d=ABlR_Bh=;eM9Tw|Ih34~oTE|= zX_mAr*D$vzw@+p(E0Yc6dFE}(8oqt`+R{gE3x4zjX+Sb3_cYE^= zgB=w+-tUy`ytONMS8KgRef4hA?t0j zufM;t32jm~jUGrkaOInTZ`zyfns>EuS}G30LFK_G-==(f<51|K&cocp&EJ`SxAh3? zNO>#LI=^+SEu(FqJ)ynt=!~PC9bO$rzPJB=?=j6w@a-(u02P7 zaQ)#(uUl{HW%tYNS3ItC^iAtK(eKlL`f9+{bJzISE?u8_z3;~C8@FyI-5j_jy7l;W z_U#vU3hqqYU3!mrul&B+{ptt$59)uk{;_4iZQ%G|z+lhASr6|H35TBkl>gI*;nGLU zN7W-nBaM%pA0HbH8olyl&XeJ%vZoWz%6?Y=dFykl=imL}`%BMQ{Mhgd`HRoLu6e2R za__6DuR6yg#~-}Tc|Gx_{H@O0eebyMy5GmWADJlpK>kqk(fVV@r_fLLKIeS?{4e)} z^ZO;zpECde03c&XQcVB=dL;k=fP(-4`Tqa_faw4Lbua(`>RI+y?e7jKeZ#YO-C z2#iTYK~#9!?3in89Mu)afA`***@xG!*xAIf;{?JhB`F|6rKV5`5+0)J0~I7tTD27r zQK6!KpjAPw)DNgs^g~fa(-w-tQ=-sRR7#;xD5T+4wNQ}|Ok&4Q>^OdVz3K*MT{>^VS1a&-(KDOZ&srZ)TI9obf zJBd3nn&M5hrx`=Ol&9bp+5XhVX|2tl-F)!Nr|#_gC<1m$DDg4(1R%CObisyXo4s>Y zXV)b?ojtTSw^H)w2y_KED1@CAaVv!_6DSgl&5Y4E+!yG;JUsYL_D6r;F;WEdsgx2Q z1ERkD`wMS$67tdYz3UV0Z3(iKai&Wnm{UwLu99>lSJUdO;>g$tLt{h#&W=}adiDp0 zj)g!Asw5Txk%0WpqZe-PS=sf_%8un!#3a+DtYtvgvGcIm6-6!xJ;Z?iIW4 z?H^hUNG+zwH-5c-Ydoc%IJ>)7X8a?}mM781U<{{izV^wwGo+F+TH@)HD+^aywtRZ@ zK*3uGUM&Q&<*wD~^t!|=XLt7|3wo5So52{fB+JhUh6gPA_dA%_9Ifrp>~yAME4`lo zJU_L2p_L{VaF5lqF?G+Xj;{8KnIcol5CmpPHZv(X_!xZ*B0ZM>93(#F>=0K>BbJpJwt zTGJkWplMDeReNvsdSC|-)YXZ)Nu`$CaUsklQb5iv;CnDPZP6*$^YzQW$trUI&-hc+NBHicpYp*kX} zjJoJ+%g&KX+S+J*Kj8S0B%6D$Ewv z+c@XEbx13~(`5igrjPRTT|dEYnIYL65Cl;1sz_mDFl#~>uO7r!Bxa{_yKOmQHy2Y|IrmvFFf3*%HqVdi7TbA19oKnDiU1hE-*y}y$?yYEKH8h7)uIM;9bD*3l( zX^FRU^~NvLy*iCgWj++gGow7X`+i7daN;LG00LnM(D;6!>mt+{>SPw+q|#QhV_odF zWXhpbEu*Y}+2R!AnQ=Dseim(fwDC!%99AXQaDMmstmtmX;LqP1nHgfoUmqZ_=5S&G zm|8{Gy0+qMX`ur_ey(!3|JD3+p_>9g%V^>`_;P;2t#~Eh*9fD~+F-|gJ{WzA-S0k& zr`>s5vAT`+6-_7oc6g$X-@W_`v^9tA1Q-L_7__dH2dxcCIJmBlTlD%HYolyjqHfmT zTP##b*a@_*4PZF|Z}z{)zXtc>8+Sn)oa|%g>%T%@tF+p0= z!q)-$e7Q34YT@<9sx2eM$^d%swest^tef+yK1nB8n;9U4K`4)1?>x?Uc7(uG2~3rP zWBb_k&SNOs!?HwVOD5)>U~0*mgp(kbD^tq&FU<6N_3W#oKD+A3$XS$3`>-l{ey zlQF8=tBorJLV_Wn@7O+k?QvvkfLA}*jpcxn0wFl5_89;pFhJajgBDDTW!*zBlRROc*vqdKQOOFn`=)MwyR3fX%sK%-dsGx%IEBak0?O&HnIq{}M5?}jBDdtUC z5@kuG6gAa^K!i|&6E3o(Mcj^)%@i3O$o}KK-HBMcE&DL@sD>!OUCem`Eh zGMTdNR5DSE8v#NJqzJ*n&v_tf@gjhj9mA3~vr`2|`ZMnzc&hS4-z6V`sfIA75$2>5 z0U+lF^<=fE-wvAG&&Lv~xuqq6V_P-1NHedJ5E3bCaV3SoQ8u<^<5vU5Mzb9KaPFlK zpY-mn=1evOsl#}Ys*PG?V?Ga595=b_kp7#WD7R*Eg>x;-67jfAJZ58C3R@{GOJPZc zr4&*~iUpsEu{;BPQ<>xY$`2lV#(zY66oFD`m1yABVH%IA^&obD1dt3Z0mRzZi#5wH z5?_k7i!U~}IX&^DO{yhct2w@*P;kj-%D$U3@0F*_8>4&lOVu3tP=!*&>Z zbj?zZxARLqRH?3(ioisbsn6DrSQJ8^>LtKw9sC<}P{c*DVT?LZ&|vyhXYA8~SqMrr zK*$B$Y#JV}Pxn2ISi<>CG{7}pvw#bh^s-3s$=hQ8HJ^AuV+@~`CixV#Gcadh&cK|3 d`G2?n4gk{6qGtTx4?F+>002ovPDHLkV1l;rn*9I( literal 0 HcmV?d00001 diff --git a/src/mi_note/app/src/main/res/drawable-hdpi/title_alert.png b/src/mi_note/app/src/main/res/drawable-hdpi/title_alert.png new file mode 100644 index 0000000000000000000000000000000000000000..544ee9ca6c956b580dce42e5bc1bf3192b64face GIT binary patch literal 3696 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 literal 0 HcmV?d00001 diff --git a/src/mi_note/app/src/main/res/drawable-hdpi/widget_2x_blue.png b/src/mi_note/app/src/main/res/drawable-hdpi/widget_2x_blue.png new file mode 100644 index 0000000000000000000000000000000000000000..a1707f4232b0715116a668fe3792d376ba2a1fe6 GIT binary patch literal 1946 zcmeIz>pv5U9|!QsWz}&fx8=B;D23Issr@9fxsIb!b3Z0claX8&5+i0|tmWj|Tu!Fk zj%$7{A(wG7j>}9$Ih;)<_v_|z>g7E7{SUtf@9+2Z`aJkN_&)iP9UZKsj;b96002@p z)`)B0_V{;)CBDs>xEV750En?cm^(f2oF8xVQ@E-aGZoCRId@82S-WAr=%z*+V?)(_ z8{jIGG;Hw4(JoGA)+CsJoKUsfGQA-7RNr=r*Q*ZE*=T^5EZ6GfRaC2czQ5%Kp7S>Z z8yec_F$Nsbwq%H<`(K*V+nIY&R`2$sT%zcW51wUiqB$J2T#y?tV7-0-76{YmfBR6l z2h9>OZ4rj-@i(lT#u;|Z^^)~*TJfVvglH>?BWHnz)~)~Pq8zCMaTQ&;hxj7BSj&>i z2xGItVd9XzCkE%U4i$NXRvykvLf!;9<0l@TglX@#ccNudV@X!$xuOpE68Oo` zk@2Sg7*K;ADM+8F}D|7l#y2JW7eR z_d)V?9&ZI2Z}d40)Q&e#WZ9NfDjgyF+tK+Y6@FOPOS|~gWTjl~nU{Y9f<0s6r|~sn z-YHrzkP8aD6~s&L%O;ra%*L?@i*KuMC``EpehRmUfah+oJXk$;2G4g| z_;zt;Z6~jM?i^sLb0~?){MkW6TYGUgBswtSV)M>I_9BTMz0uh%c+&Zck{IM<5?@;V zERtAcpjLpwZcYG6wfwu_j5|&~sJW$5vQ$t(m+JIu8eFETz8DR1 zfnmt#+2<+ruk>tDtzDE85-*uLL>p?+o$mRfFVeok>$ggk2A8R}a*% zkM^dX?=C;sQLM~s)`;GnE&;dvNF>puZm?E8EMOzOY!qXAA8pJ4NDsll*^a2K$%#$j zE^9A~)s}fI-YsK-LuhQ?OBhZLO1Q231{jyUp}3%5)1floG;-#BnB4>E+aL7mJSXQe zc@I&#wD*NmOEdHh`f)mnl3?WvXzhO;85Lp#2c=l@ey!qMN{}J>wrCvBadx-{G`kNS z+sE&3O}^QD;oPj0s5k0(`(ik&x29p`zZK__B%U_Hf2bIBtp2pxiPQPWm$R1ra-BTs zuafV$gk5PKi;uaHf1`%W0bB2rVs7UM-7$uuguE%mHjAZMe@;p>&Jq1&Sv1#wz zj6qSPT{+M~K}}bRr^9Zd&j`YdOt?Z}ICh%2^jkgAK2yFa$=|m$Gj0*?X(7-tY$cSlwg|qrc zG;-Fy;!|i@!So-=bFDp>E~nmHk%&;RSi5&;_-f{>MC(td!o*&=gBxHJQeQ1~ zC62X!xAjys|_Tsfj?a+wunHJX->@AX)Zq(^~WV+x+(-?!; zw@zp@)q-%c#CSTrZQSkSO~2W!hUQvWil+0`u;o6}@rwNi#(0y5 literal 0 HcmV?d00001 diff --git a/src/mi_note/app/src/main/res/drawable-hdpi/widget_2x_green.png b/src/mi_note/app/src/main/res/drawable-hdpi/widget_2x_green.png new file mode 100644 index 0000000000000000000000000000000000000000..f86886c142f3650dbd9b06818fd3dd1b9c0696d5 GIT binary patch literal 1954 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 literal 0 HcmV?d00001 diff --git a/src/mi_note/app/src/main/res/drawable-hdpi/widget_2x_white.png b/src/mi_note/app/src/main/res/drawable-hdpi/widget_2x_white.png new file mode 100644 index 0000000000000000000000000000000000000000..5f0619a37a8e5ea3ddfaa84b3ef0f925e54ac887 GIT binary patch literal 1901 zcmeIz|34Fm9|!Qwv_uZO(>~eCmvZtw-woB$Y~*VZB}SVlM!sJ85*uRe40o;%GOmwG zWxj+@TRTLyw!W}cL(W>v*9y~UMvUvu{d9lB{qTIfACLDB?;l>jysrlMVKmkC)Bym1 zrk5w`_}3}=lN$JIPUKA>0f4RcUZ}%Cm$0*<$Mr(wcSMO@iV$~L>X&aN&i_rOd~=Xw zgk9J!75&KAWuid0swG6}QL^;mD&g091eK=oln|Dm(*Y5%DUCmF=S%9m*XH_JX?Xkp z)Pm%rrmwv@rqRYyfwHSBXCfs+AP=>&F}=N(rB`r=>^zVzt)ntBnXAjoa#6Y9)%N>2 zYo8^&51B#JhcLW8QQvCe-GVdPNYG2g<)ZL`AxC@+0(*PkE4_fJo5?j1apkc4vt}a; z3F^O`v>`>-6`8*b@zdS;Lap~Lr(UQ0C~-O#;} zZKS@zR>w%`$8{&z!#1Fl@YiPjO=x#39Zsk1d5o}auF+dwd~X>CVltZeN2>c+ZWl^; z_*q3J&>n#IFJFk8ojIG_pt9VB2epuf0DnUgh(ntU9Fc@g+AsshO=L}N*d`8`thosX z;(#}`0CAwd{Cn;n-M#b`9G|}E8r%lM=;XI&E@80vm^lZus^r%^9mEaKw?+$qFoaBv zR(eT4!42R(#yNuI7^>z%e8@e~-@13i%@4QRg$FhM_V(tAeXJ-GNntkl%TJt8q|)yk zRGjm@BeX%;7gi{+G|qDeYs6j47EV=>#S5YaErlCO52JAmF$@bwK}Gc|`qB@pOO1kq z8>usVamj@pj}rC8kL3R=I{%<*rm9oAii+wq5zRHtFXH0ag9L|mI-M>$Ygm6Taez`A zKymjlv~J-T1?cpvqdg4A`+q4{z1ivFir9VV_3$}ox8B99-ZU52>PIda2Qs)RADCN9 zcJu32KEEqbtd3+U=ZI+@wblj9S}5A&Mtr&}-`<$_f)N$7)4K9h6+*%-ZL2d(#}wS+ zCibxWsMcLy#)ux*uAWpVE;1P->6wA3>kh3`@80o?6Q2wZpN9Xg^#RKFsd^KKzzUIG)(&J%DDv>Kd0tefM$i`s9n88o%H7MoU&cq&g~R zo(WBQj1{Bn>_gmf*}as?4SD%UMAn8_3xs_zs@vgYCwOaTVw-MQZDNFr(4JiEaEf^i zxBc&bjBFoQ*tGbxCbA!JwnpV9H$2LXzBk2j6;`B-U3W;ZLhoYd>dvbg`Pelhz~`}C z*CPx!{^ewaUo&&yv}7nl$M`4V%*tq9UP3dI1=#{qN~QcSR4H{Sy@|WDbkQlaF&Jb{ z{()XC&YBl%ru4*bnH2c_>?DKN;#Wyh9%*b81@N(;nw@W4mmUOo5J>F6U2P9N&^i*;)CX2i-FN3$i`A;$P z(|B)Icca#b*|gC%9;8F?EZ`I>ok&3~+FdOT0S{&I50>RFAp$t|0E-p@}Pm{sEA_VKHS86 zc|$yMBEg;z{=OnPM~iwtRh3OsYPJlQ56@0>&SKg? z->}_gHK?U{A>CkqF&07Av7+^VId31UPxK{t|0p^tCRIFFIqIZ7&}?3idsi2_+eIBi zvQamUk9ud(R{m7v(occRG!TJ!UEanfk~yT8ngz*KAbo7eew=m1B(NK+wvDqTEqKquS=N z(~;R%jn`v-!qc#YKOZ!#pQPUBK%h{XuY4niHdo?ZR(po<^^F3&Jp52i?vc5F00d`# ATL1t6 literal 0 HcmV?d00001 diff --git a/src/mi_note/app/src/main/res/drawable-hdpi/widget_2x_yellow.png b/src/mi_note/app/src/main/res/drawable-hdpi/widget_2x_yellow.png new file mode 100644 index 0000000000000000000000000000000000000000..12d1c2ba7b40158b5115b7bbc6ce8b6d07b67893 GIT binary patch literal 1978 zcmeIz**n{b8VB%SL{e*IP+QU^s+^X=DNT!7Y71JiCAAePN+%)cRJ6n#%R$uEmX<-w zFmq6nP@+|Wl%j}GQd?swrNmOT6(@2!<2g6yZ#Wm9_kEu4#rNX9c~hM+Xjv&WDF6Uu z?d_~xzwhxsNkG5P*~D2305}wHZ+!`S$9HM`?_q-$Dsj`RbbI6x{Ui5PJfA%u^y}<0 z53sr-gB8kFBl90>n)Ovw9#)bzE+~&aws8Alt@Q)nSTk)*gw`-qWs4j~r-!zbA*;(G zX?@(jJ~xNX0cXrN94+0mC{*?$@m~j#AMw+ZF@djZ_E}Gp_>h>Or z2~B&Ix#≥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 Sc&UT$0l?JA(y;10D(YW+)3Aa7 literal 0 HcmV?d00001 diff --git a/src/mi_note/app/src/main/res/drawable-hdpi/widget_4x_green.png b/src/mi_note/app/src/main/res/drawable-hdpi/widget_4x_green.png new file mode 100644 index 0000000000000000000000000000000000000000..fa8b4526faa77582794ac18bca85e8b5d7ebf512 GIT binary patch literal 4192 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 literal 0 HcmV?d00001 diff --git a/src/mi_note/app/src/main/res/drawable-hdpi/widget_4x_yellow.png b/src/mi_note/app/src/main/res/drawable-hdpi/widget_4x_yellow.png new file mode 100644 index 0000000000000000000000000000000000000000..d7c5fa48dfa1fa767ce494df9555e59565b251f9 GIT binary patch literal 4199 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 literal 0 HcmV?d00001 diff --git a/src/mi_note/app/src/main/res/drawable/anqila.png b/src/mi_note/app/src/main/res/drawable/anqila.png new file mode 100644 index 0000000000000000000000000000000000000000..da59a4957f8f4f6bb69f857581512e965ddfc963 GIT binary patch literal 374209 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%0D(X|p^BgP7u$anHjMaKH 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 z z?oM(}PJ8ls`jgz^xqGcY%qQdo`t1j)^*^cnN2PZRicida`X2t^(|*ks?ZknOIUIE9 z*VCH!(y~jkOYT-bFs*>8QmpD!sVPcxl$@mByxg06%J%Z>{AyIR%dc8OL#qU~|v^09w6DSW^cWILJH^-x%rNvFt$NsI&?Q;~<>m4*dsX z'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

{kSL7qd);T$XsCXIIq+Acj+_1 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%0A5}s(kWoDQLM}{vR2gU}()M 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

_P(2{ zS;uQ)(iJ&)Z_ye^#`erxmPS8&%o}<6Q^nsBJR9ImV&g!#(tO+XwXnNujWfh2R?^HD z)^T3jtaql>b8xXv1;hd{(KgUn@s4uK;_rcVA{I!sxEe!%tEJuE#go($B)1H|L_bdT z*M+T^;A+OM8xvZbp(x7Aq}H)_>b>6AO6un&T(>I3#i(-9ZMV$`sI}SNE<0b((De@) z{=%OO{9~i*9whyq{vz8AROry@ejE5(b1kG^8MC>xyZc7xZ-GuAyXt^;1E+F5~Y8L zHajUbG@roh8|kYx?v;j(ANPo+OciBT%7Wu*$N;emo<(kW+rt|7f_zVD;r{>|>pE|V zJTu}I`+tBwCRjbXTHfiGGfj7MqORVgoeRNP&!rMayyi6oqKddBWOCyIO}7mfZB>V6=S zIQ1Lf4RIW}QE(+L15+s!^%BUu__ zvne2AHh@SO=I#6$9)YcRs&5u0yFY|AZC=Vp+ZjgG^k-;TDaH(JQy>Aff(|Rt{{Uva zba;>B_rO08K)@&V<)XC6Pd;vcIQ-Ki;M`VioJS}2-&e1P#8g>}oep?laFnVzyhCoS zDAxBC+&QUVq>?$OH5&EkrkbT1ZAm*hI+2rV*LLNyTesK9`Oi`D9rwl0h+8d7-){jN7|$%en(J1w?GEzb0ON1p^^)Wuk8kwd0Xv9 z<=S@MOoB#`@7#Cp$vMa^k~pus@e_<`VX=8`L&5d&SUk5O!qmaerV_HIvDk}HRcclC zbla=TDor`cPV%WzF|-s>o*Iox@~L`~g`9VcpEom>-t=shy!ZR$y=bO~QJy9-S?>#J z>oH!1RC)qQ>4HGP!OqXauMS)4I>@`!fP+hlJlxDq)Nn9JmO=)?MtXGPuo&m9AZb)OJrt}XA8nUihDv7>SOtwTs&3XX+m{z92&Z?Ef$ z$3pRkhOQa)0!qHSZu^T4Ko2u@Cj%KLBNgIGtm73KN~B|JD86XM-4a$y@I5M7P6;d0 zglager=;xC(b+b-ZPw4RvvYT8WpDkP;r$NQIHLhfHvuhRVu12DgK;k$p^heu^e!?p z{N(AntG2nXnJ^i(eOq#dB~gy1#Hx}$>YRbV;Ae{dfqX&zzu~PnTRPnOJfy_&<}FQF z6~h1*1E)C{$m9`_Ghc+?82mNi&j9>W@n(hL$RW3|hVm)QR@#`!hX3xp`N+E^R+B z@iJ3}7cG?K2|O(EafKMujVU!zVN*|*?O8!u@qKnQ>~F}CaMJr@yfu6` zrcOu8-1flj^%)$Cl_YnH}*zIu*>rvoR9^!DvvsvijM6|Jqe z9tw`XLyyY?JfFnZ+2nJL*3wpYS6Za**3Wy}`my)f6y4I*rjy<6+weYT{jFf|zJu`_ z!J7VzrF>(rY0{4xGJ;j1(;Qgo5=nuzS?!!hA40?(q@0R_!xR0bA(S27Y9o&0ByRN` zGmmmQcCV{HX`L%Xx%emITll>k}bD&3vQad_DAd7 zF_^z)UkswB?57tNswHJt+Iy}lF5Ipgx2x!^eL3Mvg)11z2kxAcoP)vqK;!FPzXy$U z9}7vNuDPmN>94Ko_L?S@_Q}KvcdFjAEv=$CLIccIfH>{nBD_PwtX0<|jmm$ndT0FR zz8?L$KWA@_zZ<+y;Js(zuC=6TUKsFpiE}QqKDpwkyeVg=>X*0DwYH?UcOl@ONa2hj zj7GB|2xEVkfmviQ*sRA5fUSx8x7K~5g+)u-+0s#Mdo@y>+_{y#^?hx79-e2IJS-pX zU4LsAch2MN`BK%tXFd7)^87t|e_wyI{bf!Ui?7RZH3meKZtJSYmp=B z*DZ3^R`<dOEjkmT5+b;B{r?j{pEgJK3lk6*L$sWx%q4{ z5QhK0nf zs^8fzkEqKGG8qCa>Jw`N9EeK{AE$1$i+^_@5njNnxW(Zk(qXyDMHl3X8J5B%6HSFEr1z;wp2-WtjX88GAaI z%pM|?D(d~5rO71uQ;U|`u4ubE-1>zfTRrhxptp=2n_?bXm0!9DTy7W{8PC5pR!q4r z;W#o+MuaEU0#+^ZWWI987@w2eoj=1)}GUh9pNRieLwGwiQ0%5!XX3p9+L zBAnc#QfbAM@#^&jJ3K^>Q({Ev-kChV=N{KOov�DAgl=Exb8p3rJ|+hXWIID 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 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/mi_note/app/src/main/res/drawable/ic_launcher_foreground.xml b/src/mi_note/app/src/main/res/drawable/ic_launcher_foreground.xml new file mode 100644 index 0000000..2b068d1 --- /dev/null +++ b/src/mi_note/app/src/main/res/drawable/ic_launcher_foreground.xml @@ -0,0 +1,30 @@ + + + + + + + + + + + \ No newline at end of file diff --git a/src/mi_note/app/src/main/res/drawable/new_note.xml b/src/mi_note/app/src/main/res/drawable/new_note.xml new file mode 100644 index 0000000..2154ebc --- /dev/null +++ b/src/mi_note/app/src/main/res/drawable/new_note.xml @@ -0,0 +1,23 @@ + + + + + + + + diff --git a/src/mi_note/app/src/main/res/drawable/yao.png b/src/mi_note/app/src/main/res/drawable/yao.png new file mode 100644 index 0000000000000000000000000000000000000000..a12c39e0cec1e3ee696f8695a16405770d7495f4 GIT binary patch literal 70395 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Î=SZ#P_lr3;D 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 + + + + + + + + + + \ No newline at end of file diff --git a/src/mi_note/app/src/main/res/layout/activity_main.xml b/src/mi_note/app/src/main/res/layout/activity_main.xml new file mode 100644 index 0000000..86a5d97 --- /dev/null +++ b/src/mi_note/app/src/main/res/layout/activity_main.xml @@ -0,0 +1,19 @@ + + + + + + \ No newline at end of file diff --git a/src/mi_note/app/src/main/res/layout/add_account_text.xml b/src/mi_note/app/src/main/res/layout/add_account_text.xml new file mode 100644 index 0000000..c799178 --- /dev/null +++ b/src/mi_note/app/src/main/res/layout/add_account_text.xml @@ -0,0 +1,32 @@ + + + + + + + + \ No newline at end of file diff --git a/src/mi_note/app/src/main/res/layout/datetime_picker.xml b/src/mi_note/app/src/main/res/layout/datetime_picker.xml new file mode 100644 index 0000000..f10d592 --- /dev/null +++ b/src/mi_note/app/src/main/res/layout/datetime_picker.xml @@ -0,0 +1,56 @@ + + + + + + + + + + + + \ No newline at end of file diff --git a/src/mi_note/app/src/main/res/layout/dialog_edit_text.xml b/src/mi_note/app/src/main/res/layout/dialog_edit_text.xml new file mode 100644 index 0000000..361b39a --- /dev/null +++ b/src/mi_note/app/src/main/res/layout/dialog_edit_text.xml @@ -0,0 +1,23 @@ + + + + + \ No newline at end of file diff --git a/src/mi_note/app/src/main/res/layout/folder_list_item.xml b/src/mi_note/app/src/main/res/layout/folder_list_item.xml new file mode 100644 index 0000000..77e8148 --- /dev/null +++ b/src/mi_note/app/src/main/res/layout/folder_list_item.xml @@ -0,0 +1,29 @@ + + + + + + + + \ No newline at end of file diff --git a/src/mi_note/app/src/main/res/layout/note_edit.xml b/src/mi_note/app/src/main/res/layout/note_edit.xml new file mode 100644 index 0000000..94c5a1b --- /dev/null +++ b/src/mi_note/app/src/main/res/layout/note_edit.xml @@ -0,0 +1,405 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/mi_note/app/src/main/res/layout/note_edit_list_item.xml b/src/mi_note/app/src/main/res/layout/note_edit_list_item.xml new file mode 100644 index 0000000..a885f9c --- /dev/null +++ b/src/mi_note/app/src/main/res/layout/note_edit_list_item.xml @@ -0,0 +1,39 @@ + + + + + + + + + + diff --git a/src/mi_note/app/src/main/res/layout/note_item.xml b/src/mi_note/app/src/main/res/layout/note_item.xml new file mode 100644 index 0000000..d541f6a --- /dev/null +++ b/src/mi_note/app/src/main/res/layout/note_item.xml @@ -0,0 +1,78 @@ + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/mi_note/app/src/main/res/layout/note_list.xml b/src/mi_note/app/src/main/res/layout/note_list.xml new file mode 100644 index 0000000..e59734c --- /dev/null +++ b/src/mi_note/app/src/main/res/layout/note_list.xml @@ -0,0 +1,58 @@ + + + + + + + + + + + + + + +