├── .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 |
--------------------------------------------------------------------------------