├── README.md
├── chapter_01
└── HelloWorld
│ ├── .gitignore
│ ├── app
│ ├── ._.DS_Store
│ ├── .gitignore
│ ├── build.gradle
│ ├── proguard-rules.pro
│ └── src
│ │ ├── androidTest
│ │ └── java
│ │ │ └── com
│ │ │ └── example
│ │ │ └── helloworld
│ │ │ └── ExampleInstrumentedTest.kt
│ │ ├── main
│ │ ├── AndroidManifest.xml
│ │ ├── java
│ │ │ └── com
│ │ │ │ └── example
│ │ │ │ └── helloworld
│ │ │ │ └── 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
│ │ │ ├── colors.xml
│ │ │ ├── strings.xml
│ │ │ └── styles.xml
│ │ └── test
│ │ └── java
│ │ └── com
│ │ └── example
│ │ └── helloworld
│ │ └── ExampleUnitTest.kt
│ ├── build.gradle
│ ├── gradle.properties
│ ├── gradle
│ └── wrapper
│ │ ├── gradle-wrapper.jar
│ │ └── gradle-wrapper.properties
│ ├── gradlew
│ ├── gradlew.bat
│ └── settings.gradle
├── chapter_02
└── HelloWorld
│ ├── .gitignore
│ ├── app
│ ├── ._.DS_Store
│ ├── .gitignore
│ ├── build.gradle
│ ├── proguard-rules.pro
│ └── src
│ │ ├── androidTest
│ │ └── java
│ │ │ └── com
│ │ │ └── example
│ │ │ └── helloworld
│ │ │ └── ExampleInstrumentedTest.kt
│ │ ├── main
│ │ ├── AndroidManifest.xml
│ │ ├── java
│ │ │ └── com
│ │ │ │ └── example
│ │ │ │ └── helloworld
│ │ │ │ ├── Cellphone.kt
│ │ │ │ ├── LearnKotlin.kt
│ │ │ │ ├── MainActivity.kt
│ │ │ │ ├── Person.kt
│ │ │ │ ├── Singleton.kt
│ │ │ │ ├── Student.kt
│ │ │ │ └── Study.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
│ │ │ ├── colors.xml
│ │ │ ├── strings.xml
│ │ │ └── styles.xml
│ │ └── test
│ │ └── java
│ │ └── com
│ │ └── example
│ │ └── helloworld
│ │ └── ExampleUnitTest.kt
│ ├── build.gradle
│ ├── gradle.properties
│ ├── gradle
│ └── wrapper
│ │ ├── gradle-wrapper.jar
│ │ └── gradle-wrapper.properties
│ ├── gradlew
│ ├── gradlew.bat
│ └── settings.gradle
├── chapter_03
├── ActivityLifeCycleTest
│ ├── .gitignore
│ ├── app
│ │ ├── ._.DS_Store
│ │ ├── .gitignore
│ │ ├── build.gradle
│ │ ├── proguard-rules.pro
│ │ └── src
│ │ │ ├── androidTest
│ │ │ └── java
│ │ │ │ └── com
│ │ │ │ └── example
│ │ │ │ └── activitylifecycletest
│ │ │ │ └── ExampleInstrumentedTest.kt
│ │ │ ├── main
│ │ │ ├── AndroidManifest.xml
│ │ │ ├── java
│ │ │ │ └── com
│ │ │ │ │ └── example
│ │ │ │ │ └── activitylifecycletest
│ │ │ │ │ ├── DialogActivity.kt
│ │ │ │ │ ├── MainActivity.kt
│ │ │ │ │ └── NormalActivity.kt
│ │ │ └── res
│ │ │ │ ├── drawable-v24
│ │ │ │ └── ic_launcher_foreground.xml
│ │ │ │ ├── drawable
│ │ │ │ └── ic_launcher_background.xml
│ │ │ │ ├── layout
│ │ │ │ ├── activity_main.xml
│ │ │ │ ├── dialog_layout.xml
│ │ │ │ └── normal_layout.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
│ │ │ └── activitylifecycletest
│ │ │ └── ExampleUnitTest.kt
│ ├── build.gradle
│ ├── gradle.properties
│ ├── gradle
│ │ └── wrapper
│ │ │ ├── gradle-wrapper.jar
│ │ │ └── gradle-wrapper.properties
│ ├── gradlew
│ ├── gradlew.bat
│ └── settings.gradle
└── ActivityTest
│ ├── .gitignore
│ ├── app
│ ├── ._.DS_Store
│ ├── .gitignore
│ ├── build.gradle
│ ├── proguard-rules.pro
│ └── src
│ │ ├── androidTest
│ │ └── java
│ │ │ └── com
│ │ │ └── example
│ │ │ └── activitytest
│ │ │ └── ExampleInstrumentedTest.kt
│ │ ├── main
│ │ ├── AndroidManifest.xml
│ │ ├── java
│ │ │ └── com
│ │ │ │ └── example
│ │ │ │ └── activitytest
│ │ │ │ ├── ActivityBox.kt
│ │ │ │ ├── BaseActivity.kt
│ │ │ │ ├── FirstActivity.kt
│ │ │ │ ├── Helper.kt
│ │ │ │ ├── JavaTest.java
│ │ │ │ ├── SecondActivity.kt
│ │ │ │ ├── ThirdActivity.kt
│ │ │ │ └── Util.kt
│ │ └── res
│ │ │ ├── drawable-v24
│ │ │ └── ic_launcher_foreground.xml
│ │ │ ├── drawable
│ │ │ └── ic_launcher_background.xml
│ │ │ ├── layout
│ │ │ ├── first_layout.xml
│ │ │ ├── second_layout.xml
│ │ │ └── third_layout.xml
│ │ │ ├── menu
│ │ │ └── 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
│ │ └── activitytest
│ │ └── ExampleUnitTest.kt
│ ├── build.gradle
│ ├── gradle.properties
│ ├── gradle
│ └── wrapper
│ │ ├── gradle-wrapper.jar
│ │ └── gradle-wrapper.properties
│ ├── gradlew
│ ├── gradlew.bat
│ └── settings.gradle
├── chapter_04
├── ListViewTest
│ ├── .gitignore
│ ├── app
│ │ ├── ._.DS_Store
│ │ ├── .gitignore
│ │ ├── build.gradle
│ │ ├── proguard-rules.pro
│ │ └── src
│ │ │ ├── androidTest
│ │ │ └── java
│ │ │ │ └── com
│ │ │ │ └── example
│ │ │ │ └── listviewtest
│ │ │ │ └── ExampleInstrumentedTest.kt
│ │ │ ├── main
│ │ │ ├── AndroidManifest.xml
│ │ │ ├── java
│ │ │ │ └── com
│ │ │ │ │ └── example
│ │ │ │ │ └── listviewtest
│ │ │ │ │ ├── Fruit.kt
│ │ │ │ │ ├── FruitAdapter.kt
│ │ │ │ │ └── MainActivity.kt
│ │ │ └── res
│ │ │ │ ├── drawable-v24
│ │ │ │ └── ic_launcher_foreground.xml
│ │ │ │ ├── drawable-xxhdpi
│ │ │ │ ├── apple_pic.png
│ │ │ │ ├── banana_pic.png
│ │ │ │ ├── cherry_pic.png
│ │ │ │ ├── grape_pic.png
│ │ │ │ ├── mango_pic.png
│ │ │ │ ├── orange_pic.png
│ │ │ │ ├── pear_pic.png
│ │ │ │ ├── pineapple_pic.png
│ │ │ │ ├── strawberry_pic.png
│ │ │ │ └── watermelon_pic.png
│ │ │ │ ├── drawable
│ │ │ │ └── ic_launcher_background.xml
│ │ │ │ ├── layout
│ │ │ │ ├── activity_main.xml
│ │ │ │ └── fruit_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
│ │ │ │ ├── colors.xml
│ │ │ │ ├── strings.xml
│ │ │ │ └── styles.xml
│ │ │ └── test
│ │ │ └── java
│ │ │ └── com
│ │ │ └── example
│ │ │ └── listviewtest
│ │ │ └── ExampleUnitTest.kt
│ ├── build.gradle
│ ├── gradle.properties
│ ├── gradle
│ │ └── wrapper
│ │ │ ├── gradle-wrapper.jar
│ │ │ └── gradle-wrapper.properties
│ ├── gradlew
│ ├── gradlew.bat
│ └── settings.gradle
├── RecyclerViewTest
│ ├── .gitignore
│ ├── app
│ │ ├── ._.DS_Store
│ │ ├── .gitignore
│ │ ├── build.gradle
│ │ ├── proguard-rules.pro
│ │ └── src
│ │ │ ├── androidTest
│ │ │ └── java
│ │ │ │ └── com
│ │ │ │ └── example
│ │ │ │ └── recyclerviewtest
│ │ │ │ └── ExampleInstrumentedTest.kt
│ │ │ ├── main
│ │ │ ├── AndroidManifest.xml
│ │ │ ├── java
│ │ │ │ └── com
│ │ │ │ │ └── example
│ │ │ │ │ └── recyclerviewtest
│ │ │ │ │ ├── Fruit.kt
│ │ │ │ │ ├── FruitAdapter.kt
│ │ │ │ │ └── MainActivity.kt
│ │ │ └── res
│ │ │ │ ├── drawable-v24
│ │ │ │ └── ic_launcher_foreground.xml
│ │ │ │ ├── drawable-xxhdpi
│ │ │ │ ├── apple_pic.png
│ │ │ │ ├── banana_pic.png
│ │ │ │ ├── cherry_pic.png
│ │ │ │ ├── grape_pic.png
│ │ │ │ ├── mango_pic.png
│ │ │ │ ├── orange_pic.png
│ │ │ │ ├── pear_pic.png
│ │ │ │ ├── pineapple_pic.png
│ │ │ │ ├── strawberry_pic.png
│ │ │ │ └── watermelon_pic.png
│ │ │ │ ├── drawable
│ │ │ │ └── ic_launcher_background.xml
│ │ │ │ ├── layout
│ │ │ │ ├── activity_main.xml
│ │ │ │ └── fruit_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
│ │ │ │ ├── colors.xml
│ │ │ │ ├── strings.xml
│ │ │ │ └── styles.xml
│ │ │ └── test
│ │ │ └── java
│ │ │ └── com
│ │ │ └── example
│ │ │ └── recyclerviewtest
│ │ │ └── ExampleUnitTest.kt
│ ├── build.gradle
│ ├── gradle.properties
│ ├── gradle
│ │ └── wrapper
│ │ │ ├── gradle-wrapper.jar
│ │ │ └── gradle-wrapper.properties
│ ├── gradlew
│ ├── gradlew.bat
│ └── settings.gradle
├── UIBestPractice
│ ├── .gitignore
│ ├── app
│ │ ├── ._.DS_Store
│ │ ├── .gitignore
│ │ ├── build.gradle
│ │ ├── proguard-rules.pro
│ │ └── src
│ │ │ ├── androidTest
│ │ │ └── java
│ │ │ │ └── com
│ │ │ │ └── example
│ │ │ │ └── uibestpractice
│ │ │ │ └── ExampleInstrumentedTest.kt
│ │ │ ├── main
│ │ │ ├── AndroidManifest.xml
│ │ │ ├── java
│ │ │ │ └── com
│ │ │ │ │ └── example
│ │ │ │ │ └── uibestpractice
│ │ │ │ │ ├── MainActivity.kt
│ │ │ │ │ ├── Msg.kt
│ │ │ │ │ ├── MsgAdapter.kt
│ │ │ │ │ ├── MsgViewHolder.kt
│ │ │ │ │ └── Result.kt
│ │ │ └── res
│ │ │ │ ├── drawable-v24
│ │ │ │ └── ic_launcher_foreground.xml
│ │ │ │ ├── drawable-xxhdpi
│ │ │ │ ├── message_left.9.png
│ │ │ │ ├── message_left_original.png
│ │ │ │ ├── message_right.9.png
│ │ │ │ └── message_right_original.png
│ │ │ │ ├── drawable
│ │ │ │ └── ic_launcher_background.xml
│ │ │ │ ├── layout
│ │ │ │ ├── activity_main.xml
│ │ │ │ ├── msg_left_item.xml
│ │ │ │ └── msg_right_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
│ │ │ │ ├── colors.xml
│ │ │ │ ├── strings.xml
│ │ │ │ └── styles.xml
│ │ │ └── test
│ │ │ └── java
│ │ │ └── com
│ │ │ └── example
│ │ │ └── uibestpractice
│ │ │ └── ExampleUnitTest.kt
│ ├── build.gradle
│ ├── gradle.properties
│ ├── gradle
│ │ └── wrapper
│ │ │ ├── gradle-wrapper.jar
│ │ │ └── gradle-wrapper.properties
│ ├── gradlew
│ ├── gradlew.bat
│ └── settings.gradle
├── UICustomViews
│ ├── .gitignore
│ ├── app
│ │ ├── ._.DS_Store
│ │ ├── .gitignore
│ │ ├── build.gradle
│ │ ├── proguard-rules.pro
│ │ └── src
│ │ │ ├── androidTest
│ │ │ └── java
│ │ │ │ └── com
│ │ │ │ └── example
│ │ │ │ └── uicustomviews
│ │ │ │ └── ExampleInstrumentedTest.kt
│ │ │ ├── main
│ │ │ ├── AndroidManifest.xml
│ │ │ ├── java
│ │ │ │ └── com
│ │ │ │ │ └── example
│ │ │ │ │ └── uicustomviews
│ │ │ │ │ ├── MainActivity.kt
│ │ │ │ │ └── TitleLayout.kt
│ │ │ └── res
│ │ │ │ ├── drawable-v24
│ │ │ │ └── ic_launcher_foreground.xml
│ │ │ │ ├── drawable-xxhdpi
│ │ │ │ ├── back_bg.png
│ │ │ │ ├── edit_bg.png
│ │ │ │ └── title_bg.png
│ │ │ │ ├── drawable
│ │ │ │ └── ic_launcher_background.xml
│ │ │ │ ├── layout
│ │ │ │ ├── activity_main.xml
│ │ │ │ └── title.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
│ │ │ └── uicustomviews
│ │ │ └── ExampleUnitTest.kt
│ ├── build.gradle
│ ├── gradle.properties
│ ├── gradle
│ │ └── wrapper
│ │ │ ├── gradle-wrapper.jar
│ │ │ └── gradle-wrapper.properties
│ ├── gradlew
│ ├── gradlew.bat
│ └── settings.gradle
├── UILayoutTest
│ ├── .gitignore
│ ├── app
│ │ ├── ._.DS_Store
│ │ ├── .gitignore
│ │ ├── build.gradle
│ │ ├── proguard-rules.pro
│ │ └── src
│ │ │ ├── androidTest
│ │ │ └── java
│ │ │ │ └── com
│ │ │ │ └── example
│ │ │ │ └── uilayouttest
│ │ │ │ └── ExampleInstrumentedTest.kt
│ │ │ ├── main
│ │ │ ├── AndroidManifest.xml
│ │ │ ├── java
│ │ │ │ └── com
│ │ │ │ │ └── example
│ │ │ │ │ └── uilayouttest
│ │ │ │ │ └── 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
│ │ │ │ ├── colors.xml
│ │ │ │ ├── strings.xml
│ │ │ │ └── styles.xml
│ │ │ └── test
│ │ │ └── java
│ │ │ └── com
│ │ │ └── example
│ │ │ └── uilayouttest
│ │ │ └── ExampleUnitTest.kt
│ ├── build.gradle
│ ├── gradle.properties
│ ├── gradle
│ │ └── wrapper
│ │ │ ├── gradle-wrapper.jar
│ │ │ └── gradle-wrapper.properties
│ ├── gradlew
│ ├── gradlew.bat
│ └── settings.gradle
└── UIWidgetTest
│ ├── .gitignore
│ ├── app
│ ├── ._.DS_Store
│ ├── .gitignore
│ ├── build.gradle
│ ├── proguard-rules.pro
│ └── src
│ │ ├── androidTest
│ │ └── java
│ │ │ └── com
│ │ │ └── example
│ │ │ └── uiwidgettest
│ │ │ └── ExampleInstrumentedTest.kt
│ │ ├── main
│ │ ├── AndroidManifest.xml
│ │ ├── java
│ │ │ └── com
│ │ │ │ └── example
│ │ │ │ └── uiwidgettest
│ │ │ │ ├── MainActivity.kt
│ │ │ │ └── Test.kt
│ │ └── res
│ │ │ ├── drawable-v24
│ │ │ └── ic_launcher_foreground.xml
│ │ │ ├── drawable-xxhdpi
│ │ │ ├── img_1.png
│ │ │ └── img_2.png
│ │ │ ├── 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
│ │ └── uiwidgettest
│ │ └── ExampleUnitTest.kt
│ ├── build.gradle
│ ├── gradle.properties
│ ├── gradle
│ └── wrapper
│ │ ├── gradle-wrapper.jar
│ │ └── gradle-wrapper.properties
│ ├── gradlew
│ ├── gradlew.bat
│ └── settings.gradle
├── chapter_05
├── FragmentBestPractice
│ ├── .gitignore
│ ├── app
│ │ ├── ._.DS_Store
│ │ ├── .gitignore
│ │ ├── build.gradle
│ │ ├── proguard-rules.pro
│ │ └── src
│ │ │ ├── androidTest
│ │ │ └── java
│ │ │ │ └── com
│ │ │ │ └── example
│ │ │ │ └── fragmentbestpractice
│ │ │ │ └── ExampleInstrumentedTest.kt
│ │ │ ├── main
│ │ │ ├── AndroidManifest.xml
│ │ │ ├── java
│ │ │ │ └── com
│ │ │ │ │ └── example
│ │ │ │ │ └── fragmentbestpractice
│ │ │ │ │ ├── MainActivity.kt
│ │ │ │ │ ├── Money.kt
│ │ │ │ │ ├── News.kt
│ │ │ │ │ ├── NewsContentActivity.kt
│ │ │ │ │ ├── NewsContentFragment.kt
│ │ │ │ │ ├── NewsTitleFragment.kt
│ │ │ │ │ └── String.kt
│ │ │ └── res
│ │ │ │ ├── drawable-v24
│ │ │ │ └── ic_launcher_foreground.xml
│ │ │ │ ├── drawable
│ │ │ │ └── ic_launcher_background.xml
│ │ │ │ ├── layout-sw600dp
│ │ │ │ └── activity_main.xml
│ │ │ │ ├── layout
│ │ │ │ ├── activity_main.xml
│ │ │ │ ├── activity_news_content.xml
│ │ │ │ ├── news_content_frag.xml
│ │ │ │ ├── news_item.xml
│ │ │ │ └── news_title_frag.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
│ │ │ └── fragmentbestpractice
│ │ │ └── ExampleUnitTest.kt
│ ├── build.gradle
│ ├── gradle.properties
│ ├── gradle
│ │ └── wrapper
│ │ │ ├── gradle-wrapper.jar
│ │ │ └── gradle-wrapper.properties
│ ├── gradlew
│ ├── gradlew.bat
│ └── settings.gradle
└── FragmentTest
│ ├── .gitignore
│ ├── app
│ ├── ._.DS_Store
│ ├── .gitignore
│ ├── build.gradle
│ ├── proguard-rules.pro
│ └── src
│ │ ├── androidTest
│ │ └── java
│ │ │ └── com
│ │ │ └── example
│ │ │ └── fragmenttest
│ │ │ └── ExampleInstrumentedTest.kt
│ │ ├── main
│ │ ├── AndroidManifest.xml
│ │ ├── java
│ │ │ └── com
│ │ │ │ └── example
│ │ │ │ └── fragmenttest
│ │ │ │ ├── AnotherRightFragment.kt
│ │ │ │ ├── LeftFragment.kt
│ │ │ │ ├── MainActivity.kt
│ │ │ │ └── RightFragment.kt
│ │ └── res
│ │ │ ├── drawable-v24
│ │ │ └── ic_launcher_foreground.xml
│ │ │ ├── drawable
│ │ │ └── ic_launcher_background.xml
│ │ │ ├── layout-large
│ │ │ └── activity_main.xml
│ │ │ ├── layout
│ │ │ ├── activity_main.xml
│ │ │ ├── another_right_fragment.xml
│ │ │ ├── left_fragment.xml
│ │ │ └── right_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
│ │ │ ├── colors.xml
│ │ │ ├── strings.xml
│ │ │ └── styles.xml
│ │ └── test
│ │ └── java
│ │ └── com
│ │ └── example
│ │ └── fragmenttest
│ │ └── ExampleUnitTest.kt
│ ├── build.gradle
│ ├── gradle.properties
│ ├── gradle
│ └── wrapper
│ │ ├── gradle-wrapper.jar
│ │ └── gradle-wrapper.properties
│ ├── gradlew
│ ├── gradlew.bat
│ └── settings.gradle
├── chapter_06
├── BroadcastBestPractice
│ ├── .gitignore
│ ├── app
│ │ ├── ._.DS_Store
│ │ ├── .gitignore
│ │ ├── build.gradle
│ │ ├── proguard-rules.pro
│ │ └── src
│ │ │ ├── androidTest
│ │ │ └── java
│ │ │ │ └── com
│ │ │ │ └── example
│ │ │ │ └── broadcastbestpractice
│ │ │ │ └── ExampleInstrumentedTest.kt
│ │ │ ├── main
│ │ │ ├── AndroidManifest.xml
│ │ │ ├── java
│ │ │ │ └── com
│ │ │ │ │ └── example
│ │ │ │ │ └── broadcastbestpractice
│ │ │ │ │ ├── ActivityCollector.kt
│ │ │ │ │ ├── BaseActivity.kt
│ │ │ │ │ ├── HigherOrderFunction.kt
│ │ │ │ │ ├── LoginActivity.kt
│ │ │ │ │ └── MainActivity.kt
│ │ │ └── res
│ │ │ │ ├── drawable-v24
│ │ │ │ └── ic_launcher_foreground.xml
│ │ │ │ ├── drawable
│ │ │ │ └── ic_launcher_background.xml
│ │ │ │ ├── layout
│ │ │ │ ├── activity_login.xml
│ │ │ │ └── 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
│ │ │ │ ├── dimens.xml
│ │ │ │ ├── strings.xml
│ │ │ │ └── styles.xml
│ │ │ └── test
│ │ │ └── java
│ │ │ └── com
│ │ │ └── example
│ │ │ └── broadcastbestpractice
│ │ │ └── ExampleUnitTest.kt
│ ├── build.gradle
│ ├── gradle.properties
│ ├── gradle
│ │ └── wrapper
│ │ │ ├── gradle-wrapper.jar
│ │ │ └── gradle-wrapper.properties
│ ├── gradlew
│ ├── gradlew.bat
│ └── settings.gradle
└── BroadcastTest
│ ├── .gitignore
│ ├── app
│ ├── ._.DS_Store
│ ├── .gitignore
│ ├── build.gradle
│ ├── proguard-rules.pro
│ └── src
│ │ ├── androidTest
│ │ └── java
│ │ │ └── com
│ │ │ └── example
│ │ │ └── broadcasttest
│ │ │ └── ExampleInstrumentedTest.kt
│ │ ├── main
│ │ ├── AndroidManifest.xml
│ │ ├── java
│ │ │ └── com
│ │ │ │ └── example
│ │ │ │ └── broadcasttest
│ │ │ │ ├── AnotherBroadcastReceiver.kt
│ │ │ │ ├── BootCompleteReceiver.kt
│ │ │ │ ├── MainActivity.kt
│ │ │ │ └── MyBroadcastReceiver.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
│ │ │ ├── colors.xml
│ │ │ ├── strings.xml
│ │ │ └── styles.xml
│ │ └── test
│ │ └── java
│ │ └── com
│ │ └── example
│ │ └── broadcasttest
│ │ └── ExampleUnitTest.kt
│ ├── build.gradle
│ ├── gradle.properties
│ ├── gradle
│ └── wrapper
│ │ ├── gradle-wrapper.jar
│ │ └── gradle-wrapper.properties
│ ├── gradlew
│ ├── gradlew.bat
│ └── settings.gradle
├── chapter_07
├── BroadcastBestPractice
│ ├── .gitignore
│ ├── app
│ │ ├── ._.DS_Store
│ │ ├── .gitignore
│ │ ├── build.gradle
│ │ ├── proguard-rules.pro
│ │ └── src
│ │ │ ├── androidTest
│ │ │ └── java
│ │ │ │ └── com
│ │ │ │ └── example
│ │ │ │ └── broadcastbestpractice
│ │ │ │ └── ExampleInstrumentedTest.kt
│ │ │ ├── main
│ │ │ ├── AndroidManifest.xml
│ │ │ ├── java
│ │ │ │ └── com
│ │ │ │ │ └── example
│ │ │ │ │ └── broadcastbestpractice
│ │ │ │ │ ├── ActivityCollector.kt
│ │ │ │ │ ├── BaseActivity.kt
│ │ │ │ │ ├── HigherOrderFunction.kt
│ │ │ │ │ ├── LoginActivity.kt
│ │ │ │ │ └── MainActivity.kt
│ │ │ └── res
│ │ │ │ ├── drawable-v24
│ │ │ │ └── ic_launcher_foreground.xml
│ │ │ │ ├── drawable
│ │ │ │ └── ic_launcher_background.xml
│ │ │ │ ├── layout
│ │ │ │ ├── activity_login.xml
│ │ │ │ └── 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
│ │ │ │ ├── dimens.xml
│ │ │ │ ├── strings.xml
│ │ │ │ └── styles.xml
│ │ │ └── test
│ │ │ └── java
│ │ │ └── com
│ │ │ └── example
│ │ │ └── broadcastbestpractice
│ │ │ └── ExampleUnitTest.kt
│ ├── build.gradle
│ ├── gradle.properties
│ ├── gradle
│ │ └── wrapper
│ │ │ ├── gradle-wrapper.jar
│ │ │ └── gradle-wrapper.properties
│ ├── gradlew
│ ├── gradlew.bat
│ └── settings.gradle
├── DatabaseTest
│ ├── .gitignore
│ ├── app
│ │ ├── ._.DS_Store
│ │ ├── .gitignore
│ │ ├── build.gradle
│ │ ├── proguard-rules.pro
│ │ └── src
│ │ │ ├── androidTest
│ │ │ └── java
│ │ │ │ └── com
│ │ │ │ └── example
│ │ │ │ └── databasetest
│ │ │ │ └── ExampleInstrumentedTest.kt
│ │ │ ├── main
│ │ │ ├── AndroidManifest.xml
│ │ │ ├── java
│ │ │ │ └── com
│ │ │ │ │ └── example
│ │ │ │ │ └── databasetest
│ │ │ │ │ ├── ContentValues.kt
│ │ │ │ │ ├── MainActivity.kt
│ │ │ │ │ └── MyDatabaseHelper.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
│ │ │ │ ├── colors.xml
│ │ │ │ ├── strings.xml
│ │ │ │ └── styles.xml
│ │ │ └── test
│ │ │ └── java
│ │ │ └── com
│ │ │ └── example
│ │ │ └── databasetest
│ │ │ └── ExampleUnitTest.kt
│ ├── build.gradle
│ ├── gradle.properties
│ ├── gradle
│ │ └── wrapper
│ │ │ ├── gradle-wrapper.jar
│ │ │ └── gradle-wrapper.properties
│ ├── gradlew
│ ├── gradlew.bat
│ └── settings.gradle
├── FilePersistenceTest
│ ├── .gitignore
│ ├── app
│ │ ├── ._.DS_Store
│ │ ├── .gitignore
│ │ ├── build.gradle
│ │ ├── proguard-rules.pro
│ │ └── src
│ │ │ ├── androidTest
│ │ │ └── java
│ │ │ │ └── com
│ │ │ │ └── example
│ │ │ │ └── filepersistencetest
│ │ │ │ └── ExampleInstrumentedTest.kt
│ │ │ ├── main
│ │ │ ├── AndroidManifest.xml
│ │ │ ├── java
│ │ │ │ └── com
│ │ │ │ │ └── example
│ │ │ │ │ └── filepersistencetest
│ │ │ │ │ └── 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
│ │ │ │ ├── colors.xml
│ │ │ │ ├── strings.xml
│ │ │ │ └── styles.xml
│ │ │ └── test
│ │ │ └── java
│ │ │ └── com
│ │ │ └── example
│ │ │ └── filepersistencetest
│ │ │ └── ExampleUnitTest.kt
│ ├── build.gradle
│ ├── gradle.properties
│ ├── gradle
│ │ └── wrapper
│ │ │ ├── gradle-wrapper.jar
│ │ │ └── gradle-wrapper.properties
│ ├── gradlew
│ ├── gradlew.bat
│ └── settings.gradle
└── SharedPreferencesTest
│ ├── .gitignore
│ ├── app
│ ├── ._.DS_Store
│ ├── .gitignore
│ ├── build.gradle
│ ├── proguard-rules.pro
│ └── src
│ │ ├── androidTest
│ │ └── java
│ │ │ └── com
│ │ │ └── example
│ │ │ └── sharedpreferencestest
│ │ │ └── ExampleInstrumentedTest.kt
│ │ ├── main
│ │ ├── AndroidManifest.xml
│ │ ├── java
│ │ │ └── com
│ │ │ │ └── example
│ │ │ │ └── sharedpreferencestest
│ │ │ │ ├── MainActivity.kt
│ │ │ │ └── SharedPreferences.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
│ │ │ ├── colors.xml
│ │ │ ├── strings.xml
│ │ │ └── styles.xml
│ │ └── test
│ │ └── java
│ │ └── com
│ │ └── example
│ │ └── sharedpreferencestest
│ │ └── ExampleUnitTest.kt
│ ├── build.gradle
│ ├── gradle.properties
│ ├── gradle
│ └── wrapper
│ │ ├── gradle-wrapper.jar
│ │ └── gradle-wrapper.properties
│ ├── gradlew
│ ├── gradlew.bat
│ └── settings.gradle
├── chapter_08
├── ContactsTest
│ ├── .gitignore
│ ├── app
│ │ ├── ._.DS_Store
│ │ ├── .gitignore
│ │ ├── build.gradle
│ │ ├── proguard-rules.pro
│ │ └── src
│ │ │ ├── androidTest
│ │ │ └── java
│ │ │ │ └── com
│ │ │ │ └── example
│ │ │ │ └── contactstest
│ │ │ │ └── ExampleInstrumentedTest.kt
│ │ │ ├── main
│ │ │ ├── AndroidManifest.xml
│ │ │ ├── java
│ │ │ │ └── com
│ │ │ │ │ └── example
│ │ │ │ │ └── contactstest
│ │ │ │ │ ├── MainActivity.kt
│ │ │ │ │ └── MyProvider.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
│ │ │ │ ├── colors.xml
│ │ │ │ ├── strings.xml
│ │ │ │ └── styles.xml
│ │ │ └── test
│ │ │ └── java
│ │ │ └── com
│ │ │ └── example
│ │ │ └── contactstest
│ │ │ └── ExampleUnitTest.kt
│ ├── build.gradle
│ ├── gradle.properties
│ ├── gradle
│ │ └── wrapper
│ │ │ ├── gradle-wrapper.jar
│ │ │ └── gradle-wrapper.properties
│ ├── gradlew
│ ├── gradlew.bat
│ └── settings.gradle
├── DatabaseTest
│ ├── .gitignore
│ ├── app
│ │ ├── ._.DS_Store
│ │ ├── .gitignore
│ │ ├── build.gradle
│ │ ├── proguard-rules.pro
│ │ └── src
│ │ │ ├── androidTest
│ │ │ └── java
│ │ │ │ └── com
│ │ │ │ └── example
│ │ │ │ └── databasetest
│ │ │ │ └── ExampleInstrumentedTest.kt
│ │ │ ├── main
│ │ │ ├── AndroidManifest.xml
│ │ │ ├── java
│ │ │ │ └── com
│ │ │ │ │ └── example
│ │ │ │ │ └── databasetest
│ │ │ │ │ ├── ._.DS_Store
│ │ │ │ │ ├── ContentValues.kt
│ │ │ │ │ ├── DatabaseProvider.kt
│ │ │ │ │ ├── Later.kt
│ │ │ │ │ ├── MainActivity.kt
│ │ │ │ │ └── MyDatabaseHelper.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
│ │ │ │ ├── colors.xml
│ │ │ │ ├── strings.xml
│ │ │ │ └── styles.xml
│ │ │ └── test
│ │ │ └── java
│ │ │ └── com
│ │ │ └── example
│ │ │ └── databasetest
│ │ │ └── ExampleUnitTest.kt
│ ├── build.gradle
│ ├── gradle.properties
│ ├── gradle
│ │ └── wrapper
│ │ │ ├── gradle-wrapper.jar
│ │ │ └── gradle-wrapper.properties
│ ├── gradlew
│ ├── gradlew.bat
│ └── settings.gradle
├── ProviderTest
│ ├── .gitignore
│ ├── app
│ │ ├── ._.DS_Store
│ │ ├── .gitignore
│ │ ├── build.gradle
│ │ ├── proguard-rules.pro
│ │ └── src
│ │ │ ├── androidTest
│ │ │ └── java
│ │ │ │ └── com
│ │ │ │ └── example
│ │ │ │ └── providertest
│ │ │ │ └── ExampleInstrumentedTest.kt
│ │ │ ├── main
│ │ │ ├── AndroidManifest.xml
│ │ │ ├── java
│ │ │ │ └── com
│ │ │ │ │ └── example
│ │ │ │ │ └── providertest
│ │ │ │ │ ├── Delegate.kt
│ │ │ │ │ ├── MainActivity.kt
│ │ │ │ │ ├── MyClass.kt
│ │ │ │ │ ├── MySet.kt
│ │ │ │ │ └── build.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
│ │ │ │ ├── colors.xml
│ │ │ │ ├── strings.xml
│ │ │ │ └── styles.xml
│ │ │ └── test
│ │ │ └── java
│ │ │ └── com
│ │ │ └── example
│ │ │ └── providertest
│ │ │ └── ExampleUnitTest.kt
│ ├── build.gradle
│ ├── gradle.properties
│ ├── gradle
│ │ └── wrapper
│ │ │ ├── gradle-wrapper.jar
│ │ │ └── gradle-wrapper.properties
│ ├── gradlew
│ ├── gradlew.bat
│ └── settings.gradle
└── RuntimePermissionTest
│ ├── .gitignore
│ ├── app
│ ├── ._.DS_Store
│ ├── .gitignore
│ ├── build.gradle
│ ├── proguard-rules.pro
│ └── src
│ │ ├── androidTest
│ │ └── java
│ │ │ └── com
│ │ │ └── example
│ │ │ └── runtimepermissiontest
│ │ │ └── ExampleInstrumentedTest.kt
│ │ ├── main
│ │ ├── AndroidManifest.xml
│ │ ├── java
│ │ │ └── com
│ │ │ │ └── example
│ │ │ │ └── runtimepermissiontest
│ │ │ │ └── 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
│ │ │ ├── colors.xml
│ │ │ ├── strings.xml
│ │ │ └── styles.xml
│ │ └── test
│ │ └── java
│ │ └── com
│ │ └── example
│ │ └── runtimepermissiontest
│ │ └── ExampleUnitTest.kt
│ ├── build.gradle
│ ├── gradle.properties
│ ├── gradle
│ └── wrapper
│ │ ├── gradle-wrapper.jar
│ │ └── gradle-wrapper.properties
│ ├── gradlew
│ ├── gradlew.bat
│ └── settings.gradle
├── chapter_09
├── CameraAlbumTest
│ ├── .gitignore
│ ├── app
│ │ ├── ._.DS_Store
│ │ ├── .gitignore
│ │ ├── build.gradle
│ │ ├── proguard-rules.pro
│ │ └── src
│ │ │ ├── androidTest
│ │ │ └── java
│ │ │ │ └── com
│ │ │ │ └── example
│ │ │ │ └── cameraalbumtest
│ │ │ │ └── ExampleInstrumentedTest.kt
│ │ │ ├── main
│ │ │ ├── AndroidManifest.xml
│ │ │ ├── java
│ │ │ │ └── com
│ │ │ │ │ └── example
│ │ │ │ │ └── cameraalbumtest
│ │ │ │ │ └── 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
│ │ │ │ ├── colors.xml
│ │ │ │ ├── strings.xml
│ │ │ │ └── styles.xml
│ │ │ │ └── xml
│ │ │ │ └── file_paths.xml
│ │ │ └── test
│ │ │ └── java
│ │ │ └── com
│ │ │ └── example
│ │ │ └── cameraalbumtest
│ │ │ └── ExampleUnitTest.kt
│ ├── build.gradle
│ ├── gradle.properties
│ ├── gradle
│ │ └── wrapper
│ │ │ ├── gradle-wrapper.jar
│ │ │ └── gradle-wrapper.properties
│ ├── gradlew
│ ├── gradlew.bat
│ └── settings.gradle
├── NotificationTest
│ ├── .gitignore
│ ├── app
│ │ ├── ._.DS_Store
│ │ ├── .gitignore
│ │ ├── build.gradle
│ │ ├── proguard-rules.pro
│ │ └── src
│ │ │ ├── androidTest
│ │ │ └── java
│ │ │ │ └── com
│ │ │ │ └── example
│ │ │ │ └── notificationtest
│ │ │ │ └── ExampleInstrumentedTest.kt
│ │ │ ├── main
│ │ │ ├── AndroidManifest.xml
│ │ │ ├── java
│ │ │ │ └── com
│ │ │ │ │ └── example
│ │ │ │ │ └── notificationtest
│ │ │ │ │ ├── MainActivity.kt
│ │ │ │ │ └── NotificationActivity.kt
│ │ │ └── res
│ │ │ │ ├── drawable-v24
│ │ │ │ └── ic_launcher_foreground.xml
│ │ │ │ ├── drawable-xxhdpi
│ │ │ │ ├── big_image.jpg
│ │ │ │ ├── large_icon.png
│ │ │ │ └── small_icon.png
│ │ │ │ ├── drawable
│ │ │ │ └── ic_launcher_background.xml
│ │ │ │ ├── layout
│ │ │ │ ├── activity_main.xml
│ │ │ │ └── activity_notification.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
│ │ │ └── notificationtest
│ │ │ └── ExampleUnitTest.kt
│ ├── build.gradle
│ ├── gradle.properties
│ ├── gradle
│ │ └── wrapper
│ │ │ ├── gradle-wrapper.jar
│ │ │ └── gradle-wrapper.properties
│ ├── gradlew
│ ├── gradlew.bat
│ └── settings.gradle
├── PlayAudioTest
│ ├── .gitignore
│ ├── app
│ │ ├── ._.DS_Store
│ │ ├── .gitignore
│ │ ├── build.gradle
│ │ ├── proguard-rules.pro
│ │ └── src
│ │ │ ├── androidTest
│ │ │ └── java
│ │ │ │ └── com
│ │ │ │ └── example
│ │ │ │ └── playaudiotest
│ │ │ │ └── ExampleInstrumentedTest.kt
│ │ │ ├── main
│ │ │ ├── AndroidManifest.xml
│ │ │ ├── assets
│ │ │ │ └── music.mp3
│ │ │ ├── java
│ │ │ │ └── com
│ │ │ │ │ └── example
│ │ │ │ │ └── playaudiotest
│ │ │ │ │ └── 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
│ │ │ │ ├── colors.xml
│ │ │ │ ├── strings.xml
│ │ │ │ └── styles.xml
│ │ │ └── test
│ │ │ └── java
│ │ │ └── com
│ │ │ └── example
│ │ │ └── playaudiotest
│ │ │ └── ExampleUnitTest.kt
│ ├── build.gradle
│ ├── gradle.properties
│ ├── gradle
│ │ └── wrapper
│ │ │ ├── gradle-wrapper.jar
│ │ │ └── gradle-wrapper.properties
│ ├── gradlew
│ ├── gradlew.bat
│ └── settings.gradle
└── PlayVideoTest
│ ├── .gitignore
│ ├── app
│ ├── ._.DS_Store
│ ├── .gitignore
│ ├── build.gradle
│ ├── proguard-rules.pro
│ └── src
│ │ └── main
│ │ ├── AndroidManifest.xml
│ │ ├── java
│ │ └── com
│ │ │ └── example
│ │ │ └── playvideotest
│ │ │ ├── MainActivity.kt
│ │ │ └── infix.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
│ │ ├── raw
│ │ └── video.mp4
│ │ └── values
│ │ ├── colors.xml
│ │ ├── strings.xml
│ │ └── styles.xml
│ ├── build.gradle
│ ├── gradle.properties
│ ├── gradle
│ └── wrapper
│ │ ├── gradle-wrapper.jar
│ │ └── gradle-wrapper.properties
│ ├── gradlew
│ ├── gradlew.bat
│ └── settings.gradle
├── chapter_10
├── AndroidThreadTest
│ ├── .gitignore
│ ├── app
│ │ ├── ._.DS_Store
│ │ ├── .gitignore
│ │ ├── build.gradle
│ │ ├── proguard-rules.pro
│ │ └── src
│ │ │ ├── androidTest
│ │ │ └── java
│ │ │ │ └── com
│ │ │ │ └── example
│ │ │ │ └── androidthreadtest
│ │ │ │ └── ExampleInstrumentedTest.kt
│ │ │ ├── main
│ │ │ ├── AndroidManifest.xml
│ │ │ ├── java
│ │ │ │ └── com
│ │ │ │ │ └── example
│ │ │ │ │ └── androidthreadtest
│ │ │ │ │ └── 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
│ │ │ │ ├── colors.xml
│ │ │ │ ├── strings.xml
│ │ │ │ └── styles.xml
│ │ │ └── test
│ │ │ └── java
│ │ │ └── com
│ │ │ └── example
│ │ │ └── androidthreadtest
│ │ │ └── ExampleUnitTest.kt
│ ├── build.gradle
│ ├── gradle.properties
│ ├── gradle
│ │ └── wrapper
│ │ │ ├── gradle-wrapper.jar
│ │ │ └── gradle-wrapper.properties
│ ├── gradlew
│ ├── gradlew.bat
│ └── settings.gradle
└── ServiceTest
│ ├── .gitignore
│ ├── app
│ ├── ._.DS_Store
│ ├── .gitignore
│ ├── build.gradle
│ ├── proguard-rules.pro
│ └── src
│ │ ├── androidTest
│ │ └── java
│ │ │ └── com
│ │ │ └── example
│ │ │ └── servicetest
│ │ │ └── ExampleInstrumentedTest.kt
│ │ ├── main
│ │ ├── AndroidManifest.xml
│ │ ├── java
│ │ │ ├── com
│ │ │ │ └── example
│ │ │ │ │ └── servicetest
│ │ │ │ │ ├── MainActivity.kt
│ │ │ │ │ ├── MyIntentService.kt
│ │ │ │ │ ├── MyService.kt
│ │ │ │ │ └── reified.kt
│ │ │ └── transform.kt
│ │ └── res
│ │ │ ├── drawable-v24
│ │ │ └── ic_launcher_foreground.xml
│ │ │ ├── drawable-xxhdpi
│ │ │ ├── large_icon.png
│ │ │ └── small_icon.png
│ │ │ ├── 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
│ │ └── servicetest
│ │ └── ExampleUnitTest.kt
│ ├── build.gradle
│ ├── gradle.properties
│ ├── gradle
│ └── wrapper
│ │ ├── gradle-wrapper.jar
│ │ └── gradle-wrapper.properties
│ ├── gradlew
│ ├── gradlew.bat
│ └── settings.gradle
├── chapter_11
├── NetworkTest
│ ├── .gitignore
│ ├── app
│ │ ├── ._.DS_Store
│ │ ├── .gitignore
│ │ ├── build.gradle
│ │ ├── proguard-rules.pro
│ │ └── src
│ │ │ ├── main
│ │ │ ├── AndroidManifest.xml
│ │ │ ├── java
│ │ │ │ └── com
│ │ │ │ │ └── example
│ │ │ │ │ └── networktest
│ │ │ │ │ ├── App.kt
│ │ │ │ │ ├── ContentHandler.kt
│ │ │ │ │ ├── CoroutinesTest.kt
│ │ │ │ │ ├── HttpCallbackListener.kt
│ │ │ │ │ ├── HttpUtil.kt
│ │ │ │ │ ├── MainActivity.kt
│ │ │ │ │ └── MyHandler.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
│ │ │ │ ├── colors.xml
│ │ │ │ ├── strings.xml
│ │ │ │ └── styles.xml
│ │ │ │ └── xml
│ │ │ │ └── network_config.xml
│ │ │ └── test
│ │ │ └── java
│ │ │ └── com
│ │ │ └── example
│ │ │ └── networktest
│ │ │ └── ExampleUnitTest.kt
│ ├── build.gradle
│ ├── gradle.properties
│ ├── gradle
│ │ └── wrapper
│ │ │ ├── gradle-wrapper.jar
│ │ │ └── gradle-wrapper.properties
│ ├── gradlew
│ ├── gradlew.bat
│ └── settings.gradle
├── RetrofitTest
│ ├── .gitignore
│ ├── app
│ │ ├── ._.DS_Store
│ │ ├── .gitignore
│ │ ├── build.gradle
│ │ ├── proguard-rules.pro
│ │ └── src
│ │ │ ├── main
│ │ │ ├── AndroidManifest.xml
│ │ │ ├── java
│ │ │ │ └── com
│ │ │ │ │ └── example
│ │ │ │ │ └── retrofittest
│ │ │ │ │ ├── App.kt
│ │ │ │ │ ├── AppService.kt
│ │ │ │ │ ├── CoroutinesTest.kt
│ │ │ │ │ ├── Data.kt
│ │ │ │ │ ├── ExampleService.kt
│ │ │ │ │ ├── MainActivity.kt
│ │ │ │ │ └── ServiceCreator.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
│ │ │ │ ├── colors.xml
│ │ │ │ ├── strings.xml
│ │ │ │ └── styles.xml
│ │ │ │ └── xml
│ │ │ │ └── network_config.xml
│ │ │ └── test
│ │ │ └── java
│ │ │ └── com
│ │ │ └── example
│ │ │ └── retrofittest
│ │ │ └── ExampleUnitTest.kt
│ ├── build.gradle
│ ├── gradle.properties
│ ├── gradle
│ │ └── wrapper
│ │ │ ├── gradle-wrapper.jar
│ │ │ └── gradle-wrapper.properties
│ ├── gradlew
│ ├── gradlew.bat
│ └── settings.gradle
└── WebViewTest
│ ├── .gitignore
│ ├── app
│ ├── ._.DS_Store
│ ├── .gitignore
│ ├── build.gradle
│ ├── proguard-rules.pro
│ └── src
│ │ ├── androidTest
│ │ └── java
│ │ │ └── com
│ │ │ └── example
│ │ │ └── webviewtest
│ │ │ └── ExampleInstrumentedTest.kt
│ │ ├── main
│ │ ├── AndroidManifest.xml
│ │ ├── java
│ │ │ └── com
│ │ │ │ └── example
│ │ │ │ └── webviewtest
│ │ │ │ └── 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
│ │ │ ├── colors.xml
│ │ │ ├── strings.xml
│ │ │ └── styles.xml
│ │ └── test
│ │ └── java
│ │ └── com
│ │ └── example
│ │ └── webviewtest
│ │ └── ExampleUnitTest.kt
│ ├── build.gradle
│ ├── gradle.properties
│ ├── gradle
│ └── wrapper
│ │ ├── gradle-wrapper.jar
│ │ └── gradle-wrapper.properties
│ ├── gradlew
│ ├── gradlew.bat
│ └── settings.gradle
├── chapter_12
└── MaterialTest
│ ├── .gitignore
│ ├── app
│ ├── ._.DS_Store
│ ├── .gitignore
│ ├── build.gradle
│ ├── proguard-rules.pro
│ └── src
│ │ ├── main
│ │ ├── AndroidManifest.xml
│ │ ├── java
│ │ │ └── com
│ │ │ │ └── example
│ │ │ │ └── materialtest
│ │ │ │ ├── Fruit.kt
│ │ │ │ ├── FruitActivity.kt
│ │ │ │ ├── FruitAdapter.kt
│ │ │ │ ├── MainActivity.kt
│ │ │ │ ├── Max.kt
│ │ │ │ ├── Snackbar.kt
│ │ │ │ └── Toast.kt
│ │ └── res
│ │ │ ├── drawable-v24
│ │ │ └── ic_launcher_foreground.xml
│ │ │ ├── drawable-xxhdpi
│ │ │ ├── ._.DS_Store
│ │ │ ├── ._pear.jpg
│ │ │ ├── apple.jpg
│ │ │ ├── banana.jpg
│ │ │ ├── cherry.jpg
│ │ │ ├── grape.jpg
│ │ │ ├── ic_backup.png
│ │ │ ├── ic_comment.png
│ │ │ ├── ic_delete.png
│ │ │ ├── ic_done.png
│ │ │ ├── ic_menu.png
│ │ │ ├── ic_settings.png
│ │ │ ├── mango.jpg
│ │ │ ├── nav_call.png
│ │ │ ├── nav_friends.png
│ │ │ ├── nav_icon.png
│ │ │ ├── nav_location.png
│ │ │ ├── nav_mail.png
│ │ │ ├── nav_task.png
│ │ │ ├── orange.jpg
│ │ │ ├── pear.jpg
│ │ │ ├── pineapple.jpg
│ │ │ ├── strawberry.jpg
│ │ │ └── watermelon.jpg
│ │ │ ├── drawable
│ │ │ └── ic_launcher_background.xml
│ │ │ ├── layout
│ │ │ ├── activity_fruit.xml
│ │ │ ├── activity_main.xml
│ │ │ ├── fruit_item.xml
│ │ │ └── nav_header.xml
│ │ │ ├── menu
│ │ │ ├── nav_menu.xml
│ │ │ └── toolbar.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
│ │ │ ├── dimens.xml
│ │ │ ├── strings.xml
│ │ │ └── styles.xml
│ │ └── test
│ │ └── java
│ │ └── com
│ │ └── example
│ │ └── materialtest
│ │ └── ExampleUnitTest.kt
│ ├── build.gradle
│ ├── gradle.properties
│ ├── gradle
│ └── wrapper
│ │ ├── gradle-wrapper.jar
│ │ └── gradle-wrapper.properties
│ ├── gradlew
│ ├── gradlew.bat
│ └── settings.gradle
├── chapter_13
└── JetpackTest
│ ├── .gitignore
│ ├── app
│ ├── ._.DS_Store
│ ├── .gitignore
│ ├── build.gradle
│ ├── proguard-rules.pro
│ └── src
│ │ ├── main
│ │ ├── AndroidManifest.xml
│ │ ├── java
│ │ │ └── com
│ │ │ │ └── example
│ │ │ │ └── jetpacktest
│ │ │ │ ├── AppDatabase.kt
│ │ │ │ ├── Book.kt
│ │ │ │ ├── BookDao.kt
│ │ │ │ ├── DSL.kt
│ │ │ │ ├── MainActivity.kt
│ │ │ │ ├── MainViewModel.kt
│ │ │ │ ├── MainViewModelFactory.kt
│ │ │ │ ├── MyObserver.kt
│ │ │ │ ├── Repository.kt
│ │ │ │ ├── SimpleWorker.kt
│ │ │ │ ├── User.kt
│ │ │ │ └── UserDao.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
│ │ │ ├── colors.xml
│ │ │ ├── strings.xml
│ │ │ └── styles.xml
│ │ └── test
│ │ └── java
│ │ └── com
│ │ └── example
│ │ └── jetpacktest
│ │ └── ExampleUnitTest.kt
│ ├── build.gradle
│ ├── gradle.properties
│ ├── gradle
│ └── wrapper
│ │ ├── gradle-wrapper.jar
│ │ └── gradle-wrapper.properties
│ ├── gradlew
│ ├── gradlew.bat
│ └── settings.gradle
├── chapter_14
├── ActivityTest
│ ├── .gitignore
│ ├── app
│ │ ├── ._.DS_Store
│ │ ├── .gitignore
│ │ ├── build.gradle
│ │ ├── proguard-rules.pro
│ │ └── src
│ │ │ ├── androidTest
│ │ │ └── java
│ │ │ │ └── com
│ │ │ │ └── example
│ │ │ │ └── activitytest
│ │ │ │ └── ExampleInstrumentedTest.kt
│ │ │ ├── main
│ │ │ ├── AndroidManifest.xml
│ │ │ ├── java
│ │ │ │ └── com
│ │ │ │ │ └── example
│ │ │ │ │ └── activitytest
│ │ │ │ │ ├── ActivityBox.kt
│ │ │ │ │ ├── BaseActivity.kt
│ │ │ │ │ ├── FirstActivity.kt
│ │ │ │ │ ├── Helper.kt
│ │ │ │ │ ├── JavaTest.java
│ │ │ │ │ ├── LogUtil.kt
│ │ │ │ │ ├── Person.kt
│ │ │ │ │ ├── SecondActivity.kt
│ │ │ │ │ ├── ThirdActivity.kt
│ │ │ │ │ └── Util.kt
│ │ │ └── res
│ │ │ │ ├── drawable-v24
│ │ │ │ └── ic_launcher_foreground.xml
│ │ │ │ ├── drawable
│ │ │ │ └── ic_launcher_background.xml
│ │ │ │ ├── layout
│ │ │ │ ├── first_layout.xml
│ │ │ │ ├── second_layout.xml
│ │ │ │ └── third_layout.xml
│ │ │ │ ├── menu
│ │ │ │ └── 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
│ │ │ └── activitytest
│ │ │ └── ExampleUnitTest.kt
│ ├── build.gradle
│ ├── gradle.properties
│ ├── gradle
│ │ └── wrapper
│ │ │ ├── gradle-wrapper.jar
│ │ │ └── gradle-wrapper.properties
│ ├── gradlew
│ ├── gradlew.bat
│ └── settings.gradle
├── BroadcastBestPractice
│ ├── .gitignore
│ ├── app
│ │ ├── ._.DS_Store
│ │ ├── .gitignore
│ │ ├── build.gradle
│ │ ├── proguard-rules.pro
│ │ └── src
│ │ │ ├── androidTest
│ │ │ └── java
│ │ │ │ └── com
│ │ │ │ └── example
│ │ │ │ └── broadcastbestpractice
│ │ │ │ └── ExampleInstrumentedTest.kt
│ │ │ ├── main
│ │ │ ├── AndroidManifest.xml
│ │ │ ├── java
│ │ │ │ └── com
│ │ │ │ │ └── example
│ │ │ │ │ └── broadcastbestpractice
│ │ │ │ │ ├── ActivityCollector.kt
│ │ │ │ │ ├── BaseActivity.kt
│ │ │ │ │ ├── HigherOrderFunction.kt
│ │ │ │ │ ├── LoginActivity.kt
│ │ │ │ │ └── MainActivity.kt
│ │ │ └── res
│ │ │ │ ├── drawable-v24
│ │ │ │ └── ic_launcher_foreground.xml
│ │ │ │ ├── drawable
│ │ │ │ └── ic_launcher_background.xml
│ │ │ │ ├── layout
│ │ │ │ ├── activity_login.xml
│ │ │ │ └── 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
│ │ │ │ ├── dimens.xml
│ │ │ │ ├── strings.xml
│ │ │ │ └── styles.xml
│ │ │ └── test
│ │ │ └── java
│ │ │ └── com
│ │ │ └── example
│ │ │ └── broadcastbestpractice
│ │ │ └── ExampleUnitTest.kt
│ ├── build.gradle
│ ├── gradle.properties
│ ├── gradle
│ │ └── wrapper
│ │ │ ├── gradle-wrapper.jar
│ │ │ └── gradle-wrapper.properties
│ ├── gradlew
│ ├── gradlew.bat
│ └── settings.gradle
└── MaterialTest
│ ├── .gitignore
│ ├── app
│ ├── ._.DS_Store
│ ├── .gitignore
│ ├── build.gradle
│ ├── proguard-rules.pro
│ └── src
│ │ ├── main
│ │ ├── AndroidManifest.xml
│ │ ├── java
│ │ │ └── com
│ │ │ │ └── example
│ │ │ │ └── materialtest
│ │ │ │ ├── FirstActivity.kt
│ │ │ │ ├── Fruit.kt
│ │ │ │ ├── FruitActivity.kt
│ │ │ │ ├── FruitAdapter.kt
│ │ │ │ ├── MainActivity.kt
│ │ │ │ ├── Max.kt
│ │ │ │ ├── MyApplication.kt
│ │ │ │ ├── Snackbar.kt
│ │ │ │ ├── Test.java
│ │ │ │ ├── Test2.kt
│ │ │ │ ├── Toast.kt
│ │ │ │ └── Util.kt
│ │ └── res
│ │ │ ├── drawable-v24
│ │ │ └── ic_launcher_foreground.xml
│ │ │ ├── drawable-xxhdpi
│ │ │ ├── ._.DS_Store
│ │ │ ├── ._pear.jpg
│ │ │ ├── apple.jpg
│ │ │ ├── banana.jpg
│ │ │ ├── cherry.jpg
│ │ │ ├── grape.jpg
│ │ │ ├── ic_backup.png
│ │ │ ├── ic_comment.png
│ │ │ ├── ic_delete.png
│ │ │ ├── ic_done.png
│ │ │ ├── ic_menu.png
│ │ │ ├── ic_settings.png
│ │ │ ├── mango.jpg
│ │ │ ├── nav_call.png
│ │ │ ├── nav_friends.png
│ │ │ ├── nav_icon.png
│ │ │ ├── nav_location.png
│ │ │ ├── nav_mail.png
│ │ │ ├── nav_task.png
│ │ │ ├── orange.jpg
│ │ │ ├── pear.jpg
│ │ │ ├── pineapple.jpg
│ │ │ ├── strawberry.jpg
│ │ │ └── watermelon.jpg
│ │ │ ├── drawable
│ │ │ └── ic_launcher_background.xml
│ │ │ ├── layout
│ │ │ ├── activity_first.xml
│ │ │ ├── activity_fruit.xml
│ │ │ ├── activity_main.xml
│ │ │ ├── fruit_item.xml
│ │ │ └── nav_header.xml
│ │ │ ├── menu
│ │ │ ├── nav_menu.xml
│ │ │ └── toolbar.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
│ │ │ └── colors.xml
│ │ │ └── values
│ │ │ ├── colors.xml
│ │ │ ├── dimens.xml
│ │ │ ├── strings.xml
│ │ │ └── styles.xml
│ │ └── test
│ │ └── java
│ │ └── com
│ │ └── example
│ │ └── materialtest
│ │ └── ExampleUnitTest.kt
│ ├── build.gradle
│ ├── gradle.properties
│ ├── gradle
│ └── wrapper
│ │ ├── gradle-wrapper.jar
│ │ └── gradle-wrapper.properties
│ ├── gradlew
│ ├── gradlew.bat
│ └── settings.gradle
├── chapter_15
└── SunnyWeather
│ ├── .gitignore
│ ├── LICENSE
│ ├── README.md
│ ├── app
│ ├── .DS_Store
│ ├── ._.DS_Store
│ ├── .gitignore
│ ├── build.gradle
│ ├── proguard-rules.pro
│ ├── release
│ │ └── output.json
│ └── src
│ │ ├── androidTest
│ │ └── java
│ │ │ └── com
│ │ │ └── sunnyweather
│ │ │ └── android
│ │ │ └── ExampleInstrumentedTest.kt
│ │ ├── main
│ │ ├── AndroidManifest.xml
│ │ ├── ic_launcher-web.png
│ │ ├── java
│ │ │ └── com
│ │ │ │ └── sunnyweather
│ │ │ │ └── android
│ │ │ │ ├── MainActivity.kt
│ │ │ │ ├── SunnyWeatherApplication.kt
│ │ │ │ ├── logic
│ │ │ │ ├── Repository.kt
│ │ │ │ ├── dao
│ │ │ │ │ └── PlaceDao.kt
│ │ │ │ ├── model
│ │ │ │ │ ├── DailyResponse.kt
│ │ │ │ │ ├── PlaceResponse.kt
│ │ │ │ │ ├── RealtimeResponse.kt
│ │ │ │ │ ├── Sky.kt
│ │ │ │ │ └── Weather.kt
│ │ │ │ └── network
│ │ │ │ │ ├── PlaceService.kt
│ │ │ │ │ ├── ServiceCreator.kt
│ │ │ │ │ ├── SunnyWeatherNetwork.kt
│ │ │ │ │ └── WeatherService.kt
│ │ │ │ └── ui
│ │ │ │ ├── place
│ │ │ │ ├── PlaceAdapter.kt
│ │ │ │ ├── PlaceFragment.kt
│ │ │ │ └── PlaceViewModel.kt
│ │ │ │ └── weather
│ │ │ │ ├── WeatherActivity.kt
│ │ │ │ └── WeatherViewModel.kt
│ │ └── res
│ │ │ ├── drawable-v24
│ │ │ └── ic_launcher_foreground.xml
│ │ │ ├── drawable-xxhdpi
│ │ │ ├── bg_clear_day.jpg
│ │ │ ├── bg_clear_night.jpg
│ │ │ ├── bg_cloudy.jpg
│ │ │ ├── bg_fog.jpg
│ │ │ ├── bg_partly_cloudy_day.jpg
│ │ │ ├── bg_partly_cloudy_night.jpg
│ │ │ ├── bg_place.png
│ │ │ ├── bg_rain.jpg
│ │ │ ├── bg_snow.jpg
│ │ │ ├── bg_wind.jpg
│ │ │ ├── ic_carwashing.png
│ │ │ ├── ic_clear_day.png
│ │ │ ├── ic_clear_night.png
│ │ │ ├── ic_cloudy.png
│ │ │ ├── ic_coldrisk.png
│ │ │ ├── ic_dressing.png
│ │ │ ├── ic_fog.png
│ │ │ ├── ic_hail.png
│ │ │ ├── ic_heavy_haze.png
│ │ │ ├── ic_heavy_rain.png
│ │ │ ├── ic_heavy_snow.png
│ │ │ ├── ic_home.png
│ │ │ ├── ic_light_haze.png
│ │ │ ├── ic_light_rain.png
│ │ │ ├── ic_light_snow.png
│ │ │ ├── ic_moderate_haze.png
│ │ │ ├── ic_moderate_rain.png
│ │ │ ├── ic_moderate_snow.png
│ │ │ ├── ic_partly_cloud_day.png
│ │ │ ├── ic_partly_cloud_night.png
│ │ │ ├── ic_sleet.png
│ │ │ ├── ic_storm_rain.png
│ │ │ ├── ic_thunder_shower.png
│ │ │ ├── ic_ultraviolet.png
│ │ │ └── search_bg.9.png
│ │ │ ├── drawable
│ │ │ └── ic_launcher_background.xml
│ │ │ ├── layout
│ │ │ ├── activity_main.xml
│ │ │ ├── activity_weather.xml
│ │ │ ├── forecast.xml
│ │ │ ├── forecast_item.xml
│ │ │ ├── fragment_place.xml
│ │ │ ├── life_index.xml
│ │ │ ├── now.xml
│ │ │ └── place_item.xml
│ │ │ ├── mipmap-anydpi-v26
│ │ │ ├── ic_launcher.xml
│ │ │ └── ic_launcher_round.xml
│ │ │ ├── mipmap-hdpi
│ │ │ ├── ic_launcher.png
│ │ │ ├── ic_launcher_foreground.png
│ │ │ └── ic_launcher_round.png
│ │ │ ├── mipmap-mdpi
│ │ │ ├── ic_launcher.png
│ │ │ ├── ic_launcher_foreground.png
│ │ │ └── ic_launcher_round.png
│ │ │ ├── mipmap-xhdpi
│ │ │ ├── ic_launcher.png
│ │ │ ├── ic_launcher_foreground.png
│ │ │ └── ic_launcher_round.png
│ │ │ ├── mipmap-xxhdpi
│ │ │ ├── ic_launcher.png
│ │ │ ├── ic_launcher_foreground.png
│ │ │ └── ic_launcher_round.png
│ │ │ ├── mipmap-xxxhdpi
│ │ │ ├── ic_launcher.png
│ │ │ ├── ic_launcher_foreground.png
│ │ │ └── ic_launcher_round.png
│ │ │ └── values
│ │ │ ├── colors.xml
│ │ │ ├── ic_launcher_background.xml
│ │ │ ├── strings.xml
│ │ │ └── styles.xml
│ │ └── test
│ │ └── java
│ │ └── com
│ │ └── sunnyweather
│ │ └── android
│ │ └── ExampleUnitTest.kt
│ ├── build.gradle
│ ├── gradle.properties
│ ├── gradle
│ └── wrapper
│ │ ├── gradle-wrapper.jar
│ │ └── gradle-wrapper.properties
│ ├── gradlew
│ ├── gradlew.bat
│ ├── logo
│ └── sunny_weather_logo.png
│ └── settings.gradle
└── chapter_16
├── PermissionX
├── .gitignore
├── LICENSE
├── README.md
├── app
│ ├── .DS_Store
│ ├── ._.DS_Store
│ ├── .gitignore
│ ├── build.gradle
│ ├── proguard-rules.pro
│ └── src
│ │ ├── androidTest
│ │ └── java
│ │ │ └── com
│ │ │ └── permissionx
│ │ │ └── app
│ │ │ └── ExampleInstrumentedTest.kt
│ │ ├── main
│ │ ├── AndroidManifest.xml
│ │ ├── java
│ │ │ └── com
│ │ │ │ └── permissionx
│ │ │ │ └── app
│ │ │ │ └── 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
│ │ │ ├── colors.xml
│ │ │ ├── strings.xml
│ │ │ └── styles.xml
│ │ └── test
│ │ └── java
│ │ └── com
│ │ └── permissionx
│ │ └── app
│ │ └── ExampleUnitTest.kt
├── build.gradle
├── gradle.properties
├── gradle
│ └── wrapper
│ │ ├── gradle-wrapper.jar
│ │ └── gradle-wrapper.properties
├── gradlew
├── gradlew.bat
├── library
│ ├── .gitignore
│ ├── build.gradle
│ ├── consumer-rules.pro
│ ├── proguard-rules.pro
│ └── src
│ │ ├── androidTest
│ │ └── java
│ │ │ └── com
│ │ │ └── permissionx
│ │ │ └── guolindev
│ │ │ └── ExampleInstrumentedTest.kt
│ │ ├── main
│ │ ├── AndroidManifest.xml
│ │ ├── java
│ │ │ └── com
│ │ │ │ └── permissionx
│ │ │ │ └── guolindev
│ │ │ │ ├── InvisibleFragment.kt
│ │ │ │ └── PermissionX.kt
│ │ └── res
│ │ │ └── values
│ │ │ └── strings.xml
│ │ └── test
│ │ └── java
│ │ └── com
│ │ └── permissionx
│ │ └── guolindev
│ │ └── ExampleUnitTest.kt
└── settings.gradle
└── PermissionXTest
├── .gitignore
├── app
├── ._.DS_Store
├── .gitignore
├── build.gradle
├── proguard-rules.pro
└── src
│ ├── androidTest
│ └── java
│ │ └── com
│ │ └── example
│ │ └── permissionxtest
│ │ └── ExampleInstrumentedTest.kt
│ ├── main
│ ├── AndroidManifest.xml
│ ├── java
│ │ └── com
│ │ │ └── example
│ │ │ └── permissionxtest
│ │ │ └── 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
│ │ ├── colors.xml
│ │ ├── strings.xml
│ │ └── styles.xml
│ └── test
│ └── java
│ └── com
│ └── example
│ └── permissionxtest
│ └── ExampleUnitTest.kt
├── build.gradle
├── gradle.properties
├── gradle
└── wrapper
│ ├── gradle-wrapper.jar
│ └── gradle-wrapper.properties
├── gradlew
├── gradlew.bat
└── settings.gradle
/README.md:
--------------------------------------------------------------------------------
1 | # AndroidFirstCode_03
2 | 《第一行代码——Android(第3版)》随书资源的源码
3 |
--------------------------------------------------------------------------------
/chapter_01/HelloWorld/app/._.DS_Store:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_01/HelloWorld/app/._.DS_Store
--------------------------------------------------------------------------------
/chapter_01/HelloWorld/app/.gitignore:
--------------------------------------------------------------------------------
1 | /build
2 |
--------------------------------------------------------------------------------
/chapter_01/HelloWorld/app/src/main/res/mipmap-hdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_01/HelloWorld/app/src/main/res/mipmap-hdpi/ic_launcher.png
--------------------------------------------------------------------------------
/chapter_01/HelloWorld/app/src/main/res/mipmap-hdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_01/HelloWorld/app/src/main/res/mipmap-hdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/chapter_01/HelloWorld/app/src/main/res/mipmap-mdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_01/HelloWorld/app/src/main/res/mipmap-mdpi/ic_launcher.png
--------------------------------------------------------------------------------
/chapter_01/HelloWorld/app/src/main/res/mipmap-mdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_01/HelloWorld/app/src/main/res/mipmap-mdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/chapter_01/HelloWorld/app/src/main/res/mipmap-xhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_01/HelloWorld/app/src/main/res/mipmap-xhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/chapter_01/HelloWorld/app/src/main/res/mipmap-xhdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_01/HelloWorld/app/src/main/res/mipmap-xhdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/chapter_01/HelloWorld/app/src/main/res/mipmap-xxhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_01/HelloWorld/app/src/main/res/mipmap-xxhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/chapter_01/HelloWorld/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_01/HelloWorld/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/chapter_01/HelloWorld/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_01/HelloWorld/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/chapter_01/HelloWorld/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_01/HelloWorld/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/chapter_01/HelloWorld/app/src/main/res/values/strings.xml:
--------------------------------------------------------------------------------
1 |
2 | HelloWorld
3 |
4 |
--------------------------------------------------------------------------------
/chapter_01/HelloWorld/gradle/wrapper/gradle-wrapper.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_01/HelloWorld/gradle/wrapper/gradle-wrapper.jar
--------------------------------------------------------------------------------
/chapter_01/HelloWorld/settings.gradle:
--------------------------------------------------------------------------------
1 | include ':app'
2 | rootProject.name='HelloWorld'
3 |
--------------------------------------------------------------------------------
/chapter_02/HelloWorld/app/._.DS_Store:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_02/HelloWorld/app/._.DS_Store
--------------------------------------------------------------------------------
/chapter_02/HelloWorld/app/.gitignore:
--------------------------------------------------------------------------------
1 | /build
2 |
--------------------------------------------------------------------------------
/chapter_02/HelloWorld/app/src/main/java/com/example/helloworld/Cellphone.kt:
--------------------------------------------------------------------------------
1 | package com.example.helloworld
2 |
3 | data class Cellphone(val brand: String, val price: Double)
--------------------------------------------------------------------------------
/chapter_02/HelloWorld/app/src/main/java/com/example/helloworld/Singleton.kt:
--------------------------------------------------------------------------------
1 | package com.example.helloworld
2 |
3 | object Singleton {
4 | fun singletonTest() {
5 | println("singletonTest is called.")
6 | }
7 | }
--------------------------------------------------------------------------------
/chapter_02/HelloWorld/app/src/main/res/mipmap-hdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_02/HelloWorld/app/src/main/res/mipmap-hdpi/ic_launcher.png
--------------------------------------------------------------------------------
/chapter_02/HelloWorld/app/src/main/res/mipmap-hdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_02/HelloWorld/app/src/main/res/mipmap-hdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/chapter_02/HelloWorld/app/src/main/res/mipmap-mdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_02/HelloWorld/app/src/main/res/mipmap-mdpi/ic_launcher.png
--------------------------------------------------------------------------------
/chapter_02/HelloWorld/app/src/main/res/mipmap-mdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_02/HelloWorld/app/src/main/res/mipmap-mdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/chapter_02/HelloWorld/app/src/main/res/mipmap-xhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_02/HelloWorld/app/src/main/res/mipmap-xhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/chapter_02/HelloWorld/app/src/main/res/mipmap-xhdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_02/HelloWorld/app/src/main/res/mipmap-xhdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/chapter_02/HelloWorld/app/src/main/res/mipmap-xxhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_02/HelloWorld/app/src/main/res/mipmap-xxhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/chapter_02/HelloWorld/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_02/HelloWorld/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/chapter_02/HelloWorld/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_02/HelloWorld/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/chapter_02/HelloWorld/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_02/HelloWorld/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/chapter_02/HelloWorld/app/src/main/res/values/strings.xml:
--------------------------------------------------------------------------------
1 |
2 | HelloWorld
3 |
4 |
--------------------------------------------------------------------------------
/chapter_02/HelloWorld/gradle/wrapper/gradle-wrapper.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_02/HelloWorld/gradle/wrapper/gradle-wrapper.jar
--------------------------------------------------------------------------------
/chapter_02/HelloWorld/settings.gradle:
--------------------------------------------------------------------------------
1 | include ':app'
2 |
--------------------------------------------------------------------------------
/chapter_03/ActivityLifeCycleTest/app/._.DS_Store:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_03/ActivityLifeCycleTest/app/._.DS_Store
--------------------------------------------------------------------------------
/chapter_03/ActivityLifeCycleTest/app/.gitignore:
--------------------------------------------------------------------------------
1 | /build
2 |
--------------------------------------------------------------------------------
/chapter_03/ActivityLifeCycleTest/app/src/main/res/mipmap-hdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_03/ActivityLifeCycleTest/app/src/main/res/mipmap-hdpi/ic_launcher.png
--------------------------------------------------------------------------------
/chapter_03/ActivityLifeCycleTest/app/src/main/res/mipmap-mdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_03/ActivityLifeCycleTest/app/src/main/res/mipmap-mdpi/ic_launcher.png
--------------------------------------------------------------------------------
/chapter_03/ActivityLifeCycleTest/app/src/main/res/mipmap-xhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_03/ActivityLifeCycleTest/app/src/main/res/mipmap-xhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/chapter_03/ActivityLifeCycleTest/app/src/main/res/mipmap-xxhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_03/ActivityLifeCycleTest/app/src/main/res/mipmap-xxhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/chapter_03/ActivityLifeCycleTest/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_03/ActivityLifeCycleTest/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/chapter_03/ActivityLifeCycleTest/app/src/main/res/values/strings.xml:
--------------------------------------------------------------------------------
1 |
2 | ActivityLifeCycleTest
3 |
4 |
--------------------------------------------------------------------------------
/chapter_03/ActivityLifeCycleTest/gradle/wrapper/gradle-wrapper.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_03/ActivityLifeCycleTest/gradle/wrapper/gradle-wrapper.jar
--------------------------------------------------------------------------------
/chapter_03/ActivityLifeCycleTest/settings.gradle:
--------------------------------------------------------------------------------
1 | include ':app'
2 |
--------------------------------------------------------------------------------
/chapter_03/ActivityTest/app/._.DS_Store:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_03/ActivityTest/app/._.DS_Store
--------------------------------------------------------------------------------
/chapter_03/ActivityTest/app/.gitignore:
--------------------------------------------------------------------------------
1 | /build
2 |
--------------------------------------------------------------------------------
/chapter_03/ActivityTest/app/src/main/java/com/example/activitytest/Helper.kt:
--------------------------------------------------------------------------------
1 | package com.example.activitytest
2 |
3 | fun doSomething() {
4 | println("do something")
5 | }
--------------------------------------------------------------------------------
/chapter_03/ActivityTest/app/src/main/res/mipmap-hdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_03/ActivityTest/app/src/main/res/mipmap-hdpi/ic_launcher.png
--------------------------------------------------------------------------------
/chapter_03/ActivityTest/app/src/main/res/mipmap-hdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_03/ActivityTest/app/src/main/res/mipmap-hdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/chapter_03/ActivityTest/app/src/main/res/mipmap-mdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_03/ActivityTest/app/src/main/res/mipmap-mdpi/ic_launcher.png
--------------------------------------------------------------------------------
/chapter_03/ActivityTest/app/src/main/res/mipmap-mdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_03/ActivityTest/app/src/main/res/mipmap-mdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/chapter_03/ActivityTest/app/src/main/res/mipmap-xhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_03/ActivityTest/app/src/main/res/mipmap-xhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/chapter_03/ActivityTest/app/src/main/res/mipmap-xhdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_03/ActivityTest/app/src/main/res/mipmap-xhdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/chapter_03/ActivityTest/app/src/main/res/mipmap-xxhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_03/ActivityTest/app/src/main/res/mipmap-xxhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/chapter_03/ActivityTest/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_03/ActivityTest/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/chapter_03/ActivityTest/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_03/ActivityTest/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/chapter_03/ActivityTest/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_03/ActivityTest/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/chapter_03/ActivityTest/app/src/main/res/values/strings.xml:
--------------------------------------------------------------------------------
1 |
2 | ActivityTest
3 |
4 |
--------------------------------------------------------------------------------
/chapter_03/ActivityTest/gradle/wrapper/gradle-wrapper.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_03/ActivityTest/gradle/wrapper/gradle-wrapper.jar
--------------------------------------------------------------------------------
/chapter_03/ActivityTest/settings.gradle:
--------------------------------------------------------------------------------
1 | include ':app'
2 |
--------------------------------------------------------------------------------
/chapter_04/ListViewTest/app/._.DS_Store:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_04/ListViewTest/app/._.DS_Store
--------------------------------------------------------------------------------
/chapter_04/ListViewTest/app/.gitignore:
--------------------------------------------------------------------------------
1 | /build
2 |
--------------------------------------------------------------------------------
/chapter_04/ListViewTest/app/src/main/java/com/example/listviewtest/Fruit.kt:
--------------------------------------------------------------------------------
1 | package com.example.listviewtest
2 |
3 | class Fruit(val name:String, val imageId: Int)
--------------------------------------------------------------------------------
/chapter_04/ListViewTest/app/src/main/res/drawable-xxhdpi/apple_pic.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_04/ListViewTest/app/src/main/res/drawable-xxhdpi/apple_pic.png
--------------------------------------------------------------------------------
/chapter_04/ListViewTest/app/src/main/res/drawable-xxhdpi/banana_pic.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_04/ListViewTest/app/src/main/res/drawable-xxhdpi/banana_pic.png
--------------------------------------------------------------------------------
/chapter_04/ListViewTest/app/src/main/res/drawable-xxhdpi/cherry_pic.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_04/ListViewTest/app/src/main/res/drawable-xxhdpi/cherry_pic.png
--------------------------------------------------------------------------------
/chapter_04/ListViewTest/app/src/main/res/drawable-xxhdpi/grape_pic.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_04/ListViewTest/app/src/main/res/drawable-xxhdpi/grape_pic.png
--------------------------------------------------------------------------------
/chapter_04/ListViewTest/app/src/main/res/drawable-xxhdpi/mango_pic.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_04/ListViewTest/app/src/main/res/drawable-xxhdpi/mango_pic.png
--------------------------------------------------------------------------------
/chapter_04/ListViewTest/app/src/main/res/drawable-xxhdpi/orange_pic.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_04/ListViewTest/app/src/main/res/drawable-xxhdpi/orange_pic.png
--------------------------------------------------------------------------------
/chapter_04/ListViewTest/app/src/main/res/drawable-xxhdpi/pear_pic.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_04/ListViewTest/app/src/main/res/drawable-xxhdpi/pear_pic.png
--------------------------------------------------------------------------------
/chapter_04/ListViewTest/app/src/main/res/drawable-xxhdpi/pineapple_pic.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_04/ListViewTest/app/src/main/res/drawable-xxhdpi/pineapple_pic.png
--------------------------------------------------------------------------------
/chapter_04/ListViewTest/app/src/main/res/drawable-xxhdpi/strawberry_pic.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_04/ListViewTest/app/src/main/res/drawable-xxhdpi/strawberry_pic.png
--------------------------------------------------------------------------------
/chapter_04/ListViewTest/app/src/main/res/drawable-xxhdpi/watermelon_pic.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_04/ListViewTest/app/src/main/res/drawable-xxhdpi/watermelon_pic.png
--------------------------------------------------------------------------------
/chapter_04/ListViewTest/app/src/main/res/mipmap-hdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_04/ListViewTest/app/src/main/res/mipmap-hdpi/ic_launcher.png
--------------------------------------------------------------------------------
/chapter_04/ListViewTest/app/src/main/res/mipmap-hdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_04/ListViewTest/app/src/main/res/mipmap-hdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/chapter_04/ListViewTest/app/src/main/res/mipmap-mdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_04/ListViewTest/app/src/main/res/mipmap-mdpi/ic_launcher.png
--------------------------------------------------------------------------------
/chapter_04/ListViewTest/app/src/main/res/mipmap-mdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_04/ListViewTest/app/src/main/res/mipmap-mdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/chapter_04/ListViewTest/app/src/main/res/mipmap-xhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_04/ListViewTest/app/src/main/res/mipmap-xhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/chapter_04/ListViewTest/app/src/main/res/mipmap-xhdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_04/ListViewTest/app/src/main/res/mipmap-xhdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/chapter_04/ListViewTest/app/src/main/res/mipmap-xxhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_04/ListViewTest/app/src/main/res/mipmap-xxhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/chapter_04/ListViewTest/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_04/ListViewTest/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/chapter_04/ListViewTest/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_04/ListViewTest/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/chapter_04/ListViewTest/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_04/ListViewTest/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/chapter_04/ListViewTest/app/src/main/res/values/strings.xml:
--------------------------------------------------------------------------------
1 |
2 | ListViewTest
3 |
4 |
--------------------------------------------------------------------------------
/chapter_04/ListViewTest/gradle/wrapper/gradle-wrapper.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_04/ListViewTest/gradle/wrapper/gradle-wrapper.jar
--------------------------------------------------------------------------------
/chapter_04/ListViewTest/settings.gradle:
--------------------------------------------------------------------------------
1 | include ':app'
2 |
--------------------------------------------------------------------------------
/chapter_04/RecyclerViewTest/app/._.DS_Store:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_04/RecyclerViewTest/app/._.DS_Store
--------------------------------------------------------------------------------
/chapter_04/RecyclerViewTest/app/.gitignore:
--------------------------------------------------------------------------------
1 | /build
2 |
--------------------------------------------------------------------------------
/chapter_04/RecyclerViewTest/app/src/main/java/com/example/recyclerviewtest/Fruit.kt:
--------------------------------------------------------------------------------
1 | package com.example.recyclerviewtest
2 |
3 | class Fruit(val name:String, val imageId: Int)
--------------------------------------------------------------------------------
/chapter_04/RecyclerViewTest/app/src/main/res/drawable-xxhdpi/apple_pic.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_04/RecyclerViewTest/app/src/main/res/drawable-xxhdpi/apple_pic.png
--------------------------------------------------------------------------------
/chapter_04/RecyclerViewTest/app/src/main/res/drawable-xxhdpi/banana_pic.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_04/RecyclerViewTest/app/src/main/res/drawable-xxhdpi/banana_pic.png
--------------------------------------------------------------------------------
/chapter_04/RecyclerViewTest/app/src/main/res/drawable-xxhdpi/cherry_pic.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_04/RecyclerViewTest/app/src/main/res/drawable-xxhdpi/cherry_pic.png
--------------------------------------------------------------------------------
/chapter_04/RecyclerViewTest/app/src/main/res/drawable-xxhdpi/grape_pic.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_04/RecyclerViewTest/app/src/main/res/drawable-xxhdpi/grape_pic.png
--------------------------------------------------------------------------------
/chapter_04/RecyclerViewTest/app/src/main/res/drawable-xxhdpi/mango_pic.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_04/RecyclerViewTest/app/src/main/res/drawable-xxhdpi/mango_pic.png
--------------------------------------------------------------------------------
/chapter_04/RecyclerViewTest/app/src/main/res/drawable-xxhdpi/orange_pic.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_04/RecyclerViewTest/app/src/main/res/drawable-xxhdpi/orange_pic.png
--------------------------------------------------------------------------------
/chapter_04/RecyclerViewTest/app/src/main/res/drawable-xxhdpi/pear_pic.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_04/RecyclerViewTest/app/src/main/res/drawable-xxhdpi/pear_pic.png
--------------------------------------------------------------------------------
/chapter_04/RecyclerViewTest/app/src/main/res/drawable-xxhdpi/pineapple_pic.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_04/RecyclerViewTest/app/src/main/res/drawable-xxhdpi/pineapple_pic.png
--------------------------------------------------------------------------------
/chapter_04/RecyclerViewTest/app/src/main/res/drawable-xxhdpi/strawberry_pic.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_04/RecyclerViewTest/app/src/main/res/drawable-xxhdpi/strawberry_pic.png
--------------------------------------------------------------------------------
/chapter_04/RecyclerViewTest/app/src/main/res/drawable-xxhdpi/watermelon_pic.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_04/RecyclerViewTest/app/src/main/res/drawable-xxhdpi/watermelon_pic.png
--------------------------------------------------------------------------------
/chapter_04/RecyclerViewTest/app/src/main/res/mipmap-hdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_04/RecyclerViewTest/app/src/main/res/mipmap-hdpi/ic_launcher.png
--------------------------------------------------------------------------------
/chapter_04/RecyclerViewTest/app/src/main/res/mipmap-hdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_04/RecyclerViewTest/app/src/main/res/mipmap-hdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/chapter_04/RecyclerViewTest/app/src/main/res/mipmap-mdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_04/RecyclerViewTest/app/src/main/res/mipmap-mdpi/ic_launcher.png
--------------------------------------------------------------------------------
/chapter_04/RecyclerViewTest/app/src/main/res/mipmap-mdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_04/RecyclerViewTest/app/src/main/res/mipmap-mdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/chapter_04/RecyclerViewTest/app/src/main/res/mipmap-xhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_04/RecyclerViewTest/app/src/main/res/mipmap-xhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/chapter_04/RecyclerViewTest/app/src/main/res/mipmap-xhdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_04/RecyclerViewTest/app/src/main/res/mipmap-xhdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/chapter_04/RecyclerViewTest/app/src/main/res/mipmap-xxhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_04/RecyclerViewTest/app/src/main/res/mipmap-xxhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/chapter_04/RecyclerViewTest/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_04/RecyclerViewTest/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/chapter_04/RecyclerViewTest/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_04/RecyclerViewTest/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/chapter_04/RecyclerViewTest/app/src/main/res/values/strings.xml:
--------------------------------------------------------------------------------
1 |
2 | RecyclerViewTest
3 |
4 |
--------------------------------------------------------------------------------
/chapter_04/RecyclerViewTest/gradle/wrapper/gradle-wrapper.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_04/RecyclerViewTest/gradle/wrapper/gradle-wrapper.jar
--------------------------------------------------------------------------------
/chapter_04/RecyclerViewTest/settings.gradle:
--------------------------------------------------------------------------------
1 | include ':app'
2 |
--------------------------------------------------------------------------------
/chapter_04/UIBestPractice/app/._.DS_Store:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_04/UIBestPractice/app/._.DS_Store
--------------------------------------------------------------------------------
/chapter_04/UIBestPractice/app/.gitignore:
--------------------------------------------------------------------------------
1 | /build
2 |
--------------------------------------------------------------------------------
/chapter_04/UIBestPractice/app/src/main/res/drawable-xxhdpi/message_left.9.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_04/UIBestPractice/app/src/main/res/drawable-xxhdpi/message_left.9.png
--------------------------------------------------------------------------------
/chapter_04/UIBestPractice/app/src/main/res/drawable-xxhdpi/message_right.9.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_04/UIBestPractice/app/src/main/res/drawable-xxhdpi/message_right.9.png
--------------------------------------------------------------------------------
/chapter_04/UIBestPractice/app/src/main/res/mipmap-hdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_04/UIBestPractice/app/src/main/res/mipmap-hdpi/ic_launcher.png
--------------------------------------------------------------------------------
/chapter_04/UIBestPractice/app/src/main/res/mipmap-hdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_04/UIBestPractice/app/src/main/res/mipmap-hdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/chapter_04/UIBestPractice/app/src/main/res/mipmap-mdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_04/UIBestPractice/app/src/main/res/mipmap-mdpi/ic_launcher.png
--------------------------------------------------------------------------------
/chapter_04/UIBestPractice/app/src/main/res/mipmap-mdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_04/UIBestPractice/app/src/main/res/mipmap-mdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/chapter_04/UIBestPractice/app/src/main/res/mipmap-xhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_04/UIBestPractice/app/src/main/res/mipmap-xhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/chapter_04/UIBestPractice/app/src/main/res/mipmap-xhdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_04/UIBestPractice/app/src/main/res/mipmap-xhdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/chapter_04/UIBestPractice/app/src/main/res/mipmap-xxhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_04/UIBestPractice/app/src/main/res/mipmap-xxhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/chapter_04/UIBestPractice/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_04/UIBestPractice/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/chapter_04/UIBestPractice/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_04/UIBestPractice/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/chapter_04/UIBestPractice/app/src/main/res/values/strings.xml:
--------------------------------------------------------------------------------
1 |
2 | UIBestPractice
3 |
4 |
--------------------------------------------------------------------------------
/chapter_04/UIBestPractice/gradle/wrapper/gradle-wrapper.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_04/UIBestPractice/gradle/wrapper/gradle-wrapper.jar
--------------------------------------------------------------------------------
/chapter_04/UIBestPractice/settings.gradle:
--------------------------------------------------------------------------------
1 | include ':app'
2 |
--------------------------------------------------------------------------------
/chapter_04/UICustomViews/app/._.DS_Store:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_04/UICustomViews/app/._.DS_Store
--------------------------------------------------------------------------------
/chapter_04/UICustomViews/app/.gitignore:
--------------------------------------------------------------------------------
1 | /build
2 |
--------------------------------------------------------------------------------
/chapter_04/UICustomViews/app/src/main/res/drawable-xxhdpi/back_bg.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_04/UICustomViews/app/src/main/res/drawable-xxhdpi/back_bg.png
--------------------------------------------------------------------------------
/chapter_04/UICustomViews/app/src/main/res/drawable-xxhdpi/edit_bg.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_04/UICustomViews/app/src/main/res/drawable-xxhdpi/edit_bg.png
--------------------------------------------------------------------------------
/chapter_04/UICustomViews/app/src/main/res/drawable-xxhdpi/title_bg.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_04/UICustomViews/app/src/main/res/drawable-xxhdpi/title_bg.png
--------------------------------------------------------------------------------
/chapter_04/UICustomViews/app/src/main/res/mipmap-hdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_04/UICustomViews/app/src/main/res/mipmap-hdpi/ic_launcher.png
--------------------------------------------------------------------------------
/chapter_04/UICustomViews/app/src/main/res/mipmap-hdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_04/UICustomViews/app/src/main/res/mipmap-hdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/chapter_04/UICustomViews/app/src/main/res/mipmap-mdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_04/UICustomViews/app/src/main/res/mipmap-mdpi/ic_launcher.png
--------------------------------------------------------------------------------
/chapter_04/UICustomViews/app/src/main/res/mipmap-mdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_04/UICustomViews/app/src/main/res/mipmap-mdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/chapter_04/UICustomViews/app/src/main/res/mipmap-xhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_04/UICustomViews/app/src/main/res/mipmap-xhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/chapter_04/UICustomViews/app/src/main/res/mipmap-xhdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_04/UICustomViews/app/src/main/res/mipmap-xhdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/chapter_04/UICustomViews/app/src/main/res/mipmap-xxhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_04/UICustomViews/app/src/main/res/mipmap-xxhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/chapter_04/UICustomViews/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_04/UICustomViews/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/chapter_04/UICustomViews/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_04/UICustomViews/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/chapter_04/UICustomViews/app/src/main/res/values/strings.xml:
--------------------------------------------------------------------------------
1 |
2 | UICustomViews
3 |
4 |
--------------------------------------------------------------------------------
/chapter_04/UICustomViews/gradle/wrapper/gradle-wrapper.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_04/UICustomViews/gradle/wrapper/gradle-wrapper.jar
--------------------------------------------------------------------------------
/chapter_04/UICustomViews/settings.gradle:
--------------------------------------------------------------------------------
1 | include ':app'
2 |
--------------------------------------------------------------------------------
/chapter_04/UILayoutTest/app/._.DS_Store:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_04/UILayoutTest/app/._.DS_Store
--------------------------------------------------------------------------------
/chapter_04/UILayoutTest/app/.gitignore:
--------------------------------------------------------------------------------
1 | /build
2 |
--------------------------------------------------------------------------------
/chapter_04/UILayoutTest/app/src/main/res/mipmap-hdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_04/UILayoutTest/app/src/main/res/mipmap-hdpi/ic_launcher.png
--------------------------------------------------------------------------------
/chapter_04/UILayoutTest/app/src/main/res/mipmap-hdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_04/UILayoutTest/app/src/main/res/mipmap-hdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/chapter_04/UILayoutTest/app/src/main/res/mipmap-mdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_04/UILayoutTest/app/src/main/res/mipmap-mdpi/ic_launcher.png
--------------------------------------------------------------------------------
/chapter_04/UILayoutTest/app/src/main/res/mipmap-mdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_04/UILayoutTest/app/src/main/res/mipmap-mdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/chapter_04/UILayoutTest/app/src/main/res/mipmap-xhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_04/UILayoutTest/app/src/main/res/mipmap-xhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/chapter_04/UILayoutTest/app/src/main/res/mipmap-xhdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_04/UILayoutTest/app/src/main/res/mipmap-xhdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/chapter_04/UILayoutTest/app/src/main/res/mipmap-xxhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_04/UILayoutTest/app/src/main/res/mipmap-xxhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/chapter_04/UILayoutTest/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_04/UILayoutTest/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/chapter_04/UILayoutTest/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_04/UILayoutTest/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/chapter_04/UILayoutTest/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_04/UILayoutTest/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/chapter_04/UILayoutTest/app/src/main/res/values/strings.xml:
--------------------------------------------------------------------------------
1 |
2 | UILayoutTest
3 |
4 |
--------------------------------------------------------------------------------
/chapter_04/UILayoutTest/gradle/wrapper/gradle-wrapper.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_04/UILayoutTest/gradle/wrapper/gradle-wrapper.jar
--------------------------------------------------------------------------------
/chapter_04/UILayoutTest/settings.gradle:
--------------------------------------------------------------------------------
1 | include ':app'
2 |
--------------------------------------------------------------------------------
/chapter_04/UIWidgetTest/app/._.DS_Store:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_04/UIWidgetTest/app/._.DS_Store
--------------------------------------------------------------------------------
/chapter_04/UIWidgetTest/app/.gitignore:
--------------------------------------------------------------------------------
1 | /build
2 |
--------------------------------------------------------------------------------
/chapter_04/UIWidgetTest/app/src/main/res/drawable-xxhdpi/img_1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_04/UIWidgetTest/app/src/main/res/drawable-xxhdpi/img_1.png
--------------------------------------------------------------------------------
/chapter_04/UIWidgetTest/app/src/main/res/drawable-xxhdpi/img_2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_04/UIWidgetTest/app/src/main/res/drawable-xxhdpi/img_2.png
--------------------------------------------------------------------------------
/chapter_04/UIWidgetTest/app/src/main/res/mipmap-hdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_04/UIWidgetTest/app/src/main/res/mipmap-hdpi/ic_launcher.png
--------------------------------------------------------------------------------
/chapter_04/UIWidgetTest/app/src/main/res/mipmap-hdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_04/UIWidgetTest/app/src/main/res/mipmap-hdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/chapter_04/UIWidgetTest/app/src/main/res/mipmap-mdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_04/UIWidgetTest/app/src/main/res/mipmap-mdpi/ic_launcher.png
--------------------------------------------------------------------------------
/chapter_04/UIWidgetTest/app/src/main/res/mipmap-mdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_04/UIWidgetTest/app/src/main/res/mipmap-mdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/chapter_04/UIWidgetTest/app/src/main/res/mipmap-xhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_04/UIWidgetTest/app/src/main/res/mipmap-xhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/chapter_04/UIWidgetTest/app/src/main/res/mipmap-xhdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_04/UIWidgetTest/app/src/main/res/mipmap-xhdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/chapter_04/UIWidgetTest/app/src/main/res/mipmap-xxhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_04/UIWidgetTest/app/src/main/res/mipmap-xxhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/chapter_04/UIWidgetTest/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_04/UIWidgetTest/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/chapter_04/UIWidgetTest/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_04/UIWidgetTest/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/chapter_04/UIWidgetTest/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_04/UIWidgetTest/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/chapter_04/UIWidgetTest/app/src/main/res/values/strings.xml:
--------------------------------------------------------------------------------
1 |
2 | UIWidgetTest
3 |
4 |
--------------------------------------------------------------------------------
/chapter_04/UIWidgetTest/gradle/wrapper/gradle-wrapper.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_04/UIWidgetTest/gradle/wrapper/gradle-wrapper.jar
--------------------------------------------------------------------------------
/chapter_04/UIWidgetTest/settings.gradle:
--------------------------------------------------------------------------------
1 | include ':app'
2 |
--------------------------------------------------------------------------------
/chapter_05/FragmentBestPractice/app/._.DS_Store:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_05/FragmentBestPractice/app/._.DS_Store
--------------------------------------------------------------------------------
/chapter_05/FragmentBestPractice/app/.gitignore:
--------------------------------------------------------------------------------
1 | /build
2 |
--------------------------------------------------------------------------------
/chapter_05/FragmentBestPractice/app/src/main/java/com/example/fragmentbestpractice/News.kt:
--------------------------------------------------------------------------------
1 | package com.example.fragmentbestpractice
2 |
3 | class News(val title: String, val content: String)
--------------------------------------------------------------------------------
/chapter_05/FragmentBestPractice/app/src/main/res/mipmap-hdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_05/FragmentBestPractice/app/src/main/res/mipmap-hdpi/ic_launcher.png
--------------------------------------------------------------------------------
/chapter_05/FragmentBestPractice/app/src/main/res/mipmap-mdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_05/FragmentBestPractice/app/src/main/res/mipmap-mdpi/ic_launcher.png
--------------------------------------------------------------------------------
/chapter_05/FragmentBestPractice/app/src/main/res/mipmap-xhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_05/FragmentBestPractice/app/src/main/res/mipmap-xhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/chapter_05/FragmentBestPractice/app/src/main/res/values/strings.xml:
--------------------------------------------------------------------------------
1 |
2 | FragmentBestPractice
3 |
4 |
--------------------------------------------------------------------------------
/chapter_05/FragmentBestPractice/gradle/wrapper/gradle-wrapper.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_05/FragmentBestPractice/gradle/wrapper/gradle-wrapper.jar
--------------------------------------------------------------------------------
/chapter_05/FragmentBestPractice/settings.gradle:
--------------------------------------------------------------------------------
1 | include ':app'
2 |
--------------------------------------------------------------------------------
/chapter_05/FragmentTest/app/._.DS_Store:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_05/FragmentTest/app/._.DS_Store
--------------------------------------------------------------------------------
/chapter_05/FragmentTest/app/.gitignore:
--------------------------------------------------------------------------------
1 | /build
2 |
--------------------------------------------------------------------------------
/chapter_05/FragmentTest/app/src/main/res/mipmap-hdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_05/FragmentTest/app/src/main/res/mipmap-hdpi/ic_launcher.png
--------------------------------------------------------------------------------
/chapter_05/FragmentTest/app/src/main/res/mipmap-hdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_05/FragmentTest/app/src/main/res/mipmap-hdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/chapter_05/FragmentTest/app/src/main/res/mipmap-mdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_05/FragmentTest/app/src/main/res/mipmap-mdpi/ic_launcher.png
--------------------------------------------------------------------------------
/chapter_05/FragmentTest/app/src/main/res/mipmap-mdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_05/FragmentTest/app/src/main/res/mipmap-mdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/chapter_05/FragmentTest/app/src/main/res/mipmap-xhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_05/FragmentTest/app/src/main/res/mipmap-xhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/chapter_05/FragmentTest/app/src/main/res/mipmap-xhdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_05/FragmentTest/app/src/main/res/mipmap-xhdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/chapter_05/FragmentTest/app/src/main/res/mipmap-xxhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_05/FragmentTest/app/src/main/res/mipmap-xxhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/chapter_05/FragmentTest/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_05/FragmentTest/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/chapter_05/FragmentTest/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_05/FragmentTest/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/chapter_05/FragmentTest/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_05/FragmentTest/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/chapter_05/FragmentTest/app/src/main/res/values/strings.xml:
--------------------------------------------------------------------------------
1 |
2 | FragmentTest
3 |
4 |
--------------------------------------------------------------------------------
/chapter_05/FragmentTest/gradle/wrapper/gradle-wrapper.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_05/FragmentTest/gradle/wrapper/gradle-wrapper.jar
--------------------------------------------------------------------------------
/chapter_05/FragmentTest/settings.gradle:
--------------------------------------------------------------------------------
1 | include ':app'
2 |
--------------------------------------------------------------------------------
/chapter_06/BroadcastBestPractice/app/._.DS_Store:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_06/BroadcastBestPractice/app/._.DS_Store
--------------------------------------------------------------------------------
/chapter_06/BroadcastBestPractice/app/.gitignore:
--------------------------------------------------------------------------------
1 | /build
2 |
--------------------------------------------------------------------------------
/chapter_06/BroadcastBestPractice/app/src/main/res/mipmap-hdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_06/BroadcastBestPractice/app/src/main/res/mipmap-hdpi/ic_launcher.png
--------------------------------------------------------------------------------
/chapter_06/BroadcastBestPractice/app/src/main/res/mipmap-mdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_06/BroadcastBestPractice/app/src/main/res/mipmap-mdpi/ic_launcher.png
--------------------------------------------------------------------------------
/chapter_06/BroadcastBestPractice/app/src/main/res/values/dimens.xml:
--------------------------------------------------------------------------------
1 |
2 | 16dp
3 |
4 |
--------------------------------------------------------------------------------
/chapter_06/BroadcastBestPractice/app/src/main/res/values/strings.xml:
--------------------------------------------------------------------------------
1 |
2 | BroadcastBestPractice
3 | LoginActivity
4 |
5 |
--------------------------------------------------------------------------------
/chapter_06/BroadcastBestPractice/gradle/wrapper/gradle-wrapper.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_06/BroadcastBestPractice/gradle/wrapper/gradle-wrapper.jar
--------------------------------------------------------------------------------
/chapter_06/BroadcastBestPractice/settings.gradle:
--------------------------------------------------------------------------------
1 | include ':app'
2 |
--------------------------------------------------------------------------------
/chapter_06/BroadcastTest/app/._.DS_Store:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_06/BroadcastTest/app/._.DS_Store
--------------------------------------------------------------------------------
/chapter_06/BroadcastTest/app/.gitignore:
--------------------------------------------------------------------------------
1 | /build
2 |
--------------------------------------------------------------------------------
/chapter_06/BroadcastTest/app/src/main/res/mipmap-hdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_06/BroadcastTest/app/src/main/res/mipmap-hdpi/ic_launcher.png
--------------------------------------------------------------------------------
/chapter_06/BroadcastTest/app/src/main/res/mipmap-hdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_06/BroadcastTest/app/src/main/res/mipmap-hdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/chapter_06/BroadcastTest/app/src/main/res/mipmap-mdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_06/BroadcastTest/app/src/main/res/mipmap-mdpi/ic_launcher.png
--------------------------------------------------------------------------------
/chapter_06/BroadcastTest/app/src/main/res/mipmap-mdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_06/BroadcastTest/app/src/main/res/mipmap-mdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/chapter_06/BroadcastTest/app/src/main/res/mipmap-xhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_06/BroadcastTest/app/src/main/res/mipmap-xhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/chapter_06/BroadcastTest/app/src/main/res/mipmap-xhdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_06/BroadcastTest/app/src/main/res/mipmap-xhdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/chapter_06/BroadcastTest/app/src/main/res/mipmap-xxhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_06/BroadcastTest/app/src/main/res/mipmap-xxhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/chapter_06/BroadcastTest/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_06/BroadcastTest/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/chapter_06/BroadcastTest/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_06/BroadcastTest/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/chapter_06/BroadcastTest/app/src/main/res/values/strings.xml:
--------------------------------------------------------------------------------
1 |
2 | BroadcastTest
3 |
4 |
--------------------------------------------------------------------------------
/chapter_06/BroadcastTest/gradle/wrapper/gradle-wrapper.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_06/BroadcastTest/gradle/wrapper/gradle-wrapper.jar
--------------------------------------------------------------------------------
/chapter_06/BroadcastTest/settings.gradle:
--------------------------------------------------------------------------------
1 | include ':app'
2 |
--------------------------------------------------------------------------------
/chapter_07/BroadcastBestPractice/app/._.DS_Store:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_07/BroadcastBestPractice/app/._.DS_Store
--------------------------------------------------------------------------------
/chapter_07/BroadcastBestPractice/app/.gitignore:
--------------------------------------------------------------------------------
1 | /build
2 |
--------------------------------------------------------------------------------
/chapter_07/BroadcastBestPractice/app/src/main/res/mipmap-hdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_07/BroadcastBestPractice/app/src/main/res/mipmap-hdpi/ic_launcher.png
--------------------------------------------------------------------------------
/chapter_07/BroadcastBestPractice/app/src/main/res/mipmap-mdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_07/BroadcastBestPractice/app/src/main/res/mipmap-mdpi/ic_launcher.png
--------------------------------------------------------------------------------
/chapter_07/BroadcastBestPractice/app/src/main/res/values/dimens.xml:
--------------------------------------------------------------------------------
1 |
2 | 16dp
3 |
4 |
--------------------------------------------------------------------------------
/chapter_07/BroadcastBestPractice/app/src/main/res/values/strings.xml:
--------------------------------------------------------------------------------
1 |
2 | BroadcastBestPractice
3 | LoginActivity
4 |
5 |
--------------------------------------------------------------------------------
/chapter_07/BroadcastBestPractice/gradle/wrapper/gradle-wrapper.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_07/BroadcastBestPractice/gradle/wrapper/gradle-wrapper.jar
--------------------------------------------------------------------------------
/chapter_07/BroadcastBestPractice/settings.gradle:
--------------------------------------------------------------------------------
1 | include ':app'
2 |
--------------------------------------------------------------------------------
/chapter_07/DatabaseTest/app/._.DS_Store:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_07/DatabaseTest/app/._.DS_Store
--------------------------------------------------------------------------------
/chapter_07/DatabaseTest/app/.gitignore:
--------------------------------------------------------------------------------
1 | /build
2 |
--------------------------------------------------------------------------------
/chapter_07/DatabaseTest/app/src/main/res/mipmap-hdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_07/DatabaseTest/app/src/main/res/mipmap-hdpi/ic_launcher.png
--------------------------------------------------------------------------------
/chapter_07/DatabaseTest/app/src/main/res/mipmap-hdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_07/DatabaseTest/app/src/main/res/mipmap-hdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/chapter_07/DatabaseTest/app/src/main/res/mipmap-mdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_07/DatabaseTest/app/src/main/res/mipmap-mdpi/ic_launcher.png
--------------------------------------------------------------------------------
/chapter_07/DatabaseTest/app/src/main/res/mipmap-mdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_07/DatabaseTest/app/src/main/res/mipmap-mdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/chapter_07/DatabaseTest/app/src/main/res/mipmap-xhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_07/DatabaseTest/app/src/main/res/mipmap-xhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/chapter_07/DatabaseTest/app/src/main/res/mipmap-xhdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_07/DatabaseTest/app/src/main/res/mipmap-xhdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/chapter_07/DatabaseTest/app/src/main/res/mipmap-xxhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_07/DatabaseTest/app/src/main/res/mipmap-xxhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/chapter_07/DatabaseTest/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_07/DatabaseTest/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/chapter_07/DatabaseTest/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_07/DatabaseTest/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/chapter_07/DatabaseTest/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_07/DatabaseTest/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/chapter_07/DatabaseTest/app/src/main/res/values/strings.xml:
--------------------------------------------------------------------------------
1 |
2 | DatabaseTest
3 |
4 |
--------------------------------------------------------------------------------
/chapter_07/DatabaseTest/gradle/wrapper/gradle-wrapper.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_07/DatabaseTest/gradle/wrapper/gradle-wrapper.jar
--------------------------------------------------------------------------------
/chapter_07/DatabaseTest/settings.gradle:
--------------------------------------------------------------------------------
1 | include ':app'
2 |
--------------------------------------------------------------------------------
/chapter_07/FilePersistenceTest/app/._.DS_Store:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_07/FilePersistenceTest/app/._.DS_Store
--------------------------------------------------------------------------------
/chapter_07/FilePersistenceTest/app/.gitignore:
--------------------------------------------------------------------------------
1 | /build
2 |
--------------------------------------------------------------------------------
/chapter_07/FilePersistenceTest/app/src/main/res/mipmap-hdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_07/FilePersistenceTest/app/src/main/res/mipmap-hdpi/ic_launcher.png
--------------------------------------------------------------------------------
/chapter_07/FilePersistenceTest/app/src/main/res/mipmap-mdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_07/FilePersistenceTest/app/src/main/res/mipmap-mdpi/ic_launcher.png
--------------------------------------------------------------------------------
/chapter_07/FilePersistenceTest/app/src/main/res/mipmap-xhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_07/FilePersistenceTest/app/src/main/res/mipmap-xhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/chapter_07/FilePersistenceTest/app/src/main/res/mipmap-xxhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_07/FilePersistenceTest/app/src/main/res/mipmap-xxhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/chapter_07/FilePersistenceTest/app/src/main/res/values/strings.xml:
--------------------------------------------------------------------------------
1 |
2 | FilePersistenceTest
3 |
4 |
--------------------------------------------------------------------------------
/chapter_07/FilePersistenceTest/gradle/wrapper/gradle-wrapper.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_07/FilePersistenceTest/gradle/wrapper/gradle-wrapper.jar
--------------------------------------------------------------------------------
/chapter_07/FilePersistenceTest/settings.gradle:
--------------------------------------------------------------------------------
1 | include ':app'
2 |
--------------------------------------------------------------------------------
/chapter_07/SharedPreferencesTest/app/._.DS_Store:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_07/SharedPreferencesTest/app/._.DS_Store
--------------------------------------------------------------------------------
/chapter_07/SharedPreferencesTest/app/.gitignore:
--------------------------------------------------------------------------------
1 | /build
2 |
--------------------------------------------------------------------------------
/chapter_07/SharedPreferencesTest/app/src/main/res/mipmap-hdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_07/SharedPreferencesTest/app/src/main/res/mipmap-hdpi/ic_launcher.png
--------------------------------------------------------------------------------
/chapter_07/SharedPreferencesTest/app/src/main/res/mipmap-mdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_07/SharedPreferencesTest/app/src/main/res/mipmap-mdpi/ic_launcher.png
--------------------------------------------------------------------------------
/chapter_07/SharedPreferencesTest/app/src/main/res/values/strings.xml:
--------------------------------------------------------------------------------
1 |
2 | SharedPreferencesTest
3 |
4 |
--------------------------------------------------------------------------------
/chapter_07/SharedPreferencesTest/gradle/wrapper/gradle-wrapper.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_07/SharedPreferencesTest/gradle/wrapper/gradle-wrapper.jar
--------------------------------------------------------------------------------
/chapter_07/SharedPreferencesTest/settings.gradle:
--------------------------------------------------------------------------------
1 | include ':app'
2 |
--------------------------------------------------------------------------------
/chapter_08/ContactsTest/app/._.DS_Store:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_08/ContactsTest/app/._.DS_Store
--------------------------------------------------------------------------------
/chapter_08/ContactsTest/app/.gitignore:
--------------------------------------------------------------------------------
1 | /build
2 |
--------------------------------------------------------------------------------
/chapter_08/ContactsTest/app/src/main/res/mipmap-hdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_08/ContactsTest/app/src/main/res/mipmap-hdpi/ic_launcher.png
--------------------------------------------------------------------------------
/chapter_08/ContactsTest/app/src/main/res/mipmap-hdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_08/ContactsTest/app/src/main/res/mipmap-hdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/chapter_08/ContactsTest/app/src/main/res/mipmap-mdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_08/ContactsTest/app/src/main/res/mipmap-mdpi/ic_launcher.png
--------------------------------------------------------------------------------
/chapter_08/ContactsTest/app/src/main/res/mipmap-mdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_08/ContactsTest/app/src/main/res/mipmap-mdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/chapter_08/ContactsTest/app/src/main/res/mipmap-xhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_08/ContactsTest/app/src/main/res/mipmap-xhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/chapter_08/ContactsTest/app/src/main/res/mipmap-xhdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_08/ContactsTest/app/src/main/res/mipmap-xhdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/chapter_08/ContactsTest/app/src/main/res/mipmap-xxhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_08/ContactsTest/app/src/main/res/mipmap-xxhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/chapter_08/ContactsTest/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_08/ContactsTest/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/chapter_08/ContactsTest/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_08/ContactsTest/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/chapter_08/ContactsTest/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_08/ContactsTest/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/chapter_08/ContactsTest/app/src/main/res/values/strings.xml:
--------------------------------------------------------------------------------
1 |
2 | ContactsTest
3 |
4 |
--------------------------------------------------------------------------------
/chapter_08/ContactsTest/gradle/wrapper/gradle-wrapper.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_08/ContactsTest/gradle/wrapper/gradle-wrapper.jar
--------------------------------------------------------------------------------
/chapter_08/ContactsTest/settings.gradle:
--------------------------------------------------------------------------------
1 | include ':app'
2 |
--------------------------------------------------------------------------------
/chapter_08/DatabaseTest/app/._.DS_Store:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_08/DatabaseTest/app/._.DS_Store
--------------------------------------------------------------------------------
/chapter_08/DatabaseTest/app/.gitignore:
--------------------------------------------------------------------------------
1 | /build
2 |
--------------------------------------------------------------------------------
/chapter_08/DatabaseTest/app/src/main/res/mipmap-hdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_08/DatabaseTest/app/src/main/res/mipmap-hdpi/ic_launcher.png
--------------------------------------------------------------------------------
/chapter_08/DatabaseTest/app/src/main/res/mipmap-hdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_08/DatabaseTest/app/src/main/res/mipmap-hdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/chapter_08/DatabaseTest/app/src/main/res/mipmap-mdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_08/DatabaseTest/app/src/main/res/mipmap-mdpi/ic_launcher.png
--------------------------------------------------------------------------------
/chapter_08/DatabaseTest/app/src/main/res/mipmap-mdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_08/DatabaseTest/app/src/main/res/mipmap-mdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/chapter_08/DatabaseTest/app/src/main/res/mipmap-xhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_08/DatabaseTest/app/src/main/res/mipmap-xhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/chapter_08/DatabaseTest/app/src/main/res/mipmap-xhdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_08/DatabaseTest/app/src/main/res/mipmap-xhdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/chapter_08/DatabaseTest/app/src/main/res/mipmap-xxhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_08/DatabaseTest/app/src/main/res/mipmap-xxhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/chapter_08/DatabaseTest/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_08/DatabaseTest/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/chapter_08/DatabaseTest/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_08/DatabaseTest/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/chapter_08/DatabaseTest/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_08/DatabaseTest/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/chapter_08/DatabaseTest/app/src/main/res/values/strings.xml:
--------------------------------------------------------------------------------
1 |
2 | DatabaseTest
3 |
4 |
--------------------------------------------------------------------------------
/chapter_08/DatabaseTest/gradle/wrapper/gradle-wrapper.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_08/DatabaseTest/gradle/wrapper/gradle-wrapper.jar
--------------------------------------------------------------------------------
/chapter_08/DatabaseTest/settings.gradle:
--------------------------------------------------------------------------------
1 | include ':app'
2 |
--------------------------------------------------------------------------------
/chapter_08/ProviderTest/app/._.DS_Store:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_08/ProviderTest/app/._.DS_Store
--------------------------------------------------------------------------------
/chapter_08/ProviderTest/app/.gitignore:
--------------------------------------------------------------------------------
1 | /build
2 |
--------------------------------------------------------------------------------
/chapter_08/ProviderTest/app/src/main/java/com/example/providertest/MyClass.kt:
--------------------------------------------------------------------------------
1 | package com.example.providertest
2 |
3 | class MyClass {
4 |
5 | val p by Delegate()
6 |
7 | }
--------------------------------------------------------------------------------
/chapter_08/ProviderTest/app/src/main/java/com/example/providertest/build.kt:
--------------------------------------------------------------------------------
1 | package com.example.providertest
2 |
3 | fun T.build(block: T.() -> Unit): T {
4 | block()
5 | return this
6 | }
--------------------------------------------------------------------------------
/chapter_08/ProviderTest/app/src/main/res/mipmap-hdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_08/ProviderTest/app/src/main/res/mipmap-hdpi/ic_launcher.png
--------------------------------------------------------------------------------
/chapter_08/ProviderTest/app/src/main/res/mipmap-hdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_08/ProviderTest/app/src/main/res/mipmap-hdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/chapter_08/ProviderTest/app/src/main/res/mipmap-mdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_08/ProviderTest/app/src/main/res/mipmap-mdpi/ic_launcher.png
--------------------------------------------------------------------------------
/chapter_08/ProviderTest/app/src/main/res/mipmap-mdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_08/ProviderTest/app/src/main/res/mipmap-mdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/chapter_08/ProviderTest/app/src/main/res/mipmap-xhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_08/ProviderTest/app/src/main/res/mipmap-xhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/chapter_08/ProviderTest/app/src/main/res/mipmap-xhdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_08/ProviderTest/app/src/main/res/mipmap-xhdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/chapter_08/ProviderTest/app/src/main/res/mipmap-xxhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_08/ProviderTest/app/src/main/res/mipmap-xxhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/chapter_08/ProviderTest/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_08/ProviderTest/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/chapter_08/ProviderTest/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_08/ProviderTest/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/chapter_08/ProviderTest/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_08/ProviderTest/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/chapter_08/ProviderTest/app/src/main/res/values/strings.xml:
--------------------------------------------------------------------------------
1 |
2 | ProviderTest
3 |
4 |
--------------------------------------------------------------------------------
/chapter_08/ProviderTest/gradle/wrapper/gradle-wrapper.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_08/ProviderTest/gradle/wrapper/gradle-wrapper.jar
--------------------------------------------------------------------------------
/chapter_08/ProviderTest/settings.gradle:
--------------------------------------------------------------------------------
1 | include ':app'
2 |
--------------------------------------------------------------------------------
/chapter_08/RuntimePermissionTest/app/._.DS_Store:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_08/RuntimePermissionTest/app/._.DS_Store
--------------------------------------------------------------------------------
/chapter_08/RuntimePermissionTest/app/.gitignore:
--------------------------------------------------------------------------------
1 | /build
2 |
--------------------------------------------------------------------------------
/chapter_08/RuntimePermissionTest/app/src/main/res/mipmap-hdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_08/RuntimePermissionTest/app/src/main/res/mipmap-hdpi/ic_launcher.png
--------------------------------------------------------------------------------
/chapter_08/RuntimePermissionTest/app/src/main/res/mipmap-mdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_08/RuntimePermissionTest/app/src/main/res/mipmap-mdpi/ic_launcher.png
--------------------------------------------------------------------------------
/chapter_08/RuntimePermissionTest/app/src/main/res/values/strings.xml:
--------------------------------------------------------------------------------
1 |
2 | RuntimePermissionTest
3 |
4 |
--------------------------------------------------------------------------------
/chapter_08/RuntimePermissionTest/gradle/wrapper/gradle-wrapper.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_08/RuntimePermissionTest/gradle/wrapper/gradle-wrapper.jar
--------------------------------------------------------------------------------
/chapter_08/RuntimePermissionTest/settings.gradle:
--------------------------------------------------------------------------------
1 | include ':app'
2 |
--------------------------------------------------------------------------------
/chapter_09/CameraAlbumTest/app/._.DS_Store:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_09/CameraAlbumTest/app/._.DS_Store
--------------------------------------------------------------------------------
/chapter_09/CameraAlbumTest/app/.gitignore:
--------------------------------------------------------------------------------
1 | /build
2 |
--------------------------------------------------------------------------------
/chapter_09/CameraAlbumTest/app/src/main/res/mipmap-hdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_09/CameraAlbumTest/app/src/main/res/mipmap-hdpi/ic_launcher.png
--------------------------------------------------------------------------------
/chapter_09/CameraAlbumTest/app/src/main/res/mipmap-hdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_09/CameraAlbumTest/app/src/main/res/mipmap-hdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/chapter_09/CameraAlbumTest/app/src/main/res/mipmap-mdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_09/CameraAlbumTest/app/src/main/res/mipmap-mdpi/ic_launcher.png
--------------------------------------------------------------------------------
/chapter_09/CameraAlbumTest/app/src/main/res/mipmap-mdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_09/CameraAlbumTest/app/src/main/res/mipmap-mdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/chapter_09/CameraAlbumTest/app/src/main/res/mipmap-xhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_09/CameraAlbumTest/app/src/main/res/mipmap-xhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/chapter_09/CameraAlbumTest/app/src/main/res/mipmap-xxhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_09/CameraAlbumTest/app/src/main/res/mipmap-xxhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/chapter_09/CameraAlbumTest/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_09/CameraAlbumTest/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/chapter_09/CameraAlbumTest/app/src/main/res/values/strings.xml:
--------------------------------------------------------------------------------
1 |
2 | CameraAlbumTest
3 |
4 |
--------------------------------------------------------------------------------
/chapter_09/CameraAlbumTest/app/src/main/res/xml/file_paths.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/chapter_09/CameraAlbumTest/gradle/wrapper/gradle-wrapper.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_09/CameraAlbumTest/gradle/wrapper/gradle-wrapper.jar
--------------------------------------------------------------------------------
/chapter_09/CameraAlbumTest/settings.gradle:
--------------------------------------------------------------------------------
1 | include ':app'
2 |
--------------------------------------------------------------------------------
/chapter_09/NotificationTest/app/._.DS_Store:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_09/NotificationTest/app/._.DS_Store
--------------------------------------------------------------------------------
/chapter_09/NotificationTest/app/.gitignore:
--------------------------------------------------------------------------------
1 | /build
2 |
--------------------------------------------------------------------------------
/chapter_09/NotificationTest/app/src/main/res/drawable-xxhdpi/big_image.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_09/NotificationTest/app/src/main/res/drawable-xxhdpi/big_image.jpg
--------------------------------------------------------------------------------
/chapter_09/NotificationTest/app/src/main/res/drawable-xxhdpi/large_icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_09/NotificationTest/app/src/main/res/drawable-xxhdpi/large_icon.png
--------------------------------------------------------------------------------
/chapter_09/NotificationTest/app/src/main/res/drawable-xxhdpi/small_icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_09/NotificationTest/app/src/main/res/drawable-xxhdpi/small_icon.png
--------------------------------------------------------------------------------
/chapter_09/NotificationTest/app/src/main/res/mipmap-hdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_09/NotificationTest/app/src/main/res/mipmap-hdpi/ic_launcher.png
--------------------------------------------------------------------------------
/chapter_09/NotificationTest/app/src/main/res/mipmap-mdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_09/NotificationTest/app/src/main/res/mipmap-mdpi/ic_launcher.png
--------------------------------------------------------------------------------
/chapter_09/NotificationTest/app/src/main/res/mipmap-xhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_09/NotificationTest/app/src/main/res/mipmap-xhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/chapter_09/NotificationTest/app/src/main/res/mipmap-xxhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_09/NotificationTest/app/src/main/res/mipmap-xxhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/chapter_09/NotificationTest/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_09/NotificationTest/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/chapter_09/NotificationTest/app/src/main/res/values/strings.xml:
--------------------------------------------------------------------------------
1 |
2 | NotificationTest
3 |
4 |
--------------------------------------------------------------------------------
/chapter_09/NotificationTest/gradle/wrapper/gradle-wrapper.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_09/NotificationTest/gradle/wrapper/gradle-wrapper.jar
--------------------------------------------------------------------------------
/chapter_09/NotificationTest/settings.gradle:
--------------------------------------------------------------------------------
1 | include ':app'
2 |
--------------------------------------------------------------------------------
/chapter_09/PlayAudioTest/app/._.DS_Store:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_09/PlayAudioTest/app/._.DS_Store
--------------------------------------------------------------------------------
/chapter_09/PlayAudioTest/app/.gitignore:
--------------------------------------------------------------------------------
1 | /build
2 |
--------------------------------------------------------------------------------
/chapter_09/PlayAudioTest/app/src/main/assets/music.mp3:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_09/PlayAudioTest/app/src/main/assets/music.mp3
--------------------------------------------------------------------------------
/chapter_09/PlayAudioTest/app/src/main/res/mipmap-hdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_09/PlayAudioTest/app/src/main/res/mipmap-hdpi/ic_launcher.png
--------------------------------------------------------------------------------
/chapter_09/PlayAudioTest/app/src/main/res/mipmap-hdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_09/PlayAudioTest/app/src/main/res/mipmap-hdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/chapter_09/PlayAudioTest/app/src/main/res/mipmap-mdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_09/PlayAudioTest/app/src/main/res/mipmap-mdpi/ic_launcher.png
--------------------------------------------------------------------------------
/chapter_09/PlayAudioTest/app/src/main/res/mipmap-mdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_09/PlayAudioTest/app/src/main/res/mipmap-mdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/chapter_09/PlayAudioTest/app/src/main/res/mipmap-xhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_09/PlayAudioTest/app/src/main/res/mipmap-xhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/chapter_09/PlayAudioTest/app/src/main/res/mipmap-xhdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_09/PlayAudioTest/app/src/main/res/mipmap-xhdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/chapter_09/PlayAudioTest/app/src/main/res/mipmap-xxhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_09/PlayAudioTest/app/src/main/res/mipmap-xxhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/chapter_09/PlayAudioTest/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_09/PlayAudioTest/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/chapter_09/PlayAudioTest/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_09/PlayAudioTest/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/chapter_09/PlayAudioTest/app/src/main/res/values/strings.xml:
--------------------------------------------------------------------------------
1 |
2 | PlayAudioTest
3 |
4 |
--------------------------------------------------------------------------------
/chapter_09/PlayAudioTest/gradle/wrapper/gradle-wrapper.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_09/PlayAudioTest/gradle/wrapper/gradle-wrapper.jar
--------------------------------------------------------------------------------
/chapter_09/PlayAudioTest/settings.gradle:
--------------------------------------------------------------------------------
1 | include ':app'
2 |
--------------------------------------------------------------------------------
/chapter_09/PlayVideoTest/app/._.DS_Store:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_09/PlayVideoTest/app/._.DS_Store
--------------------------------------------------------------------------------
/chapter_09/PlayVideoTest/app/.gitignore:
--------------------------------------------------------------------------------
1 | /build
2 | /src/test
3 | /src/androidTest
4 |
--------------------------------------------------------------------------------
/chapter_09/PlayVideoTest/app/src/main/res/mipmap-hdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_09/PlayVideoTest/app/src/main/res/mipmap-hdpi/ic_launcher.png
--------------------------------------------------------------------------------
/chapter_09/PlayVideoTest/app/src/main/res/mipmap-hdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_09/PlayVideoTest/app/src/main/res/mipmap-hdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/chapter_09/PlayVideoTest/app/src/main/res/mipmap-mdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_09/PlayVideoTest/app/src/main/res/mipmap-mdpi/ic_launcher.png
--------------------------------------------------------------------------------
/chapter_09/PlayVideoTest/app/src/main/res/mipmap-mdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_09/PlayVideoTest/app/src/main/res/mipmap-mdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/chapter_09/PlayVideoTest/app/src/main/res/mipmap-xhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_09/PlayVideoTest/app/src/main/res/mipmap-xhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/chapter_09/PlayVideoTest/app/src/main/res/mipmap-xhdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_09/PlayVideoTest/app/src/main/res/mipmap-xhdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/chapter_09/PlayVideoTest/app/src/main/res/mipmap-xxhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_09/PlayVideoTest/app/src/main/res/mipmap-xxhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/chapter_09/PlayVideoTest/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_09/PlayVideoTest/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/chapter_09/PlayVideoTest/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_09/PlayVideoTest/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/chapter_09/PlayVideoTest/app/src/main/res/raw/video.mp4:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_09/PlayVideoTest/app/src/main/res/raw/video.mp4
--------------------------------------------------------------------------------
/chapter_09/PlayVideoTest/app/src/main/res/values/strings.xml:
--------------------------------------------------------------------------------
1 |
2 | PlayVideoTest
3 |
4 |
--------------------------------------------------------------------------------
/chapter_09/PlayVideoTest/gradle/wrapper/gradle-wrapper.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_09/PlayVideoTest/gradle/wrapper/gradle-wrapper.jar
--------------------------------------------------------------------------------
/chapter_09/PlayVideoTest/settings.gradle:
--------------------------------------------------------------------------------
1 | include ':app'
2 |
--------------------------------------------------------------------------------
/chapter_10/AndroidThreadTest/app/._.DS_Store:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_10/AndroidThreadTest/app/._.DS_Store
--------------------------------------------------------------------------------
/chapter_10/AndroidThreadTest/app/.gitignore:
--------------------------------------------------------------------------------
1 | /build
2 |
--------------------------------------------------------------------------------
/chapter_10/AndroidThreadTest/app/src/main/res/mipmap-hdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_10/AndroidThreadTest/app/src/main/res/mipmap-hdpi/ic_launcher.png
--------------------------------------------------------------------------------
/chapter_10/AndroidThreadTest/app/src/main/res/mipmap-mdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_10/AndroidThreadTest/app/src/main/res/mipmap-mdpi/ic_launcher.png
--------------------------------------------------------------------------------
/chapter_10/AndroidThreadTest/app/src/main/res/mipmap-xhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_10/AndroidThreadTest/app/src/main/res/mipmap-xhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/chapter_10/AndroidThreadTest/app/src/main/res/mipmap-xxhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_10/AndroidThreadTest/app/src/main/res/mipmap-xxhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/chapter_10/AndroidThreadTest/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_10/AndroidThreadTest/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/chapter_10/AndroidThreadTest/app/src/main/res/values/strings.xml:
--------------------------------------------------------------------------------
1 |
2 | AndroidThreadTest
3 |
4 |
--------------------------------------------------------------------------------
/chapter_10/AndroidThreadTest/gradle/wrapper/gradle-wrapper.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_10/AndroidThreadTest/gradle/wrapper/gradle-wrapper.jar
--------------------------------------------------------------------------------
/chapter_10/AndroidThreadTest/settings.gradle:
--------------------------------------------------------------------------------
1 | include ':app'
2 |
--------------------------------------------------------------------------------
/chapter_10/ServiceTest/app/._.DS_Store:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_10/ServiceTest/app/._.DS_Store
--------------------------------------------------------------------------------
/chapter_10/ServiceTest/app/.gitignore:
--------------------------------------------------------------------------------
1 | /build
2 |
--------------------------------------------------------------------------------
/chapter_10/ServiceTest/app/src/main/res/drawable-xxhdpi/large_icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_10/ServiceTest/app/src/main/res/drawable-xxhdpi/large_icon.png
--------------------------------------------------------------------------------
/chapter_10/ServiceTest/app/src/main/res/drawable-xxhdpi/small_icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_10/ServiceTest/app/src/main/res/drawable-xxhdpi/small_icon.png
--------------------------------------------------------------------------------
/chapter_10/ServiceTest/app/src/main/res/mipmap-hdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_10/ServiceTest/app/src/main/res/mipmap-hdpi/ic_launcher.png
--------------------------------------------------------------------------------
/chapter_10/ServiceTest/app/src/main/res/mipmap-hdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_10/ServiceTest/app/src/main/res/mipmap-hdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/chapter_10/ServiceTest/app/src/main/res/mipmap-mdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_10/ServiceTest/app/src/main/res/mipmap-mdpi/ic_launcher.png
--------------------------------------------------------------------------------
/chapter_10/ServiceTest/app/src/main/res/mipmap-mdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_10/ServiceTest/app/src/main/res/mipmap-mdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/chapter_10/ServiceTest/app/src/main/res/mipmap-xhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_10/ServiceTest/app/src/main/res/mipmap-xhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/chapter_10/ServiceTest/app/src/main/res/mipmap-xhdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_10/ServiceTest/app/src/main/res/mipmap-xhdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/chapter_10/ServiceTest/app/src/main/res/mipmap-xxhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_10/ServiceTest/app/src/main/res/mipmap-xxhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/chapter_10/ServiceTest/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_10/ServiceTest/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/chapter_10/ServiceTest/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_10/ServiceTest/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/chapter_10/ServiceTest/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_10/ServiceTest/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/chapter_10/ServiceTest/app/src/main/res/values/strings.xml:
--------------------------------------------------------------------------------
1 |
2 | ServiceTest
3 |
4 |
--------------------------------------------------------------------------------
/chapter_10/ServiceTest/gradle/wrapper/gradle-wrapper.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_10/ServiceTest/gradle/wrapper/gradle-wrapper.jar
--------------------------------------------------------------------------------
/chapter_10/ServiceTest/settings.gradle:
--------------------------------------------------------------------------------
1 | include ':app'
2 |
--------------------------------------------------------------------------------
/chapter_11/NetworkTest/app/._.DS_Store:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_11/NetworkTest/app/._.DS_Store
--------------------------------------------------------------------------------
/chapter_11/NetworkTest/app/.gitignore:
--------------------------------------------------------------------------------
1 | /build
2 |
--------------------------------------------------------------------------------
/chapter_11/NetworkTest/app/src/main/java/com/example/networktest/App.kt:
--------------------------------------------------------------------------------
1 | package com.example.networktest
2 |
3 | class App(val id: String, val name: String, val version: String)
--------------------------------------------------------------------------------
/chapter_11/NetworkTest/app/src/main/java/com/example/networktest/HttpCallbackListener.kt:
--------------------------------------------------------------------------------
1 | package com.example.networktest
2 |
3 | interface HttpCallbackListener {
4 | fun onFinish(response: String)
5 | fun onError(e: Exception)
6 | }
--------------------------------------------------------------------------------
/chapter_11/NetworkTest/app/src/main/res/mipmap-hdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_11/NetworkTest/app/src/main/res/mipmap-hdpi/ic_launcher.png
--------------------------------------------------------------------------------
/chapter_11/NetworkTest/app/src/main/res/mipmap-hdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_11/NetworkTest/app/src/main/res/mipmap-hdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/chapter_11/NetworkTest/app/src/main/res/mipmap-mdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_11/NetworkTest/app/src/main/res/mipmap-mdpi/ic_launcher.png
--------------------------------------------------------------------------------
/chapter_11/NetworkTest/app/src/main/res/mipmap-mdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_11/NetworkTest/app/src/main/res/mipmap-mdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/chapter_11/NetworkTest/app/src/main/res/mipmap-xhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_11/NetworkTest/app/src/main/res/mipmap-xhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/chapter_11/NetworkTest/app/src/main/res/mipmap-xhdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_11/NetworkTest/app/src/main/res/mipmap-xhdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/chapter_11/NetworkTest/app/src/main/res/mipmap-xxhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_11/NetworkTest/app/src/main/res/mipmap-xxhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/chapter_11/NetworkTest/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_11/NetworkTest/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/chapter_11/NetworkTest/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_11/NetworkTest/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/chapter_11/NetworkTest/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_11/NetworkTest/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/chapter_11/NetworkTest/app/src/main/res/values/strings.xml:
--------------------------------------------------------------------------------
1 |
2 | NetworkTest
3 |
4 |
--------------------------------------------------------------------------------
/chapter_11/NetworkTest/gradle/wrapper/gradle-wrapper.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_11/NetworkTest/gradle/wrapper/gradle-wrapper.jar
--------------------------------------------------------------------------------
/chapter_11/NetworkTest/settings.gradle:
--------------------------------------------------------------------------------
1 | include ':app'
2 | rootProject.name='NetworkTest'
3 |
--------------------------------------------------------------------------------
/chapter_11/RetrofitTest/app/._.DS_Store:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_11/RetrofitTest/app/._.DS_Store
--------------------------------------------------------------------------------
/chapter_11/RetrofitTest/app/.gitignore:
--------------------------------------------------------------------------------
1 | /build
2 |
--------------------------------------------------------------------------------
/chapter_11/RetrofitTest/app/src/main/java/com/example/retrofittest/App.kt:
--------------------------------------------------------------------------------
1 | package com.example.retrofittest
2 |
3 | class App(val id: String, val name: String, val version: String)
--------------------------------------------------------------------------------
/chapter_11/RetrofitTest/app/src/main/java/com/example/retrofittest/Data.kt:
--------------------------------------------------------------------------------
1 | package com.example.retrofittest
2 |
3 | class Data(val id: String, val content: String)
--------------------------------------------------------------------------------
/chapter_11/RetrofitTest/app/src/main/res/mipmap-hdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_11/RetrofitTest/app/src/main/res/mipmap-hdpi/ic_launcher.png
--------------------------------------------------------------------------------
/chapter_11/RetrofitTest/app/src/main/res/mipmap-hdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_11/RetrofitTest/app/src/main/res/mipmap-hdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/chapter_11/RetrofitTest/app/src/main/res/mipmap-mdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_11/RetrofitTest/app/src/main/res/mipmap-mdpi/ic_launcher.png
--------------------------------------------------------------------------------
/chapter_11/RetrofitTest/app/src/main/res/mipmap-mdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_11/RetrofitTest/app/src/main/res/mipmap-mdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/chapter_11/RetrofitTest/app/src/main/res/mipmap-xhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_11/RetrofitTest/app/src/main/res/mipmap-xhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/chapter_11/RetrofitTest/app/src/main/res/mipmap-xhdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_11/RetrofitTest/app/src/main/res/mipmap-xhdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/chapter_11/RetrofitTest/app/src/main/res/mipmap-xxhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_11/RetrofitTest/app/src/main/res/mipmap-xxhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/chapter_11/RetrofitTest/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_11/RetrofitTest/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/chapter_11/RetrofitTest/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_11/RetrofitTest/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/chapter_11/RetrofitTest/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_11/RetrofitTest/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/chapter_11/RetrofitTest/app/src/main/res/values/strings.xml:
--------------------------------------------------------------------------------
1 |
2 | RetrofitTest
3 |
4 |
--------------------------------------------------------------------------------
/chapter_11/RetrofitTest/gradle/wrapper/gradle-wrapper.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_11/RetrofitTest/gradle/wrapper/gradle-wrapper.jar
--------------------------------------------------------------------------------
/chapter_11/RetrofitTest/settings.gradle:
--------------------------------------------------------------------------------
1 | include ':app'
2 | rootProject.name='RetrofitTest'
3 |
--------------------------------------------------------------------------------
/chapter_11/WebViewTest/app/._.DS_Store:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_11/WebViewTest/app/._.DS_Store
--------------------------------------------------------------------------------
/chapter_11/WebViewTest/app/.gitignore:
--------------------------------------------------------------------------------
1 | /build
2 |
--------------------------------------------------------------------------------
/chapter_11/WebViewTest/app/src/main/res/mipmap-hdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_11/WebViewTest/app/src/main/res/mipmap-hdpi/ic_launcher.png
--------------------------------------------------------------------------------
/chapter_11/WebViewTest/app/src/main/res/mipmap-hdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_11/WebViewTest/app/src/main/res/mipmap-hdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/chapter_11/WebViewTest/app/src/main/res/mipmap-mdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_11/WebViewTest/app/src/main/res/mipmap-mdpi/ic_launcher.png
--------------------------------------------------------------------------------
/chapter_11/WebViewTest/app/src/main/res/mipmap-mdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_11/WebViewTest/app/src/main/res/mipmap-mdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/chapter_11/WebViewTest/app/src/main/res/mipmap-xhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_11/WebViewTest/app/src/main/res/mipmap-xhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/chapter_11/WebViewTest/app/src/main/res/mipmap-xhdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_11/WebViewTest/app/src/main/res/mipmap-xhdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/chapter_11/WebViewTest/app/src/main/res/mipmap-xxhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_11/WebViewTest/app/src/main/res/mipmap-xxhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/chapter_11/WebViewTest/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_11/WebViewTest/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/chapter_11/WebViewTest/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_11/WebViewTest/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/chapter_11/WebViewTest/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_11/WebViewTest/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/chapter_11/WebViewTest/app/src/main/res/values/strings.xml:
--------------------------------------------------------------------------------
1 |
2 | WebViewTest
3 |
4 |
--------------------------------------------------------------------------------
/chapter_11/WebViewTest/gradle/wrapper/gradle-wrapper.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_11/WebViewTest/gradle/wrapper/gradle-wrapper.jar
--------------------------------------------------------------------------------
/chapter_11/WebViewTest/settings.gradle:
--------------------------------------------------------------------------------
1 | include ':app'
2 | rootProject.name='WebViewTest'
3 |
--------------------------------------------------------------------------------
/chapter_12/MaterialTest/app/._.DS_Store:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_12/MaterialTest/app/._.DS_Store
--------------------------------------------------------------------------------
/chapter_12/MaterialTest/app/.gitignore:
--------------------------------------------------------------------------------
1 | /build
2 |
--------------------------------------------------------------------------------
/chapter_12/MaterialTest/app/src/main/java/com/example/materialtest/Fruit.kt:
--------------------------------------------------------------------------------
1 | package com.example.materialtest
2 |
3 | class Fruit(val name: String, val imageId: Int)
--------------------------------------------------------------------------------
/chapter_12/MaterialTest/app/src/main/res/drawable-xxhdpi/._.DS_Store:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_12/MaterialTest/app/src/main/res/drawable-xxhdpi/._.DS_Store
--------------------------------------------------------------------------------
/chapter_12/MaterialTest/app/src/main/res/drawable-xxhdpi/._pear.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_12/MaterialTest/app/src/main/res/drawable-xxhdpi/._pear.jpg
--------------------------------------------------------------------------------
/chapter_12/MaterialTest/app/src/main/res/drawable-xxhdpi/apple.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_12/MaterialTest/app/src/main/res/drawable-xxhdpi/apple.jpg
--------------------------------------------------------------------------------
/chapter_12/MaterialTest/app/src/main/res/drawable-xxhdpi/banana.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_12/MaterialTest/app/src/main/res/drawable-xxhdpi/banana.jpg
--------------------------------------------------------------------------------
/chapter_12/MaterialTest/app/src/main/res/drawable-xxhdpi/cherry.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_12/MaterialTest/app/src/main/res/drawable-xxhdpi/cherry.jpg
--------------------------------------------------------------------------------
/chapter_12/MaterialTest/app/src/main/res/drawable-xxhdpi/grape.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_12/MaterialTest/app/src/main/res/drawable-xxhdpi/grape.jpg
--------------------------------------------------------------------------------
/chapter_12/MaterialTest/app/src/main/res/drawable-xxhdpi/ic_backup.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_12/MaterialTest/app/src/main/res/drawable-xxhdpi/ic_backup.png
--------------------------------------------------------------------------------
/chapter_12/MaterialTest/app/src/main/res/drawable-xxhdpi/ic_comment.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_12/MaterialTest/app/src/main/res/drawable-xxhdpi/ic_comment.png
--------------------------------------------------------------------------------
/chapter_12/MaterialTest/app/src/main/res/drawable-xxhdpi/ic_delete.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_12/MaterialTest/app/src/main/res/drawable-xxhdpi/ic_delete.png
--------------------------------------------------------------------------------
/chapter_12/MaterialTest/app/src/main/res/drawable-xxhdpi/ic_done.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_12/MaterialTest/app/src/main/res/drawable-xxhdpi/ic_done.png
--------------------------------------------------------------------------------
/chapter_12/MaterialTest/app/src/main/res/drawable-xxhdpi/ic_menu.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_12/MaterialTest/app/src/main/res/drawable-xxhdpi/ic_menu.png
--------------------------------------------------------------------------------
/chapter_12/MaterialTest/app/src/main/res/drawable-xxhdpi/ic_settings.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_12/MaterialTest/app/src/main/res/drawable-xxhdpi/ic_settings.png
--------------------------------------------------------------------------------
/chapter_12/MaterialTest/app/src/main/res/drawable-xxhdpi/mango.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_12/MaterialTest/app/src/main/res/drawable-xxhdpi/mango.jpg
--------------------------------------------------------------------------------
/chapter_12/MaterialTest/app/src/main/res/drawable-xxhdpi/nav_call.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_12/MaterialTest/app/src/main/res/drawable-xxhdpi/nav_call.png
--------------------------------------------------------------------------------
/chapter_12/MaterialTest/app/src/main/res/drawable-xxhdpi/nav_friends.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_12/MaterialTest/app/src/main/res/drawable-xxhdpi/nav_friends.png
--------------------------------------------------------------------------------
/chapter_12/MaterialTest/app/src/main/res/drawable-xxhdpi/nav_icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_12/MaterialTest/app/src/main/res/drawable-xxhdpi/nav_icon.png
--------------------------------------------------------------------------------
/chapter_12/MaterialTest/app/src/main/res/drawable-xxhdpi/nav_location.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_12/MaterialTest/app/src/main/res/drawable-xxhdpi/nav_location.png
--------------------------------------------------------------------------------
/chapter_12/MaterialTest/app/src/main/res/drawable-xxhdpi/nav_mail.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_12/MaterialTest/app/src/main/res/drawable-xxhdpi/nav_mail.png
--------------------------------------------------------------------------------
/chapter_12/MaterialTest/app/src/main/res/drawable-xxhdpi/nav_task.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_12/MaterialTest/app/src/main/res/drawable-xxhdpi/nav_task.png
--------------------------------------------------------------------------------
/chapter_12/MaterialTest/app/src/main/res/drawable-xxhdpi/orange.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_12/MaterialTest/app/src/main/res/drawable-xxhdpi/orange.jpg
--------------------------------------------------------------------------------
/chapter_12/MaterialTest/app/src/main/res/drawable-xxhdpi/pear.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_12/MaterialTest/app/src/main/res/drawable-xxhdpi/pear.jpg
--------------------------------------------------------------------------------
/chapter_12/MaterialTest/app/src/main/res/drawable-xxhdpi/pineapple.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_12/MaterialTest/app/src/main/res/drawable-xxhdpi/pineapple.jpg
--------------------------------------------------------------------------------
/chapter_12/MaterialTest/app/src/main/res/drawable-xxhdpi/strawberry.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_12/MaterialTest/app/src/main/res/drawable-xxhdpi/strawberry.jpg
--------------------------------------------------------------------------------
/chapter_12/MaterialTest/app/src/main/res/drawable-xxhdpi/watermelon.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_12/MaterialTest/app/src/main/res/drawable-xxhdpi/watermelon.jpg
--------------------------------------------------------------------------------
/chapter_12/MaterialTest/app/src/main/res/mipmap-hdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_12/MaterialTest/app/src/main/res/mipmap-hdpi/ic_launcher.png
--------------------------------------------------------------------------------
/chapter_12/MaterialTest/app/src/main/res/mipmap-hdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_12/MaterialTest/app/src/main/res/mipmap-hdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/chapter_12/MaterialTest/app/src/main/res/mipmap-mdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_12/MaterialTest/app/src/main/res/mipmap-mdpi/ic_launcher.png
--------------------------------------------------------------------------------
/chapter_12/MaterialTest/app/src/main/res/mipmap-mdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_12/MaterialTest/app/src/main/res/mipmap-mdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/chapter_12/MaterialTest/app/src/main/res/mipmap-xhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_12/MaterialTest/app/src/main/res/mipmap-xhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/chapter_12/MaterialTest/app/src/main/res/mipmap-xhdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_12/MaterialTest/app/src/main/res/mipmap-xhdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/chapter_12/MaterialTest/app/src/main/res/mipmap-xxhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_12/MaterialTest/app/src/main/res/mipmap-xxhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/chapter_12/MaterialTest/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_12/MaterialTest/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/chapter_12/MaterialTest/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_12/MaterialTest/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/chapter_12/MaterialTest/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_12/MaterialTest/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/chapter_12/MaterialTest/app/src/main/res/values/dimens.xml:
--------------------------------------------------------------------------------
1 |
2 | 16dp
3 |
4 |
--------------------------------------------------------------------------------
/chapter_12/MaterialTest/app/src/main/res/values/strings.xml:
--------------------------------------------------------------------------------
1 |
2 | MaterialTest
3 | Main2Activity
4 |
5 |
--------------------------------------------------------------------------------
/chapter_12/MaterialTest/gradle/wrapper/gradle-wrapper.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_12/MaterialTest/gradle/wrapper/gradle-wrapper.jar
--------------------------------------------------------------------------------
/chapter_12/MaterialTest/settings.gradle:
--------------------------------------------------------------------------------
1 | include ':app'
2 | rootProject.name='MaterialTest'
3 |
--------------------------------------------------------------------------------
/chapter_13/JetpackTest/app/._.DS_Store:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_13/JetpackTest/app/._.DS_Store
--------------------------------------------------------------------------------
/chapter_13/JetpackTest/app/.gitignore:
--------------------------------------------------------------------------------
1 | /build
2 |
--------------------------------------------------------------------------------
/chapter_13/JetpackTest/app/src/main/res/mipmap-hdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_13/JetpackTest/app/src/main/res/mipmap-hdpi/ic_launcher.png
--------------------------------------------------------------------------------
/chapter_13/JetpackTest/app/src/main/res/mipmap-hdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_13/JetpackTest/app/src/main/res/mipmap-hdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/chapter_13/JetpackTest/app/src/main/res/mipmap-mdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_13/JetpackTest/app/src/main/res/mipmap-mdpi/ic_launcher.png
--------------------------------------------------------------------------------
/chapter_13/JetpackTest/app/src/main/res/mipmap-mdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_13/JetpackTest/app/src/main/res/mipmap-mdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/chapter_13/JetpackTest/app/src/main/res/mipmap-xhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_13/JetpackTest/app/src/main/res/mipmap-xhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/chapter_13/JetpackTest/app/src/main/res/mipmap-xhdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_13/JetpackTest/app/src/main/res/mipmap-xhdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/chapter_13/JetpackTest/app/src/main/res/mipmap-xxhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_13/JetpackTest/app/src/main/res/mipmap-xxhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/chapter_13/JetpackTest/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_13/JetpackTest/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/chapter_13/JetpackTest/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_13/JetpackTest/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/chapter_13/JetpackTest/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_13/JetpackTest/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/chapter_13/JetpackTest/app/src/main/res/values/strings.xml:
--------------------------------------------------------------------------------
1 |
2 | JetpackTest
3 |
4 |
--------------------------------------------------------------------------------
/chapter_13/JetpackTest/gradle/wrapper/gradle-wrapper.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_13/JetpackTest/gradle/wrapper/gradle-wrapper.jar
--------------------------------------------------------------------------------
/chapter_13/JetpackTest/settings.gradle:
--------------------------------------------------------------------------------
1 | include ':app'
2 | rootProject.name='JetpackTest'
3 |
--------------------------------------------------------------------------------
/chapter_14/ActivityTest/app/._.DS_Store:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_14/ActivityTest/app/._.DS_Store
--------------------------------------------------------------------------------
/chapter_14/ActivityTest/app/.gitignore:
--------------------------------------------------------------------------------
1 | /build
2 |
--------------------------------------------------------------------------------
/chapter_14/ActivityTest/app/src/main/java/com/example/activitytest/Helper.kt:
--------------------------------------------------------------------------------
1 | package com.example.activitytest
2 |
3 | fun doSomething() {
4 | println("do something")
5 | }
--------------------------------------------------------------------------------
/chapter_14/ActivityTest/app/src/main/res/mipmap-hdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_14/ActivityTest/app/src/main/res/mipmap-hdpi/ic_launcher.png
--------------------------------------------------------------------------------
/chapter_14/ActivityTest/app/src/main/res/mipmap-hdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_14/ActivityTest/app/src/main/res/mipmap-hdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/chapter_14/ActivityTest/app/src/main/res/mipmap-mdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_14/ActivityTest/app/src/main/res/mipmap-mdpi/ic_launcher.png
--------------------------------------------------------------------------------
/chapter_14/ActivityTest/app/src/main/res/mipmap-mdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_14/ActivityTest/app/src/main/res/mipmap-mdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/chapter_14/ActivityTest/app/src/main/res/mipmap-xhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_14/ActivityTest/app/src/main/res/mipmap-xhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/chapter_14/ActivityTest/app/src/main/res/mipmap-xhdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_14/ActivityTest/app/src/main/res/mipmap-xhdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/chapter_14/ActivityTest/app/src/main/res/mipmap-xxhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_14/ActivityTest/app/src/main/res/mipmap-xxhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/chapter_14/ActivityTest/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_14/ActivityTest/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/chapter_14/ActivityTest/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_14/ActivityTest/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/chapter_14/ActivityTest/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_14/ActivityTest/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/chapter_14/ActivityTest/app/src/main/res/values/strings.xml:
--------------------------------------------------------------------------------
1 |
2 | ActivityTest
3 |
4 |
--------------------------------------------------------------------------------
/chapter_14/ActivityTest/gradle/wrapper/gradle-wrapper.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_14/ActivityTest/gradle/wrapper/gradle-wrapper.jar
--------------------------------------------------------------------------------
/chapter_14/ActivityTest/settings.gradle:
--------------------------------------------------------------------------------
1 | include ':app'
2 |
--------------------------------------------------------------------------------
/chapter_14/BroadcastBestPractice/app/._.DS_Store:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_14/BroadcastBestPractice/app/._.DS_Store
--------------------------------------------------------------------------------
/chapter_14/BroadcastBestPractice/app/.gitignore:
--------------------------------------------------------------------------------
1 | /build
2 |
--------------------------------------------------------------------------------
/chapter_14/BroadcastBestPractice/app/src/main/res/mipmap-hdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_14/BroadcastBestPractice/app/src/main/res/mipmap-hdpi/ic_launcher.png
--------------------------------------------------------------------------------
/chapter_14/BroadcastBestPractice/app/src/main/res/mipmap-mdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_14/BroadcastBestPractice/app/src/main/res/mipmap-mdpi/ic_launcher.png
--------------------------------------------------------------------------------
/chapter_14/BroadcastBestPractice/app/src/main/res/values/dimens.xml:
--------------------------------------------------------------------------------
1 |
2 | 16dp
3 |
4 |
--------------------------------------------------------------------------------
/chapter_14/BroadcastBestPractice/app/src/main/res/values/strings.xml:
--------------------------------------------------------------------------------
1 |
2 | BroadcastBestPractice
3 | LoginActivity
4 |
5 |
--------------------------------------------------------------------------------
/chapter_14/BroadcastBestPractice/gradle/wrapper/gradle-wrapper.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_14/BroadcastBestPractice/gradle/wrapper/gradle-wrapper.jar
--------------------------------------------------------------------------------
/chapter_14/BroadcastBestPractice/settings.gradle:
--------------------------------------------------------------------------------
1 | include ':app'
2 |
--------------------------------------------------------------------------------
/chapter_14/MaterialTest/app/._.DS_Store:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_14/MaterialTest/app/._.DS_Store
--------------------------------------------------------------------------------
/chapter_14/MaterialTest/app/.gitignore:
--------------------------------------------------------------------------------
1 | /build
2 |
--------------------------------------------------------------------------------
/chapter_14/MaterialTest/app/src/main/java/com/example/materialtest/Fruit.kt:
--------------------------------------------------------------------------------
1 | package com.example.materialtest
2 |
3 | class Fruit(val name: String, val imageId: Int)
--------------------------------------------------------------------------------
/chapter_14/MaterialTest/app/src/main/res/drawable-xxhdpi/._.DS_Store:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_14/MaterialTest/app/src/main/res/drawable-xxhdpi/._.DS_Store
--------------------------------------------------------------------------------
/chapter_14/MaterialTest/app/src/main/res/drawable-xxhdpi/._pear.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_14/MaterialTest/app/src/main/res/drawable-xxhdpi/._pear.jpg
--------------------------------------------------------------------------------
/chapter_14/MaterialTest/app/src/main/res/drawable-xxhdpi/apple.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_14/MaterialTest/app/src/main/res/drawable-xxhdpi/apple.jpg
--------------------------------------------------------------------------------
/chapter_14/MaterialTest/app/src/main/res/drawable-xxhdpi/banana.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_14/MaterialTest/app/src/main/res/drawable-xxhdpi/banana.jpg
--------------------------------------------------------------------------------
/chapter_14/MaterialTest/app/src/main/res/drawable-xxhdpi/cherry.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_14/MaterialTest/app/src/main/res/drawable-xxhdpi/cherry.jpg
--------------------------------------------------------------------------------
/chapter_14/MaterialTest/app/src/main/res/drawable-xxhdpi/grape.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_14/MaterialTest/app/src/main/res/drawable-xxhdpi/grape.jpg
--------------------------------------------------------------------------------
/chapter_14/MaterialTest/app/src/main/res/drawable-xxhdpi/ic_backup.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_14/MaterialTest/app/src/main/res/drawable-xxhdpi/ic_backup.png
--------------------------------------------------------------------------------
/chapter_14/MaterialTest/app/src/main/res/drawable-xxhdpi/ic_comment.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_14/MaterialTest/app/src/main/res/drawable-xxhdpi/ic_comment.png
--------------------------------------------------------------------------------
/chapter_14/MaterialTest/app/src/main/res/drawable-xxhdpi/ic_delete.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_14/MaterialTest/app/src/main/res/drawable-xxhdpi/ic_delete.png
--------------------------------------------------------------------------------
/chapter_14/MaterialTest/app/src/main/res/drawable-xxhdpi/ic_done.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_14/MaterialTest/app/src/main/res/drawable-xxhdpi/ic_done.png
--------------------------------------------------------------------------------
/chapter_14/MaterialTest/app/src/main/res/drawable-xxhdpi/ic_menu.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_14/MaterialTest/app/src/main/res/drawable-xxhdpi/ic_menu.png
--------------------------------------------------------------------------------
/chapter_14/MaterialTest/app/src/main/res/drawable-xxhdpi/ic_settings.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_14/MaterialTest/app/src/main/res/drawable-xxhdpi/ic_settings.png
--------------------------------------------------------------------------------
/chapter_14/MaterialTest/app/src/main/res/drawable-xxhdpi/mango.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_14/MaterialTest/app/src/main/res/drawable-xxhdpi/mango.jpg
--------------------------------------------------------------------------------
/chapter_14/MaterialTest/app/src/main/res/drawable-xxhdpi/nav_call.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_14/MaterialTest/app/src/main/res/drawable-xxhdpi/nav_call.png
--------------------------------------------------------------------------------
/chapter_14/MaterialTest/app/src/main/res/drawable-xxhdpi/nav_friends.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_14/MaterialTest/app/src/main/res/drawable-xxhdpi/nav_friends.png
--------------------------------------------------------------------------------
/chapter_14/MaterialTest/app/src/main/res/drawable-xxhdpi/nav_icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_14/MaterialTest/app/src/main/res/drawable-xxhdpi/nav_icon.png
--------------------------------------------------------------------------------
/chapter_14/MaterialTest/app/src/main/res/drawable-xxhdpi/nav_location.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_14/MaterialTest/app/src/main/res/drawable-xxhdpi/nav_location.png
--------------------------------------------------------------------------------
/chapter_14/MaterialTest/app/src/main/res/drawable-xxhdpi/nav_mail.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_14/MaterialTest/app/src/main/res/drawable-xxhdpi/nav_mail.png
--------------------------------------------------------------------------------
/chapter_14/MaterialTest/app/src/main/res/drawable-xxhdpi/nav_task.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_14/MaterialTest/app/src/main/res/drawable-xxhdpi/nav_task.png
--------------------------------------------------------------------------------
/chapter_14/MaterialTest/app/src/main/res/drawable-xxhdpi/orange.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_14/MaterialTest/app/src/main/res/drawable-xxhdpi/orange.jpg
--------------------------------------------------------------------------------
/chapter_14/MaterialTest/app/src/main/res/drawable-xxhdpi/pear.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_14/MaterialTest/app/src/main/res/drawable-xxhdpi/pear.jpg
--------------------------------------------------------------------------------
/chapter_14/MaterialTest/app/src/main/res/drawable-xxhdpi/pineapple.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_14/MaterialTest/app/src/main/res/drawable-xxhdpi/pineapple.jpg
--------------------------------------------------------------------------------
/chapter_14/MaterialTest/app/src/main/res/drawable-xxhdpi/strawberry.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_14/MaterialTest/app/src/main/res/drawable-xxhdpi/strawberry.jpg
--------------------------------------------------------------------------------
/chapter_14/MaterialTest/app/src/main/res/drawable-xxhdpi/watermelon.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_14/MaterialTest/app/src/main/res/drawable-xxhdpi/watermelon.jpg
--------------------------------------------------------------------------------
/chapter_14/MaterialTest/app/src/main/res/mipmap-hdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_14/MaterialTest/app/src/main/res/mipmap-hdpi/ic_launcher.png
--------------------------------------------------------------------------------
/chapter_14/MaterialTest/app/src/main/res/mipmap-hdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_14/MaterialTest/app/src/main/res/mipmap-hdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/chapter_14/MaterialTest/app/src/main/res/mipmap-mdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_14/MaterialTest/app/src/main/res/mipmap-mdpi/ic_launcher.png
--------------------------------------------------------------------------------
/chapter_14/MaterialTest/app/src/main/res/mipmap-mdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_14/MaterialTest/app/src/main/res/mipmap-mdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/chapter_14/MaterialTest/app/src/main/res/mipmap-xhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_14/MaterialTest/app/src/main/res/mipmap-xhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/chapter_14/MaterialTest/app/src/main/res/mipmap-xhdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_14/MaterialTest/app/src/main/res/mipmap-xhdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/chapter_14/MaterialTest/app/src/main/res/mipmap-xxhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_14/MaterialTest/app/src/main/res/mipmap-xxhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/chapter_14/MaterialTest/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_14/MaterialTest/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/chapter_14/MaterialTest/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_14/MaterialTest/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/chapter_14/MaterialTest/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_14/MaterialTest/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/chapter_14/MaterialTest/app/src/main/res/values/dimens.xml:
--------------------------------------------------------------------------------
1 |
2 | 16dp
3 |
4 |
--------------------------------------------------------------------------------
/chapter_14/MaterialTest/app/src/main/res/values/strings.xml:
--------------------------------------------------------------------------------
1 |
2 | MaterialTest
3 | Main2Activity
4 |
5 |
--------------------------------------------------------------------------------
/chapter_14/MaterialTest/gradle/wrapper/gradle-wrapper.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_14/MaterialTest/gradle/wrapper/gradle-wrapper.jar
--------------------------------------------------------------------------------
/chapter_14/MaterialTest/settings.gradle:
--------------------------------------------------------------------------------
1 | include ':app'
2 | rootProject.name='MaterialTest'
3 |
--------------------------------------------------------------------------------
/chapter_15/SunnyWeather/README.md:
--------------------------------------------------------------------------------
1 | # SunnyWeather
--------------------------------------------------------------------------------
/chapter_15/SunnyWeather/app/.DS_Store:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_15/SunnyWeather/app/.DS_Store
--------------------------------------------------------------------------------
/chapter_15/SunnyWeather/app/._.DS_Store:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_15/SunnyWeather/app/._.DS_Store
--------------------------------------------------------------------------------
/chapter_15/SunnyWeather/app/.gitignore:
--------------------------------------------------------------------------------
1 | /build
2 |
--------------------------------------------------------------------------------
/chapter_15/SunnyWeather/app/src/main/ic_launcher-web.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_15/SunnyWeather/app/src/main/ic_launcher-web.png
--------------------------------------------------------------------------------
/chapter_15/SunnyWeather/app/src/main/java/com/sunnyweather/android/logic/model/Weather.kt:
--------------------------------------------------------------------------------
1 | package com.sunnyweather.android.logic.model
2 |
3 | class Weather(val realtime: RealtimeResponse.Realtime, val daily: DailyResponse.Daily)
--------------------------------------------------------------------------------
/chapter_15/SunnyWeather/app/src/main/res/drawable-xxhdpi/bg_clear_day.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_15/SunnyWeather/app/src/main/res/drawable-xxhdpi/bg_clear_day.jpg
--------------------------------------------------------------------------------
/chapter_15/SunnyWeather/app/src/main/res/drawable-xxhdpi/bg_clear_night.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_15/SunnyWeather/app/src/main/res/drawable-xxhdpi/bg_clear_night.jpg
--------------------------------------------------------------------------------
/chapter_15/SunnyWeather/app/src/main/res/drawable-xxhdpi/bg_cloudy.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_15/SunnyWeather/app/src/main/res/drawable-xxhdpi/bg_cloudy.jpg
--------------------------------------------------------------------------------
/chapter_15/SunnyWeather/app/src/main/res/drawable-xxhdpi/bg_fog.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_15/SunnyWeather/app/src/main/res/drawable-xxhdpi/bg_fog.jpg
--------------------------------------------------------------------------------
/chapter_15/SunnyWeather/app/src/main/res/drawable-xxhdpi/bg_place.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_15/SunnyWeather/app/src/main/res/drawable-xxhdpi/bg_place.png
--------------------------------------------------------------------------------
/chapter_15/SunnyWeather/app/src/main/res/drawable-xxhdpi/bg_rain.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_15/SunnyWeather/app/src/main/res/drawable-xxhdpi/bg_rain.jpg
--------------------------------------------------------------------------------
/chapter_15/SunnyWeather/app/src/main/res/drawable-xxhdpi/bg_snow.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_15/SunnyWeather/app/src/main/res/drawable-xxhdpi/bg_snow.jpg
--------------------------------------------------------------------------------
/chapter_15/SunnyWeather/app/src/main/res/drawable-xxhdpi/bg_wind.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_15/SunnyWeather/app/src/main/res/drawable-xxhdpi/bg_wind.jpg
--------------------------------------------------------------------------------
/chapter_15/SunnyWeather/app/src/main/res/drawable-xxhdpi/ic_carwashing.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_15/SunnyWeather/app/src/main/res/drawable-xxhdpi/ic_carwashing.png
--------------------------------------------------------------------------------
/chapter_15/SunnyWeather/app/src/main/res/drawable-xxhdpi/ic_clear_day.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_15/SunnyWeather/app/src/main/res/drawable-xxhdpi/ic_clear_day.png
--------------------------------------------------------------------------------
/chapter_15/SunnyWeather/app/src/main/res/drawable-xxhdpi/ic_clear_night.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_15/SunnyWeather/app/src/main/res/drawable-xxhdpi/ic_clear_night.png
--------------------------------------------------------------------------------
/chapter_15/SunnyWeather/app/src/main/res/drawable-xxhdpi/ic_cloudy.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_15/SunnyWeather/app/src/main/res/drawable-xxhdpi/ic_cloudy.png
--------------------------------------------------------------------------------
/chapter_15/SunnyWeather/app/src/main/res/drawable-xxhdpi/ic_coldrisk.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_15/SunnyWeather/app/src/main/res/drawable-xxhdpi/ic_coldrisk.png
--------------------------------------------------------------------------------
/chapter_15/SunnyWeather/app/src/main/res/drawable-xxhdpi/ic_dressing.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_15/SunnyWeather/app/src/main/res/drawable-xxhdpi/ic_dressing.png
--------------------------------------------------------------------------------
/chapter_15/SunnyWeather/app/src/main/res/drawable-xxhdpi/ic_fog.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_15/SunnyWeather/app/src/main/res/drawable-xxhdpi/ic_fog.png
--------------------------------------------------------------------------------
/chapter_15/SunnyWeather/app/src/main/res/drawable-xxhdpi/ic_hail.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_15/SunnyWeather/app/src/main/res/drawable-xxhdpi/ic_hail.png
--------------------------------------------------------------------------------
/chapter_15/SunnyWeather/app/src/main/res/drawable-xxhdpi/ic_heavy_haze.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_15/SunnyWeather/app/src/main/res/drawable-xxhdpi/ic_heavy_haze.png
--------------------------------------------------------------------------------
/chapter_15/SunnyWeather/app/src/main/res/drawable-xxhdpi/ic_heavy_rain.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_15/SunnyWeather/app/src/main/res/drawable-xxhdpi/ic_heavy_rain.png
--------------------------------------------------------------------------------
/chapter_15/SunnyWeather/app/src/main/res/drawable-xxhdpi/ic_heavy_snow.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_15/SunnyWeather/app/src/main/res/drawable-xxhdpi/ic_heavy_snow.png
--------------------------------------------------------------------------------
/chapter_15/SunnyWeather/app/src/main/res/drawable-xxhdpi/ic_home.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_15/SunnyWeather/app/src/main/res/drawable-xxhdpi/ic_home.png
--------------------------------------------------------------------------------
/chapter_15/SunnyWeather/app/src/main/res/drawable-xxhdpi/ic_light_haze.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_15/SunnyWeather/app/src/main/res/drawable-xxhdpi/ic_light_haze.png
--------------------------------------------------------------------------------
/chapter_15/SunnyWeather/app/src/main/res/drawable-xxhdpi/ic_light_rain.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_15/SunnyWeather/app/src/main/res/drawable-xxhdpi/ic_light_rain.png
--------------------------------------------------------------------------------
/chapter_15/SunnyWeather/app/src/main/res/drawable-xxhdpi/ic_light_snow.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_15/SunnyWeather/app/src/main/res/drawable-xxhdpi/ic_light_snow.png
--------------------------------------------------------------------------------
/chapter_15/SunnyWeather/app/src/main/res/drawable-xxhdpi/ic_moderate_haze.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_15/SunnyWeather/app/src/main/res/drawable-xxhdpi/ic_moderate_haze.png
--------------------------------------------------------------------------------
/chapter_15/SunnyWeather/app/src/main/res/drawable-xxhdpi/ic_moderate_rain.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_15/SunnyWeather/app/src/main/res/drawable-xxhdpi/ic_moderate_rain.png
--------------------------------------------------------------------------------
/chapter_15/SunnyWeather/app/src/main/res/drawable-xxhdpi/ic_moderate_snow.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_15/SunnyWeather/app/src/main/res/drawable-xxhdpi/ic_moderate_snow.png
--------------------------------------------------------------------------------
/chapter_15/SunnyWeather/app/src/main/res/drawable-xxhdpi/ic_sleet.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_15/SunnyWeather/app/src/main/res/drawable-xxhdpi/ic_sleet.png
--------------------------------------------------------------------------------
/chapter_15/SunnyWeather/app/src/main/res/drawable-xxhdpi/ic_storm_rain.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_15/SunnyWeather/app/src/main/res/drawable-xxhdpi/ic_storm_rain.png
--------------------------------------------------------------------------------
/chapter_15/SunnyWeather/app/src/main/res/drawable-xxhdpi/ic_ultraviolet.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_15/SunnyWeather/app/src/main/res/drawable-xxhdpi/ic_ultraviolet.png
--------------------------------------------------------------------------------
/chapter_15/SunnyWeather/app/src/main/res/drawable-xxhdpi/search_bg.9.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_15/SunnyWeather/app/src/main/res/drawable-xxhdpi/search_bg.9.png
--------------------------------------------------------------------------------
/chapter_15/SunnyWeather/app/src/main/res/mipmap-hdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_15/SunnyWeather/app/src/main/res/mipmap-hdpi/ic_launcher.png
--------------------------------------------------------------------------------
/chapter_15/SunnyWeather/app/src/main/res/mipmap-hdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_15/SunnyWeather/app/src/main/res/mipmap-hdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/chapter_15/SunnyWeather/app/src/main/res/mipmap-mdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_15/SunnyWeather/app/src/main/res/mipmap-mdpi/ic_launcher.png
--------------------------------------------------------------------------------
/chapter_15/SunnyWeather/app/src/main/res/mipmap-mdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_15/SunnyWeather/app/src/main/res/mipmap-mdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/chapter_15/SunnyWeather/app/src/main/res/mipmap-xhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_15/SunnyWeather/app/src/main/res/mipmap-xhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/chapter_15/SunnyWeather/app/src/main/res/mipmap-xhdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_15/SunnyWeather/app/src/main/res/mipmap-xhdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/chapter_15/SunnyWeather/app/src/main/res/mipmap-xxhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_15/SunnyWeather/app/src/main/res/mipmap-xxhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/chapter_15/SunnyWeather/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_15/SunnyWeather/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/chapter_15/SunnyWeather/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_15/SunnyWeather/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/chapter_15/SunnyWeather/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_15/SunnyWeather/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/chapter_15/SunnyWeather/app/src/main/res/values/ic_launcher_background.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 | #219FDD
4 |
--------------------------------------------------------------------------------
/chapter_15/SunnyWeather/app/src/main/res/values/strings.xml:
--------------------------------------------------------------------------------
1 |
2 | SunnyWeather
3 |
4 |
--------------------------------------------------------------------------------
/chapter_15/SunnyWeather/gradle/wrapper/gradle-wrapper.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_15/SunnyWeather/gradle/wrapper/gradle-wrapper.jar
--------------------------------------------------------------------------------
/chapter_15/SunnyWeather/logo/sunny_weather_logo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_15/SunnyWeather/logo/sunny_weather_logo.png
--------------------------------------------------------------------------------
/chapter_15/SunnyWeather/settings.gradle:
--------------------------------------------------------------------------------
1 | include ':app'
2 | rootProject.name='SunnyWeather'
3 |
--------------------------------------------------------------------------------
/chapter_16/PermissionX/app/.DS_Store:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_16/PermissionX/app/.DS_Store
--------------------------------------------------------------------------------
/chapter_16/PermissionX/app/._.DS_Store:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_16/PermissionX/app/._.DS_Store
--------------------------------------------------------------------------------
/chapter_16/PermissionX/app/.gitignore:
--------------------------------------------------------------------------------
1 | /build
2 |
--------------------------------------------------------------------------------
/chapter_16/PermissionX/app/src/main/res/mipmap-hdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_16/PermissionX/app/src/main/res/mipmap-hdpi/ic_launcher.png
--------------------------------------------------------------------------------
/chapter_16/PermissionX/app/src/main/res/mipmap-hdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_16/PermissionX/app/src/main/res/mipmap-hdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/chapter_16/PermissionX/app/src/main/res/mipmap-mdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_16/PermissionX/app/src/main/res/mipmap-mdpi/ic_launcher.png
--------------------------------------------------------------------------------
/chapter_16/PermissionX/app/src/main/res/mipmap-mdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_16/PermissionX/app/src/main/res/mipmap-mdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/chapter_16/PermissionX/app/src/main/res/mipmap-xhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_16/PermissionX/app/src/main/res/mipmap-xhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/chapter_16/PermissionX/app/src/main/res/mipmap-xhdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_16/PermissionX/app/src/main/res/mipmap-xhdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/chapter_16/PermissionX/app/src/main/res/mipmap-xxhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_16/PermissionX/app/src/main/res/mipmap-xxhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/chapter_16/PermissionX/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_16/PermissionX/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/chapter_16/PermissionX/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_16/PermissionX/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/chapter_16/PermissionX/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_16/PermissionX/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/chapter_16/PermissionX/app/src/main/res/values/strings.xml:
--------------------------------------------------------------------------------
1 |
2 | PermissionX
3 |
4 |
--------------------------------------------------------------------------------
/chapter_16/PermissionX/gradle/wrapper/gradle-wrapper.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_16/PermissionX/gradle/wrapper/gradle-wrapper.jar
--------------------------------------------------------------------------------
/chapter_16/PermissionX/library/.gitignore:
--------------------------------------------------------------------------------
1 | /build
2 |
--------------------------------------------------------------------------------
/chapter_16/PermissionX/library/consumer-rules.pro:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_16/PermissionX/library/consumer-rules.pro
--------------------------------------------------------------------------------
/chapter_16/PermissionX/library/src/main/AndroidManifest.xml:
--------------------------------------------------------------------------------
1 |
3 |
--------------------------------------------------------------------------------
/chapter_16/PermissionX/library/src/main/res/values/strings.xml:
--------------------------------------------------------------------------------
1 |
2 | Library
3 |
4 |
--------------------------------------------------------------------------------
/chapter_16/PermissionX/settings.gradle:
--------------------------------------------------------------------------------
1 | include ':app', ':library'
2 | rootProject.name='PermissionX'
3 |
--------------------------------------------------------------------------------
/chapter_16/PermissionXTest/app/._.DS_Store:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_16/PermissionXTest/app/._.DS_Store
--------------------------------------------------------------------------------
/chapter_16/PermissionXTest/app/.gitignore:
--------------------------------------------------------------------------------
1 | /build
2 |
--------------------------------------------------------------------------------
/chapter_16/PermissionXTest/app/src/main/res/mipmap-hdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_16/PermissionXTest/app/src/main/res/mipmap-hdpi/ic_launcher.png
--------------------------------------------------------------------------------
/chapter_16/PermissionXTest/app/src/main/res/mipmap-hdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_16/PermissionXTest/app/src/main/res/mipmap-hdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/chapter_16/PermissionXTest/app/src/main/res/mipmap-mdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_16/PermissionXTest/app/src/main/res/mipmap-mdpi/ic_launcher.png
--------------------------------------------------------------------------------
/chapter_16/PermissionXTest/app/src/main/res/mipmap-mdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_16/PermissionXTest/app/src/main/res/mipmap-mdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/chapter_16/PermissionXTest/app/src/main/res/mipmap-xhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_16/PermissionXTest/app/src/main/res/mipmap-xhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/chapter_16/PermissionXTest/app/src/main/res/mipmap-xxhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_16/PermissionXTest/app/src/main/res/mipmap-xxhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/chapter_16/PermissionXTest/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_16/PermissionXTest/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/chapter_16/PermissionXTest/app/src/main/res/values/strings.xml:
--------------------------------------------------------------------------------
1 |
2 | PermissionXTest
3 |
4 |
--------------------------------------------------------------------------------
/chapter_16/PermissionXTest/gradle/wrapper/gradle-wrapper.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/heshicaihao/AndroidFirstCode_03/47539514825be93899788535f78e7087470a58a8/chapter_16/PermissionXTest/gradle/wrapper/gradle-wrapper.jar
--------------------------------------------------------------------------------
/chapter_16/PermissionXTest/settings.gradle:
--------------------------------------------------------------------------------
1 | include ':app'
2 | rootProject.name='PermissionXTest'
3 |
--------------------------------------------------------------------------------