├── .gitignore ├── AndroidStudioSplitRes ├── .gitignore ├── app │ ├── .gitignore │ ├── build.gradle │ ├── proguard-rules.pro │ └── src │ │ ├── androidTest │ │ └── java │ │ │ └── com │ │ │ └── example │ │ │ └── androidstudiosplitres │ │ │ └── ExampleInstrumentedTest.kt │ │ ├── main │ │ ├── AndroidManifest.xml │ │ ├── java │ │ │ └── com │ │ │ │ └── example │ │ │ │ └── androidstudiosplitres │ │ │ │ └── MainActivity.kt │ │ └── res │ │ │ ├── drawable-v24 │ │ │ └── ic_launcher_foreground.xml │ │ │ ├── drawable │ │ │ └── ic_launcher_background.xml │ │ │ ├── layout │ │ │ └── activity_main.xml │ │ │ ├── mipmap-anydpi-v26 │ │ │ ├── ic_launcher.xml │ │ │ └── ic_launcher_round.xml │ │ │ ├── mipmap-hdpi │ │ │ ├── ic_launcher.png │ │ │ └── ic_launcher_round.png │ │ │ ├── mipmap-mdpi │ │ │ ├── ic_launcher.png │ │ │ └── ic_launcher_round.png │ │ │ ├── mipmap-xhdpi │ │ │ ├── ic_launcher.png │ │ │ └── ic_launcher_round.png │ │ │ ├── mipmap-xxhdpi │ │ │ ├── ic_launcher.png │ │ │ └── ic_launcher_round.png │ │ │ ├── mipmap-xxxhdpi │ │ │ ├── ic_launcher.png │ │ │ └── ic_launcher_round.png │ │ │ ├── values-night │ │ │ └── themes.xml │ │ │ └── values │ │ │ ├── colors.xml │ │ │ ├── strings.xml │ │ │ └── themes.xml │ │ └── test │ │ └── java │ │ └── com │ │ └── example │ │ └── androidstudiosplitres │ │ └── ExampleUnitTest.kt ├── approach1 │ ├── .gitignore │ ├── build.gradle │ ├── proguard-rules.pro │ └── src │ │ ├── androidTest │ │ └── java │ │ │ └── com │ │ │ └── example │ │ │ └── approach2 │ │ │ └── ExampleInstrumentedTest.kt │ │ ├── main │ │ ├── AndroidManifest.xml │ │ ├── java │ │ │ └── com │ │ │ │ └── example │ │ │ │ └── approach2 │ │ │ │ ├── MainActivity.kt │ │ │ │ └── ui │ │ │ │ ├── Test.java │ │ │ │ ├── home │ │ │ │ └── Home.kt │ │ │ │ ├── hot │ │ │ │ └── Hot.kt │ │ │ │ ├── ringtone │ │ │ │ └── Ringtone.kt │ │ │ │ ├── search │ │ │ │ └── Search.kt │ │ │ │ ├── settings │ │ │ │ └── Settings.kt │ │ │ │ ├── video │ │ │ │ └── Video.kt │ │ │ │ └── videoedit │ │ │ │ └── VideoEdit.kt │ │ ├── res │ │ │ ├── drawable-v24 │ │ │ │ └── ic_launcher_foreground.xml │ │ │ ├── drawable │ │ │ │ └── ic_launcher_background.xml │ │ │ ├── layout │ │ │ │ └── activity_main.xml │ │ │ ├── mipmap-anydpi-v26 │ │ │ │ ├── ic_launcher.xml │ │ │ │ └── ic_launcher_round.xml │ │ │ ├── mipmap-hdpi │ │ │ │ ├── ic_launcher.png │ │ │ │ └── ic_launcher_round.png │ │ │ ├── mipmap-mdpi │ │ │ │ ├── ic_launcher.png │ │ │ │ └── ic_launcher_round.png │ │ │ ├── mipmap-xhdpi │ │ │ │ ├── ic_launcher.png │ │ │ │ └── ic_launcher_round.png │ │ │ ├── mipmap-xxhdpi │ │ │ │ ├── ic_launcher.png │ │ │ │ └── ic_launcher_round.png │ │ │ ├── mipmap-xxxhdpi │ │ │ │ ├── ic_launcher.png │ │ │ │ └── ic_launcher_round.png │ │ │ ├── values-night │ │ │ │ └── themes.xml │ │ │ └── values │ │ │ │ ├── colors.xml │ │ │ │ ├── strings.xml │ │ │ │ └── themes.xml │ │ ├── res_home │ │ │ ├── drawable │ │ │ │ └── ic_android_black_24dp.xml │ │ │ └── values │ │ │ │ └── strings.xml │ │ ├── res_hot │ │ │ ├── drawable │ │ │ │ └── ic_baseline_access_alarm_24.xml │ │ │ └── values │ │ │ │ └── strings.xml │ │ ├── res_ringtone │ │ │ ├── drawable │ │ │ │ └── ic_baseline_assignment_ind_24.xml │ │ │ └── values │ │ │ │ └── strings.xml │ │ ├── res_search │ │ │ ├── drawable │ │ │ │ └── ic_baseline_alarm_on_24.xml │ │ │ └── values │ │ │ │ └── strings.xml │ │ ├── res_settings │ │ │ ├── drawable │ │ │ │ └── ic_baseline_add_shopping_cart_24.xml │ │ │ └── values │ │ │ │ └── strings.xml │ │ ├── res_video │ │ │ ├── drawable │ │ │ │ └── ic_baseline_add_circle_24.xml │ │ │ └── values │ │ │ │ └── strings.xml │ │ └── res_videoedit │ │ │ ├── drawable │ │ │ └── ic_baseline_adb_24.xml │ │ │ └── values │ │ │ └── strings.xml │ │ └── test │ │ └── java │ │ └── com │ │ └── example │ │ └── approach2 │ │ └── ExampleUnitTest.kt ├── approach2 │ ├── .gitignore │ ├── build.gradle │ ├── proguard-rules.pro │ └── src │ │ ├── androidTest │ │ └── java │ │ │ └── com │ │ │ └── example │ │ │ └── approach2 │ │ │ └── ExampleInstrumentedTest.kt │ │ ├── main │ │ ├── AndroidManifest.xml │ │ ├── java │ │ │ └── com │ │ │ │ └── example │ │ │ │ └── approach2 │ │ │ │ ├── MainActivity.kt │ │ │ │ └── ui │ │ │ │ ├── Test.java │ │ │ │ ├── home │ │ │ │ ├── Home.kt │ │ │ │ └── res │ │ │ │ │ ├── drawable │ │ │ │ │ └── ic_android_black_24dp.xml │ │ │ │ │ └── values │ │ │ │ │ └── strings.xml │ │ │ │ ├── hot │ │ │ │ ├── Hot.kt │ │ │ │ └── res │ │ │ │ │ ├── drawable │ │ │ │ │ └── ic_baseline_access_alarm_24.xml │ │ │ │ │ └── values │ │ │ │ │ └── strings.xml │ │ │ │ ├── ringtone │ │ │ │ ├── Ringtone.kt │ │ │ │ └── res │ │ │ │ │ ├── drawable │ │ │ │ │ └── ic_baseline_assignment_ind_24.xml │ │ │ │ │ └── values │ │ │ │ │ └── strings.xml │ │ │ │ ├── search │ │ │ │ ├── Search.kt │ │ │ │ └── res │ │ │ │ │ ├── drawable │ │ │ │ │ └── ic_baseline_alarm_on_24.xml │ │ │ │ │ └── values │ │ │ │ │ └── strings.xml │ │ │ │ ├── settings │ │ │ │ ├── Settings.kt │ │ │ │ └── res │ │ │ │ │ ├── drawable │ │ │ │ │ └── ic_baseline_add_shopping_cart_24.xml │ │ │ │ │ └── values │ │ │ │ │ └── strings.xml │ │ │ │ ├── video │ │ │ │ ├── Video.kt │ │ │ │ └── res │ │ │ │ │ ├── drawable │ │ │ │ │ └── ic_baseline_add_circle_24.xml │ │ │ │ │ └── values │ │ │ │ │ └── strings.xml │ │ │ │ └── videoedit │ │ │ │ ├── VideoEdit.kt │ │ │ │ └── res │ │ │ │ ├── drawable │ │ │ │ └── ic_baseline_adb_24.xml │ │ │ │ └── values │ │ │ │ └── strings.xml │ │ └── res │ │ │ ├── drawable-v24 │ │ │ └── ic_launcher_foreground.xml │ │ │ ├── drawable │ │ │ └── ic_launcher_background.xml │ │ │ ├── layout │ │ │ └── activity_main.xml │ │ │ ├── mipmap-anydpi-v26 │ │ │ ├── ic_launcher.xml │ │ │ └── ic_launcher_round.xml │ │ │ ├── mipmap-hdpi │ │ │ ├── ic_launcher.png │ │ │ └── ic_launcher_round.png │ │ │ ├── mipmap-mdpi │ │ │ ├── ic_launcher.png │ │ │ └── ic_launcher_round.png │ │ │ ├── mipmap-xhdpi │ │ │ ├── ic_launcher.png │ │ │ └── ic_launcher_round.png │ │ │ ├── mipmap-xxhdpi │ │ │ ├── ic_launcher.png │ │ │ └── ic_launcher_round.png │ │ │ ├── mipmap-xxxhdpi │ │ │ ├── ic_launcher.png │ │ │ └── ic_launcher_round.png │ │ │ ├── values-night │ │ │ └── themes.xml │ │ │ └── values │ │ │ ├── colors.xml │ │ │ ├── strings.xml │ │ │ └── themes.xml │ │ └── test │ │ └── java │ │ └── com │ │ └── example │ │ └── approach2 │ │ └── ExampleUnitTest.kt ├── build.gradle ├── gradle.properties ├── gradle │ └── wrapper │ │ ├── gradle-wrapper.jar │ │ └── gradle-wrapper.properties ├── gradlew ├── gradlew.bat └── settings.gradle ├── AnnotationStudy ├── .gitignore ├── app │ ├── .gitignore │ ├── build.gradle │ ├── proguard-rules.pro │ └── src │ │ ├── androidTest │ │ └── java │ │ │ └── com │ │ │ └── example │ │ │ └── annotationstudy │ │ │ └── ExampleInstrumentedTest.java │ │ ├── main │ │ ├── AndroidManifest.xml │ │ ├── java │ │ │ └── com │ │ │ │ └── example │ │ │ │ └── annotationstudy │ │ │ │ ├── BindView.java │ │ │ │ ├── BindViewUtils.java │ │ │ │ ├── DeprecatedTracker.java │ │ │ │ ├── MainActivity.java │ │ │ │ ├── MusicItem.java │ │ │ │ ├── MusicItemTest.java │ │ │ │ ├── MyRunnable.java │ │ │ │ ├── Person.java │ │ │ │ ├── PersonFactory.java │ │ │ │ ├── Test.java │ │ │ │ └── VideoItem.java │ │ └── res │ │ │ ├── drawable-v24 │ │ │ └── ic_launcher_foreground.xml │ │ │ ├── drawable │ │ │ └── ic_launcher_background.xml │ │ │ ├── layout │ │ │ └── activity_main.xml │ │ │ ├── mipmap-anydpi-v26 │ │ │ ├── ic_launcher.xml │ │ │ └── ic_launcher_round.xml │ │ │ ├── mipmap-hdpi │ │ │ ├── ic_launcher.png │ │ │ └── ic_launcher_round.png │ │ │ ├── mipmap-mdpi │ │ │ ├── ic_launcher.png │ │ │ └── ic_launcher_round.png │ │ │ ├── mipmap-xhdpi │ │ │ ├── ic_launcher.png │ │ │ └── ic_launcher_round.png │ │ │ ├── mipmap-xxhdpi │ │ │ ├── ic_launcher.png │ │ │ └── ic_launcher_round.png │ │ │ ├── mipmap-xxxhdpi │ │ │ ├── ic_launcher.png │ │ │ └── ic_launcher_round.png │ │ │ ├── values-night │ │ │ └── themes.xml │ │ │ └── values │ │ │ ├── colors.xml │ │ │ ├── strings.xml │ │ │ └── themes.xml │ │ └── test │ │ └── java │ │ └── com │ │ └── example │ │ └── annotationstudy │ │ └── ExampleUnitTest.java ├── bindview-annotations │ ├── .gitignore │ ├── build.gradle │ └── src │ │ └── main │ │ └── java │ │ └── com │ │ └── example │ │ └── bindview_annotations │ │ └── BindView.java ├── bindview-api │ ├── .gitignore │ ├── build.gradle │ ├── consumer-rules.pro │ ├── proguard-rules.pro │ └── src │ │ ├── androidTest │ │ └── java │ │ │ └── com │ │ │ └── example │ │ │ └── bindview_api │ │ │ └── ExampleInstrumentedTest.java │ │ ├── main │ │ ├── AndroidManifest.xml │ │ └── java │ │ │ └── com │ │ │ └── example │ │ │ └── bindview_api │ │ │ ├── BindViewInterface.java │ │ │ └── BindViewManager.java │ │ └── test │ │ └── java │ │ └── com │ │ └── example │ │ └── bindview_api │ │ └── ExampleUnitTest.java ├── bindview-compiler │ ├── .gitignore │ ├── build.gradle │ └── src │ │ └── main │ │ └── java │ │ └── com │ │ └── example │ │ └── bindview_compiler │ │ ├── BindViewFactory.java │ │ ├── BindViewProcessor.java │ │ └── ProcessorConstants.java ├── bindview │ ├── .gitignore │ ├── build.gradle │ ├── proguard-rules.pro │ └── src │ │ ├── androidTest │ │ └── java │ │ │ └── com │ │ │ └── example │ │ │ └── bindview │ │ │ └── ExampleInstrumentedTest.java │ │ ├── main │ │ ├── AndroidManifest.xml │ │ ├── java │ │ │ └── com │ │ │ │ └── example │ │ │ │ └── bindview │ │ │ │ ├── MainActivity.java │ │ │ │ └── SecondActivity.java │ │ └── res │ │ │ ├── drawable-v24 │ │ │ └── ic_launcher_foreground.xml │ │ │ ├── drawable │ │ │ └── ic_launcher_background.xml │ │ │ ├── layout │ │ │ ├── activity_main.xml │ │ │ └── activity_second.xml │ │ │ ├── mipmap-anydpi-v26 │ │ │ ├── ic_launcher.xml │ │ │ └── ic_launcher_round.xml │ │ │ ├── mipmap-hdpi │ │ │ ├── ic_launcher.png │ │ │ └── ic_launcher_round.png │ │ │ ├── mipmap-mdpi │ │ │ ├── ic_launcher.png │ │ │ └── ic_launcher_round.png │ │ │ ├── mipmap-xhdpi │ │ │ ├── ic_launcher.png │ │ │ └── ic_launcher_round.png │ │ │ ├── mipmap-xxhdpi │ │ │ ├── ic_launcher.png │ │ │ └── ic_launcher_round.png │ │ │ ├── mipmap-xxxhdpi │ │ │ ├── ic_launcher.png │ │ │ └── ic_launcher_round.png │ │ │ ├── values-night │ │ │ └── themes.xml │ │ │ └── values │ │ │ ├── colors.xml │ │ │ ├── strings.xml │ │ │ └── themes.xml │ │ └── test │ │ └── java │ │ └── com │ │ └── example │ │ └── bindview │ │ └── ExampleUnitTest.java ├── build.gradle ├── gradle.properties ├── gradle │ └── wrapper │ │ ├── gradle-wrapper.jar │ │ └── gradle-wrapper.properties ├── gradlew ├── gradlew.bat └── settings.gradle ├── CheckThreadStudy ├── .gitignore ├── README.md ├── app │ ├── .gitignore │ ├── build.gradle │ ├── proguard-rules.pro │ └── src │ │ ├── androidTest │ │ └── java │ │ │ └── com │ │ │ └── example │ │ │ └── checkthreadstudy │ │ │ └── ExampleInstrumentedTest.kt │ │ ├── main │ │ ├── AndroidManifest.xml │ │ ├── java │ │ │ └── com │ │ │ │ └── example │ │ │ │ └── checkthreadstudy │ │ │ │ └── MainActivity.kt │ │ └── res │ │ │ ├── drawable-v24 │ │ │ └── ic_launcher_foreground.xml │ │ │ ├── drawable │ │ │ └── ic_launcher_background.xml │ │ │ ├── layout │ │ │ └── activity_main.xml │ │ │ ├── mipmap-anydpi-v26 │ │ │ ├── ic_launcher.xml │ │ │ └── ic_launcher_round.xml │ │ │ ├── mipmap-hdpi │ │ │ ├── ic_launcher.webp │ │ │ └── ic_launcher_round.webp │ │ │ ├── mipmap-mdpi │ │ │ ├── ic_launcher.webp │ │ │ └── ic_launcher_round.webp │ │ │ ├── mipmap-xhdpi │ │ │ ├── ic_launcher.webp │ │ │ └── ic_launcher_round.webp │ │ │ ├── mipmap-xxhdpi │ │ │ ├── ic_launcher.webp │ │ │ └── ic_launcher_round.webp │ │ │ ├── mipmap-xxxhdpi │ │ │ ├── ic_launcher.webp │ │ │ └── ic_launcher_round.webp │ │ │ ├── values-night │ │ │ └── themes.xml │ │ │ ├── values │ │ │ ├── colors.xml │ │ │ ├── strings.xml │ │ │ └── themes.xml │ │ │ └── xml │ │ │ ├── backup_rules.xml │ │ │ └── data_extraction_rules.xml │ │ └── test │ │ └── java │ │ └── com │ │ └── example │ │ └── checkthreadstudy │ │ └── ExampleUnitTest.kt ├── build.gradle ├── gradle.properties ├── gradle │ └── wrapper │ │ ├── gradle-wrapper.jar │ │ └── gradle-wrapper.properties ├── gradlew ├── gradlew.bat └── settings.gradle ├── CustomAttributesStudy ├── .gitignore ├── app │ ├── .gitignore │ ├── build.gradle │ ├── proguard-rules.pro │ └── src │ │ ├── androidTest │ │ └── java │ │ │ └── com │ │ │ └── example │ │ │ └── customattributesstudy │ │ │ └── ExampleInstrumentedTest.kt │ │ ├── main │ │ ├── AndroidManifest.xml │ │ ├── java │ │ │ └── com │ │ │ │ └── example │ │ │ │ └── customattributesstudy │ │ │ │ ├── CustomAttributeView.kt │ │ │ │ ├── IntExtension.kt │ │ │ │ ├── MainActivity.kt │ │ │ │ ├── SimpleCustomAttributeView.kt │ │ │ │ └── StyleCustomAttributeView.kt │ │ └── res │ │ │ ├── drawable-v24 │ │ │ └── ic_launcher_foreground.xml │ │ │ ├── drawable │ │ │ └── ic_launcher_background.xml │ │ │ ├── layout │ │ │ └── activity_main.xml │ │ │ ├── mipmap-anydpi-v26 │ │ │ ├── ic_launcher.xml │ │ │ └── ic_launcher_round.xml │ │ │ ├── mipmap-hdpi │ │ │ ├── ic_launcher.webp │ │ │ └── ic_launcher_round.webp │ │ │ ├── mipmap-mdpi │ │ │ ├── ic_launcher.webp │ │ │ └── ic_launcher_round.webp │ │ │ ├── mipmap-xhdpi │ │ │ ├── ic_launcher.webp │ │ │ └── ic_launcher_round.webp │ │ │ ├── mipmap-xxhdpi │ │ │ ├── ic_launcher.webp │ │ │ └── ic_launcher_round.webp │ │ │ ├── mipmap-xxxhdpi │ │ │ ├── ic_launcher.webp │ │ │ └── ic_launcher_round.webp │ │ │ ├── values-night │ │ │ └── themes.xml │ │ │ ├── values │ │ │ ├── attrs.xml │ │ │ ├── bools.xml │ │ │ ├── colors.xml │ │ │ ├── dimens.xml │ │ │ ├── ids.xml │ │ │ ├── integers.xml │ │ │ ├── strings.xml │ │ │ ├── styles.xml │ │ │ └── themes.xml │ │ │ └── xml │ │ │ ├── backup_rules.xml │ │ │ └── data_extraction_rules.xml │ │ └── test │ │ └── java │ │ └── com │ │ └── example │ │ └── customattributesstudy │ │ └── ExampleUnitTest.kt ├── build.gradle ├── gradle.properties ├── gradle │ └── wrapper │ │ ├── gradle-wrapper.jar │ │ └── gradle-wrapper.properties ├── gradlew ├── gradlew.bat └── settings.gradle ├── EventBusStudy ├── .gitignore ├── app │ ├── .gitignore │ ├── build.gradle │ ├── proguard-rules.pro │ └── src │ │ └── main │ │ ├── AndroidManifest.xml │ │ ├── java │ │ └── com │ │ │ └── example │ │ │ └── eventbusstudy │ │ │ ├── App.kt │ │ │ ├── Event.kt │ │ │ ├── EventBus1.java │ │ │ ├── EventBus2.java │ │ │ ├── EventBus3.java │ │ │ ├── EventBusBuilderExtensions.kt │ │ │ ├── FirstFragment.kt │ │ │ ├── MainActivity.kt │ │ │ ├── MessageEvent.kt │ │ │ ├── SecondFragment.kt │ │ │ └── ThirdFragment.kt │ │ └── res │ │ ├── drawable-v24 │ │ └── ic_launcher_foreground.xml │ │ ├── drawable │ │ └── ic_launcher_background.xml │ │ ├── layout │ │ ├── first_fragment.xml │ │ ├── main_activity.xml │ │ ├── second_fragment.xml │ │ └── third_fragment.xml │ │ ├── mipmap-anydpi-v26 │ │ ├── ic_launcher.xml │ │ └── ic_launcher_round.xml │ │ ├── mipmap-hdpi │ │ ├── ic_launcher.png │ │ └── ic_launcher_round.png │ │ ├── mipmap-mdpi │ │ ├── ic_launcher.png │ │ └── ic_launcher_round.png │ │ ├── mipmap-xhdpi │ │ ├── ic_launcher.png │ │ └── ic_launcher_round.png │ │ ├── mipmap-xxhdpi │ │ ├── ic_launcher.png │ │ └── ic_launcher_round.png │ │ ├── mipmap-xxxhdpi │ │ ├── ic_launcher.png │ │ └── ic_launcher_round.png │ │ ├── values-night │ │ └── themes.xml │ │ └── values │ │ ├── colors.xml │ │ ├── strings.xml │ │ └── themes.xml ├── build.gradle ├── gradle.properties ├── gradle │ └── wrapper │ │ ├── gradle-wrapper.jar │ │ └── gradle-wrapper.properties ├── gradlew ├── gradlew.bat └── settings.gradle ├── FlowLayout ├── .gitignore ├── app │ ├── .gitignore │ ├── build.gradle │ ├── proguard-rules.pro │ └── src │ │ ├── androidTest │ │ └── java │ │ │ └── com │ │ │ └── example │ │ │ └── flowlayout │ │ │ └── ExampleInstrumentedTest.kt │ │ ├── main │ │ ├── AndroidManifest.xml │ │ ├── java │ │ │ └── com │ │ │ │ └── blog │ │ │ │ └── flowlayout │ │ │ │ ├── IntExtensions.kt │ │ │ │ └── MainActivity.kt │ │ └── res │ │ │ ├── drawable-v24 │ │ │ └── ic_launcher_foreground.xml │ │ │ ├── drawable │ │ │ ├── ic_launcher_background.xml │ │ │ └── shape_button_circular.xml │ │ │ ├── layout │ │ │ └── activity_main.xml │ │ │ ├── menu │ │ │ └── main_menu.xml │ │ │ ├── mipmap-anydpi-v26 │ │ │ ├── ic_launcher.xml │ │ │ └── ic_launcher_round.xml │ │ │ ├── mipmap-hdpi │ │ │ ├── ic_launcher.webp │ │ │ └── ic_launcher_round.webp │ │ │ ├── mipmap-mdpi │ │ │ ├── ic_launcher.webp │ │ │ └── ic_launcher_round.webp │ │ │ ├── mipmap-xhdpi │ │ │ ├── ic_launcher.webp │ │ │ └── ic_launcher_round.webp │ │ │ ├── mipmap-xxhdpi │ │ │ ├── ic_launcher.webp │ │ │ └── ic_launcher_round.webp │ │ │ ├── mipmap-xxxhdpi │ │ │ ├── ic_launcher.webp │ │ │ └── ic_launcher_round.webp │ │ │ ├── values-night │ │ │ └── themes.xml │ │ │ └── values │ │ │ ├── colors.xml │ │ │ ├── strings.xml │ │ │ ├── styles.xml │ │ │ └── themes.xml │ │ └── test │ │ └── java │ │ └── com │ │ └── example │ │ └── flowlayout │ │ └── ExampleUnitTest.kt ├── build.gradle ├── gradle.properties ├── gradle │ └── wrapper │ │ ├── gradle-wrapper.jar │ │ └── gradle-wrapper.properties ├── gradlew ├── gradlew.bat ├── lib │ ├── .gitignore │ ├── build.gradle │ ├── consumer-rules.pro │ ├── proguard-rules.pro │ └── src │ │ ├── androidTest │ │ └── java │ │ │ └── com │ │ │ └── example │ │ │ └── lib │ │ │ └── ExampleInstrumentedTest.kt │ │ ├── main │ │ ├── AndroidManifest.xml │ │ ├── java │ │ │ └── com │ │ │ │ └── example │ │ │ │ └── lib │ │ │ │ └── FlowLayout.kt │ │ └── res │ │ │ └── values │ │ │ └── attrs.xml │ │ └── test │ │ └── java │ │ └── com │ │ └── example │ │ └── lib │ │ └── ExampleUnitTest.kt └── settings.gradle ├── FluidColorfulFrame ├── .gitignore ├── app │ ├── .gitignore │ ├── build.gradle │ ├── proguard-rules.pro │ └── src │ │ ├── androidTest │ │ └── java │ │ │ └── com │ │ │ └── example │ │ │ └── fluidcolorfulframe │ │ │ └── ExampleInstrumentedTest.kt │ │ ├── main │ │ ├── AndroidManifest.xml │ │ ├── java │ │ │ └── com │ │ │ │ └── example │ │ │ │ └── fluidcolorfulframe │ │ │ │ ├── Extensions.kt │ │ │ │ ├── FluidColorfulFrameDrawable.kt │ │ │ │ ├── MainActivity.kt │ │ │ │ └── MyImageView.kt │ │ └── res │ │ │ ├── drawable-v24 │ │ │ └── ic_launcher_foreground.xml │ │ │ ├── drawable-xxhdpi │ │ │ └── road.jpeg │ │ │ ├── drawable │ │ │ └── ic_launcher_background.xml │ │ │ ├── layout │ │ │ └── activity_main.xml │ │ │ ├── mipmap-anydpi-v26 │ │ │ ├── ic_launcher.xml │ │ │ └── ic_launcher_round.xml │ │ │ ├── mipmap-hdpi │ │ │ ├── ic_launcher.webp │ │ │ └── ic_launcher_round.webp │ │ │ ├── mipmap-mdpi │ │ │ ├── ic_launcher.webp │ │ │ └── ic_launcher_round.webp │ │ │ ├── mipmap-xhdpi │ │ │ ├── ic_launcher.webp │ │ │ └── ic_launcher_round.webp │ │ │ ├── mipmap-xxhdpi │ │ │ ├── ic_launcher.webp │ │ │ └── ic_launcher_round.webp │ │ │ ├── mipmap-xxxhdpi │ │ │ ├── ic_launcher.webp │ │ │ └── ic_launcher_round.webp │ │ │ ├── values-night │ │ │ └── themes.xml │ │ │ ├── values │ │ │ ├── colors.xml │ │ │ ├── strings.xml │ │ │ └── themes.xml │ │ │ └── xml │ │ │ ├── backup_rules.xml │ │ │ └── data_extraction_rules.xml │ │ └── test │ │ └── java │ │ └── com │ │ └── example │ │ └── fluidcolorfulframe │ │ └── ExampleUnitTest.kt ├── build.gradle ├── gradle.properties ├── gradle │ └── wrapper │ │ ├── gradle-wrapper.jar │ │ └── gradle-wrapper.properties ├── gradlew ├── gradlew.bat └── settings.gradle ├── HandlerStudy ├── .gitignore ├── app │ ├── .gitignore │ ├── build.gradle │ ├── proguard-rules.pro │ └── src │ │ ├── androidTest │ │ └── java │ │ │ └── com │ │ │ └── example │ │ │ └── handlerstudy │ │ │ └── ExampleInstrumentedTest.kt │ │ ├── main │ │ ├── AndroidManifest.xml │ │ ├── java │ │ │ └── com │ │ │ │ └── example │ │ │ │ └── handlerstudy │ │ │ │ ├── ListenMainLooperMessageQueueActivity.kt │ │ │ │ ├── MainActivity.kt │ │ │ │ └── SyncBarrierTestActivity.kt │ │ └── res │ │ │ ├── drawable-v24 │ │ │ └── ic_launcher_foreground.xml │ │ │ ├── drawable │ │ │ └── ic_launcher_background.xml │ │ │ ├── layout │ │ │ ├── listen_main_looper_message_queue_activity.xml │ │ │ ├── main_activity.xml │ │ │ └── sync_barrier_test_activity.xml │ │ │ ├── mipmap-anydpi-v26 │ │ │ ├── ic_launcher.xml │ │ │ └── ic_launcher_round.xml │ │ │ ├── mipmap-hdpi │ │ │ ├── ic_launcher.png │ │ │ └── ic_launcher_round.png │ │ │ ├── mipmap-mdpi │ │ │ ├── ic_launcher.png │ │ │ └── ic_launcher_round.png │ │ │ ├── mipmap-xhdpi │ │ │ ├── ic_launcher.png │ │ │ └── ic_launcher_round.png │ │ │ ├── mipmap-xxhdpi │ │ │ ├── ic_launcher.png │ │ │ └── ic_launcher_round.png │ │ │ ├── mipmap-xxxhdpi │ │ │ ├── ic_launcher.png │ │ │ └── ic_launcher_round.png │ │ │ └── values │ │ │ ├── colors.xml │ │ │ ├── strings.xml │ │ │ └── styles.xml │ │ └── test │ │ └── java │ │ └── com │ │ └── example │ │ └── handlerstudy │ │ └── ExampleUnitTest.kt ├── build.gradle ├── gradle.properties ├── gradle │ └── wrapper │ │ ├── gradle-wrapper.jar │ │ └── gradle-wrapper.properties ├── gradlew ├── gradlew.bat └── settings.gradle ├── JNAStudy ├── .gitignore ├── README.md ├── build.gradle ├── gradle.properties ├── gradle │ └── wrapper │ │ ├── gradle-wrapper.jar │ │ └── gradle-wrapper.properties ├── gradlew ├── gradlew.bat ├── jna │ ├── .gitignore │ ├── build.gradle │ ├── proguard-rules.pro │ └── src │ │ ├── androidTest │ │ └── java │ │ │ └── com │ │ │ └── example │ │ │ └── jnastudy │ │ │ └── ExampleInstrumentedTest.java │ │ ├── main │ │ ├── AndroidManifest.xml │ │ ├── cpp │ │ │ ├── CMakeLists.txt │ │ │ ├── sum.cpp │ │ │ └── sum.h │ │ ├── java │ │ │ └── com │ │ │ │ └── example │ │ │ │ └── jna │ │ │ │ ├── ArrInfo.java │ │ │ │ ├── DownloadCallbacks.java │ │ │ │ ├── DownloadFinishCallback.java │ │ │ │ ├── DownloadProgressCallback.java │ │ │ │ ├── DownloadStartCallback.java │ │ │ │ ├── JNALibrary.java │ │ │ │ ├── MainActivity.java │ │ │ │ └── User.java │ │ ├── jniLibs │ │ │ ├── arm64-v8a │ │ │ │ └── libjnidispatch.so │ │ │ ├── armeabi-v7a │ │ │ │ └── libjnidispatch.so │ │ │ ├── x86 │ │ │ │ └── libjnidispatch.so │ │ │ └── x86_64 │ │ │ │ └── libjnidispatch.so │ │ └── res │ │ │ ├── drawable-v24 │ │ │ └── ic_launcher_foreground.xml │ │ │ ├── drawable │ │ │ └── ic_launcher_background.xml │ │ │ ├── layout │ │ │ └── activity_main.xml │ │ │ ├── mipmap-anydpi-v26 │ │ │ ├── ic_launcher.xml │ │ │ └── ic_launcher_round.xml │ │ │ ├── mipmap-hdpi │ │ │ ├── ic_launcher.webp │ │ │ └── ic_launcher_round.webp │ │ │ ├── mipmap-mdpi │ │ │ ├── ic_launcher.webp │ │ │ └── ic_launcher_round.webp │ │ │ ├── mipmap-xhdpi │ │ │ ├── ic_launcher.webp │ │ │ └── ic_launcher_round.webp │ │ │ ├── mipmap-xxhdpi │ │ │ ├── ic_launcher.webp │ │ │ └── ic_launcher_round.webp │ │ │ ├── mipmap-xxxhdpi │ │ │ ├── ic_launcher.webp │ │ │ └── ic_launcher_round.webp │ │ │ ├── values-night │ │ │ └── themes.xml │ │ │ └── values │ │ │ ├── colors.xml │ │ │ ├── strings.xml │ │ │ └── themes.xml │ │ └── test │ │ └── java │ │ └── com │ │ └── example │ │ └── jnastudy │ │ └── ExampleUnitTest.java ├── jni │ ├── .gitignore │ ├── build.gradle │ ├── proguard-rules.pro │ └── src │ │ ├── androidTest │ │ └── java │ │ │ └── com │ │ │ └── example │ │ │ └── jnastudy │ │ │ └── ExampleInstrumentedTest.java │ │ ├── main │ │ ├── AndroidManifest.xml │ │ ├── cpp │ │ │ ├── CMakeLists.txt │ │ │ ├── com_example_jni_JNITool.h │ │ │ ├── native-lib.cpp │ │ │ ├── sum.cpp │ │ │ └── sum.h │ │ ├── java │ │ │ └── com │ │ │ │ └── example │ │ │ │ └── jni │ │ │ │ ├── JNITool.java │ │ │ │ ├── MainActivity.java │ │ │ │ └── User.java │ │ └── res │ │ │ ├── drawable-v24 │ │ │ └── ic_launcher_foreground.xml │ │ │ ├── drawable │ │ │ └── ic_launcher_background.xml │ │ │ ├── layout │ │ │ └── activity_main.xml │ │ │ ├── mipmap-anydpi-v26 │ │ │ ├── ic_launcher.xml │ │ │ └── ic_launcher_round.xml │ │ │ ├── mipmap-hdpi │ │ │ ├── ic_launcher.webp │ │ │ └── ic_launcher_round.webp │ │ │ ├── mipmap-mdpi │ │ │ ├── ic_launcher.webp │ │ │ └── ic_launcher_round.webp │ │ │ ├── mipmap-xhdpi │ │ │ ├── ic_launcher.webp │ │ │ └── ic_launcher_round.webp │ │ │ ├── mipmap-xxhdpi │ │ │ ├── ic_launcher.webp │ │ │ └── ic_launcher_round.webp │ │ │ ├── mipmap-xxxhdpi │ │ │ ├── ic_launcher.webp │ │ │ └── ic_launcher_round.webp │ │ │ ├── values-night │ │ │ └── themes.xml │ │ │ └── values │ │ │ ├── colors.xml │ │ │ ├── strings.xml │ │ │ └── themes.xml │ │ └── test │ │ └── java │ │ └── com │ │ └── example │ │ └── jnastudy │ │ └── ExampleUnitTest.java └── settings.gradle ├── JavaIOStudy ├── .gitignore ├── a.txt ├── app │ ├── .gitignore │ ├── build.gradle │ ├── proguard-rules.pro │ └── src │ │ ├── androidTest │ │ └── java │ │ │ └── com │ │ │ └── example │ │ │ └── javaiostudy │ │ │ └── ExampleInstrumentedTest.java │ │ ├── main │ │ ├── AndroidManifest.xml │ │ ├── java │ │ │ └── com │ │ │ │ └── example │ │ │ │ └── javaiostudy │ │ │ │ └── MainActivity.java │ │ └── res │ │ │ ├── drawable-v24 │ │ │ └── ic_launcher_foreground.xml │ │ │ ├── drawable │ │ │ └── ic_launcher_background.xml │ │ │ ├── layout │ │ │ └── activity_main.xml │ │ │ ├── mipmap-anydpi-v26 │ │ │ ├── ic_launcher.xml │ │ │ └── ic_launcher_round.xml │ │ │ ├── mipmap-hdpi │ │ │ ├── ic_launcher.png │ │ │ └── ic_launcher_round.png │ │ │ ├── mipmap-mdpi │ │ │ ├── ic_launcher.png │ │ │ ├── ic_launcher_round.png │ │ │ └── point.webp │ │ │ ├── mipmap-xhdpi │ │ │ ├── ic_launcher.png │ │ │ └── ic_launcher_round.png │ │ │ ├── mipmap-xxhdpi │ │ │ ├── ic_launcher.png │ │ │ └── ic_launcher_round.png │ │ │ ├── mipmap-xxxhdpi │ │ │ ├── ic_launcher.png │ │ │ └── ic_launcher_round.png │ │ │ ├── values-night │ │ │ └── themes.xml │ │ │ └── values │ │ │ ├── colors.xml │ │ │ ├── strings.xml │ │ │ └── themes.xml │ │ └── test │ │ └── java │ │ └── com │ │ └── example │ │ └── javaiostudy │ │ └── ExampleUnitTest.java ├── build.gradle ├── diry │ └── a.txt ├── file.txt ├── gradle.properties ├── gradle │ └── wrapper │ │ ├── gradle-wrapper.jar │ │ └── gradle-wrapper.properties ├── gradlew ├── gradlew.bat ├── javaio │ ├── .gitignore │ ├── build.gradle │ ├── io.mdj │ └── src │ │ └── main │ │ └── java │ │ └── com │ │ └── example │ │ └── javaio │ │ ├── MyClass.java │ │ ├── _01_file │ │ ├── CreateFileApiDemo.java │ │ ├── DeleteApiDemo.java │ │ ├── DeleteDirDemo.java │ │ ├── DeleteEmptyDirsDemo.java │ │ ├── FileConstDemo.java │ │ ├── ListFilesApiDemo.java │ │ ├── MkDirMkDirsApiDemo.java │ │ ├── PathnameDemo.java │ │ ├── RecurseDirDemo1.java │ │ └── RecurseDirDemo2.java │ │ ├── _02_bytestream │ │ └── copytextfile │ │ │ ├── CustomBufferCopyTextFile.java │ │ │ ├── FileInputStreamReadDemo.java │ │ │ ├── FileOutputStreamWriteDemo.java │ │ │ ├── JavaBufferCopyTextFile.java │ │ │ ├── JavaBufferCopyTextFile2.java │ │ │ ├── MyBufferedInputStream.java │ │ │ ├── MyBufferedInputStream2.java │ │ │ └── SimpleCopyTextFile.java │ │ └── _03_charstream │ │ └── copytextfile │ │ ├── CopyImage.java │ │ ├── CustomBufferCopyTextFile.java │ │ ├── JavaBufferCopyTextFile.java │ │ ├── JavaBufferReadLineCopyTextFile.java │ │ ├── MyBufferedReader.java │ │ ├── MyBufferedReader2.java │ │ └── SimpleCopyTextFile.java ├── point.webp └── settings.gradle ├── JsonStudy ├── .gitignore ├── app │ ├── .gitignore │ ├── build.gradle │ ├── proguard-rules.pro │ └── src │ │ ├── androidTest │ │ └── java │ │ │ └── com │ │ │ └── example │ │ │ └── jsonstudy │ │ │ └── ExampleInstrumentedTest.java │ │ ├── main │ │ ├── AndroidManifest.xml │ │ ├── java │ │ │ └── com │ │ │ │ └── example │ │ │ │ └── jsonstudy │ │ │ │ └── MainActivity.java │ │ └── res │ │ │ ├── drawable-v24 │ │ │ └── ic_launcher_foreground.xml │ │ │ ├── drawable │ │ │ └── ic_launcher_background.xml │ │ │ ├── layout │ │ │ └── activity_main.xml │ │ │ ├── mipmap-anydpi-v26 │ │ │ ├── ic_launcher.xml │ │ │ └── ic_launcher_round.xml │ │ │ ├── mipmap-hdpi │ │ │ ├── ic_launcher.png │ │ │ └── ic_launcher_round.png │ │ │ ├── mipmap-mdpi │ │ │ ├── ic_launcher.png │ │ │ └── ic_launcher_round.png │ │ │ ├── mipmap-xhdpi │ │ │ ├── ic_launcher.png │ │ │ └── ic_launcher_round.png │ │ │ ├── mipmap-xxhdpi │ │ │ ├── ic_launcher.png │ │ │ └── ic_launcher_round.png │ │ │ ├── mipmap-xxxhdpi │ │ │ ├── ic_launcher.png │ │ │ └── ic_launcher_round.png │ │ │ └── values │ │ │ ├── colors.xml │ │ │ ├── strings.xml │ │ │ └── styles.xml │ │ └── test │ │ └── java │ │ └── com │ │ └── example │ │ └── jsonstudy │ │ └── ExampleUnitTest.java ├── build.gradle ├── gradle.properties ├── gradle │ └── wrapper │ │ ├── gradle-wrapper.jar │ │ └── gradle-wrapper.properties ├── gradlew ├── gradlew.bat ├── lib │ ├── .gitignore │ ├── build.gradle │ └── src │ │ └── main │ │ └── java │ │ └── com │ │ ├── example │ │ └── lib │ │ │ ├── _01_basic │ │ │ ├── Person.java │ │ │ ├── Response.java │ │ │ ├── Test01.java │ │ │ ├── Test02.java │ │ │ └── Test03.java │ │ │ ├── _02_annotation │ │ │ ├── Person.java │ │ │ ├── Response.java │ │ │ ├── Test01.java │ │ │ └── Test02.java │ │ │ ├── _03_builder │ │ │ ├── RequestBean.java │ │ │ ├── SimpleBean.java │ │ │ ├── Student.java │ │ │ ├── Test01.java │ │ │ ├── Test02.java │ │ │ ├── Test03.java │ │ │ ├── Test04.java │ │ │ ├── Test05.java │ │ │ └── UserBean.java │ │ │ ├── _04_typeadapter │ │ │ ├── Commodity.java │ │ │ ├── Context.java │ │ │ ├── Goods.java │ │ │ ├── Goods2.java │ │ │ ├── Order.java │ │ │ ├── Point.java │ │ │ ├── Shopper.java │ │ │ ├── ShopperContext.java │ │ │ ├── ShopperSingleton.java │ │ │ ├── Test01.java │ │ │ ├── Test02.java │ │ │ ├── Test03.java │ │ │ └── Test04.java │ │ │ └── _05_underthehood │ │ │ ├── Person.java │ │ │ └── Test.java │ │ └── google │ │ └── gson │ │ └── internal │ │ └── bind │ │ ├── BoundField.java │ │ ├── MyReflectiveTypeAdapterFactory.java │ │ └── ReflectiveTypeAdapter.java └── settings.gradle ├── KotlinByStudy ├── .gitignore ├── app │ ├── .gitignore │ ├── build.gradle │ ├── proguard-rules.pro │ └── src │ │ ├── androidTest │ │ └── java │ │ │ └── com │ │ │ └── example │ │ │ └── kotlinbystudy │ │ │ └── ExampleInstrumentedTest.kt │ │ ├── main │ │ ├── AndroidManifest.xml │ │ ├── java │ │ │ └── com │ │ │ │ └── example │ │ │ │ └── kotlinbystudy │ │ │ │ └── MainActivity.kt │ │ └── res │ │ │ ├── drawable-v24 │ │ │ └── ic_launcher_foreground.xml │ │ │ ├── drawable │ │ │ └── ic_launcher_background.xml │ │ │ ├── layout │ │ │ └── activity_main.xml │ │ │ ├── mipmap-anydpi-v26 │ │ │ ├── ic_launcher.xml │ │ │ └── ic_launcher_round.xml │ │ │ ├── mipmap-hdpi │ │ │ ├── ic_launcher.webp │ │ │ └── ic_launcher_round.webp │ │ │ ├── mipmap-mdpi │ │ │ ├── ic_launcher.webp │ │ │ └── ic_launcher_round.webp │ │ │ ├── mipmap-xhdpi │ │ │ ├── ic_launcher.webp │ │ │ └── ic_launcher_round.webp │ │ │ ├── mipmap-xxhdpi │ │ │ ├── ic_launcher.webp │ │ │ └── ic_launcher_round.webp │ │ │ ├── mipmap-xxxhdpi │ │ │ ├── ic_launcher.webp │ │ │ └── ic_launcher_round.webp │ │ │ ├── values-night │ │ │ └── themes.xml │ │ │ └── values │ │ │ ├── colors.xml │ │ │ ├── strings.xml │ │ │ └── themes.xml │ │ └── test │ │ └── java │ │ └── com │ │ └── example │ │ └── kotlinbystudy │ │ └── ExampleUnitTest.kt ├── build.gradle ├── gradle.properties ├── gradle │ └── wrapper │ │ ├── gradle-wrapper.jar │ │ └── gradle-wrapper.properties ├── gradlew ├── gradlew.bat ├── lib │ ├── .gitignore │ ├── build.gradle │ └── src │ │ └── main │ │ └── java │ │ └── com │ │ └── example │ │ └── lib │ │ ├── _1_class_delegation │ │ ├── CountingSet1.kt │ │ ├── CountingSet2.kt │ │ ├── CountingSet3.kt │ │ ├── CountingSet4.kt │ │ ├── ListWithTrash1.kt │ │ ├── ListWithTrash2.kt │ │ └── ListWithTrash3.kt │ │ ├── _2_property_delegation │ │ ├── example1 │ │ │ ├── Delegate.kt │ │ │ ├── Delegate2.kt │ │ │ ├── Delegate3.kt │ │ │ ├── Delegate4.kt │ │ │ ├── Delegate5.kt │ │ │ ├── Delegate5Extension.kt │ │ │ ├── Person1.kt │ │ │ ├── Person2.kt │ │ │ ├── Person3.kt │ │ │ ├── Person4.kt │ │ │ ├── Person5.kt │ │ │ ├── Person6.kt │ │ │ ├── Person7.kt │ │ │ ├── Person8.kt │ │ │ ├── Student.kt │ │ │ └── Student2.kt │ │ ├── example2 │ │ │ ├── Person1.kt │ │ │ ├── Person2.kt │ │ │ ├── Person3.kt │ │ │ └── PropertyChangeAware.kt │ │ ├── example3 │ │ │ └── Person1.kt │ │ └── example4 │ │ │ ├── Person1.kt │ │ │ └── Person2.kt │ │ └── _3_builtin_delegates │ │ ├── Person.kt │ │ ├── Person2.kt │ │ ├── Person3.kt │ │ └── Person4.kt └── settings.gradle ├── KotlinExtensionFunctionStudy ├── .gitignore ├── app │ ├── .gitignore │ ├── build.gradle │ ├── proguard-rules.pro │ └── src │ │ ├── androidTest │ │ └── java │ │ │ └── com │ │ │ └── kotlin │ │ │ └── extension │ │ │ └── ExampleInstrumentedTest.kt │ │ ├── main │ │ ├── AndroidManifest.xml │ │ ├── java │ │ │ └── com │ │ │ │ └── kotlin │ │ │ │ └── extension │ │ │ │ └── MainActivity.kt │ │ └── res │ │ │ ├── drawable-v24 │ │ │ └── ic_launcher_foreground.xml │ │ │ ├── drawable │ │ │ └── ic_launcher_background.xml │ │ │ ├── layout │ │ │ └── activity_main.xml │ │ │ ├── mipmap-anydpi-v26 │ │ │ ├── ic_launcher.xml │ │ │ └── ic_launcher_round.xml │ │ │ ├── mipmap-hdpi │ │ │ ├── ic_launcher.webp │ │ │ └── ic_launcher_round.webp │ │ │ ├── mipmap-mdpi │ │ │ ├── ic_launcher.webp │ │ │ └── ic_launcher_round.webp │ │ │ ├── mipmap-xhdpi │ │ │ ├── ic_launcher.webp │ │ │ └── ic_launcher_round.webp │ │ │ ├── mipmap-xxhdpi │ │ │ ├── ic_launcher.webp │ │ │ └── ic_launcher_round.webp │ │ │ ├── mipmap-xxxhdpi │ │ │ ├── ic_launcher.webp │ │ │ └── ic_launcher_round.webp │ │ │ ├── values-night │ │ │ └── themes.xml │ │ │ └── values │ │ │ ├── colors.xml │ │ │ ├── strings.xml │ │ │ └── themes.xml │ │ └── test │ │ └── java │ │ └── com │ │ └── kotlin │ │ └── extension │ │ └── ExampleUnitTest.kt ├── build.gradle ├── gradle.properties ├── gradle │ └── wrapper │ │ ├── gradle-wrapper.jar │ │ └── gradle-wrapper.properties ├── gradlew ├── gradlew.bat ├── lib │ ├── .gitignore │ ├── build.gradle │ └── src │ │ └── main │ │ └── java │ │ └── com │ │ └── kotlin │ │ └── lib │ │ ├── _1_topextensionfunction │ │ ├── Classes.kt │ │ ├── JavaTest.java │ │ ├── ListExtensions.kt │ │ ├── StringExtensions.kt │ │ ├── Test.kt │ │ ├── Util.kt │ │ └── ViewExtenions.kt │ │ ├── _2_memberextensionfunction │ │ ├── Caller.kt │ │ ├── PhoneBook.kt │ │ └── decompiled │ │ │ └── CallerKt.java │ │ └── _3_extensionfunctiontype │ │ └── Test.kt └── settings.gradle ├── LICENSE ├── LayoutInflaterInflateParamStudy ├── .gitignore ├── app │ ├── .gitignore │ ├── build.gradle │ ├── proguard-rules.pro │ └── src │ │ ├── androidTest │ │ └── java │ │ │ └── com │ │ │ └── example │ │ │ └── layoutinflaterinflateparamstudy │ │ │ └── ExampleInstrumentedTest.java │ │ ├── main │ │ ├── AndroidManifest.xml │ │ ├── java │ │ │ └── com │ │ │ │ └── example │ │ │ │ └── layoutinflaterinflateparamstudy │ │ │ │ ├── MainActivity.java │ │ │ │ ├── MultiTouchTest.java │ │ │ │ ├── RadiusBackgroundSpan.java │ │ │ │ ├── UIUtil.java │ │ │ │ ├── resolve │ │ │ │ └── ResolveActivity.java │ │ │ │ └── usecase │ │ │ │ ├── CustomMergeView.java │ │ │ │ ├── CustomView.java │ │ │ │ ├── CustomViewInflateActivity.java │ │ │ │ ├── FragmentInflateActivity.java │ │ │ │ ├── MyDialog.java │ │ │ │ ├── MyFragment.java │ │ │ │ ├── RecycleViewItemInflateActivity.java │ │ │ │ └── RecyclerViewAdapter.java │ │ └── res │ │ │ ├── drawable-v24 │ │ │ └── ic_launcher_foreground.xml │ │ │ ├── drawable │ │ │ └── ic_launcher_background.xml │ │ │ ├── layout │ │ │ ├── activity_main.xml │ │ │ ├── custom_button.xml │ │ │ ├── custom_merge_view_layout.xml │ │ │ ├── custom_view_inflate_activity.xml │ │ │ ├── custom_view_layout.xml │ │ │ ├── dialog.xml │ │ │ ├── fragment_inflate_activity.xml │ │ │ ├── my_fragment.xml │ │ │ ├── recycle_item.xml │ │ │ ├── recycle_view_item_inflate_activity.xml │ │ │ └── resolve_activity.xml │ │ │ ├── mipmap-anydpi-v26 │ │ │ ├── ic_launcher.xml │ │ │ └── ic_launcher_round.xml │ │ │ ├── mipmap-hdpi │ │ │ ├── ic_launcher.png │ │ │ └── ic_launcher_round.png │ │ │ ├── mipmap-mdpi │ │ │ ├── ic_launcher.png │ │ │ └── ic_launcher_round.png │ │ │ ├── mipmap-xhdpi │ │ │ ├── ic_launcher.png │ │ │ └── ic_launcher_round.png │ │ │ ├── mipmap-xxhdpi │ │ │ ├── ic_launcher.png │ │ │ └── ic_launcher_round.png │ │ │ ├── mipmap-xxxhdpi │ │ │ ├── ic_launcher.png │ │ │ └── ic_launcher_round.png │ │ │ └── values │ │ │ ├── colors.xml │ │ │ ├── strings.xml │ │ │ └── styles.xml │ │ └── test │ │ └── java │ │ └── com │ │ └── example │ │ └── layoutinflaterinflateparamstudy │ │ └── ExampleUnitTest.java ├── build.gradle ├── gradle.properties ├── gradle │ └── wrapper │ │ ├── gradle-wrapper.jar │ │ └── gradle-wrapper.properties ├── gradlew ├── gradlew.bat └── settings.gradle ├── ListAdapterStudy ├── .gitignore ├── app │ ├── .gitignore │ ├── build.gradle │ ├── proguard-rules.pro │ └── src │ │ ├── androidTest │ │ └── java │ │ │ └── com │ │ │ └── example │ │ │ └── listadapterstudy │ │ │ └── ExampleInstrumentedTest.kt │ │ ├── main │ │ ├── AndroidManifest.xml │ │ ├── java │ │ │ └── com │ │ │ │ └── example │ │ │ │ └── listadapterstudy │ │ │ │ ├── GridSpaceDecoration.kt │ │ │ │ ├── Item.kt │ │ │ │ ├── MainActivity.kt │ │ │ │ ├── MyListAdapter.kt │ │ │ │ └── Utils.kt │ │ └── res │ │ │ ├── drawable-v24 │ │ │ └── ic_launcher_foreground.xml │ │ │ ├── drawable │ │ │ └── ic_launcher_background.xml │ │ │ ├── layout │ │ │ ├── main_activity.xml │ │ │ └── recycle_item.xml │ │ │ ├── mipmap-anydpi-v26 │ │ │ ├── ic_launcher.xml │ │ │ └── ic_launcher_round.xml │ │ │ ├── mipmap-hdpi │ │ │ ├── ic_launcher.png │ │ │ └── ic_launcher_round.png │ │ │ ├── mipmap-mdpi │ │ │ ├── ic_launcher.png │ │ │ └── ic_launcher_round.png │ │ │ ├── mipmap-xhdpi │ │ │ ├── ic_launcher.png │ │ │ └── ic_launcher_round.png │ │ │ ├── mipmap-xxhdpi │ │ │ ├── ic_launcher.png │ │ │ └── ic_launcher_round.png │ │ │ ├── mipmap-xxxhdpi │ │ │ ├── ic_launcher.png │ │ │ └── ic_launcher_round.png │ │ │ ├── values-night │ │ │ └── themes.xml │ │ │ └── values │ │ │ ├── colors.xml │ │ │ ├── strings.xml │ │ │ └── themes.xml │ │ └── test │ │ └── java │ │ └── com │ │ └── example │ │ └── listadapterstudy │ │ └── ExampleUnitTest.kt ├── build.gradle ├── gradle.properties ├── gradle │ └── wrapper │ │ ├── gradle-wrapper.jar │ │ └── gradle-wrapper.properties ├── gradlew ├── gradlew.bat └── settings.gradle ├── MQTTStudy ├── .gitignore ├── README.md ├── build.gradle ├── gate │ ├── .gitignore │ ├── build.gradle │ ├── proguard-rules.pro │ └── src │ │ ├── androidTest │ │ └── java │ │ │ └── com │ │ │ └── mqtt │ │ │ └── mqttstudy │ │ │ └── gate │ │ │ └── ExampleInstrumentedTest.kt │ │ ├── main │ │ ├── AndroidManifest.xml │ │ ├── java │ │ │ └── com │ │ │ │ └── mqtt │ │ │ │ └── mqttstudy │ │ │ │ └── gate │ │ │ │ ├── GateMqttService.kt │ │ │ │ └── MainActivity.kt │ │ └── res │ │ │ ├── drawable-v24 │ │ │ └── ic_launcher_foreground.xml │ │ │ ├── drawable │ │ │ └── ic_launcher_background.xml │ │ │ ├── layout │ │ │ └── activity_main.xml │ │ │ ├── mipmap-anydpi-v26 │ │ │ ├── ic_launcher.xml │ │ │ └── ic_launcher_round.xml │ │ │ ├── mipmap-hdpi │ │ │ ├── ic_launcher.png │ │ │ └── ic_launcher_round.png │ │ │ ├── mipmap-mdpi │ │ │ ├── ic_launcher.png │ │ │ └── ic_launcher_round.png │ │ │ ├── mipmap-xhdpi │ │ │ ├── ic_launcher.png │ │ │ └── ic_launcher_round.png │ │ │ ├── mipmap-xxhdpi │ │ │ ├── ic_launcher.png │ │ │ └── ic_launcher_round.png │ │ │ ├── mipmap-xxxhdpi │ │ │ ├── ic_launcher.png │ │ │ └── ic_launcher_round.png │ │ │ ├── values-night │ │ │ └── themes.xml │ │ │ └── values │ │ │ ├── colors.xml │ │ │ ├── strings.xml │ │ │ └── themes.xml │ │ └── test │ │ └── java │ │ └── com │ │ └── mqtt │ │ └── mqttstudy │ │ └── gate │ │ └── ExampleUnitTest.kt ├── gradle.properties ├── gradle │ └── wrapper │ │ ├── gradle-wrapper.jar │ │ └── gradle-wrapper.properties ├── gradlew ├── gradlew.bat ├── screen │ ├── .gitignore │ ├── build.gradle │ ├── proguard-rules.pro │ └── src │ │ ├── androidTest │ │ └── java │ │ │ └── com │ │ │ └── mqtt │ │ │ └── mqttstudy │ │ │ └── ExampleInstrumentedTest.kt │ │ ├── main │ │ ├── AndroidManifest.xml │ │ ├── java │ │ │ └── com │ │ │ │ └── mqtt │ │ │ │ └── mqttstudy │ │ │ │ └── screen │ │ │ │ ├── MainActivity.kt │ │ │ │ ├── MessageArriveListener.kt │ │ │ │ ├── MessageArriveListenerManager.kt │ │ │ │ └── ScreenMqttService.kt │ │ └── res │ │ │ ├── drawable-v24 │ │ │ └── ic_launcher_foreground.xml │ │ │ ├── drawable │ │ │ └── ic_launcher_background.xml │ │ │ ├── layout │ │ │ └── activity_main.xml │ │ │ ├── mipmap-anydpi-v26 │ │ │ ├── ic_launcher.xml │ │ │ └── ic_launcher_round.xml │ │ │ ├── mipmap-hdpi │ │ │ ├── ic_launcher.png │ │ │ └── ic_launcher_round.png │ │ │ ├── mipmap-mdpi │ │ │ ├── ic_launcher.png │ │ │ └── ic_launcher_round.png │ │ │ ├── mipmap-xhdpi │ │ │ ├── ic_launcher.png │ │ │ └── ic_launcher_round.png │ │ │ ├── mipmap-xxhdpi │ │ │ ├── ic_launcher.png │ │ │ └── ic_launcher_round.png │ │ │ ├── mipmap-xxxhdpi │ │ │ ├── ic_launcher.png │ │ │ └── ic_launcher_round.png │ │ │ ├── values-night │ │ │ └── themes.xml │ │ │ └── values │ │ │ ├── colors.xml │ │ │ ├── strings.xml │ │ │ └── themes.xml │ │ └── test │ │ └── java │ │ └── com │ │ └── mqtt │ │ └── mqttstudy │ │ └── ExampleUnitTest.kt └── settings.gradle ├── README.md ├── RefactorDownloadByStatePattern ├── .gitignore ├── app │ ├── .gitignore │ ├── build.gradle │ ├── proguard-rules.pro │ └── src │ │ ├── androidTest │ │ └── java │ │ │ └── com │ │ │ └── example │ │ │ └── refactordownloadbystatepattern │ │ │ └── ExampleInstrumentedTest.kt │ │ ├── main │ │ ├── AndroidManifest.xml │ │ ├── java │ │ │ └── com │ │ │ │ └── example │ │ │ │ └── refactordownloadbystatepattern │ │ │ │ ├── App.kt │ │ │ │ ├── DownloadViewModel.kt │ │ │ │ ├── MainActivity.kt │ │ │ │ ├── after │ │ │ │ ├── DownloadAfterActivity.kt │ │ │ │ └── DownloadStates.kt │ │ │ │ ├── before │ │ │ │ └── DownloadBeforeActivity.kt │ │ │ │ └── data │ │ │ │ ├── DownloadListener.kt │ │ │ │ ├── DownloadStateEnum.kt │ │ │ │ └── Downloader.kt │ │ └── res │ │ │ ├── drawable-v24 │ │ │ └── ic_launcher_foreground.xml │ │ │ ├── drawable │ │ │ └── ic_launcher_background.xml │ │ │ ├── layout │ │ │ ├── download_activity.xml │ │ │ └── main_activity.xml │ │ │ ├── mipmap-anydpi-v26 │ │ │ ├── ic_launcher.xml │ │ │ └── ic_launcher_round.xml │ │ │ ├── mipmap-hdpi │ │ │ ├── ic_launcher.webp │ │ │ └── ic_launcher_round.webp │ │ │ ├── mipmap-mdpi │ │ │ ├── ic_launcher.webp │ │ │ └── ic_launcher_round.webp │ │ │ ├── mipmap-xhdpi │ │ │ ├── ic_launcher.webp │ │ │ └── ic_launcher_round.webp │ │ │ ├── mipmap-xxhdpi │ │ │ ├── ic_launcher.webp │ │ │ └── ic_launcher_round.webp │ │ │ ├── mipmap-xxxhdpi │ │ │ ├── ic_launcher.webp │ │ │ └── ic_launcher_round.webp │ │ │ ├── values-night │ │ │ └── themes.xml │ │ │ ├── values │ │ │ ├── colors.xml │ │ │ ├── strings.xml │ │ │ └── themes.xml │ │ │ └── xml │ │ │ └── backup_rules.xml │ │ └── test │ │ └── java │ │ └── com │ │ └── example │ │ └── refactordownloadbystatepattern │ │ └── ExampleUnitTest.kt ├── build.gradle ├── gradle.properties ├── gradle │ └── wrapper │ │ ├── gradle-wrapper.jar │ │ └── gradle-wrapper.properties ├── gradlew ├── gradlew.bat └── settings.gradle ├── RxJava2Study ├── .gitignore ├── app │ ├── .gitignore │ ├── build.gradle │ ├── proguard-rules.pro │ └── src │ │ ├── androidTest │ │ └── java │ │ │ └── com │ │ │ └── example │ │ │ └── rxjava2study │ │ │ └── ExampleInstrumentedTest.kt │ │ ├── main │ │ ├── AndroidManifest.xml │ │ ├── java │ │ │ └── com │ │ │ │ └── example │ │ │ │ └── rxjava2study │ │ │ │ ├── MainActivity.kt │ │ │ │ ├── NormalObserverPatternDemo.kt │ │ │ │ ├── RxJavaMapFilterOperatorDemo.kt │ │ │ │ ├── RxJavaMapOperatorDemo.kt │ │ │ │ ├── RxJavaMultipleObserveOnDemo.kt │ │ │ │ ├── RxJavaMultipleSubscribeOnDemo.kt │ │ │ │ ├── RxJavaObserveOnDemo.kt │ │ │ │ ├── RxJavaObserverPatternDemo.kt │ │ │ │ ├── RxJavaSubscribeOnDemo.kt │ │ │ │ └── RxJavaTimeConsumingEventDemo.kt │ │ └── res │ │ │ ├── drawable-v24 │ │ │ └── ic_launcher_foreground.xml │ │ │ ├── drawable │ │ │ └── ic_launcher_background.xml │ │ │ ├── layout │ │ │ └── main_activity.xml │ │ │ ├── mipmap-anydpi-v26 │ │ │ ├── ic_launcher.xml │ │ │ └── ic_launcher_round.xml │ │ │ ├── mipmap-hdpi │ │ │ ├── ic_launcher.png │ │ │ └── ic_launcher_round.png │ │ │ ├── mipmap-mdpi │ │ │ ├── ic_launcher.png │ │ │ └── ic_launcher_round.png │ │ │ ├── mipmap-xhdpi │ │ │ ├── ic_launcher.png │ │ │ └── ic_launcher_round.png │ │ │ ├── mipmap-xxhdpi │ │ │ ├── ic_launcher.png │ │ │ └── ic_launcher_round.png │ │ │ ├── mipmap-xxxhdpi │ │ │ ├── ic_launcher.png │ │ │ └── ic_launcher_round.png │ │ │ ├── values-night │ │ │ └── themes.xml │ │ │ └── values │ │ │ ├── colors.xml │ │ │ ├── strings.xml │ │ │ └── themes.xml │ │ └── test │ │ └── java │ │ └── com │ │ └── example │ │ └── rxjava2study │ │ └── ExampleUnitTest.kt ├── build.gradle ├── gradle.properties ├── gradle │ └── wrapper │ │ ├── gradle-wrapper.jar │ │ └── gradle-wrapper.properties ├── gradlew ├── gradlew.bat ├── rxjava.mdj └── settings.gradle ├── TencentClassLoadingView ├── .gitignore ├── app │ ├── .gitignore │ ├── build.gradle │ ├── proguard-rules.pro │ └── src │ │ ├── androidTest │ │ └── java │ │ │ └── com │ │ │ └── example │ │ │ └── tencentclassloadingview │ │ │ └── ExampleInstrumentedTest.kt │ │ ├── main │ │ ├── AndroidManifest.xml │ │ ├── java │ │ │ └── com │ │ │ │ └── example │ │ │ │ └── tencentclassloadingview │ │ │ │ ├── Extensions.kt │ │ │ │ ├── MainActivity.kt │ │ │ │ └── TencentClassLoadingView.kt │ │ └── res │ │ │ ├── drawable-v24 │ │ │ └── ic_launcher_foreground.xml │ │ │ ├── drawable-xxhdpi │ │ │ └── tencent_class.png │ │ │ ├── drawable │ │ │ └── ic_launcher_background.xml │ │ │ ├── layout │ │ │ └── activity_main.xml │ │ │ ├── mipmap-anydpi-v26 │ │ │ ├── ic_launcher.xml │ │ │ └── ic_launcher_round.xml │ │ │ ├── mipmap-hdpi │ │ │ ├── ic_launcher.webp │ │ │ └── ic_launcher_round.webp │ │ │ ├── mipmap-mdpi │ │ │ ├── ic_launcher.webp │ │ │ └── ic_launcher_round.webp │ │ │ ├── mipmap-xhdpi │ │ │ ├── ic_launcher.webp │ │ │ └── ic_launcher_round.webp │ │ │ ├── mipmap-xxhdpi │ │ │ ├── ic_launcher.webp │ │ │ └── ic_launcher_round.webp │ │ │ ├── mipmap-xxxhdpi │ │ │ ├── ic_launcher.webp │ │ │ └── ic_launcher_round.webp │ │ │ ├── values-night │ │ │ └── themes.xml │ │ │ ├── values │ │ │ ├── colors.xml │ │ │ ├── strings.xml │ │ │ └── themes.xml │ │ │ └── xml │ │ │ ├── backup_rules.xml │ │ │ └── data_extraction_rules.xml │ │ └── test │ │ └── java │ │ └── com │ │ └── example │ │ └── tencentclassloadingview │ │ └── ExampleUnitTest.kt ├── build.gradle ├── gradle.properties ├── gradle │ └── wrapper │ │ ├── gradle-wrapper.jar │ │ └── gradle-wrapper.properties ├── gradlew ├── gradlew.bat └── settings.gradle └── ViewLifecycleStudy ├── .gitignore ├── app ├── .gitignore ├── build.gradle ├── proguard-rules.pro └── src │ ├── androidTest │ └── java │ │ └── com │ │ └── example │ │ └── viewlifecyclestudy │ │ └── ExampleInstrumentedTest.kt │ ├── main │ ├── AndroidManifest.xml │ ├── java │ │ └── com │ │ │ └── example │ │ │ └── viewlifecyclestudy │ │ │ ├── CustomView.kt │ │ │ └── MainActivity.kt │ └── res │ │ ├── drawable-v24 │ │ └── ic_launcher_foreground.xml │ │ ├── drawable │ │ └── ic_launcher_background.xml │ │ ├── layout │ │ └── activity_main.xml │ │ ├── mipmap-anydpi-v26 │ │ ├── ic_launcher.xml │ │ └── ic_launcher_round.xml │ │ ├── mipmap-hdpi │ │ ├── ic_launcher.webp │ │ └── ic_launcher_round.webp │ │ ├── mipmap-mdpi │ │ ├── ic_launcher.webp │ │ └── ic_launcher_round.webp │ │ ├── mipmap-xhdpi │ │ ├── ic_launcher.webp │ │ └── ic_launcher_round.webp │ │ ├── mipmap-xxhdpi │ │ ├── ic_launcher.webp │ │ └── ic_launcher_round.webp │ │ ├── mipmap-xxxhdpi │ │ ├── ic_launcher.webp │ │ └── ic_launcher_round.webp │ │ ├── values-night │ │ └── themes.xml │ │ ├── values │ │ ├── colors.xml │ │ ├── strings.xml │ │ └── themes.xml │ │ └── xml │ │ ├── backup_rules.xml │ │ └── data_extraction_rules.xml │ └── test │ └── java │ └── com │ └── example │ └── viewlifecyclestudy │ └── ExampleUnitTest.kt ├── build.gradle ├── gradle.properties ├── gradle └── wrapper │ ├── gradle-wrapper.jar │ └── gradle-wrapper.properties ├── gradlew ├── gradlew.bat └── settings.gradle /AndroidStudioSplitRes/.gitignore: -------------------------------------------------------------------------------- 1 | *.iml 2 | .gradle 3 | /local.properties 4 | /.idea/caches 5 | /.idea/libraries 6 | /.idea/modules.xml 7 | /.idea/workspace.xml 8 | /.idea/navEditor.xml 9 | /.idea/assetWizardSettings.xml 10 | .DS_Store 11 | /build 12 | /captures 13 | .externalNativeBuild 14 | .cxx 15 | local.properties 16 | -------------------------------------------------------------------------------- /AndroidStudioSplitRes/app/.gitignore: -------------------------------------------------------------------------------- 1 | /build -------------------------------------------------------------------------------- /AndroidStudioSplitRes/app/src/main/java/com/example/androidstudiosplitres/MainActivity.kt: -------------------------------------------------------------------------------- 1 | package com.example.androidstudiosplitres 2 | 3 | import androidx.appcompat.app.AppCompatActivity 4 | import android.os.Bundle 5 | 6 | class MainActivity : AppCompatActivity() { 7 | override fun onCreate(savedInstanceState: Bundle?) { 8 | super.onCreate(savedInstanceState) 9 | setContentView(R.layout.activity_main) 10 | } 11 | } -------------------------------------------------------------------------------- /AndroidStudioSplitRes/app/src/main/res/mipmap-anydpi-v26/ic_launcher.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /AndroidStudioSplitRes/app/src/main/res/mipmap-anydpi-v26/ic_launcher_round.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /AndroidStudioSplitRes/app/src/main/res/mipmap-hdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/AndroidStudioSplitRes/app/src/main/res/mipmap-hdpi/ic_launcher.png -------------------------------------------------------------------------------- /AndroidStudioSplitRes/app/src/main/res/mipmap-hdpi/ic_launcher_round.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/AndroidStudioSplitRes/app/src/main/res/mipmap-hdpi/ic_launcher_round.png -------------------------------------------------------------------------------- /AndroidStudioSplitRes/app/src/main/res/mipmap-mdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/AndroidStudioSplitRes/app/src/main/res/mipmap-mdpi/ic_launcher.png -------------------------------------------------------------------------------- /AndroidStudioSplitRes/app/src/main/res/mipmap-mdpi/ic_launcher_round.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/AndroidStudioSplitRes/app/src/main/res/mipmap-mdpi/ic_launcher_round.png -------------------------------------------------------------------------------- /AndroidStudioSplitRes/app/src/main/res/mipmap-xhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/AndroidStudioSplitRes/app/src/main/res/mipmap-xhdpi/ic_launcher.png -------------------------------------------------------------------------------- /AndroidStudioSplitRes/app/src/main/res/mipmap-xhdpi/ic_launcher_round.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/AndroidStudioSplitRes/app/src/main/res/mipmap-xhdpi/ic_launcher_round.png -------------------------------------------------------------------------------- /AndroidStudioSplitRes/app/src/main/res/mipmap-xxhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/AndroidStudioSplitRes/app/src/main/res/mipmap-xxhdpi/ic_launcher.png -------------------------------------------------------------------------------- /AndroidStudioSplitRes/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/AndroidStudioSplitRes/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.png -------------------------------------------------------------------------------- /AndroidStudioSplitRes/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/AndroidStudioSplitRes/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png -------------------------------------------------------------------------------- /AndroidStudioSplitRes/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/AndroidStudioSplitRes/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png -------------------------------------------------------------------------------- /AndroidStudioSplitRes/app/src/main/res/values/colors.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | #FFBB86FC 4 | #FF6200EE 5 | #FF3700B3 6 | #FF03DAC5 7 | #FF018786 8 | #FF000000 9 | #FFFFFFFF 10 | -------------------------------------------------------------------------------- /AndroidStudioSplitRes/app/src/main/res/values/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | AndroidStudioSplitRes 3 | -------------------------------------------------------------------------------- /AndroidStudioSplitRes/approach1/.gitignore: -------------------------------------------------------------------------------- 1 | /build -------------------------------------------------------------------------------- /AndroidStudioSplitRes/approach1/src/main/java/com/example/approach2/MainActivity.kt: -------------------------------------------------------------------------------- 1 | package com.example.approach2 2 | 3 | import androidx.appcompat.app.AppCompatActivity 4 | import android.os.Bundle 5 | 6 | class MainActivity : AppCompatActivity() { 7 | override fun onCreate(savedInstanceState: Bundle?) { 8 | super.onCreate(savedInstanceState) 9 | setContentView(R.layout.activity_main) 10 | } 11 | } -------------------------------------------------------------------------------- /AndroidStudioSplitRes/approach1/src/main/java/com/example/approach2/ui/Test.java: -------------------------------------------------------------------------------- 1 | package com.example.approach2.ui; 2 | 3 | /** 4 | * @author wangzhichao 5 | * @since 2021/5/16 6 | */ 7 | public class Test { 8 | } 9 | -------------------------------------------------------------------------------- /AndroidStudioSplitRes/approach1/src/main/java/com/example/approach2/ui/home/Home.kt: -------------------------------------------------------------------------------- 1 | package com.example.approach2.ui.home 2 | 3 | /** 4 | * 5 | * @author wangzhichao 6 | * @since 2021/5/16 7 | */ -------------------------------------------------------------------------------- /AndroidStudioSplitRes/approach1/src/main/java/com/example/approach2/ui/hot/Hot.kt: -------------------------------------------------------------------------------- 1 | package com.example.approach2.ui.hot 2 | 3 | /** 4 | * 5 | * @author wangzhichao 6 | * @since 2021/5/16 7 | */ -------------------------------------------------------------------------------- /AndroidStudioSplitRes/approach1/src/main/java/com/example/approach2/ui/ringtone/Ringtone.kt: -------------------------------------------------------------------------------- 1 | package com.example.approach2.ui.ringtone 2 | 3 | /** 4 | * 5 | * @author wangzhichao 6 | * @since 2021/5/16 7 | */ -------------------------------------------------------------------------------- /AndroidStudioSplitRes/approach1/src/main/java/com/example/approach2/ui/search/Search.kt: -------------------------------------------------------------------------------- 1 | package com.example.approach2.ui.search 2 | 3 | /** 4 | * 5 | * @author wangzhichao 6 | * @since 2021/5/16 7 | */ -------------------------------------------------------------------------------- /AndroidStudioSplitRes/approach1/src/main/java/com/example/approach2/ui/settings/Settings.kt: -------------------------------------------------------------------------------- 1 | package com.example.approach2.ui.settings 2 | 3 | /** 4 | * 5 | * @author wangzhichao 6 | * @since 2021/5/16 7 | */ -------------------------------------------------------------------------------- /AndroidStudioSplitRes/approach1/src/main/java/com/example/approach2/ui/video/Video.kt: -------------------------------------------------------------------------------- 1 | package com.example.approach2.ui.video 2 | 3 | /** 4 | * 5 | * @author wangzhichao 6 | * @since 2021/5/16 7 | */ -------------------------------------------------------------------------------- /AndroidStudioSplitRes/approach1/src/main/java/com/example/approach2/ui/videoedit/VideoEdit.kt: -------------------------------------------------------------------------------- 1 | package com.example.approach2.ui.videoedit 2 | 3 | /** 4 | * 5 | * @author wangzhichao 6 | * @since 2021/5/16 7 | */ -------------------------------------------------------------------------------- /AndroidStudioSplitRes/approach1/src/main/res/mipmap-anydpi-v26/ic_launcher.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /AndroidStudioSplitRes/approach1/src/main/res/mipmap-anydpi-v26/ic_launcher_round.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /AndroidStudioSplitRes/approach1/src/main/res/mipmap-hdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/AndroidStudioSplitRes/approach1/src/main/res/mipmap-hdpi/ic_launcher.png -------------------------------------------------------------------------------- /AndroidStudioSplitRes/approach1/src/main/res/mipmap-hdpi/ic_launcher_round.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/AndroidStudioSplitRes/approach1/src/main/res/mipmap-hdpi/ic_launcher_round.png -------------------------------------------------------------------------------- /AndroidStudioSplitRes/approach1/src/main/res/mipmap-mdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/AndroidStudioSplitRes/approach1/src/main/res/mipmap-mdpi/ic_launcher.png -------------------------------------------------------------------------------- /AndroidStudioSplitRes/approach1/src/main/res/mipmap-mdpi/ic_launcher_round.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/AndroidStudioSplitRes/approach1/src/main/res/mipmap-mdpi/ic_launcher_round.png -------------------------------------------------------------------------------- /AndroidStudioSplitRes/approach1/src/main/res/mipmap-xhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/AndroidStudioSplitRes/approach1/src/main/res/mipmap-xhdpi/ic_launcher.png -------------------------------------------------------------------------------- /AndroidStudioSplitRes/approach1/src/main/res/mipmap-xhdpi/ic_launcher_round.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/AndroidStudioSplitRes/approach1/src/main/res/mipmap-xhdpi/ic_launcher_round.png -------------------------------------------------------------------------------- /AndroidStudioSplitRes/approach1/src/main/res/mipmap-xxhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/AndroidStudioSplitRes/approach1/src/main/res/mipmap-xxhdpi/ic_launcher.png -------------------------------------------------------------------------------- /AndroidStudioSplitRes/approach1/src/main/res/mipmap-xxhdpi/ic_launcher_round.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/AndroidStudioSplitRes/approach1/src/main/res/mipmap-xxhdpi/ic_launcher_round.png -------------------------------------------------------------------------------- /AndroidStudioSplitRes/approach1/src/main/res/mipmap-xxxhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/AndroidStudioSplitRes/approach1/src/main/res/mipmap-xxxhdpi/ic_launcher.png -------------------------------------------------------------------------------- /AndroidStudioSplitRes/approach1/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/AndroidStudioSplitRes/approach1/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png -------------------------------------------------------------------------------- /AndroidStudioSplitRes/approach1/src/main/res/values/colors.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | #FFBB86FC 4 | #FF6200EE 5 | #FF3700B3 6 | #FF03DAC5 7 | #FF018786 8 | #FF000000 9 | #FFFFFFFF 10 | -------------------------------------------------------------------------------- /AndroidStudioSplitRes/approach1/src/main/res/values/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | approach1 3 | -------------------------------------------------------------------------------- /AndroidStudioSplitRes/approach1/src/main/res_home/values/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | home 4 | -------------------------------------------------------------------------------- /AndroidStudioSplitRes/approach1/src/main/res_hot/values/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | hot 4 | -------------------------------------------------------------------------------- /AndroidStudioSplitRes/approach1/src/main/res_ringtone/values/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | ringtone 4 | -------------------------------------------------------------------------------- /AndroidStudioSplitRes/approach1/src/main/res_search/values/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | search 4 | -------------------------------------------------------------------------------- /AndroidStudioSplitRes/approach1/src/main/res_settings/values/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | settings 4 | -------------------------------------------------------------------------------- /AndroidStudioSplitRes/approach1/src/main/res_video/values/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | video 4 | -------------------------------------------------------------------------------- /AndroidStudioSplitRes/approach1/src/main/res_videoedit/values/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | videoedit 4 | -------------------------------------------------------------------------------- /AndroidStudioSplitRes/approach1/src/test/java/com/example/approach2/ExampleUnitTest.kt: -------------------------------------------------------------------------------- 1 | package com.example.approach2 2 | 3 | import org.junit.Test 4 | 5 | import org.junit.Assert.* 6 | 7 | /** 8 | * Example local unit test, which will execute on the development machine (host). 9 | * 10 | * See [testing documentation](http://d.android.com/tools/testing). 11 | */ 12 | class ExampleUnitTest { 13 | @Test 14 | fun addition_isCorrect() { 15 | assertEquals(4, 2 + 2) 16 | } 17 | } -------------------------------------------------------------------------------- /AndroidStudioSplitRes/approach2/.gitignore: -------------------------------------------------------------------------------- 1 | /build -------------------------------------------------------------------------------- /AndroidStudioSplitRes/approach2/src/main/java/com/example/approach2/MainActivity.kt: -------------------------------------------------------------------------------- 1 | package com.example.approach2 2 | 3 | import androidx.appcompat.app.AppCompatActivity 4 | import android.os.Bundle 5 | 6 | class MainActivity : AppCompatActivity() { 7 | override fun onCreate(savedInstanceState: Bundle?) { 8 | super.onCreate(savedInstanceState) 9 | setContentView(R.layout.activity_main) 10 | } 11 | } -------------------------------------------------------------------------------- /AndroidStudioSplitRes/approach2/src/main/java/com/example/approach2/ui/Test.java: -------------------------------------------------------------------------------- 1 | package com.example.approach2.ui; 2 | 3 | /** 4 | * @author wangzhichao 5 | * @since 2021/5/16 6 | */ 7 | public class Test { 8 | } 9 | -------------------------------------------------------------------------------- /AndroidStudioSplitRes/approach2/src/main/java/com/example/approach2/ui/home/Home.kt: -------------------------------------------------------------------------------- 1 | package com.example.approach2.ui.home 2 | 3 | /** 4 | * 5 | * @author wangzhichao 6 | * @since 2021/5/16 7 | */ -------------------------------------------------------------------------------- /AndroidStudioSplitRes/approach2/src/main/java/com/example/approach2/ui/home/res/values/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | home 4 | -------------------------------------------------------------------------------- /AndroidStudioSplitRes/approach2/src/main/java/com/example/approach2/ui/hot/Hot.kt: -------------------------------------------------------------------------------- 1 | package com.example.approach2.ui.hot 2 | 3 | /** 4 | * 5 | * @author wangzhichao 6 | * @since 2021/5/16 7 | */ -------------------------------------------------------------------------------- /AndroidStudioSplitRes/approach2/src/main/java/com/example/approach2/ui/hot/res/values/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | hot 4 | -------------------------------------------------------------------------------- /AndroidStudioSplitRes/approach2/src/main/java/com/example/approach2/ui/ringtone/Ringtone.kt: -------------------------------------------------------------------------------- 1 | package com.example.approach2.ui.ringtone 2 | 3 | /** 4 | * 5 | * @author wangzhichao 6 | * @since 2021/5/16 7 | */ -------------------------------------------------------------------------------- /AndroidStudioSplitRes/approach2/src/main/java/com/example/approach2/ui/ringtone/res/values/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | ringtone 4 | -------------------------------------------------------------------------------- /AndroidStudioSplitRes/approach2/src/main/java/com/example/approach2/ui/search/Search.kt: -------------------------------------------------------------------------------- 1 | package com.example.approach2.ui.search 2 | 3 | /** 4 | * 5 | * @author wangzhichao 6 | * @since 2021/5/16 7 | */ -------------------------------------------------------------------------------- /AndroidStudioSplitRes/approach2/src/main/java/com/example/approach2/ui/search/res/values/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | search 4 | -------------------------------------------------------------------------------- /AndroidStudioSplitRes/approach2/src/main/java/com/example/approach2/ui/settings/Settings.kt: -------------------------------------------------------------------------------- 1 | package com.example.approach2.ui.settings 2 | 3 | /** 4 | * 5 | * @author wangzhichao 6 | * @since 2021/5/16 7 | */ -------------------------------------------------------------------------------- /AndroidStudioSplitRes/approach2/src/main/java/com/example/approach2/ui/settings/res/values/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | settings 4 | -------------------------------------------------------------------------------- /AndroidStudioSplitRes/approach2/src/main/java/com/example/approach2/ui/video/Video.kt: -------------------------------------------------------------------------------- 1 | package com.example.approach2.ui.video 2 | 3 | /** 4 | * 5 | * @author wangzhichao 6 | * @since 2021/5/16 7 | */ -------------------------------------------------------------------------------- /AndroidStudioSplitRes/approach2/src/main/java/com/example/approach2/ui/video/res/values/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | video 4 | -------------------------------------------------------------------------------- /AndroidStudioSplitRes/approach2/src/main/java/com/example/approach2/ui/videoedit/VideoEdit.kt: -------------------------------------------------------------------------------- 1 | package com.example.approach2.ui.videoedit 2 | 3 | /** 4 | * 5 | * @author wangzhichao 6 | * @since 2021/5/16 7 | */ -------------------------------------------------------------------------------- /AndroidStudioSplitRes/approach2/src/main/java/com/example/approach2/ui/videoedit/res/values/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | videoedit 4 | -------------------------------------------------------------------------------- /AndroidStudioSplitRes/approach2/src/main/res/mipmap-anydpi-v26/ic_launcher.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /AndroidStudioSplitRes/approach2/src/main/res/mipmap-anydpi-v26/ic_launcher_round.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /AndroidStudioSplitRes/approach2/src/main/res/mipmap-hdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/AndroidStudioSplitRes/approach2/src/main/res/mipmap-hdpi/ic_launcher.png -------------------------------------------------------------------------------- /AndroidStudioSplitRes/approach2/src/main/res/mipmap-hdpi/ic_launcher_round.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/AndroidStudioSplitRes/approach2/src/main/res/mipmap-hdpi/ic_launcher_round.png -------------------------------------------------------------------------------- /AndroidStudioSplitRes/approach2/src/main/res/mipmap-mdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/AndroidStudioSplitRes/approach2/src/main/res/mipmap-mdpi/ic_launcher.png -------------------------------------------------------------------------------- /AndroidStudioSplitRes/approach2/src/main/res/mipmap-mdpi/ic_launcher_round.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/AndroidStudioSplitRes/approach2/src/main/res/mipmap-mdpi/ic_launcher_round.png -------------------------------------------------------------------------------- /AndroidStudioSplitRes/approach2/src/main/res/mipmap-xhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/AndroidStudioSplitRes/approach2/src/main/res/mipmap-xhdpi/ic_launcher.png -------------------------------------------------------------------------------- /AndroidStudioSplitRes/approach2/src/main/res/mipmap-xhdpi/ic_launcher_round.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/AndroidStudioSplitRes/approach2/src/main/res/mipmap-xhdpi/ic_launcher_round.png -------------------------------------------------------------------------------- /AndroidStudioSplitRes/approach2/src/main/res/mipmap-xxhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/AndroidStudioSplitRes/approach2/src/main/res/mipmap-xxhdpi/ic_launcher.png -------------------------------------------------------------------------------- /AndroidStudioSplitRes/approach2/src/main/res/mipmap-xxhdpi/ic_launcher_round.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/AndroidStudioSplitRes/approach2/src/main/res/mipmap-xxhdpi/ic_launcher_round.png -------------------------------------------------------------------------------- /AndroidStudioSplitRes/approach2/src/main/res/mipmap-xxxhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/AndroidStudioSplitRes/approach2/src/main/res/mipmap-xxxhdpi/ic_launcher.png -------------------------------------------------------------------------------- /AndroidStudioSplitRes/approach2/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/AndroidStudioSplitRes/approach2/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png -------------------------------------------------------------------------------- /AndroidStudioSplitRes/approach2/src/main/res/values/colors.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | #FFBB86FC 4 | #FF6200EE 5 | #FF3700B3 6 | #FF03DAC5 7 | #FF018786 8 | #FF000000 9 | #FFFFFFFF 10 | -------------------------------------------------------------------------------- /AndroidStudioSplitRes/approach2/src/main/res/values/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | approach2 3 | -------------------------------------------------------------------------------- /AndroidStudioSplitRes/approach2/src/test/java/com/example/approach2/ExampleUnitTest.kt: -------------------------------------------------------------------------------- 1 | package com.example.approach2 2 | 3 | import org.junit.Test 4 | 5 | import org.junit.Assert.* 6 | 7 | /** 8 | * Example local unit test, which will execute on the development machine (host). 9 | * 10 | * See [testing documentation](http://d.android.com/tools/testing). 11 | */ 12 | class ExampleUnitTest { 13 | @Test 14 | fun addition_isCorrect() { 15 | assertEquals(4, 2 + 2) 16 | } 17 | } -------------------------------------------------------------------------------- /AndroidStudioSplitRes/gradle/wrapper/gradle-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/AndroidStudioSplitRes/gradle/wrapper/gradle-wrapper.jar -------------------------------------------------------------------------------- /AndroidStudioSplitRes/gradle/wrapper/gradle-wrapper.properties: -------------------------------------------------------------------------------- 1 | #Sun May 16 19:07:35 CST 2021 2 | distributionBase=GRADLE_USER_HOME 3 | distributionPath=wrapper/dists 4 | zipStoreBase=GRADLE_USER_HOME 5 | zipStorePath=wrapper/dists 6 | distributionUrl=https\://services.gradle.org/distributions/gradle-6.5-bin.zip 7 | -------------------------------------------------------------------------------- /AndroidStudioSplitRes/settings.gradle: -------------------------------------------------------------------------------- 1 | include ':approach2' 2 | include ':approach1' 3 | include ':app' 4 | rootProject.name = "AndroidStudioSplitRes" -------------------------------------------------------------------------------- /AnnotationStudy/.gitignore: -------------------------------------------------------------------------------- 1 | *.iml 2 | .gradle 3 | /local.properties 4 | /.idea/caches 5 | /.idea/libraries 6 | /.idea/modules.xml 7 | /.idea/workspace.xml 8 | /.idea/navEditor.xml 9 | /.idea/assetWizardSettings.xml 10 | .DS_Store 11 | /build 12 | /captures 13 | .externalNativeBuild 14 | .cxx 15 | local.properties 16 | -------------------------------------------------------------------------------- /AnnotationStudy/app/.gitignore: -------------------------------------------------------------------------------- 1 | /build -------------------------------------------------------------------------------- /AnnotationStudy/app/src/main/java/com/example/annotationstudy/MusicItemTest.java: -------------------------------------------------------------------------------- 1 | package com.example.annotationstudy; 2 | 3 | import androidx.annotation.IntRange; 4 | 5 | /** 6 | * @author wangzhichao 7 | * @since 2020/12/28 8 | */ 9 | public class MusicItemTest { 10 | public static void main(String[] args) { 11 | MusicItem musicItem = new MusicItem(); 12 | musicItem.setType(2); 13 | 14 | @IntRange(from = 1) int pageNumber = 0; 15 | } 16 | } 17 | -------------------------------------------------------------------------------- /AnnotationStudy/app/src/main/java/com/example/annotationstudy/MyRunnable.java: -------------------------------------------------------------------------------- 1 | package com.example.annotationstudy; 2 | 3 | /** 4 | * @author wangzhichao 5 | * @since 2020/12/23 6 | */ 7 | public class MyRunnable implements Runnable { 8 | 9 | // 这是正确的覆盖 10 | @Override 11 | @Test 12 | public void run() { 13 | } 14 | 15 | // 这是错误的覆盖,但仍然使用了 @Override 注解 16 | // @Override 17 | // public void run2() { 18 | // } 19 | } 20 | -------------------------------------------------------------------------------- /AnnotationStudy/app/src/main/java/com/example/annotationstudy/Test.java: -------------------------------------------------------------------------------- 1 | package com.example.annotationstudy; 2 | 3 | import java.lang.annotation.ElementType; 4 | import java.lang.annotation.Retention; 5 | import java.lang.annotation.RetentionPolicy; 6 | import java.lang.annotation.Target; 7 | 8 | /** 9 | * @author wangzhichao 10 | * @since 2020/12/23 11 | */ 12 | @Target(ElementType.METHOD) 13 | @Retention(RetentionPolicy.RUNTIME) 14 | public @interface Test { 15 | } 16 | -------------------------------------------------------------------------------- /AnnotationStudy/app/src/main/res/mipmap-anydpi-v26/ic_launcher.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /AnnotationStudy/app/src/main/res/mipmap-anydpi-v26/ic_launcher_round.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /AnnotationStudy/app/src/main/res/mipmap-hdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/AnnotationStudy/app/src/main/res/mipmap-hdpi/ic_launcher.png -------------------------------------------------------------------------------- /AnnotationStudy/app/src/main/res/mipmap-hdpi/ic_launcher_round.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/AnnotationStudy/app/src/main/res/mipmap-hdpi/ic_launcher_round.png -------------------------------------------------------------------------------- /AnnotationStudy/app/src/main/res/mipmap-mdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/AnnotationStudy/app/src/main/res/mipmap-mdpi/ic_launcher.png -------------------------------------------------------------------------------- /AnnotationStudy/app/src/main/res/mipmap-mdpi/ic_launcher_round.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/AnnotationStudy/app/src/main/res/mipmap-mdpi/ic_launcher_round.png -------------------------------------------------------------------------------- /AnnotationStudy/app/src/main/res/mipmap-xhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/AnnotationStudy/app/src/main/res/mipmap-xhdpi/ic_launcher.png -------------------------------------------------------------------------------- /AnnotationStudy/app/src/main/res/mipmap-xhdpi/ic_launcher_round.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/AnnotationStudy/app/src/main/res/mipmap-xhdpi/ic_launcher_round.png -------------------------------------------------------------------------------- /AnnotationStudy/app/src/main/res/mipmap-xxhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/AnnotationStudy/app/src/main/res/mipmap-xxhdpi/ic_launcher.png -------------------------------------------------------------------------------- /AnnotationStudy/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/AnnotationStudy/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.png -------------------------------------------------------------------------------- /AnnotationStudy/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/AnnotationStudy/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png -------------------------------------------------------------------------------- /AnnotationStudy/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/AnnotationStudy/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png -------------------------------------------------------------------------------- /AnnotationStudy/app/src/main/res/values/colors.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | #FFBB86FC 4 | #FF6200EE 5 | #FF3700B3 6 | #FF03DAC5 7 | #FF018786 8 | #FF000000 9 | #FFFFFFFF 10 | -------------------------------------------------------------------------------- /AnnotationStudy/app/src/main/res/values/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | AnnotationStudy 3 | Peter 4 | -------------------------------------------------------------------------------- /AnnotationStudy/bindview-annotations/.gitignore: -------------------------------------------------------------------------------- 1 | /build -------------------------------------------------------------------------------- /AnnotationStudy/bindview-annotations/build.gradle: -------------------------------------------------------------------------------- 1 | plugins { 2 | id 'java-library' 3 | } 4 | 5 | dependencies { 6 | implementation 'androidx.annotation:annotation:1.1.0' 7 | } 8 | java { 9 | sourceCompatibility = JavaVersion.VERSION_1_7 10 | targetCompatibility = JavaVersion.VERSION_1_7 11 | } 12 | 13 | // java控制台输出中文乱码 14 | tasks.withType(JavaCompile) { 15 | options.encoding = "UTF-8" 16 | } -------------------------------------------------------------------------------- /AnnotationStudy/bindview-api/.gitignore: -------------------------------------------------------------------------------- 1 | /build -------------------------------------------------------------------------------- /AnnotationStudy/bindview-api/consumer-rules.pro: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/AnnotationStudy/bindview-api/consumer-rules.pro -------------------------------------------------------------------------------- /AnnotationStudy/bindview-api/src/main/AndroidManifest.xml: -------------------------------------------------------------------------------- 1 | 2 | 4 | 5 | -------------------------------------------------------------------------------- /AnnotationStudy/bindview-api/src/main/java/com/example/bindview_api/BindViewInterface.java: -------------------------------------------------------------------------------- 1 | package com.example.bindview_api; 2 | 3 | /** 4 | * @author wangzhichao 5 | * @since 2020/12/29 6 | */ 7 | public interface BindViewInterface { 8 | void bind(Object target); 9 | } 10 | -------------------------------------------------------------------------------- /AnnotationStudy/bindview-compiler/.gitignore: -------------------------------------------------------------------------------- 1 | /build -------------------------------------------------------------------------------- /AnnotationStudy/bindview/.gitignore: -------------------------------------------------------------------------------- 1 | /build -------------------------------------------------------------------------------- /AnnotationStudy/bindview/src/main/res/mipmap-anydpi-v26/ic_launcher.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /AnnotationStudy/bindview/src/main/res/mipmap-anydpi-v26/ic_launcher_round.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /AnnotationStudy/bindview/src/main/res/mipmap-hdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/AnnotationStudy/bindview/src/main/res/mipmap-hdpi/ic_launcher.png -------------------------------------------------------------------------------- /AnnotationStudy/bindview/src/main/res/mipmap-hdpi/ic_launcher_round.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/AnnotationStudy/bindview/src/main/res/mipmap-hdpi/ic_launcher_round.png -------------------------------------------------------------------------------- /AnnotationStudy/bindview/src/main/res/mipmap-mdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/AnnotationStudy/bindview/src/main/res/mipmap-mdpi/ic_launcher.png -------------------------------------------------------------------------------- /AnnotationStudy/bindview/src/main/res/mipmap-mdpi/ic_launcher_round.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/AnnotationStudy/bindview/src/main/res/mipmap-mdpi/ic_launcher_round.png -------------------------------------------------------------------------------- /AnnotationStudy/bindview/src/main/res/mipmap-xhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/AnnotationStudy/bindview/src/main/res/mipmap-xhdpi/ic_launcher.png -------------------------------------------------------------------------------- /AnnotationStudy/bindview/src/main/res/mipmap-xhdpi/ic_launcher_round.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/AnnotationStudy/bindview/src/main/res/mipmap-xhdpi/ic_launcher_round.png -------------------------------------------------------------------------------- /AnnotationStudy/bindview/src/main/res/mipmap-xxhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/AnnotationStudy/bindview/src/main/res/mipmap-xxhdpi/ic_launcher.png -------------------------------------------------------------------------------- /AnnotationStudy/bindview/src/main/res/mipmap-xxhdpi/ic_launcher_round.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/AnnotationStudy/bindview/src/main/res/mipmap-xxhdpi/ic_launcher_round.png -------------------------------------------------------------------------------- /AnnotationStudy/bindview/src/main/res/mipmap-xxxhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/AnnotationStudy/bindview/src/main/res/mipmap-xxxhdpi/ic_launcher.png -------------------------------------------------------------------------------- /AnnotationStudy/bindview/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/AnnotationStudy/bindview/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png -------------------------------------------------------------------------------- /AnnotationStudy/bindview/src/main/res/values/colors.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | #FFBB86FC 4 | #FF6200EE 5 | #FF3700B3 6 | #FF03DAC5 7 | #FF018786 8 | #FF000000 9 | #FFFFFFFF 10 | -------------------------------------------------------------------------------- /AnnotationStudy/bindview/src/main/res/values/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | bindview 3 | -------------------------------------------------------------------------------- /AnnotationStudy/gradle/wrapper/gradle-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/AnnotationStudy/gradle/wrapper/gradle-wrapper.jar -------------------------------------------------------------------------------- /AnnotationStudy/gradle/wrapper/gradle-wrapper.properties: -------------------------------------------------------------------------------- 1 | #Wed Dec 23 06:08:38 CST 2020 2 | distributionBase=GRADLE_USER_HOME 3 | distributionPath=wrapper/dists 4 | zipStoreBase=GRADLE_USER_HOME 5 | zipStorePath=wrapper/dists 6 | distributionUrl=https\://services.gradle.org/distributions/gradle-5.1.1-bin.zip -------------------------------------------------------------------------------- /AnnotationStudy/settings.gradle: -------------------------------------------------------------------------------- 1 | include ':bindview-api' 2 | include ':bindview' 3 | include ':bindview-compiler' 4 | include ':bindview-annotations' 5 | include ':app' 6 | rootProject.name = "AnnotationStudy" -------------------------------------------------------------------------------- /CheckThreadStudy/.gitignore: -------------------------------------------------------------------------------- 1 | *.iml 2 | .gradle 3 | /local.properties 4 | /.idea/caches 5 | /.idea/libraries 6 | /.idea/modules.xml 7 | /.idea/workspace.xml 8 | /.idea/navEditor.xml 9 | /.idea/assetWizardSettings.xml 10 | .DS_Store 11 | /build 12 | /captures 13 | .externalNativeBuild 14 | .cxx 15 | local.properties 16 | -------------------------------------------------------------------------------- /CheckThreadStudy/README.md: -------------------------------------------------------------------------------- 1 | # 参考 2 | 3 | - [子线程更新UI全解](https://mp.weixin.qq.com/s/Y9Dqs7eBmoewgwf2e60uOw) 4 | - [【每日一技】Android 12 源码已出,如何便捷地阅读 AOSP 源码与调试系统进程](https://juejin.cn/post/7015454128033759245) -------------------------------------------------------------------------------- /CheckThreadStudy/app/.gitignore: -------------------------------------------------------------------------------- 1 | /build -------------------------------------------------------------------------------- /CheckThreadStudy/app/src/main/res/mipmap-anydpi-v26/ic_launcher.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /CheckThreadStudy/app/src/main/res/mipmap-anydpi-v26/ic_launcher_round.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /CheckThreadStudy/app/src/main/res/mipmap-hdpi/ic_launcher.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/CheckThreadStudy/app/src/main/res/mipmap-hdpi/ic_launcher.webp -------------------------------------------------------------------------------- /CheckThreadStudy/app/src/main/res/mipmap-hdpi/ic_launcher_round.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/CheckThreadStudy/app/src/main/res/mipmap-hdpi/ic_launcher_round.webp -------------------------------------------------------------------------------- /CheckThreadStudy/app/src/main/res/mipmap-mdpi/ic_launcher.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/CheckThreadStudy/app/src/main/res/mipmap-mdpi/ic_launcher.webp -------------------------------------------------------------------------------- /CheckThreadStudy/app/src/main/res/mipmap-mdpi/ic_launcher_round.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/CheckThreadStudy/app/src/main/res/mipmap-mdpi/ic_launcher_round.webp -------------------------------------------------------------------------------- /CheckThreadStudy/app/src/main/res/mipmap-xhdpi/ic_launcher.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/CheckThreadStudy/app/src/main/res/mipmap-xhdpi/ic_launcher.webp -------------------------------------------------------------------------------- /CheckThreadStudy/app/src/main/res/mipmap-xhdpi/ic_launcher_round.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/CheckThreadStudy/app/src/main/res/mipmap-xhdpi/ic_launcher_round.webp -------------------------------------------------------------------------------- /CheckThreadStudy/app/src/main/res/mipmap-xxhdpi/ic_launcher.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/CheckThreadStudy/app/src/main/res/mipmap-xxhdpi/ic_launcher.webp -------------------------------------------------------------------------------- /CheckThreadStudy/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/CheckThreadStudy/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.webp -------------------------------------------------------------------------------- /CheckThreadStudy/app/src/main/res/mipmap-xxxhdpi/ic_launcher.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/CheckThreadStudy/app/src/main/res/mipmap-xxxhdpi/ic_launcher.webp -------------------------------------------------------------------------------- /CheckThreadStudy/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/CheckThreadStudy/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.webp -------------------------------------------------------------------------------- /CheckThreadStudy/app/src/main/res/values/colors.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | #FFBB86FC 4 | #FF6200EE 5 | #FF3700B3 6 | #FF03DAC5 7 | #FF018786 8 | #FF000000 9 | #FFFFFFFF 10 | -------------------------------------------------------------------------------- /CheckThreadStudy/app/src/main/res/values/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | CheckThreadStudy 3 | -------------------------------------------------------------------------------- /CheckThreadStudy/build.gradle: -------------------------------------------------------------------------------- 1 | // Top-level build file where you can add configuration options common to all sub-projects/modules. 2 | plugins { 3 | id 'com.android.application' version '7.2.1' apply false 4 | id 'com.android.library' version '7.2.1' apply false 5 | id 'org.jetbrains.kotlin.android' version '1.6.10' apply false 6 | } 7 | 8 | task clean(type: Delete) { 9 | delete rootProject.buildDir 10 | } -------------------------------------------------------------------------------- /CheckThreadStudy/gradle/wrapper/gradle-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/CheckThreadStudy/gradle/wrapper/gradle-wrapper.jar -------------------------------------------------------------------------------- /CheckThreadStudy/gradle/wrapper/gradle-wrapper.properties: -------------------------------------------------------------------------------- 1 | #Fri Jul 22 06:30:18 CST 2022 2 | distributionBase=GRADLE_USER_HOME 3 | distributionUrl=https\://services.gradle.org/distributions/gradle-7.3.3-bin.zip 4 | distributionPath=wrapper/dists 5 | zipStorePath=wrapper/dists 6 | zipStoreBase=GRADLE_USER_HOME 7 | -------------------------------------------------------------------------------- /CheckThreadStudy/settings.gradle: -------------------------------------------------------------------------------- 1 | pluginManagement { 2 | repositories { 3 | gradlePluginPortal() 4 | google() 5 | mavenCentral() 6 | } 7 | } 8 | dependencyResolutionManagement { 9 | repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS) 10 | repositories { 11 | google() 12 | mavenCentral() 13 | } 14 | } 15 | rootProject.name = "CheckThreadStudy" 16 | include ':app' 17 | -------------------------------------------------------------------------------- /CustomAttributesStudy/.gitignore: -------------------------------------------------------------------------------- 1 | *.iml 2 | .gradle 3 | /local.properties 4 | /.idea/caches 5 | /.idea/libraries 6 | /.idea/modules.xml 7 | /.idea/workspace.xml 8 | /.idea/navEditor.xml 9 | /.idea/assetWizardSettings.xml 10 | .DS_Store 11 | /build 12 | /captures 13 | .externalNativeBuild 14 | .cxx 15 | local.properties 16 | -------------------------------------------------------------------------------- /CustomAttributesStudy/app/.gitignore: -------------------------------------------------------------------------------- 1 | /build -------------------------------------------------------------------------------- /CustomAttributesStudy/app/src/main/res/mipmap-anydpi-v26/ic_launcher.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /CustomAttributesStudy/app/src/main/res/mipmap-anydpi-v26/ic_launcher_round.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /CustomAttributesStudy/app/src/main/res/mipmap-hdpi/ic_launcher.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/CustomAttributesStudy/app/src/main/res/mipmap-hdpi/ic_launcher.webp -------------------------------------------------------------------------------- /CustomAttributesStudy/app/src/main/res/mipmap-hdpi/ic_launcher_round.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/CustomAttributesStudy/app/src/main/res/mipmap-hdpi/ic_launcher_round.webp -------------------------------------------------------------------------------- /CustomAttributesStudy/app/src/main/res/mipmap-mdpi/ic_launcher.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/CustomAttributesStudy/app/src/main/res/mipmap-mdpi/ic_launcher.webp -------------------------------------------------------------------------------- /CustomAttributesStudy/app/src/main/res/mipmap-mdpi/ic_launcher_round.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/CustomAttributesStudy/app/src/main/res/mipmap-mdpi/ic_launcher_round.webp -------------------------------------------------------------------------------- /CustomAttributesStudy/app/src/main/res/mipmap-xhdpi/ic_launcher.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/CustomAttributesStudy/app/src/main/res/mipmap-xhdpi/ic_launcher.webp -------------------------------------------------------------------------------- /CustomAttributesStudy/app/src/main/res/mipmap-xhdpi/ic_launcher_round.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/CustomAttributesStudy/app/src/main/res/mipmap-xhdpi/ic_launcher_round.webp -------------------------------------------------------------------------------- /CustomAttributesStudy/app/src/main/res/mipmap-xxhdpi/ic_launcher.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/CustomAttributesStudy/app/src/main/res/mipmap-xxhdpi/ic_launcher.webp -------------------------------------------------------------------------------- /CustomAttributesStudy/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/CustomAttributesStudy/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.webp -------------------------------------------------------------------------------- /CustomAttributesStudy/app/src/main/res/mipmap-xxxhdpi/ic_launcher.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/CustomAttributesStudy/app/src/main/res/mipmap-xxxhdpi/ic_launcher.webp -------------------------------------------------------------------------------- /CustomAttributesStudy/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/CustomAttributesStudy/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.webp -------------------------------------------------------------------------------- /CustomAttributesStudy/app/src/main/res/values/bools.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | true 4 | false 5 | -------------------------------------------------------------------------------- /CustomAttributesStudy/app/src/main/res/values/colors.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | #FFBB86FC 4 | #FF6200EE 5 | #FF3700B3 6 | #FF03DAC5 7 | #FF018786 8 | #FF000000 9 | #FFFFFFFF 10 | -------------------------------------------------------------------------------- /CustomAttributesStudy/app/src/main/res/values/dimens.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 50% 4 | 50% 5 | 24dp 6 | 16dp 7 | 89.5 8 | 100dp 9 | -------------------------------------------------------------------------------- /CustomAttributesStudy/app/src/main/res/values/ids.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /CustomAttributesStudy/app/src/main/res/values/integers.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 1000 4 | -------------------------------------------------------------------------------- /CustomAttributesStudy/app/src/main/res/values/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | CustomAttributesStudy 3 | 100 4 | willwaywang6加油 5 | willwaywang6 6 | -------------------------------------------------------------------------------- /CustomAttributesStudy/app/src/main/res/values/styles.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 8 | -------------------------------------------------------------------------------- /CustomAttributesStudy/build.gradle: -------------------------------------------------------------------------------- 1 | // Top-level build file where you can add configuration options common to all sub-projects/modules. 2 | plugins { 3 | id 'com.android.application' version '7.2.1' apply false 4 | id 'com.android.library' version '7.2.1' apply false 5 | id 'org.jetbrains.kotlin.android' version '1.6.10' apply false 6 | } 7 | 8 | task clean(type: Delete) { 9 | delete rootProject.buildDir 10 | } -------------------------------------------------------------------------------- /CustomAttributesStudy/gradle/wrapper/gradle-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/CustomAttributesStudy/gradle/wrapper/gradle-wrapper.jar -------------------------------------------------------------------------------- /CustomAttributesStudy/gradle/wrapper/gradle-wrapper.properties: -------------------------------------------------------------------------------- 1 | #Sat Jul 23 10:09:39 CST 2022 2 | distributionBase=GRADLE_USER_HOME 3 | distributionUrl=https\://services.gradle.org/distributions/gradle-7.3.3-bin.zip 4 | distributionPath=wrapper/dists 5 | zipStorePath=wrapper/dists 6 | zipStoreBase=GRADLE_USER_HOME 7 | -------------------------------------------------------------------------------- /CustomAttributesStudy/settings.gradle: -------------------------------------------------------------------------------- 1 | pluginManagement { 2 | repositories { 3 | gradlePluginPortal() 4 | google() 5 | mavenCentral() 6 | } 7 | } 8 | dependencyResolutionManagement { 9 | repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS) 10 | repositories { 11 | google() 12 | mavenCentral() 13 | } 14 | } 15 | rootProject.name = "CustomAttributesStudy" 16 | include ':app' 17 | -------------------------------------------------------------------------------- /EventBusStudy/.gitignore: -------------------------------------------------------------------------------- 1 | *.iml 2 | .gradle 3 | /local.properties 4 | /.idea/caches 5 | /.idea/libraries 6 | /.idea/modules.xml 7 | /.idea/workspace.xml 8 | /.idea/navEditor.xml 9 | /.idea/assetWizardSettings.xml 10 | .DS_Store 11 | /build 12 | /captures 13 | .externalNativeBuild 14 | .cxx 15 | local.properties 16 | -------------------------------------------------------------------------------- /EventBusStudy/app/.gitignore: -------------------------------------------------------------------------------- 1 | /build -------------------------------------------------------------------------------- /EventBusStudy/app/src/main/java/com/example/eventbusstudy/Event.kt: -------------------------------------------------------------------------------- 1 | package com.example.eventbusstudy 2 | 3 | /** 4 | * 5 | * @author wangzhichao 6 | * @since 2022/4/9 7 | */ 8 | data class Event(val value: Int) 9 | -------------------------------------------------------------------------------- /EventBusStudy/app/src/main/java/com/example/eventbusstudy/MessageEvent.kt: -------------------------------------------------------------------------------- 1 | package com.example.eventbusstudy 2 | 3 | /** 4 | * 5 | * @author wangzhichao 6 | * @since 2022/4/6 7 | */ 8 | data class MessageEvent(val fromThread: String) 9 | -------------------------------------------------------------------------------- /EventBusStudy/app/src/main/res/mipmap-anydpi-v26/ic_launcher.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /EventBusStudy/app/src/main/res/mipmap-anydpi-v26/ic_launcher_round.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /EventBusStudy/app/src/main/res/mipmap-hdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/EventBusStudy/app/src/main/res/mipmap-hdpi/ic_launcher.png -------------------------------------------------------------------------------- /EventBusStudy/app/src/main/res/mipmap-hdpi/ic_launcher_round.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/EventBusStudy/app/src/main/res/mipmap-hdpi/ic_launcher_round.png -------------------------------------------------------------------------------- /EventBusStudy/app/src/main/res/mipmap-mdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/EventBusStudy/app/src/main/res/mipmap-mdpi/ic_launcher.png -------------------------------------------------------------------------------- /EventBusStudy/app/src/main/res/mipmap-mdpi/ic_launcher_round.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/EventBusStudy/app/src/main/res/mipmap-mdpi/ic_launcher_round.png -------------------------------------------------------------------------------- /EventBusStudy/app/src/main/res/mipmap-xhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/EventBusStudy/app/src/main/res/mipmap-xhdpi/ic_launcher.png -------------------------------------------------------------------------------- /EventBusStudy/app/src/main/res/mipmap-xhdpi/ic_launcher_round.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/EventBusStudy/app/src/main/res/mipmap-xhdpi/ic_launcher_round.png -------------------------------------------------------------------------------- /EventBusStudy/app/src/main/res/mipmap-xxhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/EventBusStudy/app/src/main/res/mipmap-xxhdpi/ic_launcher.png -------------------------------------------------------------------------------- /EventBusStudy/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/EventBusStudy/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.png -------------------------------------------------------------------------------- /EventBusStudy/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/EventBusStudy/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png -------------------------------------------------------------------------------- /EventBusStudy/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/EventBusStudy/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png -------------------------------------------------------------------------------- /EventBusStudy/app/src/main/res/values/colors.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | #FFBB86FC 4 | #FF6200EE 5 | #FF3700B3 6 | #FF03DAC5 7 | #FF018786 8 | #FF000000 9 | #FFFFFFFF 10 | -------------------------------------------------------------------------------- /EventBusStudy/app/src/main/res/values/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | eventbusstudy 3 | -------------------------------------------------------------------------------- /EventBusStudy/gradle/wrapper/gradle-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/EventBusStudy/gradle/wrapper/gradle-wrapper.jar -------------------------------------------------------------------------------- /EventBusStudy/gradle/wrapper/gradle-wrapper.properties: -------------------------------------------------------------------------------- 1 | #Fri Jun 11 07:33:26 CST 2021 2 | distributionBase=GRADLE_USER_HOME 3 | distributionPath=wrapper/dists 4 | zipStoreBase=GRADLE_USER_HOME 5 | zipStorePath=wrapper/dists 6 | distributionUrl=https\://services.gradle.org/distributions/gradle-6.7.1-all.zip 7 | -------------------------------------------------------------------------------- /EventBusStudy/settings.gradle: -------------------------------------------------------------------------------- 1 | include ':app' 2 | rootProject.name = "EventBusStudy" -------------------------------------------------------------------------------- /FlowLayout/.gitignore: -------------------------------------------------------------------------------- 1 | *.iml 2 | .gradle 3 | /local.properties 4 | /.idea/caches 5 | /.idea/libraries 6 | /.idea/modules.xml 7 | /.idea/workspace.xml 8 | /.idea/navEditor.xml 9 | /.idea/assetWizardSettings.xml 10 | .DS_Store 11 | /build 12 | /captures 13 | .externalNativeBuild 14 | .cxx 15 | local.properties 16 | -------------------------------------------------------------------------------- /FlowLayout/app/.gitignore: -------------------------------------------------------------------------------- 1 | /build -------------------------------------------------------------------------------- /FlowLayout/app/src/main/java/com/blog/flowlayout/IntExtensions.kt: -------------------------------------------------------------------------------- 1 | package com.blog.flowlayout 2 | 3 | import android.content.res.Resources 4 | import android.util.TypedValue 5 | 6 | fun Int.dp2px(): Int { 7 | return TypedValue.applyDimension(TypedValue.COMPLEX_UNIT_DIP, this.toFloat(), Resources.getSystem().displayMetrics).toInt() 8 | } -------------------------------------------------------------------------------- /FlowLayout/app/src/main/res/drawable/shape_button_circular.xml: -------------------------------------------------------------------------------- 1 | 2 | 4 | 5 | 9 | 10 | 11 | -------------------------------------------------------------------------------- /FlowLayout/app/src/main/res/mipmap-anydpi-v26/ic_launcher.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /FlowLayout/app/src/main/res/mipmap-anydpi-v26/ic_launcher_round.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /FlowLayout/app/src/main/res/mipmap-hdpi/ic_launcher.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/FlowLayout/app/src/main/res/mipmap-hdpi/ic_launcher.webp -------------------------------------------------------------------------------- /FlowLayout/app/src/main/res/mipmap-hdpi/ic_launcher_round.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/FlowLayout/app/src/main/res/mipmap-hdpi/ic_launcher_round.webp -------------------------------------------------------------------------------- /FlowLayout/app/src/main/res/mipmap-mdpi/ic_launcher.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/FlowLayout/app/src/main/res/mipmap-mdpi/ic_launcher.webp -------------------------------------------------------------------------------- /FlowLayout/app/src/main/res/mipmap-mdpi/ic_launcher_round.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/FlowLayout/app/src/main/res/mipmap-mdpi/ic_launcher_round.webp -------------------------------------------------------------------------------- /FlowLayout/app/src/main/res/mipmap-xhdpi/ic_launcher.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/FlowLayout/app/src/main/res/mipmap-xhdpi/ic_launcher.webp -------------------------------------------------------------------------------- /FlowLayout/app/src/main/res/mipmap-xhdpi/ic_launcher_round.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/FlowLayout/app/src/main/res/mipmap-xhdpi/ic_launcher_round.webp -------------------------------------------------------------------------------- /FlowLayout/app/src/main/res/mipmap-xxhdpi/ic_launcher.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/FlowLayout/app/src/main/res/mipmap-xxhdpi/ic_launcher.webp -------------------------------------------------------------------------------- /FlowLayout/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/FlowLayout/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.webp -------------------------------------------------------------------------------- /FlowLayout/app/src/main/res/mipmap-xxxhdpi/ic_launcher.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/FlowLayout/app/src/main/res/mipmap-xxxhdpi/ic_launcher.webp -------------------------------------------------------------------------------- /FlowLayout/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/FlowLayout/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.webp -------------------------------------------------------------------------------- /FlowLayout/app/src/main/res/values/colors.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | #FFBB86FC 4 | #FF6200EE 5 | #FF3700B3 6 | #FF03DAC5 7 | #FF018786 8 | #FF000000 9 | #FFFFFFFF 10 | -------------------------------------------------------------------------------- /FlowLayout/app/src/test/java/com/example/flowlayout/ExampleUnitTest.kt: -------------------------------------------------------------------------------- 1 | package com.example.flowlayout 2 | 3 | import org.junit.Test 4 | 5 | import org.junit.Assert.* 6 | 7 | /** 8 | * Example local unit test, which will execute on the development machine (host). 9 | * 10 | * See [testing documentation](http://d.android.com/tools/testing). 11 | */ 12 | class ExampleUnitTest { 13 | @Test 14 | fun addition_isCorrect() { 15 | assertEquals(4, 2 + 2) 16 | } 17 | } -------------------------------------------------------------------------------- /FlowLayout/gradle/wrapper/gradle-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/FlowLayout/gradle/wrapper/gradle-wrapper.jar -------------------------------------------------------------------------------- /FlowLayout/gradle/wrapper/gradle-wrapper.properties: -------------------------------------------------------------------------------- 1 | #Sun Oct 10 09:45:32 CST 2021 2 | distributionBase=GRADLE_USER_HOME 3 | distributionUrl=https\://services.gradle.org/distributions/gradle-6.5-all.zip 4 | distributionPath=wrapper/dists 5 | zipStorePath=wrapper/dists 6 | zipStoreBase=GRADLE_USER_HOME 7 | -------------------------------------------------------------------------------- /FlowLayout/lib/.gitignore: -------------------------------------------------------------------------------- 1 | /build -------------------------------------------------------------------------------- /FlowLayout/lib/consumer-rules.pro: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/FlowLayout/lib/consumer-rules.pro -------------------------------------------------------------------------------- /FlowLayout/lib/src/main/AndroidManifest.xml: -------------------------------------------------------------------------------- 1 | 2 | 4 | 5 | -------------------------------------------------------------------------------- /FlowLayout/lib/src/test/java/com/example/lib/ExampleUnitTest.kt: -------------------------------------------------------------------------------- 1 | package com.example.lib 2 | 3 | import org.junit.Test 4 | 5 | import org.junit.Assert.* 6 | 7 | /** 8 | * Example local unit test, which will execute on the development machine (host). 9 | * 10 | * See [testing documentation](http://d.android.com/tools/testing). 11 | */ 12 | class ExampleUnitTest { 13 | @Test 14 | fun addition_isCorrect() { 15 | assertEquals(4, 2 + 2) 16 | } 17 | } -------------------------------------------------------------------------------- /FlowLayout/settings.gradle: -------------------------------------------------------------------------------- 1 | include ':lib' 2 | rootProject.name='FlowLayout' 3 | include ':app' 4 | -------------------------------------------------------------------------------- /FluidColorfulFrame/.gitignore: -------------------------------------------------------------------------------- 1 | *.iml 2 | .gradle 3 | /local.properties 4 | /.idea/caches 5 | /.idea/libraries 6 | /.idea/modules.xml 7 | /.idea/workspace.xml 8 | /.idea/navEditor.xml 9 | /.idea/assetWizardSettings.xml 10 | .DS_Store 11 | /build 12 | /captures 13 | .externalNativeBuild 14 | .cxx 15 | local.properties 16 | -------------------------------------------------------------------------------- /FluidColorfulFrame/app/.gitignore: -------------------------------------------------------------------------------- 1 | /build -------------------------------------------------------------------------------- /FluidColorfulFrame/app/src/main/java/com/example/fluidcolorfulframe/Extensions.kt: -------------------------------------------------------------------------------- 1 | package com.example.fluidcolorfulframe 2 | 3 | import android.content.res.Resources 4 | import android.util.TypedValue 5 | 6 | /** 7 | * 8 | * @author wangzhichao 9 | * @since 2022/9/4 10 | */ 11 | val Float.dp 12 | get() = TypedValue.applyDimension( 13 | TypedValue.COMPLEX_UNIT_DIP, 14 | this, 15 | Resources.getSystem().displayMetrics) 16 | val Int.dp 17 | get() = this.toFloat().dp -------------------------------------------------------------------------------- /FluidColorfulFrame/app/src/main/res/drawable-xxhdpi/road.jpeg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/FluidColorfulFrame/app/src/main/res/drawable-xxhdpi/road.jpeg -------------------------------------------------------------------------------- /FluidColorfulFrame/app/src/main/res/mipmap-anydpi-v26/ic_launcher.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /FluidColorfulFrame/app/src/main/res/mipmap-anydpi-v26/ic_launcher_round.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /FluidColorfulFrame/app/src/main/res/mipmap-hdpi/ic_launcher.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/FluidColorfulFrame/app/src/main/res/mipmap-hdpi/ic_launcher.webp -------------------------------------------------------------------------------- /FluidColorfulFrame/app/src/main/res/mipmap-hdpi/ic_launcher_round.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/FluidColorfulFrame/app/src/main/res/mipmap-hdpi/ic_launcher_round.webp -------------------------------------------------------------------------------- /FluidColorfulFrame/app/src/main/res/mipmap-mdpi/ic_launcher.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/FluidColorfulFrame/app/src/main/res/mipmap-mdpi/ic_launcher.webp -------------------------------------------------------------------------------- /FluidColorfulFrame/app/src/main/res/mipmap-mdpi/ic_launcher_round.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/FluidColorfulFrame/app/src/main/res/mipmap-mdpi/ic_launcher_round.webp -------------------------------------------------------------------------------- /FluidColorfulFrame/app/src/main/res/mipmap-xhdpi/ic_launcher.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/FluidColorfulFrame/app/src/main/res/mipmap-xhdpi/ic_launcher.webp -------------------------------------------------------------------------------- /FluidColorfulFrame/app/src/main/res/mipmap-xhdpi/ic_launcher_round.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/FluidColorfulFrame/app/src/main/res/mipmap-xhdpi/ic_launcher_round.webp -------------------------------------------------------------------------------- /FluidColorfulFrame/app/src/main/res/mipmap-xxhdpi/ic_launcher.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/FluidColorfulFrame/app/src/main/res/mipmap-xxhdpi/ic_launcher.webp -------------------------------------------------------------------------------- /FluidColorfulFrame/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/FluidColorfulFrame/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.webp -------------------------------------------------------------------------------- /FluidColorfulFrame/app/src/main/res/mipmap-xxxhdpi/ic_launcher.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/FluidColorfulFrame/app/src/main/res/mipmap-xxxhdpi/ic_launcher.webp -------------------------------------------------------------------------------- /FluidColorfulFrame/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/FluidColorfulFrame/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.webp -------------------------------------------------------------------------------- /FluidColorfulFrame/app/src/main/res/values/colors.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | #FFBB86FC 4 | #FF6200EE 5 | #FF3700B3 6 | #FF03DAC5 7 | #FF018786 8 | #FF000000 9 | #FFFFFFFF 10 | -------------------------------------------------------------------------------- /FluidColorfulFrame/app/src/main/res/values/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | FluidColorfulFrame 3 | -------------------------------------------------------------------------------- /FluidColorfulFrame/build.gradle: -------------------------------------------------------------------------------- 1 | // Top-level build file where you can add configuration options common to all sub-projects/modules. 2 | plugins { 3 | id 'com.android.application' version '7.2.2' apply false 4 | id 'com.android.library' version '7.2.2' apply false 5 | id 'org.jetbrains.kotlin.android' version '1.6.10' apply false 6 | } 7 | 8 | task clean(type: Delete) { 9 | delete rootProject.buildDir 10 | } -------------------------------------------------------------------------------- /FluidColorfulFrame/gradle/wrapper/gradle-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/FluidColorfulFrame/gradle/wrapper/gradle-wrapper.jar -------------------------------------------------------------------------------- /FluidColorfulFrame/gradle/wrapper/gradle-wrapper.properties: -------------------------------------------------------------------------------- 1 | #Sun Sep 04 11:33:47 CST 2022 2 | distributionBase=GRADLE_USER_HOME 3 | distributionUrl=https\://services.gradle.org/distributions/gradle-7.3.3-bin.zip 4 | distributionPath=wrapper/dists 5 | zipStorePath=wrapper/dists 6 | zipStoreBase=GRADLE_USER_HOME 7 | -------------------------------------------------------------------------------- /FluidColorfulFrame/settings.gradle: -------------------------------------------------------------------------------- 1 | pluginManagement { 2 | repositories { 3 | gradlePluginPortal() 4 | google() 5 | mavenCentral() 6 | } 7 | } 8 | dependencyResolutionManagement { 9 | repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS) 10 | repositories { 11 | google() 12 | mavenCentral() 13 | } 14 | } 15 | rootProject.name = "FluidColorfulFrame" 16 | include ':app' 17 | -------------------------------------------------------------------------------- /HandlerStudy/.gitignore: -------------------------------------------------------------------------------- 1 | *.iml 2 | .gradle 3 | /local.properties 4 | /.idea/caches 5 | /.idea/libraries 6 | /.idea/modules.xml 7 | /.idea/workspace.xml 8 | /.idea/navEditor.xml 9 | /.idea/assetWizardSettings.xml 10 | .DS_Store 11 | /build 12 | /captures 13 | .externalNativeBuild 14 | .cxx 15 | -------------------------------------------------------------------------------- /HandlerStudy/app/.gitignore: -------------------------------------------------------------------------------- 1 | /build -------------------------------------------------------------------------------- /HandlerStudy/app/src/main/res/mipmap-anydpi-v26/ic_launcher.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /HandlerStudy/app/src/main/res/mipmap-anydpi-v26/ic_launcher_round.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /HandlerStudy/app/src/main/res/mipmap-hdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/HandlerStudy/app/src/main/res/mipmap-hdpi/ic_launcher.png -------------------------------------------------------------------------------- /HandlerStudy/app/src/main/res/mipmap-hdpi/ic_launcher_round.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/HandlerStudy/app/src/main/res/mipmap-hdpi/ic_launcher_round.png -------------------------------------------------------------------------------- /HandlerStudy/app/src/main/res/mipmap-mdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/HandlerStudy/app/src/main/res/mipmap-mdpi/ic_launcher.png -------------------------------------------------------------------------------- /HandlerStudy/app/src/main/res/mipmap-mdpi/ic_launcher_round.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/HandlerStudy/app/src/main/res/mipmap-mdpi/ic_launcher_round.png -------------------------------------------------------------------------------- /HandlerStudy/app/src/main/res/mipmap-xhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/HandlerStudy/app/src/main/res/mipmap-xhdpi/ic_launcher.png -------------------------------------------------------------------------------- /HandlerStudy/app/src/main/res/mipmap-xhdpi/ic_launcher_round.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/HandlerStudy/app/src/main/res/mipmap-xhdpi/ic_launcher_round.png -------------------------------------------------------------------------------- /HandlerStudy/app/src/main/res/mipmap-xxhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/HandlerStudy/app/src/main/res/mipmap-xxhdpi/ic_launcher.png -------------------------------------------------------------------------------- /HandlerStudy/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/HandlerStudy/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.png -------------------------------------------------------------------------------- /HandlerStudy/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/HandlerStudy/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png -------------------------------------------------------------------------------- /HandlerStudy/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/HandlerStudy/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png -------------------------------------------------------------------------------- /HandlerStudy/app/src/main/res/values/colors.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | #6200EE 4 | #3700B3 5 | #03DAC5 6 | -------------------------------------------------------------------------------- /HandlerStudy/app/src/main/res/values/styles.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 9 | 10 | -------------------------------------------------------------------------------- /HandlerStudy/app/src/test/java/com/example/handlerstudy/ExampleUnitTest.kt: -------------------------------------------------------------------------------- 1 | package com.example.handlerstudy 2 | 3 | import org.junit.Test 4 | 5 | import org.junit.Assert.* 6 | 7 | /** 8 | * Example local unit test, which will execute on the development machine (host). 9 | * 10 | * See [testing documentation](http://d.android.com/tools/testing). 11 | */ 12 | class ExampleUnitTest { 13 | @Test 14 | fun addition_isCorrect() { 15 | assertEquals(4, 2 + 2) 16 | } 17 | } -------------------------------------------------------------------------------- /HandlerStudy/gradle/wrapper/gradle-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/HandlerStudy/gradle/wrapper/gradle-wrapper.jar -------------------------------------------------------------------------------- /HandlerStudy/gradle/wrapper/gradle-wrapper.properties: -------------------------------------------------------------------------------- 1 | #Mon Aug 24 13:45:49 CST 2020 2 | distributionBase=GRADLE_USER_HOME 3 | distributionPath=wrapper/dists 4 | zipStoreBase=GRADLE_USER_HOME 5 | zipStorePath=wrapper/dists 6 | distributionUrl=https\://services.gradle.org/distributions/gradle-6.1.1-all.zip 7 | -------------------------------------------------------------------------------- /HandlerStudy/settings.gradle: -------------------------------------------------------------------------------- 1 | include ':app' 2 | rootProject.name = "HandlerStudy" -------------------------------------------------------------------------------- /JNAStudy/.gitignore: -------------------------------------------------------------------------------- 1 | *.iml 2 | .gradle 3 | /local.properties 4 | /.idea/caches 5 | /.idea/libraries 6 | /.idea/modules.xml 7 | /.idea/workspace.xml 8 | /.idea/navEditor.xml 9 | /.idea/assetWizardSettings.xml 10 | .DS_Store 11 | /build 12 | /captures 13 | .externalNativeBuild 14 | .cxx 15 | local.properties 16 | -------------------------------------------------------------------------------- /JNAStudy/build.gradle: -------------------------------------------------------------------------------- 1 | // Top-level build file where you can add configuration options common to all sub-projects/modules. 2 | plugins { 3 | id 'com.android.application' version '7.1.2' apply false 4 | id 'com.android.library' version '7.1.2' apply false 5 | } 6 | 7 | task clean(type: Delete) { 8 | delete rootProject.buildDir 9 | } -------------------------------------------------------------------------------- /JNAStudy/gradle/wrapper/gradle-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/JNAStudy/gradle/wrapper/gradle-wrapper.jar -------------------------------------------------------------------------------- /JNAStudy/gradle/wrapper/gradle-wrapper.properties: -------------------------------------------------------------------------------- 1 | #Thu Mar 10 10:00:03 CST 2022 2 | distributionBase=GRADLE_USER_HOME 3 | distributionUrl=https\://services.gradle.org/distributions/gradle-7.2-bin.zip 4 | distributionPath=wrapper/dists 5 | zipStorePath=wrapper/dists 6 | zipStoreBase=GRADLE_USER_HOME 7 | -------------------------------------------------------------------------------- /JNAStudy/jna/.gitignore: -------------------------------------------------------------------------------- 1 | /build -------------------------------------------------------------------------------- /JNAStudy/jna/src/main/java/com/example/jna/DownloadFinishCallback.java: -------------------------------------------------------------------------------- 1 | package com.example.jna; 2 | 3 | import com.sun.jna.Callback; 4 | 5 | /** 6 | * @author wangzhichao 7 | * @since 2022/3/11 8 | */ 9 | public interface DownloadFinishCallback extends Callback { 10 | void onDownloadFinish(); 11 | } 12 | -------------------------------------------------------------------------------- /JNAStudy/jna/src/main/java/com/example/jna/DownloadProgressCallback.java: -------------------------------------------------------------------------------- 1 | package com.example.jna; 2 | 3 | import com.sun.jna.Callback; 4 | 5 | /** 6 | * @author wangzhichao 7 | * @since 2022/3/11 8 | */ 9 | public interface DownloadProgressCallback extends Callback { 10 | void onDownloadProgress(int progress); 11 | } 12 | -------------------------------------------------------------------------------- /JNAStudy/jna/src/main/java/com/example/jna/DownloadStartCallback.java: -------------------------------------------------------------------------------- 1 | package com.example.jna; 2 | 3 | import com.sun.jna.Callback; 4 | 5 | /** 6 | * @author wangzhichao 7 | * @since 2022/3/11 8 | */ 9 | public interface DownloadStartCallback extends Callback { 10 | void onDownloadStart(); 11 | } 12 | -------------------------------------------------------------------------------- /JNAStudy/jna/src/main/jniLibs/arm64-v8a/libjnidispatch.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/JNAStudy/jna/src/main/jniLibs/arm64-v8a/libjnidispatch.so -------------------------------------------------------------------------------- /JNAStudy/jna/src/main/jniLibs/armeabi-v7a/libjnidispatch.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/JNAStudy/jna/src/main/jniLibs/armeabi-v7a/libjnidispatch.so -------------------------------------------------------------------------------- /JNAStudy/jna/src/main/jniLibs/x86/libjnidispatch.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/JNAStudy/jna/src/main/jniLibs/x86/libjnidispatch.so -------------------------------------------------------------------------------- /JNAStudy/jna/src/main/jniLibs/x86_64/libjnidispatch.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/JNAStudy/jna/src/main/jniLibs/x86_64/libjnidispatch.so -------------------------------------------------------------------------------- /JNAStudy/jna/src/main/res/mipmap-anydpi-v26/ic_launcher.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /JNAStudy/jna/src/main/res/mipmap-anydpi-v26/ic_launcher_round.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /JNAStudy/jna/src/main/res/mipmap-hdpi/ic_launcher.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/JNAStudy/jna/src/main/res/mipmap-hdpi/ic_launcher.webp -------------------------------------------------------------------------------- /JNAStudy/jna/src/main/res/mipmap-hdpi/ic_launcher_round.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/JNAStudy/jna/src/main/res/mipmap-hdpi/ic_launcher_round.webp -------------------------------------------------------------------------------- /JNAStudy/jna/src/main/res/mipmap-mdpi/ic_launcher.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/JNAStudy/jna/src/main/res/mipmap-mdpi/ic_launcher.webp -------------------------------------------------------------------------------- /JNAStudy/jna/src/main/res/mipmap-mdpi/ic_launcher_round.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/JNAStudy/jna/src/main/res/mipmap-mdpi/ic_launcher_round.webp -------------------------------------------------------------------------------- /JNAStudy/jna/src/main/res/mipmap-xhdpi/ic_launcher.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/JNAStudy/jna/src/main/res/mipmap-xhdpi/ic_launcher.webp -------------------------------------------------------------------------------- /JNAStudy/jna/src/main/res/mipmap-xhdpi/ic_launcher_round.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/JNAStudy/jna/src/main/res/mipmap-xhdpi/ic_launcher_round.webp -------------------------------------------------------------------------------- /JNAStudy/jna/src/main/res/mipmap-xxhdpi/ic_launcher.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/JNAStudy/jna/src/main/res/mipmap-xxhdpi/ic_launcher.webp -------------------------------------------------------------------------------- /JNAStudy/jna/src/main/res/mipmap-xxhdpi/ic_launcher_round.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/JNAStudy/jna/src/main/res/mipmap-xxhdpi/ic_launcher_round.webp -------------------------------------------------------------------------------- /JNAStudy/jna/src/main/res/mipmap-xxxhdpi/ic_launcher.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/JNAStudy/jna/src/main/res/mipmap-xxxhdpi/ic_launcher.webp -------------------------------------------------------------------------------- /JNAStudy/jna/src/main/res/mipmap-xxxhdpi/ic_launcher_round.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/JNAStudy/jna/src/main/res/mipmap-xxxhdpi/ic_launcher_round.webp -------------------------------------------------------------------------------- /JNAStudy/jna/src/main/res/values/colors.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | #FFBB86FC 4 | #FF6200EE 5 | #FF3700B3 6 | #FF03DAC5 7 | #FF018786 8 | #FF000000 9 | #FFFFFFFF 10 | -------------------------------------------------------------------------------- /JNAStudy/jna/src/main/res/values/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | JNA 3 | -------------------------------------------------------------------------------- /JNAStudy/jni/.gitignore: -------------------------------------------------------------------------------- 1 | /build -------------------------------------------------------------------------------- /JNAStudy/jni/src/main/cpp/sum.cpp: -------------------------------------------------------------------------------- 1 | // 2 | // Created by 39233 on 2022/3/10. 3 | // 4 | #include "sum.h" 5 | #include "../../../../jna/src/main/cpp/sum.h" 6 | 7 | 8 | int add(int x, int y) { 9 | return x + y; 10 | } 11 | -------------------------------------------------------------------------------- /JNAStudy/jni/src/main/cpp/sum.h: -------------------------------------------------------------------------------- 1 | // 2 | // Created by 39233 on 2022/3/10. 3 | // 4 | 5 | #ifndef _WER_H 6 | #define _WER_H 7 | 8 | #ifdef __cplusplus 9 | extern "C" { 10 | #endif 11 | 12 | int add(int x, int y); 13 | 14 | struct User { 15 | char* name; 16 | int height; 17 | double weight; 18 | }; 19 | 20 | #ifdef __cplusplus 21 | } 22 | #endif 23 | #endif //_WER_H 24 | -------------------------------------------------------------------------------- /JNAStudy/jni/src/main/java/com/example/jni/User.java: -------------------------------------------------------------------------------- 1 | package com.example.jni; 2 | 3 | 4 | public class User { 5 | public String name; 6 | public int height; 7 | public double weight; 8 | 9 | public User(String name, int height, double weight) { 10 | this.name = name; 11 | this.height = height; 12 | this.weight = weight; 13 | } 14 | } -------------------------------------------------------------------------------- /JNAStudy/jni/src/main/res/mipmap-anydpi-v26/ic_launcher.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /JNAStudy/jni/src/main/res/mipmap-anydpi-v26/ic_launcher_round.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /JNAStudy/jni/src/main/res/mipmap-hdpi/ic_launcher.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/JNAStudy/jni/src/main/res/mipmap-hdpi/ic_launcher.webp -------------------------------------------------------------------------------- /JNAStudy/jni/src/main/res/mipmap-hdpi/ic_launcher_round.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/JNAStudy/jni/src/main/res/mipmap-hdpi/ic_launcher_round.webp -------------------------------------------------------------------------------- /JNAStudy/jni/src/main/res/mipmap-mdpi/ic_launcher.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/JNAStudy/jni/src/main/res/mipmap-mdpi/ic_launcher.webp -------------------------------------------------------------------------------- /JNAStudy/jni/src/main/res/mipmap-mdpi/ic_launcher_round.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/JNAStudy/jni/src/main/res/mipmap-mdpi/ic_launcher_round.webp -------------------------------------------------------------------------------- /JNAStudy/jni/src/main/res/mipmap-xhdpi/ic_launcher.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/JNAStudy/jni/src/main/res/mipmap-xhdpi/ic_launcher.webp -------------------------------------------------------------------------------- /JNAStudy/jni/src/main/res/mipmap-xhdpi/ic_launcher_round.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/JNAStudy/jni/src/main/res/mipmap-xhdpi/ic_launcher_round.webp -------------------------------------------------------------------------------- /JNAStudy/jni/src/main/res/mipmap-xxhdpi/ic_launcher.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/JNAStudy/jni/src/main/res/mipmap-xxhdpi/ic_launcher.webp -------------------------------------------------------------------------------- /JNAStudy/jni/src/main/res/mipmap-xxhdpi/ic_launcher_round.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/JNAStudy/jni/src/main/res/mipmap-xxhdpi/ic_launcher_round.webp -------------------------------------------------------------------------------- /JNAStudy/jni/src/main/res/mipmap-xxxhdpi/ic_launcher.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/JNAStudy/jni/src/main/res/mipmap-xxxhdpi/ic_launcher.webp -------------------------------------------------------------------------------- /JNAStudy/jni/src/main/res/mipmap-xxxhdpi/ic_launcher_round.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/JNAStudy/jni/src/main/res/mipmap-xxxhdpi/ic_launcher_round.webp -------------------------------------------------------------------------------- /JNAStudy/jni/src/main/res/values/colors.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | #FFBB86FC 4 | #FF6200EE 5 | #FF3700B3 6 | #FF03DAC5 7 | #FF018786 8 | #FF000000 9 | #FFFFFFFF 10 | -------------------------------------------------------------------------------- /JNAStudy/jni/src/main/res/values/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | JNI 3 | -------------------------------------------------------------------------------- /JNAStudy/settings.gradle: -------------------------------------------------------------------------------- 1 | pluginManagement { 2 | repositories { 3 | gradlePluginPortal() 4 | google() 5 | mavenCentral() 6 | } 7 | } 8 | dependencyResolutionManagement { 9 | repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS) 10 | repositories { 11 | google() 12 | mavenCentral() 13 | } 14 | } 15 | rootProject.name = "JNAStudy" 16 | include ':jna' 17 | include ':jni' 18 | -------------------------------------------------------------------------------- /JavaIOStudy/.gitignore: -------------------------------------------------------------------------------- 1 | *.iml 2 | .gradle 3 | /local.properties 4 | /.idea/caches 5 | /.idea/libraries 6 | /.idea/modules.xml 7 | /.idea/workspace.xml 8 | /.idea/navEditor.xml 9 | /.idea/assetWizardSettings.xml 10 | .DS_Store 11 | /build 12 | /captures 13 | .externalNativeBuild 14 | .cxx 15 | local.properties 16 | filecopy.txt 17 | -------------------------------------------------------------------------------- /JavaIOStudy/a.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/JavaIOStudy/a.txt -------------------------------------------------------------------------------- /JavaIOStudy/app/.gitignore: -------------------------------------------------------------------------------- 1 | /build -------------------------------------------------------------------------------- /JavaIOStudy/app/src/main/res/mipmap-anydpi-v26/ic_launcher.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /JavaIOStudy/app/src/main/res/mipmap-anydpi-v26/ic_launcher_round.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /JavaIOStudy/app/src/main/res/mipmap-hdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/JavaIOStudy/app/src/main/res/mipmap-hdpi/ic_launcher.png -------------------------------------------------------------------------------- /JavaIOStudy/app/src/main/res/mipmap-hdpi/ic_launcher_round.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/JavaIOStudy/app/src/main/res/mipmap-hdpi/ic_launcher_round.png -------------------------------------------------------------------------------- /JavaIOStudy/app/src/main/res/mipmap-mdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/JavaIOStudy/app/src/main/res/mipmap-mdpi/ic_launcher.png -------------------------------------------------------------------------------- /JavaIOStudy/app/src/main/res/mipmap-mdpi/ic_launcher_round.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/JavaIOStudy/app/src/main/res/mipmap-mdpi/ic_launcher_round.png -------------------------------------------------------------------------------- /JavaIOStudy/app/src/main/res/mipmap-mdpi/point.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/JavaIOStudy/app/src/main/res/mipmap-mdpi/point.webp -------------------------------------------------------------------------------- /JavaIOStudy/app/src/main/res/mipmap-xhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/JavaIOStudy/app/src/main/res/mipmap-xhdpi/ic_launcher.png -------------------------------------------------------------------------------- /JavaIOStudy/app/src/main/res/mipmap-xhdpi/ic_launcher_round.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/JavaIOStudy/app/src/main/res/mipmap-xhdpi/ic_launcher_round.png -------------------------------------------------------------------------------- /JavaIOStudy/app/src/main/res/mipmap-xxhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/JavaIOStudy/app/src/main/res/mipmap-xxhdpi/ic_launcher.png -------------------------------------------------------------------------------- /JavaIOStudy/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/JavaIOStudy/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.png -------------------------------------------------------------------------------- /JavaIOStudy/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/JavaIOStudy/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png -------------------------------------------------------------------------------- /JavaIOStudy/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/JavaIOStudy/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png -------------------------------------------------------------------------------- /JavaIOStudy/app/src/main/res/values/colors.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | #FFBB86FC 4 | #FF6200EE 5 | #FF3700B3 6 | #FF03DAC5 7 | #FF018786 8 | #FF000000 9 | #FFFFFFFF 10 | -------------------------------------------------------------------------------- /JavaIOStudy/app/src/main/res/values/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | JavaIOStudy 3 | -------------------------------------------------------------------------------- /JavaIOStudy/diry/a.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/JavaIOStudy/diry/a.txt -------------------------------------------------------------------------------- /JavaIOStudy/file.txt: -------------------------------------------------------------------------------- 1 | Hello world! 2 | 你好,世界! 3 | How are you? 4 | 你好吗? 5 | Where are you from? 6 | 你来自哪里? -------------------------------------------------------------------------------- /JavaIOStudy/gradle/wrapper/gradle-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/JavaIOStudy/gradle/wrapper/gradle-wrapper.jar -------------------------------------------------------------------------------- /JavaIOStudy/gradle/wrapper/gradle-wrapper.properties: -------------------------------------------------------------------------------- 1 | #Thu Aug 12 07:35:00 CST 2021 2 | distributionBase=GRADLE_USER_HOME 3 | distributionPath=wrapper/dists 4 | zipStoreBase=GRADLE_USER_HOME 5 | zipStorePath=wrapper/dists 6 | distributionUrl=https\://services.gradle.org/distributions/gradle-6.5-bin.zip 7 | -------------------------------------------------------------------------------- /JavaIOStudy/javaio/.gitignore: -------------------------------------------------------------------------------- 1 | /build -------------------------------------------------------------------------------- /JavaIOStudy/javaio/build.gradle: -------------------------------------------------------------------------------- 1 | plugins { 2 | id 'java-library' 3 | } 4 | 5 | java { 6 | sourceCompatibility = JavaVersion.VERSION_1_8 7 | targetCompatibility = JavaVersion.VERSION_1_8 8 | } -------------------------------------------------------------------------------- /JavaIOStudy/javaio/src/main/java/com/example/javaio/MyClass.java: -------------------------------------------------------------------------------- 1 | package com.example.javaio; 2 | 3 | public class MyClass { 4 | } -------------------------------------------------------------------------------- /JavaIOStudy/point.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/JavaIOStudy/point.webp -------------------------------------------------------------------------------- /JavaIOStudy/settings.gradle: -------------------------------------------------------------------------------- 1 | include ':javaio' 2 | include ':app' 3 | rootProject.name = "JavaIOStudy" -------------------------------------------------------------------------------- /JsonStudy/.gitignore: -------------------------------------------------------------------------------- 1 | *.iml 2 | .gradle 3 | /local.properties 4 | /.idea/caches 5 | /.idea/libraries 6 | /.idea/modules.xml 7 | /.idea/workspace.xml 8 | /.idea/navEditor.xml 9 | /.idea/assetWizardSettings.xml 10 | .DS_Store 11 | /build 12 | /captures 13 | .externalNativeBuild 14 | .cxx 15 | -------------------------------------------------------------------------------- /JsonStudy/app/.gitignore: -------------------------------------------------------------------------------- 1 | /build 2 | -------------------------------------------------------------------------------- /JsonStudy/app/src/main/res/mipmap-anydpi-v26/ic_launcher.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /JsonStudy/app/src/main/res/mipmap-anydpi-v26/ic_launcher_round.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /JsonStudy/app/src/main/res/mipmap-hdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/JsonStudy/app/src/main/res/mipmap-hdpi/ic_launcher.png -------------------------------------------------------------------------------- /JsonStudy/app/src/main/res/mipmap-hdpi/ic_launcher_round.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/JsonStudy/app/src/main/res/mipmap-hdpi/ic_launcher_round.png -------------------------------------------------------------------------------- /JsonStudy/app/src/main/res/mipmap-mdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/JsonStudy/app/src/main/res/mipmap-mdpi/ic_launcher.png -------------------------------------------------------------------------------- /JsonStudy/app/src/main/res/mipmap-mdpi/ic_launcher_round.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/JsonStudy/app/src/main/res/mipmap-mdpi/ic_launcher_round.png -------------------------------------------------------------------------------- /JsonStudy/app/src/main/res/mipmap-xhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/JsonStudy/app/src/main/res/mipmap-xhdpi/ic_launcher.png -------------------------------------------------------------------------------- /JsonStudy/app/src/main/res/mipmap-xhdpi/ic_launcher_round.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/JsonStudy/app/src/main/res/mipmap-xhdpi/ic_launcher_round.png -------------------------------------------------------------------------------- /JsonStudy/app/src/main/res/mipmap-xxhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/JsonStudy/app/src/main/res/mipmap-xxhdpi/ic_launcher.png -------------------------------------------------------------------------------- /JsonStudy/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/JsonStudy/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.png -------------------------------------------------------------------------------- /JsonStudy/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/JsonStudy/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png -------------------------------------------------------------------------------- /JsonStudy/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/JsonStudy/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png -------------------------------------------------------------------------------- /JsonStudy/app/src/main/res/values/colors.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | #6200EE 4 | #3700B3 5 | #03DAC5 6 | 7 | -------------------------------------------------------------------------------- /JsonStudy/app/src/main/res/values/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | JsonStudy 3 | 4 | -------------------------------------------------------------------------------- /JsonStudy/app/src/main/res/values/styles.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 10 | 11 | 12 | -------------------------------------------------------------------------------- /JsonStudy/gradle/wrapper/gradle-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/JsonStudy/gradle/wrapper/gradle-wrapper.jar -------------------------------------------------------------------------------- /JsonStudy/gradle/wrapper/gradle-wrapper.properties: -------------------------------------------------------------------------------- 1 | #Wed Feb 24 10:35:39 CST 2021 2 | distributionBase=GRADLE_USER_HOME 3 | distributionPath=wrapper/dists 4 | zipStoreBase=GRADLE_USER_HOME 5 | zipStorePath=wrapper/dists 6 | distributionUrl=https\://services.gradle.org/distributions/gradle-6.5-bin.zip 7 | -------------------------------------------------------------------------------- /JsonStudy/lib/.gitignore: -------------------------------------------------------------------------------- 1 | /build -------------------------------------------------------------------------------- /JsonStudy/lib/build.gradle: -------------------------------------------------------------------------------- 1 | plugins { 2 | id 'java-library' 3 | } 4 | 5 | java { 6 | sourceCompatibility = JavaVersion.VERSION_1_7 7 | targetCompatibility = JavaVersion.VERSION_1_7 8 | } 9 | 10 | dependencies { 11 | api 'com.google.code.gson:gson:2.8.6' 12 | } 13 | -------------------------------------------------------------------------------- /JsonStudy/lib/src/main/java/com/example/lib/_01_basic/Response.java: -------------------------------------------------------------------------------- 1 | package com.example.lib._01_basic; 2 | 3 | class Response { 4 | public int code; 5 | public String message; 6 | public T data; 7 | 8 | @Override 9 | public String toString() { 10 | return "Response{" + 11 | "code=" + code + 12 | ", message='" + message + '\'' + 13 | ", data=" + data + 14 | '}'; 15 | } 16 | } -------------------------------------------------------------------------------- /JsonStudy/lib/src/main/java/com/example/lib/_03_builder/RequestBean.java: -------------------------------------------------------------------------------- 1 | package com.example.lib._03_builder; 2 | 3 | /** 4 | * @author wangzhichao 5 | * @since 2021/5/30 6 | */ 7 | public class RequestBean { 8 | /** 9 | * 文章 id 10 | */ 11 | public int id; 12 | /** 13 | * 文章标题 14 | */ 15 | public String title; 16 | /** 17 | * 用户喜欢,则为 true;用户不喜欢,则为 false;用户没有选择,则为 null 18 | */ 19 | public Boolean action; 20 | } 21 | -------------------------------------------------------------------------------- /JsonStudy/lib/src/main/java/com/example/lib/_03_builder/SimpleBean.java: -------------------------------------------------------------------------------- 1 | package com.example.lib._03_builder; 2 | 3 | /** 4 | * @author wangzhichao 5 | * @since 2021/5/30 6 | */ 7 | public class SimpleBean { 8 | public String title; 9 | public String message; 10 | } 11 | -------------------------------------------------------------------------------- /JsonStudy/lib/src/main/java/com/example/lib/_03_builder/Test02.java: -------------------------------------------------------------------------------- 1 | package com.example.lib._03_builder; 2 | 3 | /** 4 | * @author wangzhichao 5 | * @since 2021/5/30 6 | */ 7 | public class Test02 { 8 | public static void main(String[] args) { 9 | 10 | } 11 | } 12 | -------------------------------------------------------------------------------- /JsonStudy/lib/src/main/java/com/example/lib/_03_builder/UserBean.java: -------------------------------------------------------------------------------- 1 | package com.example.lib._03_builder; 2 | 3 | /** 4 | * @author wangzhichao 5 | * @since 2021/5/30 6 | */ 7 | public class UserBean { 8 | public String userid; 9 | public String username; 10 | public String password; 11 | public int age; 12 | public int height; 13 | public double salary; 14 | public String address; 15 | } 16 | -------------------------------------------------------------------------------- /JsonStudy/lib/src/main/java/com/example/lib/_04_typeadapter/Commodity.java: -------------------------------------------------------------------------------- 1 | package com.example.lib._04_typeadapter; 2 | 3 | /** 4 | * 商品 5 | * 6 | * @author wangzhichao 7 | * @since 2021/5/30 8 | */ 9 | public class Commodity { 10 | public String id; 11 | public String name; 12 | 13 | public Commodity(String id, String name) { 14 | this.id = id; 15 | this.name = name; 16 | } 17 | } 18 | -------------------------------------------------------------------------------- /JsonStudy/lib/src/main/java/com/example/lib/_04_typeadapter/Context.java: -------------------------------------------------------------------------------- 1 | package com.example.lib._04_typeadapter; 2 | 3 | /** 4 | * @author wangzhichao 5 | * @since 2021/5/31 6 | */ 7 | public class Context { 8 | } 9 | -------------------------------------------------------------------------------- /JsonStudy/lib/src/main/java/com/example/lib/_04_typeadapter/Shopper.java: -------------------------------------------------------------------------------- 1 | package com.example.lib._04_typeadapter; 2 | 3 | /** 4 | * 买家 5 | * 6 | * @author wangzhichao 7 | * @since 2021/5/30 8 | */ 9 | public class Shopper { 10 | public String userid; 11 | public String username; 12 | 13 | public Shopper(String userid, String username) { 14 | this.userid = userid; 15 | this.username = username; 16 | } 17 | } 18 | -------------------------------------------------------------------------------- /JsonStudy/settings.gradle: -------------------------------------------------------------------------------- 1 | include ':lib' 2 | rootProject.name='JsonStudy' 3 | include ':app' -------------------------------------------------------------------------------- /KotlinByStudy/.gitignore: -------------------------------------------------------------------------------- 1 | *.iml 2 | .gradle 3 | /local.properties 4 | /.idea/caches 5 | /.idea/libraries 6 | /.idea/modules.xml 7 | /.idea/workspace.xml 8 | /.idea/navEditor.xml 9 | /.idea/assetWizardSettings.xml 10 | .DS_Store 11 | /build 12 | /captures 13 | .externalNativeBuild 14 | .cxx 15 | local.properties 16 | -------------------------------------------------------------------------------- /KotlinByStudy/app/.gitignore: -------------------------------------------------------------------------------- 1 | /build -------------------------------------------------------------------------------- /KotlinByStudy/app/src/main/java/com/example/kotlinbystudy/MainActivity.kt: -------------------------------------------------------------------------------- 1 | package com.example.kotlinbystudy 2 | 3 | import androidx.appcompat.app.AppCompatActivity 4 | import android.os.Bundle 5 | 6 | class MainActivity : AppCompatActivity() { 7 | override fun onCreate(savedInstanceState: Bundle?) { 8 | super.onCreate(savedInstanceState) 9 | setContentView(R.layout.activity_main) 10 | } 11 | } -------------------------------------------------------------------------------- /KotlinByStudy/app/src/main/res/mipmap-anydpi-v26/ic_launcher.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /KotlinByStudy/app/src/main/res/mipmap-anydpi-v26/ic_launcher_round.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /KotlinByStudy/app/src/main/res/mipmap-hdpi/ic_launcher.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/KotlinByStudy/app/src/main/res/mipmap-hdpi/ic_launcher.webp -------------------------------------------------------------------------------- /KotlinByStudy/app/src/main/res/mipmap-hdpi/ic_launcher_round.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/KotlinByStudy/app/src/main/res/mipmap-hdpi/ic_launcher_round.webp -------------------------------------------------------------------------------- /KotlinByStudy/app/src/main/res/mipmap-mdpi/ic_launcher.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/KotlinByStudy/app/src/main/res/mipmap-mdpi/ic_launcher.webp -------------------------------------------------------------------------------- /KotlinByStudy/app/src/main/res/mipmap-mdpi/ic_launcher_round.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/KotlinByStudy/app/src/main/res/mipmap-mdpi/ic_launcher_round.webp -------------------------------------------------------------------------------- /KotlinByStudy/app/src/main/res/mipmap-xhdpi/ic_launcher.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/KotlinByStudy/app/src/main/res/mipmap-xhdpi/ic_launcher.webp -------------------------------------------------------------------------------- /KotlinByStudy/app/src/main/res/mipmap-xhdpi/ic_launcher_round.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/KotlinByStudy/app/src/main/res/mipmap-xhdpi/ic_launcher_round.webp -------------------------------------------------------------------------------- /KotlinByStudy/app/src/main/res/mipmap-xxhdpi/ic_launcher.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/KotlinByStudy/app/src/main/res/mipmap-xxhdpi/ic_launcher.webp -------------------------------------------------------------------------------- /KotlinByStudy/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/KotlinByStudy/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.webp -------------------------------------------------------------------------------- /KotlinByStudy/app/src/main/res/mipmap-xxxhdpi/ic_launcher.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/KotlinByStudy/app/src/main/res/mipmap-xxxhdpi/ic_launcher.webp -------------------------------------------------------------------------------- /KotlinByStudy/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/KotlinByStudy/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.webp -------------------------------------------------------------------------------- /KotlinByStudy/app/src/main/res/values/colors.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | #FFBB86FC 4 | #FF6200EE 5 | #FF3700B3 6 | #FF03DAC5 7 | #FF018786 8 | #FF000000 9 | #FFFFFFFF 10 | -------------------------------------------------------------------------------- /KotlinByStudy/app/src/main/res/values/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | KotlinByStudy 3 | -------------------------------------------------------------------------------- /KotlinByStudy/app/src/test/java/com/example/kotlinbystudy/ExampleUnitTest.kt: -------------------------------------------------------------------------------- 1 | package com.example.kotlinbystudy 2 | 3 | import org.junit.Test 4 | 5 | import org.junit.Assert.* 6 | 7 | /** 8 | * Example local unit test, which will execute on the development machine (host). 9 | * 10 | * See [testing documentation](http://d.android.com/tools/testing). 11 | */ 12 | class ExampleUnitTest { 13 | @Test 14 | fun addition_isCorrect() { 15 | assertEquals(4, 2 + 2) 16 | } 17 | } -------------------------------------------------------------------------------- /KotlinByStudy/gradle/wrapper/gradle-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/KotlinByStudy/gradle/wrapper/gradle-wrapper.jar -------------------------------------------------------------------------------- /KotlinByStudy/gradle/wrapper/gradle-wrapper.properties: -------------------------------------------------------------------------------- 1 | #Sat Oct 16 10:42:28 CST 2021 2 | distributionBase=GRADLE_USER_HOME 3 | distributionUrl=https\://services.gradle.org/distributions/gradle-7.0.2-bin.zip 4 | distributionPath=wrapper/dists 5 | zipStorePath=wrapper/dists 6 | zipStoreBase=GRADLE_USER_HOME 7 | -------------------------------------------------------------------------------- /KotlinByStudy/lib/.gitignore: -------------------------------------------------------------------------------- 1 | /build -------------------------------------------------------------------------------- /KotlinByStudy/lib/build.gradle: -------------------------------------------------------------------------------- 1 | plugins { 2 | id 'java-library' 3 | id 'kotlin' 4 | } 5 | 6 | java { 7 | sourceCompatibility = JavaVersion.VERSION_1_7 8 | targetCompatibility = JavaVersion.VERSION_1_7 9 | } -------------------------------------------------------------------------------- /KotlinByStudy/lib/src/main/java/com/example/lib/_1_class_delegation/CountingSet4.kt: -------------------------------------------------------------------------------- 1 | package com.example.lib._1_class_delegation 2 | 3 | class CountingSet4( 4 | ) : MutableSet by HashSet() { 5 | 6 | } -------------------------------------------------------------------------------- /KotlinByStudy/lib/src/main/java/com/example/lib/_2_property_delegation/example1/Delegate5Extension.kt: -------------------------------------------------------------------------------- 1 | package com.example.lib._2_property_delegation.example1 2 | 3 | import kotlin.reflect.KProperty 4 | 5 | operator fun Delegate5.setValue(thisRef: Any, property: KProperty<*>, value: String) = 6 | set(thisRef, value) 7 | 8 | operator fun Delegate5.getValue(thisRef: Any, property: KProperty<*>) = get() -------------------------------------------------------------------------------- /KotlinByStudy/lib/src/main/java/com/example/lib/_2_property_delegation/example1/Student.kt: -------------------------------------------------------------------------------- 1 | package com.example.lib._2_property_delegation.example1 2 | 3 | class Student { 4 | var name: String = "" 5 | 6 | var address: String = "" 7 | } -------------------------------------------------------------------------------- /KotlinByStudy/lib/src/main/java/com/example/lib/_2_property_delegation/example3/Person1.kt: -------------------------------------------------------------------------------- 1 | package com.example.lib._2_property_delegation.example3 2 | 3 | class Person1 { 4 | var newName: Int = 0 5 | 6 | @Deprecated("Use 'newName' instead", ReplaceWith("newName")) 7 | var oldName: Int by this::newName 8 | } -------------------------------------------------------------------------------- /KotlinByStudy/lib/src/main/java/com/example/lib/_2_property_delegation/example4/Person1.kt: -------------------------------------------------------------------------------- 1 | package com.example.lib._2_property_delegation.example4 2 | 3 | class Person1(val map: Map) { 4 | val name: String by map 5 | val age: Int by map 6 | } 7 | 8 | fun main() { 9 | val person1 = Person1( 10 | mapOf( 11 | "name" to "Peter", 12 | "age" to 33 13 | ) 14 | ) 15 | println(person1.name) 16 | println(person1.age) 17 | } -------------------------------------------------------------------------------- /KotlinByStudy/settings.gradle: -------------------------------------------------------------------------------- 1 | dependencyResolutionManagement { 2 | repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS) 3 | repositories { 4 | google() 5 | mavenCentral() 6 | jcenter() // Warning: this repository is going to shut down soon 7 | } 8 | } 9 | rootProject.name = "KotlinByStudy" 10 | include ':app' 11 | include ':lib' 12 | -------------------------------------------------------------------------------- /KotlinExtensionFunctionStudy/.gitignore: -------------------------------------------------------------------------------- 1 | *.iml 2 | .gradle 3 | /local.properties 4 | /.idea/caches 5 | /.idea/libraries 6 | /.idea/modules.xml 7 | /.idea/workspace.xml 8 | /.idea/navEditor.xml 9 | /.idea/assetWizardSettings.xml 10 | .DS_Store 11 | /build 12 | /captures 13 | .externalNativeBuild 14 | .cxx 15 | local.properties 16 | -------------------------------------------------------------------------------- /KotlinExtensionFunctionStudy/app/.gitignore: -------------------------------------------------------------------------------- 1 | /build -------------------------------------------------------------------------------- /KotlinExtensionFunctionStudy/app/src/main/java/com/kotlin/extension/MainActivity.kt: -------------------------------------------------------------------------------- 1 | package com.kotlin.extension 2 | 3 | import androidx.appcompat.app.AppCompatActivity 4 | import android.os.Bundle 5 | 6 | class MainActivity : AppCompatActivity() { 7 | override fun onCreate(savedInstanceState: Bundle?) { 8 | super.onCreate(savedInstanceState) 9 | setContentView(R.layout.activity_main) 10 | } 11 | } -------------------------------------------------------------------------------- /KotlinExtensionFunctionStudy/app/src/main/res/mipmap-anydpi-v26/ic_launcher.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /KotlinExtensionFunctionStudy/app/src/main/res/mipmap-anydpi-v26/ic_launcher_round.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /KotlinExtensionFunctionStudy/app/src/main/res/mipmap-hdpi/ic_launcher.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/KotlinExtensionFunctionStudy/app/src/main/res/mipmap-hdpi/ic_launcher.webp -------------------------------------------------------------------------------- /KotlinExtensionFunctionStudy/app/src/main/res/mipmap-hdpi/ic_launcher_round.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/KotlinExtensionFunctionStudy/app/src/main/res/mipmap-hdpi/ic_launcher_round.webp -------------------------------------------------------------------------------- /KotlinExtensionFunctionStudy/app/src/main/res/mipmap-mdpi/ic_launcher.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/KotlinExtensionFunctionStudy/app/src/main/res/mipmap-mdpi/ic_launcher.webp -------------------------------------------------------------------------------- /KotlinExtensionFunctionStudy/app/src/main/res/mipmap-mdpi/ic_launcher_round.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/KotlinExtensionFunctionStudy/app/src/main/res/mipmap-mdpi/ic_launcher_round.webp -------------------------------------------------------------------------------- /KotlinExtensionFunctionStudy/app/src/main/res/mipmap-xhdpi/ic_launcher.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/KotlinExtensionFunctionStudy/app/src/main/res/mipmap-xhdpi/ic_launcher.webp -------------------------------------------------------------------------------- /KotlinExtensionFunctionStudy/app/src/main/res/mipmap-xhdpi/ic_launcher_round.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/KotlinExtensionFunctionStudy/app/src/main/res/mipmap-xhdpi/ic_launcher_round.webp -------------------------------------------------------------------------------- /KotlinExtensionFunctionStudy/app/src/main/res/mipmap-xxhdpi/ic_launcher.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/KotlinExtensionFunctionStudy/app/src/main/res/mipmap-xxhdpi/ic_launcher.webp -------------------------------------------------------------------------------- /KotlinExtensionFunctionStudy/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/KotlinExtensionFunctionStudy/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.webp -------------------------------------------------------------------------------- /KotlinExtensionFunctionStudy/app/src/main/res/mipmap-xxxhdpi/ic_launcher.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/KotlinExtensionFunctionStudy/app/src/main/res/mipmap-xxxhdpi/ic_launcher.webp -------------------------------------------------------------------------------- /KotlinExtensionFunctionStudy/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/KotlinExtensionFunctionStudy/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.webp -------------------------------------------------------------------------------- /KotlinExtensionFunctionStudy/app/src/main/res/values/colors.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | #FFBB86FC 4 | #FF6200EE 5 | #FF3700B3 6 | #FF03DAC5 7 | #FF018786 8 | #FF000000 9 | #FFFFFFFF 10 | -------------------------------------------------------------------------------- /KotlinExtensionFunctionStudy/app/src/main/res/values/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | KotlinExtensionFunctionStudy 3 | -------------------------------------------------------------------------------- /KotlinExtensionFunctionStudy/gradle/wrapper/gradle-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/KotlinExtensionFunctionStudy/gradle/wrapper/gradle-wrapper.jar -------------------------------------------------------------------------------- /KotlinExtensionFunctionStudy/gradle/wrapper/gradle-wrapper.properties: -------------------------------------------------------------------------------- 1 | #Sat Apr 30 08:32:19 CST 2022 2 | distributionBase=GRADLE_USER_HOME 3 | distributionUrl=https\://services.gradle.org/distributions/gradle-7.2-bin.zip 4 | distributionPath=wrapper/dists 5 | zipStorePath=wrapper/dists 6 | zipStoreBase=GRADLE_USER_HOME 7 | -------------------------------------------------------------------------------- /KotlinExtensionFunctionStudy/lib/.gitignore: -------------------------------------------------------------------------------- 1 | /build -------------------------------------------------------------------------------- /KotlinExtensionFunctionStudy/lib/build.gradle: -------------------------------------------------------------------------------- 1 | plugins { 2 | id 'java-library' 3 | id 'org.jetbrains.kotlin.jvm' 4 | } 5 | 6 | java { 7 | sourceCompatibility = JavaVersion.VERSION_1_8 8 | targetCompatibility = JavaVersion.VERSION_1_8 9 | } 10 | 11 | dependencies { 12 | implementation "org.jetbrains.kotlin:kotlin-stdlib:1.5.30" 13 | implementation "org.jetbrains.kotlin:kotlin-reflect:1.5.30" 14 | } -------------------------------------------------------------------------------- /KotlinExtensionFunctionStudy/lib/src/main/java/com/kotlin/lib/_1_topextensionfunction/Classes.kt: -------------------------------------------------------------------------------- 1 | package com.kotlin.lib._1_topextensionfunction 2 | 3 | /** 4 | * 5 | * @author wangzhichao 6 | * @since 2022/4/30 7 | */ 8 | open class View { 9 | open fun showOff() { 10 | println("View member showOff" ) 11 | } 12 | } 13 | class Button: View() { 14 | override fun showOff() { 15 | println("Button member showOff" ) 16 | } 17 | } -------------------------------------------------------------------------------- /KotlinExtensionFunctionStudy/lib/src/main/java/com/kotlin/lib/_1_topextensionfunction/JavaTest.java: -------------------------------------------------------------------------------- 1 | package com.kotlin.lib._1_topextensionfunction; 2 | 3 | /** 4 | * @author wangzhichao 5 | * @since 2022/4/30 6 | */ 7 | public class JavaTest { 8 | public static void main(String[] args) { 9 | System.out.println(StringExtensionsKt.lastChar("Java")); 10 | } 11 | } 12 | -------------------------------------------------------------------------------- /KotlinExtensionFunctionStudy/lib/src/main/java/com/kotlin/lib/_1_topextensionfunction/StringExtensions.kt: -------------------------------------------------------------------------------- 1 | package com.kotlin.lib._1_topextensionfunction 2 | 3 | /** 4 | * 5 | * @author wangzhichao 6 | * @since 2022/4/30 7 | */ 8 | fun String.lastChar(): Char { 9 | return this.get(this.length - 1) 10 | } 11 | 12 | fun String?.firstChar(): Char? { 13 | return this?.get(0) 14 | } -------------------------------------------------------------------------------- /KotlinExtensionFunctionStudy/lib/src/main/java/com/kotlin/lib/_1_topextensionfunction/Util.kt: -------------------------------------------------------------------------------- 1 | package com.kotlin.lib._1_topextensionfunction 2 | 3 | /** 4 | * 5 | * @author wangzhichao 6 | * @since 2022/4/30 7 | */ 8 | fun greetings(message: String) { 9 | println("Hello, $message") 10 | } 11 | 12 | fun String.greetings2() { 13 | println("Hello, $this") 14 | } 15 | 16 | fun String?.greeting3() { 17 | println("Hello, $this") 18 | } -------------------------------------------------------------------------------- /KotlinExtensionFunctionStudy/lib/src/main/java/com/kotlin/lib/_1_topextensionfunction/ViewExtenions.kt: -------------------------------------------------------------------------------- 1 | package com.kotlin.lib._1_topextensionfunction 2 | 3 | /** 4 | * 5 | * @author wangzhichao 6 | * @since 2022/4/30 7 | */ 8 | fun View.showOff() = println("View extension showOff") 9 | fun Button.showOff() = println("Button extension showOff") 10 | 11 | -------------------------------------------------------------------------------- /LayoutInflaterInflateParamStudy/.gitignore: -------------------------------------------------------------------------------- 1 | *.iml 2 | .gradle 3 | /local.properties 4 | /.idea/caches 5 | /.idea/libraries 6 | /.idea/modules.xml 7 | /.idea/workspace.xml 8 | /.idea/navEditor.xml 9 | /.idea/assetWizardSettings.xml 10 | .DS_Store 11 | /build 12 | /captures 13 | .externalNativeBuild 14 | .cxx 15 | -------------------------------------------------------------------------------- /LayoutInflaterInflateParamStudy/app/src/main/res/layout/custom_button.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /LayoutInflaterInflateParamStudy/app/src/main/res/layout/fragment_inflate_activity.xml: -------------------------------------------------------------------------------- 1 | 2 | 8 | -------------------------------------------------------------------------------- /LayoutInflaterInflateParamStudy/app/src/main/res/layout/recycle_view_item_inflate_activity.xml: -------------------------------------------------------------------------------- 1 | 2 | 6 | -------------------------------------------------------------------------------- /LayoutInflaterInflateParamStudy/app/src/main/res/mipmap-anydpi-v26/ic_launcher.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /LayoutInflaterInflateParamStudy/app/src/main/res/mipmap-anydpi-v26/ic_launcher_round.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /LayoutInflaterInflateParamStudy/app/src/main/res/mipmap-hdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/LayoutInflaterInflateParamStudy/app/src/main/res/mipmap-hdpi/ic_launcher.png -------------------------------------------------------------------------------- /LayoutInflaterInflateParamStudy/app/src/main/res/mipmap-hdpi/ic_launcher_round.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/LayoutInflaterInflateParamStudy/app/src/main/res/mipmap-hdpi/ic_launcher_round.png -------------------------------------------------------------------------------- /LayoutInflaterInflateParamStudy/app/src/main/res/mipmap-mdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/LayoutInflaterInflateParamStudy/app/src/main/res/mipmap-mdpi/ic_launcher.png -------------------------------------------------------------------------------- /LayoutInflaterInflateParamStudy/app/src/main/res/mipmap-mdpi/ic_launcher_round.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/LayoutInflaterInflateParamStudy/app/src/main/res/mipmap-mdpi/ic_launcher_round.png -------------------------------------------------------------------------------- /LayoutInflaterInflateParamStudy/app/src/main/res/mipmap-xhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/LayoutInflaterInflateParamStudy/app/src/main/res/mipmap-xhdpi/ic_launcher.png -------------------------------------------------------------------------------- /LayoutInflaterInflateParamStudy/app/src/main/res/mipmap-xhdpi/ic_launcher_round.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/LayoutInflaterInflateParamStudy/app/src/main/res/mipmap-xhdpi/ic_launcher_round.png -------------------------------------------------------------------------------- /LayoutInflaterInflateParamStudy/app/src/main/res/mipmap-xxhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/LayoutInflaterInflateParamStudy/app/src/main/res/mipmap-xxhdpi/ic_launcher.png -------------------------------------------------------------------------------- /LayoutInflaterInflateParamStudy/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/LayoutInflaterInflateParamStudy/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.png -------------------------------------------------------------------------------- /LayoutInflaterInflateParamStudy/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/LayoutInflaterInflateParamStudy/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png -------------------------------------------------------------------------------- /LayoutInflaterInflateParamStudy/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/LayoutInflaterInflateParamStudy/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png -------------------------------------------------------------------------------- /LayoutInflaterInflateParamStudy/app/src/main/res/values/colors.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | #6200EE 4 | #3700B3 5 | #03DAC5 6 | -------------------------------------------------------------------------------- /LayoutInflaterInflateParamStudy/app/src/main/res/values/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | LayoutInflaterInflateParamStudy 3 | -------------------------------------------------------------------------------- /LayoutInflaterInflateParamStudy/app/src/main/res/values/styles.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 9 | 10 | -------------------------------------------------------------------------------- /LayoutInflaterInflateParamStudy/gradle/wrapper/gradle-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/LayoutInflaterInflateParamStudy/gradle/wrapper/gradle-wrapper.jar -------------------------------------------------------------------------------- /LayoutInflaterInflateParamStudy/gradle/wrapper/gradle-wrapper.properties: -------------------------------------------------------------------------------- 1 | #Mon Jul 20 13:44:51 CST 2020 2 | distributionBase=GRADLE_USER_HOME 3 | distributionPath=wrapper/dists 4 | zipStoreBase=GRADLE_USER_HOME 5 | zipStorePath=wrapper/dists 6 | distributionUrl=https\://services.gradle.org/distributions/gradle-6.1.1-all.zip 7 | -------------------------------------------------------------------------------- /LayoutInflaterInflateParamStudy/settings.gradle: -------------------------------------------------------------------------------- 1 | include ':app' 2 | rootProject.name = "LayoutInflaterInflateParamStudy" -------------------------------------------------------------------------------- /ListAdapterStudy/.gitignore: -------------------------------------------------------------------------------- 1 | *.iml 2 | .gradle 3 | /local.properties 4 | /.idea/caches 5 | /.idea/libraries 6 | /.idea/modules.xml 7 | /.idea/workspace.xml 8 | /.idea/navEditor.xml 9 | /.idea/assetWizardSettings.xml 10 | .DS_Store 11 | /build 12 | /captures 13 | .externalNativeBuild 14 | .cxx 15 | local.properties 16 | -------------------------------------------------------------------------------- /ListAdapterStudy/app/.gitignore: -------------------------------------------------------------------------------- 1 | /build -------------------------------------------------------------------------------- /ListAdapterStudy/app/src/main/res/mipmap-anydpi-v26/ic_launcher.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /ListAdapterStudy/app/src/main/res/mipmap-anydpi-v26/ic_launcher_round.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /ListAdapterStudy/app/src/main/res/mipmap-hdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/ListAdapterStudy/app/src/main/res/mipmap-hdpi/ic_launcher.png -------------------------------------------------------------------------------- /ListAdapterStudy/app/src/main/res/mipmap-hdpi/ic_launcher_round.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/ListAdapterStudy/app/src/main/res/mipmap-hdpi/ic_launcher_round.png -------------------------------------------------------------------------------- /ListAdapterStudy/app/src/main/res/mipmap-mdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/ListAdapterStudy/app/src/main/res/mipmap-mdpi/ic_launcher.png -------------------------------------------------------------------------------- /ListAdapterStudy/app/src/main/res/mipmap-mdpi/ic_launcher_round.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/ListAdapterStudy/app/src/main/res/mipmap-mdpi/ic_launcher_round.png -------------------------------------------------------------------------------- /ListAdapterStudy/app/src/main/res/mipmap-xhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/ListAdapterStudy/app/src/main/res/mipmap-xhdpi/ic_launcher.png -------------------------------------------------------------------------------- /ListAdapterStudy/app/src/main/res/mipmap-xhdpi/ic_launcher_round.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/ListAdapterStudy/app/src/main/res/mipmap-xhdpi/ic_launcher_round.png -------------------------------------------------------------------------------- /ListAdapterStudy/app/src/main/res/mipmap-xxhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/ListAdapterStudy/app/src/main/res/mipmap-xxhdpi/ic_launcher.png -------------------------------------------------------------------------------- /ListAdapterStudy/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/ListAdapterStudy/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.png -------------------------------------------------------------------------------- /ListAdapterStudy/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/ListAdapterStudy/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png -------------------------------------------------------------------------------- /ListAdapterStudy/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/ListAdapterStudy/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png -------------------------------------------------------------------------------- /ListAdapterStudy/app/src/main/res/values/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | ListAdapterStudy 3 | -------------------------------------------------------------------------------- /ListAdapterStudy/gradle/wrapper/gradle-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/ListAdapterStudy/gradle/wrapper/gradle-wrapper.jar -------------------------------------------------------------------------------- /ListAdapterStudy/gradle/wrapper/gradle-wrapper.properties: -------------------------------------------------------------------------------- 1 | #Sat Oct 24 18:50:45 CST 2020 2 | distributionBase=GRADLE_USER_HOME 3 | distributionPath=wrapper/dists 4 | zipStoreBase=GRADLE_USER_HOME 5 | zipStorePath=wrapper/dists 6 | distributionUrl=https\://services.gradle.org/distributions/gradle-6.5-bin.zip 7 | -------------------------------------------------------------------------------- /ListAdapterStudy/settings.gradle: -------------------------------------------------------------------------------- 1 | include ':app' 2 | rootProject.name = "ListAdapterStudy" -------------------------------------------------------------------------------- /MQTTStudy/.gitignore: -------------------------------------------------------------------------------- 1 | *.iml 2 | .gradle 3 | /local.properties 4 | /.idea/caches 5 | /.idea/libraries 6 | /.idea/modules.xml 7 | /.idea/workspace.xml 8 | /.idea/navEditor.xml 9 | /.idea/assetWizardSettings.xml 10 | .DS_Store 11 | /build 12 | /captures 13 | .externalNativeBuild 14 | .cxx 15 | local.properties 16 | -------------------------------------------------------------------------------- /MQTTStudy/README.md: -------------------------------------------------------------------------------- 1 | [Android消息推送MQTT实战](https://www.jianshu.com/p/73436a5cf855) 2 | 3 | 4 | 5 | 下载资源 6 | 7 | [apache apollo](http://archive.apache.org/dist/activemq/activemq-apollo/1.7.1/) 8 | 9 | [mqttfx](http://www.jensd.de/apps/mqttfx/1.7.1/) -------------------------------------------------------------------------------- /MQTTStudy/gate/.gitignore: -------------------------------------------------------------------------------- 1 | /build -------------------------------------------------------------------------------- /MQTTStudy/gate/src/main/res/mipmap-anydpi-v26/ic_launcher.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /MQTTStudy/gate/src/main/res/mipmap-anydpi-v26/ic_launcher_round.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /MQTTStudy/gate/src/main/res/mipmap-hdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/MQTTStudy/gate/src/main/res/mipmap-hdpi/ic_launcher.png -------------------------------------------------------------------------------- /MQTTStudy/gate/src/main/res/mipmap-hdpi/ic_launcher_round.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/MQTTStudy/gate/src/main/res/mipmap-hdpi/ic_launcher_round.png -------------------------------------------------------------------------------- /MQTTStudy/gate/src/main/res/mipmap-mdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/MQTTStudy/gate/src/main/res/mipmap-mdpi/ic_launcher.png -------------------------------------------------------------------------------- /MQTTStudy/gate/src/main/res/mipmap-mdpi/ic_launcher_round.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/MQTTStudy/gate/src/main/res/mipmap-mdpi/ic_launcher_round.png -------------------------------------------------------------------------------- /MQTTStudy/gate/src/main/res/mipmap-xhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/MQTTStudy/gate/src/main/res/mipmap-xhdpi/ic_launcher.png -------------------------------------------------------------------------------- /MQTTStudy/gate/src/main/res/mipmap-xhdpi/ic_launcher_round.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/MQTTStudy/gate/src/main/res/mipmap-xhdpi/ic_launcher_round.png -------------------------------------------------------------------------------- /MQTTStudy/gate/src/main/res/mipmap-xxhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/MQTTStudy/gate/src/main/res/mipmap-xxhdpi/ic_launcher.png -------------------------------------------------------------------------------- /MQTTStudy/gate/src/main/res/mipmap-xxhdpi/ic_launcher_round.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/MQTTStudy/gate/src/main/res/mipmap-xxhdpi/ic_launcher_round.png -------------------------------------------------------------------------------- /MQTTStudy/gate/src/main/res/mipmap-xxxhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/MQTTStudy/gate/src/main/res/mipmap-xxxhdpi/ic_launcher.png -------------------------------------------------------------------------------- /MQTTStudy/gate/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/MQTTStudy/gate/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png -------------------------------------------------------------------------------- /MQTTStudy/gate/src/main/res/values/colors.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | #FFBB86FC 4 | #FF6200EE 5 | #FF3700B3 6 | #FF03DAC5 7 | #FF018786 8 | #FF000000 9 | #FFFFFFFF 10 | -------------------------------------------------------------------------------- /MQTTStudy/gate/src/main/res/values/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | 闸机 3 | -------------------------------------------------------------------------------- /MQTTStudy/gate/src/test/java/com/mqtt/mqttstudy/gate/ExampleUnitTest.kt: -------------------------------------------------------------------------------- 1 | package com.mqtt.mqttstudy.gate 2 | 3 | import org.junit.Test 4 | 5 | import org.junit.Assert.* 6 | 7 | /** 8 | * Example local unit test, which will execute on the development machine (host). 9 | * 10 | * See [testing documentation](http://d.android.com/tools/testing). 11 | */ 12 | class ExampleUnitTest { 13 | @Test 14 | fun addition_isCorrect() { 15 | assertEquals(4, 2 + 2) 16 | } 17 | } -------------------------------------------------------------------------------- /MQTTStudy/gradle/wrapper/gradle-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/MQTTStudy/gradle/wrapper/gradle-wrapper.jar -------------------------------------------------------------------------------- /MQTTStudy/gradle/wrapper/gradle-wrapper.properties: -------------------------------------------------------------------------------- 1 | #Sat May 29 11:03:54 CST 2021 2 | distributionBase=GRADLE_USER_HOME 3 | distributionPath=wrapper/dists 4 | zipStoreBase=GRADLE_USER_HOME 5 | zipStorePath=wrapper/dists 6 | distributionUrl=https\://services.gradle.org/distributions/gradle-6.5-bin.zip 7 | -------------------------------------------------------------------------------- /MQTTStudy/screen/.gitignore: -------------------------------------------------------------------------------- 1 | /build -------------------------------------------------------------------------------- /MQTTStudy/screen/src/main/java/com/mqtt/mqttstudy/screen/MessageArriveListener.kt: -------------------------------------------------------------------------------- 1 | package com.mqtt.mqttstudy.screen 2 | 3 | /** 4 | * 5 | * @author wangzhichao 6 | * @since 2021/5/29 7 | */ 8 | interface MessageArriveListener { 9 | fun onMessageArrived() 10 | } -------------------------------------------------------------------------------- /MQTTStudy/screen/src/main/res/mipmap-anydpi-v26/ic_launcher.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /MQTTStudy/screen/src/main/res/mipmap-anydpi-v26/ic_launcher_round.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /MQTTStudy/screen/src/main/res/mipmap-hdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/MQTTStudy/screen/src/main/res/mipmap-hdpi/ic_launcher.png -------------------------------------------------------------------------------- /MQTTStudy/screen/src/main/res/mipmap-hdpi/ic_launcher_round.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/MQTTStudy/screen/src/main/res/mipmap-hdpi/ic_launcher_round.png -------------------------------------------------------------------------------- /MQTTStudy/screen/src/main/res/mipmap-mdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/MQTTStudy/screen/src/main/res/mipmap-mdpi/ic_launcher.png -------------------------------------------------------------------------------- /MQTTStudy/screen/src/main/res/mipmap-mdpi/ic_launcher_round.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/MQTTStudy/screen/src/main/res/mipmap-mdpi/ic_launcher_round.png -------------------------------------------------------------------------------- /MQTTStudy/screen/src/main/res/mipmap-xhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/MQTTStudy/screen/src/main/res/mipmap-xhdpi/ic_launcher.png -------------------------------------------------------------------------------- /MQTTStudy/screen/src/main/res/mipmap-xhdpi/ic_launcher_round.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/MQTTStudy/screen/src/main/res/mipmap-xhdpi/ic_launcher_round.png -------------------------------------------------------------------------------- /MQTTStudy/screen/src/main/res/mipmap-xxhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/MQTTStudy/screen/src/main/res/mipmap-xxhdpi/ic_launcher.png -------------------------------------------------------------------------------- /MQTTStudy/screen/src/main/res/mipmap-xxhdpi/ic_launcher_round.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/MQTTStudy/screen/src/main/res/mipmap-xxhdpi/ic_launcher_round.png -------------------------------------------------------------------------------- /MQTTStudy/screen/src/main/res/mipmap-xxxhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/MQTTStudy/screen/src/main/res/mipmap-xxxhdpi/ic_launcher.png -------------------------------------------------------------------------------- /MQTTStudy/screen/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/MQTTStudy/screen/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png -------------------------------------------------------------------------------- /MQTTStudy/screen/src/main/res/values/colors.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | #FFBB86FC 4 | #FF6200EE 5 | #FF3700B3 6 | #FF03DAC5 7 | #FF018786 8 | #FF000000 9 | #FFFFFFFF 10 | -------------------------------------------------------------------------------- /MQTTStudy/screen/src/main/res/values/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | 大屏幕 3 | -------------------------------------------------------------------------------- /MQTTStudy/screen/src/test/java/com/mqtt/mqttstudy/ExampleUnitTest.kt: -------------------------------------------------------------------------------- 1 | package com.mqtt.mqttstudy 2 | 3 | import org.junit.Test 4 | 5 | import org.junit.Assert.* 6 | 7 | /** 8 | * Example local unit test, which will execute on the development machine (host). 9 | * 10 | * See [testing documentation](http://d.android.com/tools/testing). 11 | */ 12 | class ExampleUnitTest { 13 | @Test 14 | fun addition_isCorrect() { 15 | assertEquals(4, 2 + 2) 16 | } 17 | } -------------------------------------------------------------------------------- /MQTTStudy/settings.gradle: -------------------------------------------------------------------------------- 1 | include ':gate' 2 | include ':screen' 3 | rootProject.name = "MQTTStudy" -------------------------------------------------------------------------------- /RefactorDownloadByStatePattern/.gitignore: -------------------------------------------------------------------------------- 1 | *.iml 2 | .gradle 3 | /local.properties 4 | /.idea/caches 5 | /.idea/libraries 6 | /.idea/modules.xml 7 | /.idea/workspace.xml 8 | /.idea/navEditor.xml 9 | /.idea/assetWizardSettings.xml 10 | .DS_Store 11 | /build 12 | /captures 13 | .externalNativeBuild 14 | .cxx 15 | local.properties 16 | -------------------------------------------------------------------------------- /RefactorDownloadByStatePattern/app/.gitignore: -------------------------------------------------------------------------------- 1 | /build -------------------------------------------------------------------------------- /RefactorDownloadByStatePattern/app/src/main/java/com/example/refactordownloadbystatepattern/data/DownloadListener.kt: -------------------------------------------------------------------------------- 1 | package com.example.refactordownloadbystatepattern.data 2 | 3 | /** 4 | * 5 | * @author wangzhichao 6 | * @since 2022/8/14 7 | */ 8 | interface DownloadListener { 9 | fun onProgress(progress: Int) 10 | fun onPause() 11 | fun onFinished() 12 | } -------------------------------------------------------------------------------- /RefactorDownloadByStatePattern/app/src/main/java/com/example/refactordownloadbystatepattern/data/DownloadStateEnum.kt: -------------------------------------------------------------------------------- 1 | package com.example.refactordownloadbystatepattern.data 2 | 3 | enum class DownloadStateEnum { 4 | DOWNLOAD_START, DOWNLOADING, DOWNLOAD_PAUSE, DOWNLOAD_SUCCESS 5 | } -------------------------------------------------------------------------------- /RefactorDownloadByStatePattern/app/src/main/res/mipmap-anydpi-v26/ic_launcher.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /RefactorDownloadByStatePattern/app/src/main/res/mipmap-anydpi-v26/ic_launcher_round.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /RefactorDownloadByStatePattern/app/src/main/res/mipmap-hdpi/ic_launcher.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/RefactorDownloadByStatePattern/app/src/main/res/mipmap-hdpi/ic_launcher.webp -------------------------------------------------------------------------------- /RefactorDownloadByStatePattern/app/src/main/res/mipmap-hdpi/ic_launcher_round.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/RefactorDownloadByStatePattern/app/src/main/res/mipmap-hdpi/ic_launcher_round.webp -------------------------------------------------------------------------------- /RefactorDownloadByStatePattern/app/src/main/res/mipmap-mdpi/ic_launcher.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/RefactorDownloadByStatePattern/app/src/main/res/mipmap-mdpi/ic_launcher.webp -------------------------------------------------------------------------------- /RefactorDownloadByStatePattern/app/src/main/res/mipmap-mdpi/ic_launcher_round.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/RefactorDownloadByStatePattern/app/src/main/res/mipmap-mdpi/ic_launcher_round.webp -------------------------------------------------------------------------------- /RefactorDownloadByStatePattern/app/src/main/res/mipmap-xhdpi/ic_launcher.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/RefactorDownloadByStatePattern/app/src/main/res/mipmap-xhdpi/ic_launcher.webp -------------------------------------------------------------------------------- /RefactorDownloadByStatePattern/app/src/main/res/mipmap-xhdpi/ic_launcher_round.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/RefactorDownloadByStatePattern/app/src/main/res/mipmap-xhdpi/ic_launcher_round.webp -------------------------------------------------------------------------------- /RefactorDownloadByStatePattern/app/src/main/res/mipmap-xxhdpi/ic_launcher.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/RefactorDownloadByStatePattern/app/src/main/res/mipmap-xxhdpi/ic_launcher.webp -------------------------------------------------------------------------------- /RefactorDownloadByStatePattern/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/RefactorDownloadByStatePattern/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.webp -------------------------------------------------------------------------------- /RefactorDownloadByStatePattern/app/src/main/res/mipmap-xxxhdpi/ic_launcher.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/RefactorDownloadByStatePattern/app/src/main/res/mipmap-xxxhdpi/ic_launcher.webp -------------------------------------------------------------------------------- /RefactorDownloadByStatePattern/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/RefactorDownloadByStatePattern/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.webp -------------------------------------------------------------------------------- /RefactorDownloadByStatePattern/app/src/main/res/values/colors.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | #FFBB86FC 4 | #FF6200EE 5 | #FF3700B3 6 | #FF03DAC5 7 | #FF018786 8 | #FF000000 9 | #FFFFFFFF 10 | -------------------------------------------------------------------------------- /RefactorDownloadByStatePattern/app/src/main/res/values/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | RefactorDownloadByStatePattern 3 | 下载 4 | 暂停 5 | 取消 6 | 恢复 7 | 安装 8 | -------------------------------------------------------------------------------- /RefactorDownloadByStatePattern/build.gradle: -------------------------------------------------------------------------------- 1 | // Top-level build file where you can add configuration options common to all sub-projects/modules. 2 | plugins { 3 | id 'com.android.application' version '7.2.2' apply false 4 | id 'com.android.library' version '7.2.2' apply false 5 | id 'org.jetbrains.kotlin.android' version '1.6.10' apply false 6 | } 7 | 8 | task clean(type: Delete) { 9 | delete rootProject.buildDir 10 | } -------------------------------------------------------------------------------- /RefactorDownloadByStatePattern/gradle/wrapper/gradle-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/RefactorDownloadByStatePattern/gradle/wrapper/gradle-wrapper.jar -------------------------------------------------------------------------------- /RefactorDownloadByStatePattern/gradle/wrapper/gradle-wrapper.properties: -------------------------------------------------------------------------------- 1 | #Sun Aug 14 10:35:39 CST 2022 2 | distributionBase=GRADLE_USER_HOME 3 | distributionUrl=https\://services.gradle.org/distributions/gradle-7.3.3-bin.zip 4 | distributionPath=wrapper/dists 5 | zipStorePath=wrapper/dists 6 | zipStoreBase=GRADLE_USER_HOME 7 | -------------------------------------------------------------------------------- /RefactorDownloadByStatePattern/settings.gradle: -------------------------------------------------------------------------------- 1 | pluginManagement { 2 | repositories { 3 | gradlePluginPortal() 4 | google() 5 | mavenCentral() 6 | } 7 | } 8 | dependencyResolutionManagement { 9 | repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS) 10 | repositories { 11 | google() 12 | mavenCentral() 13 | } 14 | } 15 | rootProject.name = "RefactorDownloadByStatePattern" 16 | include ':app' 17 | -------------------------------------------------------------------------------- /RxJava2Study/.gitignore: -------------------------------------------------------------------------------- 1 | *.iml 2 | .gradle 3 | /local.properties 4 | /.idea/caches 5 | /.idea/libraries 6 | /.idea/modules.xml 7 | /.idea/workspace.xml 8 | /.idea/navEditor.xml 9 | /.idea/assetWizardSettings.xml 10 | .DS_Store 11 | /build 12 | /captures 13 | .externalNativeBuild 14 | .cxx 15 | local.properties 16 | -------------------------------------------------------------------------------- /RxJava2Study/app/.gitignore: -------------------------------------------------------------------------------- 1 | /build -------------------------------------------------------------------------------- /RxJava2Study/app/src/main/res/mipmap-anydpi-v26/ic_launcher.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /RxJava2Study/app/src/main/res/mipmap-anydpi-v26/ic_launcher_round.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /RxJava2Study/app/src/main/res/mipmap-hdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/RxJava2Study/app/src/main/res/mipmap-hdpi/ic_launcher.png -------------------------------------------------------------------------------- /RxJava2Study/app/src/main/res/mipmap-hdpi/ic_launcher_round.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/RxJava2Study/app/src/main/res/mipmap-hdpi/ic_launcher_round.png -------------------------------------------------------------------------------- /RxJava2Study/app/src/main/res/mipmap-mdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/RxJava2Study/app/src/main/res/mipmap-mdpi/ic_launcher.png -------------------------------------------------------------------------------- /RxJava2Study/app/src/main/res/mipmap-mdpi/ic_launcher_round.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/RxJava2Study/app/src/main/res/mipmap-mdpi/ic_launcher_round.png -------------------------------------------------------------------------------- /RxJava2Study/app/src/main/res/mipmap-xhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/RxJava2Study/app/src/main/res/mipmap-xhdpi/ic_launcher.png -------------------------------------------------------------------------------- /RxJava2Study/app/src/main/res/mipmap-xhdpi/ic_launcher_round.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/RxJava2Study/app/src/main/res/mipmap-xhdpi/ic_launcher_round.png -------------------------------------------------------------------------------- /RxJava2Study/app/src/main/res/mipmap-xxhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/RxJava2Study/app/src/main/res/mipmap-xxhdpi/ic_launcher.png -------------------------------------------------------------------------------- /RxJava2Study/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/RxJava2Study/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.png -------------------------------------------------------------------------------- /RxJava2Study/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/RxJava2Study/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png -------------------------------------------------------------------------------- /RxJava2Study/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/RxJava2Study/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png -------------------------------------------------------------------------------- /RxJava2Study/app/src/main/res/values/colors.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | #FFBB86FC 4 | #FF6200EE 5 | #FF3700B3 6 | #FF03DAC5 7 | #FF018786 8 | #FF000000 9 | #FFFFFFFF 10 | -------------------------------------------------------------------------------- /RxJava2Study/app/src/main/res/values/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | RxJava2Study 3 | -------------------------------------------------------------------------------- /RxJava2Study/app/src/test/java/com/example/rxjava2study/ExampleUnitTest.kt: -------------------------------------------------------------------------------- 1 | package com.example.rxjava2study 2 | 3 | import org.junit.Test 4 | 5 | import org.junit.Assert.* 6 | 7 | /** 8 | * Example local unit test, which will execute on the development machine (host). 9 | * 10 | * See [testing documentation](http://d.android.com/tools/testing). 11 | */ 12 | class ExampleUnitTest { 13 | @Test 14 | fun addition_isCorrect() { 15 | assertEquals(4, 2 + 2) 16 | } 17 | } -------------------------------------------------------------------------------- /RxJava2Study/gradle/wrapper/gradle-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/RxJava2Study/gradle/wrapper/gradle-wrapper.jar -------------------------------------------------------------------------------- /RxJava2Study/gradle/wrapper/gradle-wrapper.properties: -------------------------------------------------------------------------------- 1 | #Fri Jun 11 07:33:26 CST 2021 2 | distributionBase=GRADLE_USER_HOME 3 | distributionPath=wrapper/dists 4 | zipStoreBase=GRADLE_USER_HOME 5 | zipStorePath=wrapper/dists 6 | distributionUrl=https\://services.gradle.org/distributions/gradle-6.7.1-all.zip 7 | -------------------------------------------------------------------------------- /RxJava2Study/settings.gradle: -------------------------------------------------------------------------------- 1 | include ':app' 2 | rootProject.name = "RxJava2Study" -------------------------------------------------------------------------------- /TencentClassLoadingView/.gitignore: -------------------------------------------------------------------------------- 1 | *.iml 2 | .gradle 3 | /local.properties 4 | /.idea/caches 5 | /.idea/libraries 6 | /.idea/modules.xml 7 | /.idea/workspace.xml 8 | /.idea/navEditor.xml 9 | /.idea/assetWizardSettings.xml 10 | .DS_Store 11 | /build 12 | /captures 13 | .externalNativeBuild 14 | .cxx 15 | local.properties 16 | -------------------------------------------------------------------------------- /TencentClassLoadingView/app/.gitignore: -------------------------------------------------------------------------------- 1 | /build -------------------------------------------------------------------------------- /TencentClassLoadingView/app/src/main/java/com/example/tencentclassloadingview/MainActivity.kt: -------------------------------------------------------------------------------- 1 | package com.example.tencentclassloadingview 2 | 3 | import androidx.appcompat.app.AppCompatActivity 4 | import android.os.Bundle 5 | 6 | class MainActivity : AppCompatActivity() { 7 | override fun onCreate(savedInstanceState: Bundle?) { 8 | super.onCreate(savedInstanceState) 9 | setContentView(R.layout.activity_main) 10 | } 11 | } -------------------------------------------------------------------------------- /TencentClassLoadingView/app/src/main/res/drawable-xxhdpi/tencent_class.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/TencentClassLoadingView/app/src/main/res/drawable-xxhdpi/tencent_class.png -------------------------------------------------------------------------------- /TencentClassLoadingView/app/src/main/res/mipmap-anydpi-v26/ic_launcher.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /TencentClassLoadingView/app/src/main/res/mipmap-anydpi-v26/ic_launcher_round.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /TencentClassLoadingView/app/src/main/res/mipmap-hdpi/ic_launcher.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/TencentClassLoadingView/app/src/main/res/mipmap-hdpi/ic_launcher.webp -------------------------------------------------------------------------------- /TencentClassLoadingView/app/src/main/res/mipmap-hdpi/ic_launcher_round.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/TencentClassLoadingView/app/src/main/res/mipmap-hdpi/ic_launcher_round.webp -------------------------------------------------------------------------------- /TencentClassLoadingView/app/src/main/res/mipmap-mdpi/ic_launcher.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/TencentClassLoadingView/app/src/main/res/mipmap-mdpi/ic_launcher.webp -------------------------------------------------------------------------------- /TencentClassLoadingView/app/src/main/res/mipmap-mdpi/ic_launcher_round.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/TencentClassLoadingView/app/src/main/res/mipmap-mdpi/ic_launcher_round.webp -------------------------------------------------------------------------------- /TencentClassLoadingView/app/src/main/res/mipmap-xhdpi/ic_launcher.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/TencentClassLoadingView/app/src/main/res/mipmap-xhdpi/ic_launcher.webp -------------------------------------------------------------------------------- /TencentClassLoadingView/app/src/main/res/mipmap-xhdpi/ic_launcher_round.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/TencentClassLoadingView/app/src/main/res/mipmap-xhdpi/ic_launcher_round.webp -------------------------------------------------------------------------------- /TencentClassLoadingView/app/src/main/res/mipmap-xxhdpi/ic_launcher.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/TencentClassLoadingView/app/src/main/res/mipmap-xxhdpi/ic_launcher.webp -------------------------------------------------------------------------------- /TencentClassLoadingView/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/TencentClassLoadingView/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.webp -------------------------------------------------------------------------------- /TencentClassLoadingView/app/src/main/res/mipmap-xxxhdpi/ic_launcher.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/TencentClassLoadingView/app/src/main/res/mipmap-xxxhdpi/ic_launcher.webp -------------------------------------------------------------------------------- /TencentClassLoadingView/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/TencentClassLoadingView/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.webp -------------------------------------------------------------------------------- /TencentClassLoadingView/app/src/main/res/values/colors.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | #FFBB86FC 4 | #FF6200EE 5 | #FF3700B3 6 | #FF03DAC5 7 | #FF018786 8 | #FF000000 9 | #FFFFFFFF 10 | -------------------------------------------------------------------------------- /TencentClassLoadingView/app/src/main/res/values/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | TencentClassLoadingView 3 | -------------------------------------------------------------------------------- /TencentClassLoadingView/build.gradle: -------------------------------------------------------------------------------- 1 | // Top-level build file where you can add configuration options common to all sub-projects/modules. 2 | plugins { 3 | id 'com.android.application' version '7.2.1' apply false 4 | id 'com.android.library' version '7.2.1' apply false 5 | id 'org.jetbrains.kotlin.android' version '1.6.10' apply false 6 | } 7 | 8 | task clean(type: Delete) { 9 | delete rootProject.buildDir 10 | } -------------------------------------------------------------------------------- /TencentClassLoadingView/gradle/wrapper/gradle-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/TencentClassLoadingView/gradle/wrapper/gradle-wrapper.jar -------------------------------------------------------------------------------- /TencentClassLoadingView/gradle/wrapper/gradle-wrapper.properties: -------------------------------------------------------------------------------- 1 | #Sun Jun 12 12:52:07 CST 2022 2 | distributionBase=GRADLE_USER_HOME 3 | distributionUrl=https\://services.gradle.org/distributions/gradle-7.3.3-bin.zip 4 | distributionPath=wrapper/dists 5 | zipStorePath=wrapper/dists 6 | zipStoreBase=GRADLE_USER_HOME 7 | -------------------------------------------------------------------------------- /TencentClassLoadingView/gradlew: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/TencentClassLoadingView/gradlew -------------------------------------------------------------------------------- /TencentClassLoadingView/settings.gradle: -------------------------------------------------------------------------------- 1 | pluginManagement { 2 | repositories { 3 | gradlePluginPortal() 4 | google() 5 | mavenCentral() 6 | } 7 | } 8 | dependencyResolutionManagement { 9 | repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS) 10 | repositories { 11 | google() 12 | mavenCentral() 13 | } 14 | } 15 | rootProject.name = "TencentClassLoadingView" 16 | include ':app' 17 | -------------------------------------------------------------------------------- /ViewLifecycleStudy/.gitignore: -------------------------------------------------------------------------------- 1 | *.iml 2 | .gradle 3 | /local.properties 4 | /.idea/caches 5 | /.idea/libraries 6 | /.idea/modules.xml 7 | /.idea/workspace.xml 8 | /.idea/navEditor.xml 9 | /.idea/assetWizardSettings.xml 10 | .DS_Store 11 | /build 12 | /captures 13 | .externalNativeBuild 14 | .cxx 15 | local.properties 16 | -------------------------------------------------------------------------------- /ViewLifecycleStudy/app/.gitignore: -------------------------------------------------------------------------------- 1 | /build -------------------------------------------------------------------------------- /ViewLifecycleStudy/app/src/main/res/mipmap-anydpi-v26/ic_launcher.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /ViewLifecycleStudy/app/src/main/res/mipmap-anydpi-v26/ic_launcher_round.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /ViewLifecycleStudy/app/src/main/res/mipmap-hdpi/ic_launcher.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/ViewLifecycleStudy/app/src/main/res/mipmap-hdpi/ic_launcher.webp -------------------------------------------------------------------------------- /ViewLifecycleStudy/app/src/main/res/mipmap-hdpi/ic_launcher_round.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/ViewLifecycleStudy/app/src/main/res/mipmap-hdpi/ic_launcher_round.webp -------------------------------------------------------------------------------- /ViewLifecycleStudy/app/src/main/res/mipmap-mdpi/ic_launcher.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/ViewLifecycleStudy/app/src/main/res/mipmap-mdpi/ic_launcher.webp -------------------------------------------------------------------------------- /ViewLifecycleStudy/app/src/main/res/mipmap-mdpi/ic_launcher_round.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/ViewLifecycleStudy/app/src/main/res/mipmap-mdpi/ic_launcher_round.webp -------------------------------------------------------------------------------- /ViewLifecycleStudy/app/src/main/res/mipmap-xhdpi/ic_launcher.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/ViewLifecycleStudy/app/src/main/res/mipmap-xhdpi/ic_launcher.webp -------------------------------------------------------------------------------- /ViewLifecycleStudy/app/src/main/res/mipmap-xhdpi/ic_launcher_round.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/ViewLifecycleStudy/app/src/main/res/mipmap-xhdpi/ic_launcher_round.webp -------------------------------------------------------------------------------- /ViewLifecycleStudy/app/src/main/res/mipmap-xxhdpi/ic_launcher.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/ViewLifecycleStudy/app/src/main/res/mipmap-xxhdpi/ic_launcher.webp -------------------------------------------------------------------------------- /ViewLifecycleStudy/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/ViewLifecycleStudy/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.webp -------------------------------------------------------------------------------- /ViewLifecycleStudy/app/src/main/res/mipmap-xxxhdpi/ic_launcher.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/ViewLifecycleStudy/app/src/main/res/mipmap-xxxhdpi/ic_launcher.webp -------------------------------------------------------------------------------- /ViewLifecycleStudy/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/ViewLifecycleStudy/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.webp -------------------------------------------------------------------------------- /ViewLifecycleStudy/app/src/main/res/values/colors.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | #FFBB86FC 4 | #FF6200EE 5 | #FF3700B3 6 | #FF03DAC5 7 | #FF018786 8 | #FF000000 9 | #FFFFFFFF 10 | -------------------------------------------------------------------------------- /ViewLifecycleStudy/app/src/main/res/values/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | ViewLifecycleStudy 3 | -------------------------------------------------------------------------------- /ViewLifecycleStudy/build.gradle: -------------------------------------------------------------------------------- 1 | // Top-level build file where you can add configuration options common to all sub-projects/modules. 2 | plugins { 3 | id 'com.android.application' version '7.2.2' apply false 4 | id 'com.android.library' version '7.2.2' apply false 5 | id 'org.jetbrains.kotlin.android' version '1.6.10' apply false 6 | } 7 | 8 | task clean(type: Delete) { 9 | delete rootProject.buildDir 10 | } -------------------------------------------------------------------------------- /ViewLifecycleStudy/gradle/wrapper/gradle-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jhwsx/BlogCodes/4f0270c31b0e1d3751f1e15bcc88ac4474b8d17a/ViewLifecycleStudy/gradle/wrapper/gradle-wrapper.jar -------------------------------------------------------------------------------- /ViewLifecycleStudy/gradle/wrapper/gradle-wrapper.properties: -------------------------------------------------------------------------------- 1 | #Sat Aug 27 15:15:05 CST 2022 2 | distributionBase=GRADLE_USER_HOME 3 | distributionUrl=https\://services.gradle.org/distributions/gradle-7.3.3-bin.zip 4 | distributionPath=wrapper/dists 5 | zipStorePath=wrapper/dists 6 | zipStoreBase=GRADLE_USER_HOME 7 | -------------------------------------------------------------------------------- /ViewLifecycleStudy/settings.gradle: -------------------------------------------------------------------------------- 1 | pluginManagement { 2 | repositories { 3 | gradlePluginPortal() 4 | google() 5 | mavenCentral() 6 | } 7 | } 8 | dependencyResolutionManagement { 9 | repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS) 10 | repositories { 11 | google() 12 | mavenCentral() 13 | } 14 | } 15 | rootProject.name = "ViewLifecycleStudy" 16 | include ':app' 17 | --------------------------------------------------------------------------------