├── Chapter01 ├── Activity1.01 │ ├── .gitignore │ ├── app │ │ ├── .gitignore │ │ ├── build.gradle │ │ ├── proguard-rules.pro │ │ └── src │ │ │ ├── androidTest │ │ │ └── java │ │ │ │ └── com │ │ │ │ └── example │ │ │ │ └── colors │ │ │ │ └── ExampleInstrumentedTest.kt │ │ │ ├── main │ │ │ ├── AndroidManifest.xml │ │ │ ├── java │ │ │ │ └── com │ │ │ │ │ └── example │ │ │ │ │ └── colors │ │ │ │ │ └── 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 │ │ │ │ ├── dimens.xml │ │ │ │ ├── strings.xml │ │ │ │ └── styles.xml │ │ │ └── test │ │ │ └── java │ │ │ └── com │ │ │ └── example │ │ │ └── colors │ │ │ └── ExampleUnitTest.kt │ ├── build.gradle │ ├── gradle.properties │ ├── gradle │ │ └── wrapper │ │ │ ├── gradle-wrapper.jar │ │ │ └── gradle-wrapper.properties │ ├── gradlew │ ├── gradlew.bat │ └── settings.gradle ├── Exercise1.01 │ ├── .gitignore │ ├── app │ │ ├── .gitignore │ │ ├── build.gradle │ │ ├── proguard-rules.pro │ │ └── src │ │ │ ├── androidTest │ │ │ └── java │ │ │ │ └── com │ │ │ │ └── example │ │ │ │ └── myapplication │ │ │ │ └── ExampleInstrumentedTest.kt │ │ │ ├── main │ │ │ ├── AndroidManifest.xml │ │ │ ├── java │ │ │ │ └── com │ │ │ │ │ └── example │ │ │ │ │ └── myapplication │ │ │ │ │ └── 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 │ │ │ └── myapplication │ │ │ └── ExampleUnitTest.kt │ ├── build.gradle │ ├── gradle.properties │ ├── gradle │ │ └── wrapper │ │ │ ├── gradle-wrapper.jar │ │ │ └── gradle-wrapper.properties │ ├── gradlew │ ├── gradlew.bat │ └── settings.gradle ├── Exercise1.02 │ ├── .gitignore │ ├── app │ │ ├── .gitignore │ │ ├── build.gradle │ │ ├── proguard-rules.pro │ │ └── src │ │ │ ├── androidTest │ │ │ └── java │ │ │ │ └── com │ │ │ │ └── example │ │ │ │ └── myapplication │ │ │ │ └── ExampleInstrumentedTest.kt │ │ │ ├── main │ │ │ ├── AndroidManifest.xml │ │ │ ├── java │ │ │ │ └── com │ │ │ │ │ └── example │ │ │ │ │ └── myapplication │ │ │ │ │ └── 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 │ │ │ └── myapplication │ │ │ └── ExampleUnitTest.kt │ ├── build.gradle │ ├── gradle.properties │ ├── gradle │ │ └── wrapper │ │ │ ├── gradle-wrapper.jar │ │ │ └── gradle-wrapper.properties │ ├── gradlew │ ├── gradlew.bat │ └── settings.gradle ├── Exercise1.03 │ ├── .gitignore │ ├── app │ │ ├── .gitignore │ │ ├── build.gradle │ │ ├── proguard-rules.pro │ │ └── src │ │ │ ├── androidTest │ │ │ └── java │ │ │ │ └── com │ │ │ │ └── example │ │ │ │ └── myapplication │ │ │ │ └── ExampleInstrumentedTest.kt │ │ │ ├── main │ │ │ ├── AndroidManifest.xml │ │ │ ├── java │ │ │ │ └── com │ │ │ │ │ └── example │ │ │ │ │ └── myapplication │ │ │ │ │ └── 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 │ │ │ └── myapplication │ │ │ └── ExampleUnitTest.kt │ ├── build.gradle │ ├── gradle.properties │ ├── gradle │ │ └── wrapper │ │ │ ├── gradle-wrapper.jar │ │ │ └── gradle-wrapper.properties │ ├── gradlew │ ├── gradlew.bat │ └── settings.gradle ├── Exercise1.04 │ ├── .gitignore │ ├── app │ │ ├── .gitignore │ │ ├── build.gradle │ │ ├── proguard-rules.pro │ │ └── src │ │ │ ├── androidTest │ │ │ └── java │ │ │ │ └── com │ │ │ │ └── example │ │ │ │ └── myapplication │ │ │ │ └── ExampleInstrumentedTest.kt │ │ │ ├── main │ │ │ ├── AndroidManifest.xml │ │ │ ├── java │ │ │ │ └── com │ │ │ │ │ └── example │ │ │ │ │ └── myapplication │ │ │ │ │ └── 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 │ │ │ └── myapplication │ │ │ └── ExampleUnitTest.kt │ ├── build.gradle │ ├── gradle.properties │ ├── gradle │ │ └── wrapper │ │ │ ├── gradle-wrapper.jar │ │ │ └── gradle-wrapper.properties │ ├── gradlew │ ├── gradlew.bat │ └── settings.gradle └── Exercise1.05 │ ├── .gitignore │ ├── app │ ├── .gitignore │ ├── build.gradle │ ├── proguard-rules.pro │ └── src │ │ ├── androidTest │ │ └── java │ │ │ └── com │ │ │ └── example │ │ │ └── myapplication │ │ │ └── ExampleInstrumentedTest.kt │ │ ├── main │ │ ├── AndroidManifest.xml │ │ ├── java │ │ │ └── com │ │ │ │ └── example │ │ │ │ └── myapplication │ │ │ │ └── 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 │ │ └── myapplication │ │ └── ExampleUnitTest.kt │ ├── build.gradle │ ├── gradle.properties │ ├── gradle │ └── wrapper │ │ ├── gradle-wrapper.jar │ │ └── gradle-wrapper.properties │ ├── gradlew │ ├── gradlew.bat │ └── settings.gradle ├── Chapter02 ├── Activity1.01 │ ├── .gitignore │ ├── app │ │ ├── .gitignore │ │ ├── build.gradle │ │ ├── proguard-rules.pro │ │ └── src │ │ │ ├── androidTest │ │ │ └── java │ │ │ │ └── com │ │ │ │ └── example │ │ │ │ └── loginactivity │ │ │ │ └── ExampleInstrumentedTest.kt │ │ │ ├── main │ │ │ ├── AndroidManifest.xml │ │ │ ├── java │ │ │ │ └── com │ │ │ │ │ └── example │ │ │ │ │ └── loginactivity │ │ │ │ │ └── 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 │ │ │ └── loginactivity │ │ │ └── ExampleUnitTest.kt │ ├── build.gradle │ ├── gradle.properties │ ├── gradle │ │ └── wrapper │ │ │ ├── gradle-wrapper.jar │ │ │ └── gradle-wrapper.properties │ ├── gradlew │ ├── gradlew.bat │ └── settings.gradle ├── Activity1.02 │ ├── .gitignore │ ├── app │ │ ├── .gitignore │ │ ├── build.gradle │ │ ├── proguard-rules.pro │ │ └── src │ │ │ ├── androidTest │ │ │ └── java │ │ │ │ └── com │ │ │ │ └── example │ │ │ │ └── loginactivity │ │ │ │ └── ExampleInstrumentedTest.kt │ │ │ ├── main │ │ │ ├── AndroidManifest.xml │ │ │ ├── java │ │ │ │ └── com │ │ │ │ │ └── example │ │ │ │ │ └── loginactivity │ │ │ │ │ ├── MainActivity.kt │ │ │ │ │ └── WelcomeActivity.kt │ │ │ └── res │ │ │ │ ├── drawable-v24 │ │ │ │ └── ic_launcher_foreground.xml │ │ │ │ ├── drawable │ │ │ │ └── ic_launcher_background.xml │ │ │ │ ├── layout │ │ │ │ ├── activity_main.xml │ │ │ │ └── activity_welcome.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 │ │ │ └── loginactivity │ │ │ └── ExampleUnitTest.kt │ ├── build.gradle │ ├── gradle.properties │ ├── gradle │ │ └── wrapper │ │ │ ├── gradle-wrapper.jar │ │ │ └── gradle-wrapper.properties │ ├── gradlew │ ├── gradlew.bat │ └── settings.gradle ├── Activity1.03 │ ├── .gitignore │ ├── app │ │ ├── .gitignore │ │ ├── build.gradle │ │ ├── proguard-rules.pro │ │ └── src │ │ │ ├── androidTest │ │ │ └── java │ │ │ │ └── com │ │ │ │ └── example │ │ │ │ └── loginactivity │ │ │ │ └── ExampleInstrumentedTest.kt │ │ │ ├── main │ │ │ ├── AndroidManifest.xml │ │ │ ├── java │ │ │ │ └── com │ │ │ │ │ └── example │ │ │ │ │ └── loginactivity │ │ │ │ │ ├── MainActivity.kt │ │ │ │ │ └── WelcomeActivity.kt │ │ │ └── res │ │ │ │ ├── drawable-v24 │ │ │ │ └── ic_launcher_foreground.xml │ │ │ │ ├── drawable │ │ │ │ └── ic_launcher_background.xml │ │ │ │ ├── layout │ │ │ │ ├── activity_main.xml │ │ │ │ └── activity_welcome.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 │ │ │ └── loginactivity │ │ │ └── ExampleUnitTest.kt │ ├── build.gradle │ ├── gradle.properties │ ├── gradle │ │ └── wrapper │ │ │ ├── gradle-wrapper.jar │ │ │ └── gradle-wrapper.properties │ ├── gradlew │ ├── gradlew.bat │ └── settings.gradle ├── Exercise2.01 │ ├── .gitignore │ ├── app │ │ ├── .gitignore │ │ ├── build.gradle │ │ ├── proguard-rules.pro │ │ └── src │ │ │ ├── androidTest │ │ │ └── java │ │ │ │ └── com │ │ │ │ └── example │ │ │ │ └── activitycallbacks │ │ │ │ └── ExampleInstrumentedTest.kt │ │ │ ├── main │ │ │ ├── AndroidManifest.xml │ │ │ ├── java │ │ │ │ └── com │ │ │ │ │ └── example │ │ │ │ │ └── activitycallbacks │ │ │ │ │ └── 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 │ │ │ └── activitycallbacks │ │ │ └── ExampleUnitTest.kt │ ├── build.gradle │ ├── gradle.properties │ ├── gradle │ │ └── wrapper │ │ │ ├── gradle-wrapper.jar │ │ │ └── gradle-wrapper.properties │ ├── gradlew │ ├── gradlew.bat │ └── settings.gradle ├── Exercise2.02 │ ├── .gitignore │ ├── app │ │ ├── .gitignore │ │ ├── build.gradle │ │ ├── proguard-rules.pro │ │ └── src │ │ │ ├── androidTest │ │ │ └── java │ │ │ │ └── com │ │ │ │ └── example │ │ │ │ └── saveandrestore │ │ │ │ └── ExampleInstrumentedTest.kt │ │ │ ├── main │ │ │ ├── AndroidManifest.xml │ │ │ ├── java │ │ │ │ └── com │ │ │ │ │ └── example │ │ │ │ │ └── saveandrestore │ │ │ │ │ └── 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 │ │ │ │ ├── dimens.xml │ │ │ │ ├── strings.xml │ │ │ │ └── styles.xml │ │ │ └── test │ │ │ └── java │ │ │ └── com │ │ │ └── example │ │ │ └── saveandrestore │ │ │ └── ExampleUnitTest.kt │ ├── build.gradle │ ├── gradle.properties │ ├── gradle │ │ └── wrapper │ │ │ ├── gradle-wrapper.jar │ │ │ └── gradle-wrapper.properties │ ├── gradlew │ ├── gradlew.bat │ └── settings.gradle ├── Exercise2.03 │ ├── .gitignore │ ├── app │ │ ├── .gitignore │ │ ├── build.gradle │ │ ├── proguard-rules.pro │ │ └── src │ │ │ ├── androidTest │ │ │ └── java │ │ │ │ └── com │ │ │ │ └── example │ │ │ │ └── saveandrestore │ │ │ │ └── ExampleInstrumentedTest.kt │ │ │ ├── main │ │ │ ├── AndroidManifest.xml │ │ │ ├── java │ │ │ │ └── com │ │ │ │ │ └── example │ │ │ │ │ └── saveandrestore │ │ │ │ │ └── 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 │ │ │ │ ├── dimens.xml │ │ │ │ ├── strings.xml │ │ │ │ └── styles.xml │ │ │ └── test │ │ │ └── java │ │ │ └── com │ │ │ └── example │ │ │ └── saveandrestore │ │ │ └── ExampleUnitTest.kt │ ├── build.gradle │ ├── gradle.properties │ ├── gradle │ │ └── wrapper │ │ │ ├── gradle-wrapper.jar │ │ │ └── gradle-wrapper.properties │ ├── gradlew │ ├── gradlew.bat │ └── settings.gradle ├── Exercise2.04 │ ├── .gitignore │ ├── app │ │ ├── .gitignore │ │ ├── build.gradle │ │ ├── proguard-rules.pro │ │ └── src │ │ │ ├── androidTest │ │ │ └── java │ │ │ │ └── com │ │ │ │ └── example │ │ │ │ └── intentsintroduction │ │ │ │ └── ExampleInstrumentedTest.kt │ │ │ ├── main │ │ │ ├── AndroidManifest.xml │ │ │ ├── java │ │ │ │ └── com │ │ │ │ │ └── example │ │ │ │ │ └── intentsintroduction │ │ │ │ │ ├── MainActivity.kt │ │ │ │ │ └── WelcomeActivity.kt │ │ │ └── res │ │ │ │ ├── drawable-v24 │ │ │ │ └── ic_launcher_foreground.xml │ │ │ │ ├── drawable │ │ │ │ └── ic_launcher_background.xml │ │ │ │ ├── layout │ │ │ │ ├── activity_main.xml │ │ │ │ └── activity_welcome.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 │ │ │ └── intentsintroduction │ │ │ └── ExampleUnitTest.kt │ ├── build.gradle │ ├── gradle.properties │ ├── gradle │ │ └── wrapper │ │ │ ├── gradle-wrapper.jar │ │ │ └── gradle-wrapper.properties │ ├── gradlew │ ├── gradlew.bat │ └── settings.gradle ├── Exercise2.05 │ ├── .gitignore │ ├── app │ │ ├── .gitignore │ │ ├── build.gradle │ │ ├── proguard-rules.pro │ │ └── src │ │ │ ├── androidTest │ │ │ └── java │ │ │ │ └── com │ │ │ │ └── example │ │ │ │ └── activityresults │ │ │ │ └── ExampleInstrumentedTest.kt │ │ │ ├── main │ │ │ ├── AndroidManifest.xml │ │ │ ├── java │ │ │ │ └── com │ │ │ │ │ └── example │ │ │ │ │ └── activityresults │ │ │ │ │ ├── MainActivity.kt │ │ │ │ │ └── RainbowColorPickerActivity.kt │ │ │ └── res │ │ │ │ ├── drawable-v24 │ │ │ │ └── ic_launcher_foreground.xml │ │ │ │ ├── drawable │ │ │ │ └── ic_launcher_background.xml │ │ │ │ ├── layout │ │ │ │ ├── activity_main.xml │ │ │ │ └── activity_rainbow_color_picker.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 │ │ │ └── activityresults │ │ │ └── ExampleUnitTest.kt │ ├── build.gradle │ ├── gradle.properties │ ├── gradle │ │ └── wrapper │ │ │ ├── gradle-wrapper.jar │ │ │ └── gradle-wrapper.properties │ ├── gradlew │ ├── gradlew.bat │ └── settings.gradle └── Exercise2.06 │ ├── .gitignore │ ├── app │ ├── .gitignore │ ├── build.gradle │ ├── proguard-rules.pro │ └── src │ │ ├── androidTest │ │ └── java │ │ │ └── com │ │ │ └── example │ │ │ └── launchmodes │ │ │ └── ExampleInstrumentedTest.kt │ │ ├── main │ │ ├── AndroidManifest.xml │ │ ├── java │ │ │ └── com │ │ │ │ └── example │ │ │ │ └── launchmodes │ │ │ │ ├── ActivityA.kt │ │ │ │ ├── ActivityB.kt │ │ │ │ ├── ActivityC.kt │ │ │ │ ├── ActivityOne.kt │ │ │ │ ├── ActivityThree.kt │ │ │ │ ├── ActivityTwo.kt │ │ │ │ └── MainActivity.kt │ │ └── res │ │ │ ├── drawable-v24 │ │ │ └── ic_launcher_foreground.xml │ │ │ ├── drawable │ │ │ └── ic_launcher_background.xml │ │ │ ├── layout │ │ │ ├── activity_a.xml │ │ │ ├── activity_b.xml │ │ │ ├── activity_c.xml │ │ │ ├── activity_main.xml │ │ │ ├── activity_one.xml │ │ │ ├── activity_three.xml │ │ │ ├── activity_two.xml │ │ │ ├── letters.xml │ │ │ └── numbers.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 │ │ └── launchmodes │ │ └── ExampleUnitTest.kt │ ├── build.gradle │ ├── gradle.properties │ ├── gradle │ └── wrapper │ │ ├── gradle-wrapper.jar │ │ └── gradle-wrapper.properties │ ├── gradlew │ ├── gradlew.bat │ └── settings.gradle ├── Chapter03 ├── Activity3.01 │ ├── .gitignore │ ├── app │ │ ├── .gitignore │ │ ├── build.gradle │ │ ├── proguard-rules.pro │ │ └── src │ │ │ ├── androidTest │ │ │ └── java │ │ │ │ └── com │ │ │ │ └── example │ │ │ │ └── planetfragments │ │ │ │ └── ExampleInstrumentedTest.kt │ │ │ ├── main │ │ │ ├── AndroidManifest.xml │ │ │ ├── java │ │ │ │ └── com │ │ │ │ │ └── example │ │ │ │ │ └── planetfragments │ │ │ │ │ ├── AnswersFragment.kt │ │ │ │ │ ├── MainActivity.kt │ │ │ │ │ └── QuestionsFragment.kt │ │ │ └── res │ │ │ │ ├── drawable-v24 │ │ │ │ └── ic_launcher_foreground.xml │ │ │ │ ├── drawable │ │ │ │ └── ic_launcher_background.xml │ │ │ │ ├── layout │ │ │ │ ├── activity_main.xml │ │ │ │ ├── fragment_answers.xml │ │ │ │ └── fragment_questions.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 │ │ │ └── planetfragments │ │ │ └── ExampleUnitTest.kt │ ├── build.gradle │ ├── gradle.properties │ ├── gradle │ │ └── wrapper │ │ │ ├── gradle-wrapper.jar │ │ │ └── gradle-wrapper.properties │ ├── gradlew │ ├── gradlew.bat │ └── settings.gradle ├── Exercise3.01 │ ├── .gitignore │ ├── app │ │ ├── .gitignore │ │ ├── build.gradle │ │ ├── proguard-rules.pro │ │ └── src │ │ │ ├── androidTest │ │ │ └── java │ │ │ │ └── com │ │ │ │ └── example │ │ │ │ └── fragmentlifecycle │ │ │ │ └── ExampleInstrumentedTest.kt │ │ │ ├── main │ │ │ ├── AndroidManifest.xml │ │ │ ├── java │ │ │ │ └── com │ │ │ │ │ └── example │ │ │ │ │ └── fragmentlifecycle │ │ │ │ │ ├── MainActivity.kt │ │ │ │ │ └── MainFragment.kt │ │ │ └── res │ │ │ │ ├── drawable-v24 │ │ │ │ └── ic_launcher_foreground.xml │ │ │ │ ├── drawable │ │ │ │ └── ic_launcher_background.xml │ │ │ │ ├── layout │ │ │ │ ├── activity_main.xml │ │ │ │ └── fragment_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 │ │ │ └── fragmentlifecycle │ │ │ └── ExampleUnitTest.kt │ ├── build.gradle │ ├── gradle.properties │ ├── gradle │ │ └── wrapper │ │ │ ├── gradle-wrapper.jar │ │ │ └── gradle-wrapper.properties │ ├── gradlew │ ├── gradlew.bat │ └── settings.gradle ├── Exercise3.02 │ ├── .gitignore │ ├── app │ │ ├── .gitignore │ │ ├── build.gradle │ │ ├── proguard-rules.pro │ │ └── src │ │ │ ├── androidTest │ │ │ └── java │ │ │ │ └── com │ │ │ │ └── example │ │ │ │ └── fragmentintro │ │ │ │ └── ExampleInstrumentedTest.kt │ │ │ ├── main │ │ │ ├── AndroidManifest.xml │ │ │ ├── java │ │ │ │ └── com │ │ │ │ │ └── example │ │ │ │ │ └── fragmentintro │ │ │ │ │ ├── CounterFragment.kt │ │ │ │ │ ├── MainActivity.kt │ │ │ │ │ └── StyleFragment.kt │ │ │ └── res │ │ │ │ ├── drawable-v24 │ │ │ │ └── ic_launcher_foreground.xml │ │ │ │ ├── drawable │ │ │ │ └── ic_launcher_background.xml │ │ │ │ ├── layout │ │ │ │ ├── activity_main.xml │ │ │ │ ├── fragment_counter.xml │ │ │ │ └── fragment_style.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 │ │ │ └── fragmentintro │ │ │ └── ExampleUnitTest.kt │ ├── build.gradle │ ├── gradle.properties │ ├── gradle │ │ └── wrapper │ │ │ ├── gradle-wrapper.jar │ │ │ └── gradle-wrapper.properties │ ├── gradlew │ ├── gradlew.bat │ └── settings.gradle ├── Exercise3.03 │ ├── .gitignore │ ├── app │ │ ├── .gitignore │ │ ├── build.gradle │ │ ├── proguard-rules.pro │ │ └── src │ │ │ ├── androidTest │ │ │ └── java │ │ │ │ └── com │ │ │ │ └── example │ │ │ │ └── staticfragments │ │ │ │ └── ExampleInstrumentedTest.kt │ │ │ ├── main │ │ │ ├── AndroidManifest.xml │ │ │ ├── java │ │ │ │ └── com │ │ │ │ │ └── example │ │ │ │ │ └── staticfragments │ │ │ │ │ ├── DetailActivity.kt │ │ │ │ │ ├── DetailFragment.kt │ │ │ │ │ ├── ListFragment.kt │ │ │ │ │ └── MainActivity.kt │ │ │ └── res │ │ │ │ ├── drawable-v24 │ │ │ │ └── ic_launcher_foreground.xml │ │ │ │ ├── drawable │ │ │ │ └── ic_launcher_background.xml │ │ │ │ ├── layout-sw600dp │ │ │ │ └── activity_main.xml │ │ │ │ ├── layout │ │ │ │ ├── activity_detail.xml │ │ │ │ ├── activity_main.xml │ │ │ │ ├── fragment_detail.xml │ │ │ │ └── fragment_list.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 │ │ │ └── staticfragments │ │ │ └── ExampleUnitTest.kt │ ├── build.gradle │ ├── gradle.properties │ ├── gradle │ │ └── wrapper │ │ │ ├── gradle-wrapper.jar │ │ │ └── gradle-wrapper.properties │ ├── gradlew │ ├── gradlew.bat │ └── settings.gradle ├── Exercise3.04 │ ├── .gitignore │ ├── app │ │ ├── .gitignore │ │ ├── build.gradle │ │ ├── proguard-rules.pro │ │ └── src │ │ │ ├── androidTest │ │ │ └── java │ │ │ │ └── com │ │ │ │ └── example │ │ │ │ └── dynamicfragments │ │ │ │ └── ExampleInstrumentedTest.kt │ │ │ ├── main │ │ │ ├── AndroidManifest.xml │ │ │ ├── java │ │ │ │ └── com │ │ │ │ │ └── example │ │ │ │ │ └── dynamicfragments │ │ │ │ │ ├── DetailFragment.kt │ │ │ │ │ ├── ListFragment.kt │ │ │ │ │ └── MainActivity.kt │ │ │ └── res │ │ │ │ ├── drawable-v24 │ │ │ │ └── ic_launcher_foreground.xml │ │ │ │ ├── drawable │ │ │ │ └── ic_launcher_background.xml │ │ │ │ ├── layout │ │ │ │ ├── activity_main.xml │ │ │ │ ├── fragment_detail.xml │ │ │ │ └── fragment_list.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 │ │ │ └── dynamicfragments │ │ │ └── ExampleUnitTest.kt │ ├── build.gradle │ ├── gradle.properties │ ├── gradle │ │ └── wrapper │ │ │ ├── gradle-wrapper.jar │ │ │ └── gradle-wrapper.properties │ ├── gradlew │ ├── gradlew.bat │ └── settings.gradle └── Exercise3.05 │ ├── .gitignore │ ├── app │ ├── .gitignore │ ├── build.gradle │ ├── proguard-rules.pro │ └── src │ │ ├── androidTest │ │ └── java │ │ │ └── com │ │ │ └── example │ │ │ └── jetpackfragments │ │ │ └── ExampleInstrumentedTest.kt │ │ ├── main │ │ ├── AndroidManifest.xml │ │ ├── java │ │ │ └── com │ │ │ │ └── example │ │ │ │ └── jetpackfragments │ │ │ │ ├── DetailFragment.kt │ │ │ │ ├── ListFragment.kt │ │ │ │ └── MainActivity.kt │ │ └── res │ │ │ ├── drawable-v24 │ │ │ └── ic_launcher_foreground.xml │ │ │ ├── drawable │ │ │ └── ic_launcher_background.xml │ │ │ ├── layout │ │ │ ├── activity_main.xml │ │ │ ├── fragment_detail.xml │ │ │ └── fragment_list.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 │ │ │ ├── navigation │ │ │ └── nav_graph.xml │ │ │ └── values │ │ │ ├── colors.xml │ │ │ ├── strings.xml │ │ │ └── styles.xml │ │ └── test │ │ └── java │ │ └── com │ │ └── example │ │ └── jetpackfragments │ │ └── ExampleUnitTest.kt │ ├── build.gradle │ ├── gradle.properties │ ├── gradle │ └── wrapper │ │ ├── gradle-wrapper.jar │ │ └── gradle-wrapper.properties │ ├── gradlew │ ├── gradlew.bat │ └── settings.gradle ├── Chapter04 ├── Activity4.01 │ ├── .gitignore │ ├── .idea │ │ ├── .name │ │ ├── codeStyles │ │ │ ├── Project.xml │ │ │ └── codeStyleConfig.xml │ │ ├── compiler.xml │ │ ├── gradle.xml │ │ ├── jarRepositories.xml │ │ ├── misc.xml │ │ ├── runConfigurations.xml │ │ └── vcs.xml │ ├── app │ │ ├── .gitignore │ │ ├── build.gradle │ │ ├── proguard-rules.pro │ │ └── src │ │ │ ├── androidTest │ │ │ └── java │ │ │ │ └── com │ │ │ │ └── example │ │ │ │ └── navigationactivity │ │ │ │ └── ExampleInstrumentedTest.kt │ │ │ ├── main │ │ │ ├── AndroidManifest.xml │ │ │ ├── java │ │ │ │ └── com │ │ │ │ │ └── example │ │ │ │ │ └── navigationactivity │ │ │ │ │ ├── AccountFragment.kt │ │ │ │ │ ├── BasketballFragment.kt │ │ │ │ │ ├── FootballFragment.kt │ │ │ │ │ ├── HockeyFragment.kt │ │ │ │ │ ├── HomeFragment.kt │ │ │ │ │ ├── MainActivity.kt │ │ │ │ │ ├── MySportsFragment.kt │ │ │ │ │ └── ProfileFragment.kt │ │ │ └── res │ │ │ │ ├── drawable-v24 │ │ │ │ └── ic_launcher_foreground.xml │ │ │ │ ├── drawable │ │ │ │ ├── account.xml │ │ │ │ ├── home.xml │ │ │ │ ├── ic_launcher_background.xml │ │ │ │ ├── mysports.xml │ │ │ │ └── profile.xml │ │ │ │ ├── layout │ │ │ │ ├── activity_main.xml │ │ │ │ ├── fragment_account.xml │ │ │ │ ├── fragment_basketball.xml │ │ │ │ ├── fragment_football.xml │ │ │ │ ├── fragment_hockey.xml │ │ │ │ ├── fragment_home.xml │ │ │ │ ├── fragment_mysports.xml │ │ │ │ └── fragment_profile.xml │ │ │ │ ├── menu │ │ │ │ └── bottom_nav_menu.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 │ │ │ │ ├── navigation │ │ │ │ └── mobile_navigation.xml │ │ │ │ └── values │ │ │ │ ├── colors.xml │ │ │ │ ├── strings.xml │ │ │ │ └── styles.xml │ │ │ └── test │ │ │ └── java │ │ │ └── com │ │ │ └── example │ │ │ └── navigationactivity │ │ │ └── ExampleUnitTest.kt │ ├── build.gradle │ ├── gradle.properties │ ├── gradle │ │ └── wrapper │ │ │ ├── gradle-wrapper.jar │ │ │ └── gradle-wrapper.properties │ ├── gradlew │ ├── gradlew.bat │ └── settings.gradle ├── Exercise4.01 │ ├── .gitignore │ ├── .idea │ │ ├── .name │ │ ├── codeStyles │ │ │ ├── Project.xml │ │ │ └── codeStyleConfig.xml │ │ ├── compiler.xml │ │ ├── gradle.xml │ │ ├── jarRepositories.xml │ │ ├── misc.xml │ │ ├── runConfigurations.xml │ │ ├── saveactions_settings.xml │ │ └── vcs.xml │ ├── app │ │ ├── .gitignore │ │ ├── build.gradle │ │ ├── proguard-rules.pro │ │ └── src │ │ │ ├── androidTest │ │ │ └── java │ │ │ │ └── com │ │ │ │ └── example │ │ │ │ └── navigationdrawer │ │ │ │ └── ExampleInstrumentedTest.kt │ │ │ ├── main │ │ │ ├── AndroidManifest.xml │ │ │ ├── java │ │ │ │ └── com │ │ │ │ │ └── example │ │ │ │ │ └── navigationdrawer │ │ │ │ │ ├── ArchiveFragment.kt │ │ │ │ │ ├── BinFragment.kt │ │ │ │ │ ├── ContentFragment.kt │ │ │ │ │ ├── FavoritesFragment.kt │ │ │ │ │ ├── HomeFragment.kt │ │ │ │ │ ├── MainActivity.kt │ │ │ │ │ ├── RecentFragment.kt │ │ │ │ │ └── SettingsFragment.kt │ │ │ └── res │ │ │ │ ├── drawable-v24 │ │ │ │ └── ic_launcher_foreground.xml │ │ │ │ ├── drawable │ │ │ │ ├── archive.xml │ │ │ │ ├── bin.xml │ │ │ │ ├── favorites.xml │ │ │ │ ├── home.xml │ │ │ │ ├── ic_launcher_background.xml │ │ │ │ └── recent.xml │ │ │ │ ├── layout │ │ │ │ ├── activity_main.xml │ │ │ │ ├── app_bar_main.xml │ │ │ │ ├── content_main.xml │ │ │ │ ├── fragment_archive.xml │ │ │ │ ├── fragment_bin.xml │ │ │ │ ├── fragment_content.xml │ │ │ │ ├── fragment_favorites.xml │ │ │ │ ├── fragment_home.xml │ │ │ │ ├── fragment_recent.xml │ │ │ │ ├── fragment_settings.xml │ │ │ │ └── nav_header_main.xml │ │ │ │ ├── menu │ │ │ │ ├── activity_main_drawer.xml │ │ │ │ └── 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 │ │ │ │ ├── navigation │ │ │ │ └── mobile_navigation.xml │ │ │ │ └── values │ │ │ │ ├── colors.xml │ │ │ │ ├── dimens.xml │ │ │ │ ├── strings.xml │ │ │ │ └── styles.xml │ │ │ └── test │ │ │ └── java │ │ │ └── com │ │ │ └── example │ │ │ └── navigationdrawer │ │ │ └── ExampleUnitTest.kt │ ├── build.gradle │ ├── gradle.properties │ ├── gradle │ │ └── wrapper │ │ │ ├── gradle-wrapper.jar │ │ │ └── gradle-wrapper.properties │ ├── gradlew │ ├── gradlew.bat │ └── settings.gradle ├── Exercise4.02 │ ├── .gitignore │ ├── .idea │ │ ├── .name │ │ ├── codeStyles │ │ │ ├── Project.xml │ │ │ └── codeStyleConfig.xml │ │ ├── compiler.xml │ │ ├── gradle.xml │ │ ├── jarRepositories.xml │ │ ├── misc.xml │ │ ├── runConfigurations.xml │ │ └── vcs.xml │ ├── app │ │ ├── .gitignore │ │ ├── build.gradle │ │ ├── proguard-rules.pro │ │ └── src │ │ │ ├── androidTest │ │ │ └── java │ │ │ │ └── com │ │ │ │ └── example │ │ │ │ └── bottomnavigation │ │ │ │ └── ExampleInstrumentedTest.kt │ │ │ ├── main │ │ │ ├── AndroidManifest.xml │ │ │ ├── java │ │ │ │ └── com │ │ │ │ │ └── example │ │ │ │ │ └── bottomnavigation │ │ │ │ │ ├── CartFragment.kt │ │ │ │ │ ├── ContentFragment.kt │ │ │ │ │ ├── HomeFragment.kt │ │ │ │ │ ├── MainActivity.kt │ │ │ │ │ ├── OffersFragment.kt │ │ │ │ │ ├── RewardsFragment.kt │ │ │ │ │ ├── SettingsFragment.kt │ │ │ │ │ └── TicketsFragment.kt │ │ │ └── res │ │ │ │ ├── drawable-v24 │ │ │ │ └── ic_launcher_foreground.xml │ │ │ │ ├── drawable │ │ │ │ ├── cart.xml │ │ │ │ ├── home.xml │ │ │ │ ├── ic_launcher_background.xml │ │ │ │ ├── offers.xml │ │ │ │ ├── rewards.xml │ │ │ │ └── tickets.xml │ │ │ │ ├── layout │ │ │ │ ├── activity_main.xml │ │ │ │ ├── fragment_cart.xml │ │ │ │ ├── fragment_content.xml │ │ │ │ ├── fragment_home.xml │ │ │ │ ├── fragment_offers.xml │ │ │ │ ├── fragment_rewards.xml │ │ │ │ ├── fragment_settings.xml │ │ │ │ └── fragment_tickets.xml │ │ │ │ ├── menu │ │ │ │ ├── bottom_nav_menu.xml │ │ │ │ └── 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 │ │ │ │ ├── navigation │ │ │ │ └── mobile_navigation.xml │ │ │ │ └── values │ │ │ │ ├── colors.xml │ │ │ │ ├── strings.xml │ │ │ │ └── styles.xml │ │ │ └── test │ │ │ └── java │ │ │ └── com │ │ │ └── example │ │ │ └── bottomnavigation │ │ │ └── ExampleUnitTest.kt │ ├── build.gradle │ ├── gradle.properties │ ├── gradle │ │ └── wrapper │ │ │ ├── gradle-wrapper.jar │ │ │ └── gradle-wrapper.properties │ ├── gradlew │ ├── gradlew.bat │ └── settings.gradle └── Exercise4.03 │ ├── .gitignore │ ├── .idea │ ├── .name │ ├── codeStyles │ │ ├── Project.xml │ │ └── codeStyleConfig.xml │ ├── gradle.xml │ ├── jarRepositories.xml │ ├── misc.xml │ ├── runConfigurations.xml │ └── vcs.xml │ ├── app │ ├── .gitignore │ ├── build.gradle │ ├── proguard-rules.pro │ └── src │ │ ├── androidTest │ │ └── java │ │ │ └── com │ │ │ └── example │ │ │ └── tabnavigation │ │ │ └── ExampleInstrumentedTest.kt │ │ ├── main │ │ ├── AndroidManifest.xml │ │ ├── java │ │ │ └── com │ │ │ │ └── example │ │ │ │ └── tabnavigation │ │ │ │ ├── MainActivity.kt │ │ │ │ ├── MoviesFragment.kt │ │ │ │ └── MoviesPagerAdapter.kt │ │ └── res │ │ │ ├── drawable-v24 │ │ │ └── ic_launcher_foreground.xml │ │ │ ├── drawable │ │ │ └── ic_launcher_background.xml │ │ │ ├── layout │ │ │ ├── activity_main.xml │ │ │ └── fragment_movies.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 │ │ └── tabnavigation │ │ └── ExampleUnitTest.kt │ ├── build.gradle │ ├── gradle.properties │ ├── gradle │ └── wrapper │ │ ├── gradle-wrapper.jar │ │ └── gradle-wrapper.properties │ ├── gradlew │ ├── gradlew.bat │ └── settings.gradle ├── Chapter05 ├── Activity5.01 │ ├── .gitignore │ ├── .idea │ │ ├── .name │ │ ├── codeStyles │ │ │ └── Project.xml │ │ ├── gradle.xml │ │ ├── misc.xml │ │ ├── runConfigurations.xml │ │ └── vcs.xml │ ├── app │ │ ├── .gitignore │ │ ├── build.gradle │ │ ├── proguard-rules.pro │ │ └── src │ │ │ ├── androidTest │ │ │ └── java │ │ │ │ └── com │ │ │ │ └── example │ │ │ │ └── newyorkweather │ │ │ │ └── ExampleInstrumentedTest.kt │ │ │ ├── main │ │ │ ├── AndroidManifest.xml │ │ │ ├── java │ │ │ │ └── com │ │ │ │ │ └── example │ │ │ │ │ └── newyorkweather │ │ │ │ │ ├── MainActivity.kt │ │ │ │ │ ├── api │ │ │ │ │ └── OpenWeatherMapService.kt │ │ │ │ │ └── model │ │ │ │ │ ├── OpenWeatherMapResponseData.kt │ │ │ │ │ └── OpenWeatherMapWeatherData.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 │ │ │ └── newyorkweather │ │ │ └── ExampleUnitTest.kt │ ├── build.gradle │ ├── gradle.properties │ ├── gradle │ │ └── wrapper │ │ │ ├── gradle-wrapper.jar │ │ │ └── gradle-wrapper.properties │ ├── gradlew │ ├── gradlew.bat │ └── settings.gradle ├── Exercise5.01 │ ├── .gitignore │ ├── .idea │ │ ├── .name │ │ ├── codeStyles │ │ │ ├── Project.xml │ │ │ └── codeStyleConfig.xml │ │ ├── gradle.xml │ │ ├── misc.xml │ │ ├── runConfigurations.xml │ │ └── vcs.xml │ ├── app │ │ ├── .gitignore │ │ ├── build.gradle │ │ ├── proguard-rules.pro │ │ └── src │ │ │ ├── androidTest │ │ │ └── java │ │ │ │ └── com │ │ │ │ └── example │ │ │ │ └── catagentprofile │ │ │ │ └── ExampleInstrumentedTest.kt │ │ │ ├── main │ │ │ ├── AndroidManifest.xml │ │ │ ├── java │ │ │ │ └── com │ │ │ │ │ └── example │ │ │ │ │ └── catagentprofile │ │ │ │ │ ├── MainActivity.kt │ │ │ │ │ └── api │ │ │ │ │ └── TheCatApiService.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 │ │ │ └── catagentprofile │ │ │ └── ExampleUnitTest.kt │ ├── build.gradle │ ├── gradle.properties │ ├── gradle │ │ └── wrapper │ │ │ ├── gradle-wrapper.jar │ │ │ └── gradle-wrapper.properties │ ├── gradlew │ ├── gradlew.bat │ └── settings.gradle ├── Exercise5.02 │ ├── .gitignore │ ├── .idea │ │ ├── .name │ │ ├── codeStyles │ │ │ ├── Project.xml │ │ │ └── codeStyleConfig.xml │ │ ├── gradle.xml │ │ ├── misc.xml │ │ ├── runConfigurations.xml │ │ └── vcs.xml │ ├── app │ │ ├── .gitignore │ │ ├── build.gradle │ │ ├── proguard-rules.pro │ │ └── src │ │ │ ├── androidTest │ │ │ └── java │ │ │ │ └── com │ │ │ │ └── example │ │ │ │ └── catagentprofile │ │ │ │ └── ExampleInstrumentedTest.kt │ │ │ ├── main │ │ │ ├── AndroidManifest.xml │ │ │ ├── java │ │ │ │ └── com │ │ │ │ │ └── example │ │ │ │ │ └── catagentprofile │ │ │ │ │ ├── MainActivity.kt │ │ │ │ │ ├── api │ │ │ │ │ └── TheCatApiService.kt │ │ │ │ │ └── model │ │ │ │ │ ├── CatBreedData.kt │ │ │ │ │ └── ImageResultData.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 │ │ │ └── catagentprofile │ │ │ └── ExampleUnitTest.kt │ ├── build.gradle │ ├── gradle.properties │ ├── gradle │ │ └── wrapper │ │ │ ├── gradle-wrapper.jar │ │ │ └── gradle-wrapper.properties │ ├── gradlew │ ├── gradlew.bat │ └── settings.gradle └── Exercise5.03 │ ├── .gitignore │ ├── .idea │ ├── .name │ ├── codeStyles │ │ ├── Project.xml │ │ └── codeStyleConfig.xml │ ├── gradle.xml │ ├── misc.xml │ ├── runConfigurations.xml │ └── vcs.xml │ ├── app │ ├── .gitignore │ ├── build.gradle │ ├── proguard-rules.pro │ └── src │ │ ├── androidTest │ │ └── java │ │ │ └── com │ │ │ └── example │ │ │ └── catagentprofile │ │ │ └── ExampleInstrumentedTest.kt │ │ ├── main │ │ ├── AndroidManifest.xml │ │ ├── java │ │ │ └── com │ │ │ │ └── example │ │ │ │ └── catagentprofile │ │ │ │ ├── GlideImageLoader.kt │ │ │ │ ├── ImageLoader.kt │ │ │ │ ├── MainActivity.kt │ │ │ │ ├── api │ │ │ │ └── TheCatApiService.kt │ │ │ │ └── model │ │ │ │ ├── CatBreedData.kt │ │ │ │ └── ImageResultData.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 │ │ └── catagentprofile │ │ └── ExampleUnitTest.kt │ ├── build.gradle │ ├── gradle.properties │ ├── gradle │ └── wrapper │ │ ├── gradle-wrapper.jar │ │ └── gradle-wrapper.properties │ ├── gradlew │ ├── gradlew.bat │ └── settings.gradle ├── Chapter06 ├── Activity6.01 │ ├── .gitignore │ ├── app │ │ ├── .gitignore │ │ ├── build.gradle │ │ ├── proguard-rules.pro │ │ └── src │ │ │ ├── androidTest │ │ │ └── java │ │ │ │ └── com │ │ │ │ └── example │ │ │ │ └── recipebook │ │ │ │ └── ExampleInstrumentedTest.kt │ │ │ ├── main │ │ │ ├── AndroidManifest.xml │ │ │ ├── java │ │ │ │ └── com │ │ │ │ │ └── example │ │ │ │ │ └── recipebook │ │ │ │ │ ├── MainActivity.kt │ │ │ │ │ ├── RecipesAdapter.kt │ │ │ │ │ ├── ViewHolder.kt │ │ │ │ │ └── model │ │ │ │ │ └── ListItem.kt │ │ │ └── res │ │ │ │ ├── drawable-v24 │ │ │ │ └── ic_launcher_foreground.xml │ │ │ │ ├── drawable │ │ │ │ └── ic_launcher_background.xml │ │ │ │ ├── layout │ │ │ │ ├── activity_main.xml │ │ │ │ ├── item_recipe.xml │ │ │ │ └── item_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 │ │ │ └── recipebook │ │ │ └── ExampleUnitTest.kt │ ├── build.gradle │ ├── gradle.properties │ ├── gradle │ │ └── wrapper │ │ │ ├── gradle-wrapper.jar │ │ │ └── gradle-wrapper.properties │ ├── gradlew │ ├── gradlew.bat │ └── settings.gradle ├── Exercise6.01 │ ├── .gitignore │ ├── .idea │ │ ├── .name │ │ ├── codeStyles │ │ │ ├── Project.xml │ │ │ └── codeStyleConfig.xml │ │ ├── gradle.xml │ │ ├── misc.xml │ │ ├── runConfigurations.xml │ │ └── vcs.xml │ ├── app │ │ ├── .gitignore │ │ ├── build.gradle │ │ ├── proguard-rules.pro │ │ └── src │ │ │ ├── androidTest │ │ │ └── java │ │ │ │ └── com │ │ │ │ └── example │ │ │ │ └── myrecyclerviewapp │ │ │ │ └── ExampleInstrumentedTest.kt │ │ │ ├── main │ │ │ ├── AndroidManifest.xml │ │ │ ├── java │ │ │ │ └── com │ │ │ │ │ └── example │ │ │ │ │ └── myrecyclerviewapp │ │ │ │ │ └── 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 │ │ │ └── myrecyclerviewapp │ │ │ └── ExampleUnitTest.kt │ ├── build.gradle │ ├── gradle.properties │ ├── gradle │ │ └── wrapper │ │ │ ├── gradle-wrapper.jar │ │ │ └── gradle-wrapper.properties │ ├── gradlew │ ├── gradlew.bat │ └── settings.gradle ├── Exercise6.02 │ ├── .gitignore │ ├── .idea │ │ ├── .name │ │ ├── codeStyles │ │ │ ├── Project.xml │ │ │ └── codeStyleConfig.xml │ │ ├── gradle.xml │ │ ├── misc.xml │ │ ├── runConfigurations.xml │ │ └── vcs.xml │ ├── app │ │ ├── .gitignore │ │ ├── build.gradle │ │ ├── proguard-rules.pro │ │ └── src │ │ │ ├── androidTest │ │ │ └── java │ │ │ │ └── com │ │ │ │ └── example │ │ │ │ └── myrecyclerviewapp │ │ │ │ └── ExampleInstrumentedTest.kt │ │ │ ├── main │ │ │ ├── AndroidManifest.xml │ │ │ ├── java │ │ │ │ └── com │ │ │ │ │ └── example │ │ │ │ │ └── myrecyclerviewapp │ │ │ │ │ ├── CatViewHolder.kt │ │ │ │ │ ├── CatsAdapter.kt │ │ │ │ │ ├── GlideImageLoader.kt │ │ │ │ │ ├── ImageLoader.kt │ │ │ │ │ ├── MainActivity.kt │ │ │ │ │ └── model │ │ │ │ │ ├── CatBreed.kt │ │ │ │ │ ├── CatUiModel.kt │ │ │ │ │ └── Gender.kt │ │ │ └── res │ │ │ │ ├── drawable-v24 │ │ │ │ └── ic_launcher_foreground.xml │ │ │ │ ├── drawable │ │ │ │ └── ic_launcher_background.xml │ │ │ │ ├── layout │ │ │ │ ├── activity_main.xml │ │ │ │ └── item_cat.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 │ │ │ └── myrecyclerviewapp │ │ │ └── ExampleUnitTest.kt │ ├── build.gradle │ ├── gradle.properties │ ├── gradle │ │ └── wrapper │ │ │ ├── gradle-wrapper.jar │ │ │ └── gradle-wrapper.properties │ ├── gradlew │ ├── gradlew.bat │ └── settings.gradle ├── Exercise6.03 │ ├── .gitignore │ ├── .idea │ │ ├── .name │ │ ├── codeStyles │ │ │ ├── Project.xml │ │ │ └── codeStyleConfig.xml │ │ ├── gradle.xml │ │ ├── misc.xml │ │ ├── runConfigurations.xml │ │ └── vcs.xml │ ├── app │ │ ├── .gitignore │ │ ├── build.gradle │ │ ├── proguard-rules.pro │ │ └── src │ │ │ ├── androidTest │ │ │ └── java │ │ │ │ └── com │ │ │ │ └── example │ │ │ │ └── myrecyclerviewapp │ │ │ │ └── ExampleInstrumentedTest.kt │ │ │ ├── main │ │ │ ├── AndroidManifest.xml │ │ │ ├── java │ │ │ │ └── com │ │ │ │ │ └── example │ │ │ │ │ └── myrecyclerviewapp │ │ │ │ │ ├── CatViewHolder.kt │ │ │ │ │ ├── CatsAdapter.kt │ │ │ │ │ ├── GlideImageLoader.kt │ │ │ │ │ ├── ImageLoader.kt │ │ │ │ │ ├── MainActivity.kt │ │ │ │ │ └── model │ │ │ │ │ ├── CatBreed.kt │ │ │ │ │ ├── CatUiModel.kt │ │ │ │ │ └── Gender.kt │ │ │ └── res │ │ │ │ ├── drawable-v24 │ │ │ │ └── ic_launcher_foreground.xml │ │ │ │ ├── drawable │ │ │ │ └── ic_launcher_background.xml │ │ │ │ ├── layout │ │ │ │ ├── activity_main.xml │ │ │ │ └── item_cat.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 │ │ │ └── myrecyclerviewapp │ │ │ └── ExampleUnitTest.kt │ ├── build.gradle │ ├── gradle.properties │ ├── gradle │ │ └── wrapper │ │ │ ├── gradle-wrapper.jar │ │ │ └── gradle-wrapper.properties │ ├── gradlew │ ├── gradlew.bat │ └── settings.gradle ├── Exercise6.04 │ ├── .gitignore │ ├── .idea │ │ ├── .name │ │ ├── codeStyles │ │ │ ├── Project.xml │ │ │ └── codeStyleConfig.xml │ │ ├── gradle.xml │ │ ├── misc.xml │ │ ├── runConfigurations.xml │ │ └── vcs.xml │ ├── app │ │ ├── .gitignore │ │ ├── build.gradle │ │ ├── proguard-rules.pro │ │ └── src │ │ │ ├── androidTest │ │ │ └── java │ │ │ │ └── com │ │ │ │ └── example │ │ │ │ └── myrecyclerviewapp │ │ │ │ └── ExampleInstrumentedTest.kt │ │ │ ├── main │ │ │ ├── AndroidManifest.xml │ │ │ ├── java │ │ │ │ └── com │ │ │ │ │ └── example │ │ │ │ │ └── myrecyclerviewapp │ │ │ │ │ ├── GlideImageLoader.kt │ │ │ │ │ ├── ImageLoader.kt │ │ │ │ │ ├── ListItemsAdapter.kt │ │ │ │ │ ├── MainActivity.kt │ │ │ │ │ ├── model │ │ │ │ │ ├── CatBreed.kt │ │ │ │ │ ├── CatUiModel.kt │ │ │ │ │ ├── Gender.kt │ │ │ │ │ └── ListItemUiModel.kt │ │ │ │ │ └── viewholder │ │ │ │ │ ├── CatViewHolder.kt │ │ │ │ │ ├── ListItemViewHolder.kt │ │ │ │ │ └── TitleViewHolder.kt │ │ │ └── res │ │ │ │ ├── drawable-v24 │ │ │ │ └── ic_launcher_foreground.xml │ │ │ │ ├── drawable │ │ │ │ └── ic_launcher_background.xml │ │ │ │ ├── layout │ │ │ │ ├── activity_main.xml │ │ │ │ ├── item_cat.xml │ │ │ │ └── item_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 │ │ │ └── myrecyclerviewapp │ │ │ └── ExampleUnitTest.kt │ ├── build.gradle │ ├── gradle.properties │ ├── gradle │ │ └── wrapper │ │ │ ├── gradle-wrapper.jar │ │ │ └── gradle-wrapper.properties │ ├── gradlew │ ├── gradlew.bat │ └── settings.gradle ├── Exercise6.05 │ ├── .gitignore │ ├── .idea │ │ ├── .name │ │ ├── codeStyles │ │ │ ├── Project.xml │ │ │ └── codeStyleConfig.xml │ │ ├── gradle.xml │ │ ├── misc.xml │ │ ├── runConfigurations.xml │ │ └── vcs.xml │ ├── app │ │ ├── .gitignore │ │ ├── build.gradle │ │ ├── proguard-rules.pro │ │ └── src │ │ │ ├── androidTest │ │ │ └── java │ │ │ │ └── com │ │ │ │ └── example │ │ │ │ └── myrecyclerviewapp │ │ │ │ └── ExampleInstrumentedTest.kt │ │ │ ├── main │ │ │ ├── AndroidManifest.xml │ │ │ ├── java │ │ │ │ └── com │ │ │ │ │ └── example │ │ │ │ │ └── myrecyclerviewapp │ │ │ │ │ ├── GlideImageLoader.kt │ │ │ │ │ ├── ImageLoader.kt │ │ │ │ │ ├── ListItemsAdapter.kt │ │ │ │ │ ├── MainActivity.kt │ │ │ │ │ ├── model │ │ │ │ │ ├── CatBreed.kt │ │ │ │ │ ├── CatUiModel.kt │ │ │ │ │ ├── Gender.kt │ │ │ │ │ └── ListItemUiModel.kt │ │ │ │ │ └── viewholder │ │ │ │ │ ├── CatViewHolder.kt │ │ │ │ │ ├── ListItemViewHolder.kt │ │ │ │ │ └── TitleViewHolder.kt │ │ │ └── res │ │ │ │ ├── drawable-v24 │ │ │ │ └── ic_launcher_foreground.xml │ │ │ │ ├── drawable │ │ │ │ └── ic_launcher_background.xml │ │ │ │ ├── layout │ │ │ │ ├── activity_main.xml │ │ │ │ ├── item_cat.xml │ │ │ │ └── item_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 │ │ │ └── myrecyclerviewapp │ │ │ └── ExampleUnitTest.kt │ ├── build.gradle │ ├── gradle.properties │ ├── gradle │ │ └── wrapper │ │ │ ├── gradle-wrapper.jar │ │ │ └── gradle-wrapper.properties │ ├── gradlew │ ├── gradlew.bat │ └── settings.gradle └── Exercise6.06 │ ├── .gitignore │ ├── .idea │ ├── .name │ ├── codeStyles │ │ ├── Project.xml │ │ └── codeStyleConfig.xml │ ├── gradle.xml │ ├── misc.xml │ ├── runConfigurations.xml │ └── vcs.xml │ ├── app │ ├── .gitignore │ ├── build.gradle │ ├── proguard-rules.pro │ └── src │ │ ├── androidTest │ │ └── java │ │ │ └── com │ │ │ └── example │ │ │ └── myrecyclerviewapp │ │ │ └── ExampleInstrumentedTest.kt │ │ ├── main │ │ ├── AndroidManifest.xml │ │ ├── java │ │ │ └── com │ │ │ │ └── example │ │ │ │ └── myrecyclerviewapp │ │ │ │ ├── GlideImageLoader.kt │ │ │ │ ├── ImageLoader.kt │ │ │ │ ├── ListItemsAdapter.kt │ │ │ │ ├── MainActivity.kt │ │ │ │ ├── model │ │ │ │ ├── CatBreed.kt │ │ │ │ ├── CatUiModel.kt │ │ │ │ ├── Gender.kt │ │ │ │ └── ListItemUiModel.kt │ │ │ │ └── viewholder │ │ │ │ ├── CatViewHolder.kt │ │ │ │ ├── ListItemViewHolder.kt │ │ │ │ └── TitleViewHolder.kt │ │ └── res │ │ │ ├── drawable-v24 │ │ │ └── ic_launcher_foreground.xml │ │ │ ├── drawable │ │ │ └── ic_launcher_background.xml │ │ │ ├── layout │ │ │ ├── activity_main.xml │ │ │ ├── item_cat.xml │ │ │ └── item_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 │ │ └── myrecyclerviewapp │ │ └── ExampleUnitTest.kt │ ├── build.gradle │ ├── gradle.properties │ ├── gradle │ └── wrapper │ │ ├── gradle-wrapper.jar │ │ └── gradle-wrapper.properties │ ├── gradlew │ ├── gradlew.bat │ └── settings.gradle ├── Chapter07 ├── Activity7.1 │ ├── .gitignore │ ├── .idea │ │ ├── .name │ │ ├── codeStyles │ │ │ └── Project.xml │ │ ├── gradle.xml │ │ ├── misc.xml │ │ └── vcs.xml │ ├── app │ │ ├── .gitignore │ │ ├── build.gradle │ │ ├── proguard-rules.pro │ │ └── src │ │ │ ├── androidTest │ │ │ └── java │ │ │ │ └── com │ │ │ │ └── example │ │ │ │ └── parkedcarfinder │ │ │ │ └── ExampleInstrumentedTest.kt │ │ │ ├── debug │ │ │ └── res │ │ │ │ └── values │ │ │ │ └── google_maps_api.xml │ │ │ ├── main │ │ │ ├── AndroidManifest.xml │ │ │ ├── java │ │ │ │ └── com │ │ │ │ │ └── example │ │ │ │ │ └── parkedcarfinder │ │ │ │ │ └── MapsActivity.kt │ │ │ └── res │ │ │ │ ├── drawable-v24 │ │ │ │ └── ic_launcher_foreground.xml │ │ │ │ ├── drawable │ │ │ │ ├── ic_baseline_directions_car_24.xml │ │ │ │ └── ic_launcher_background.xml │ │ │ │ ├── layout │ │ │ │ └── activity_maps.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 │ │ │ ├── release │ │ │ └── res │ │ │ │ └── values │ │ │ │ └── google_maps_api.xml │ │ │ └── test │ │ │ └── java │ │ │ └── com │ │ │ └── example │ │ │ └── parkedcarfinder │ │ │ └── ExampleUnitTest.kt │ ├── build.gradle │ ├── gradle.properties │ ├── gradle │ │ └── wrapper │ │ │ ├── gradle-wrapper.jar │ │ │ └── gradle-wrapper.properties │ ├── gradlew │ ├── gradlew.bat │ └── settings.gradle ├── Exercise7.1 │ ├── .gitignore │ ├── .idea │ │ ├── .name │ │ ├── codeStyles │ │ │ └── Project.xml │ │ ├── gradle.xml │ │ ├── misc.xml │ │ ├── runConfigurations.xml │ │ └── vcs.xml │ ├── app │ │ ├── .gitignore │ │ ├── build.gradle │ │ ├── proguard-rules.pro │ │ └── src │ │ │ ├── androidTest │ │ │ └── java │ │ │ │ └── com │ │ │ │ └── example │ │ │ │ └── catagentdeployer │ │ │ │ └── ExampleInstrumentedTest.kt │ │ │ ├── debug │ │ │ └── res │ │ │ │ └── values │ │ │ │ └── google_maps_api.xml │ │ │ ├── main │ │ │ ├── AndroidManifest.xml │ │ │ ├── java │ │ │ │ └── com │ │ │ │ │ └── example │ │ │ │ │ └── catagentdeployer │ │ │ │ │ └── MapsActivity.kt │ │ │ └── res │ │ │ │ ├── drawable-v24 │ │ │ │ └── ic_launcher_foreground.xml │ │ │ │ ├── drawable │ │ │ │ └── ic_launcher_background.xml │ │ │ │ ├── layout │ │ │ │ └── activity_maps.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 │ │ │ ├── release │ │ │ └── res │ │ │ │ └── values │ │ │ │ └── google_maps_api.xml │ │ │ └── test │ │ │ └── java │ │ │ └── com │ │ │ └── example │ │ │ └── catagentdeployer │ │ │ └── ExampleUnitTest.kt │ ├── build.gradle │ ├── gradle.properties │ ├── gradle │ │ └── wrapper │ │ │ ├── gradle-wrapper.jar │ │ │ └── gradle-wrapper.properties │ ├── gradlew │ ├── gradlew.bat │ └── settings.gradle ├── Exercise7.2 │ ├── .gitignore │ ├── .idea │ │ ├── .name │ │ ├── codeStyles │ │ │ └── Project.xml │ │ ├── gradle.xml │ │ ├── misc.xml │ │ ├── runConfigurations.xml │ │ └── vcs.xml │ ├── app │ │ ├── .gitignore │ │ ├── build.gradle │ │ ├── proguard-rules.pro │ │ └── src │ │ │ ├── androidTest │ │ │ └── java │ │ │ │ └── com │ │ │ │ └── example │ │ │ │ └── catagentdeployer │ │ │ │ └── ExampleInstrumentedTest.kt │ │ │ ├── debug │ │ │ └── res │ │ │ │ └── values │ │ │ │ └── google_maps_api.xml │ │ │ ├── main │ │ │ ├── AndroidManifest.xml │ │ │ ├── java │ │ │ │ └── com │ │ │ │ │ └── example │ │ │ │ │ └── catagentdeployer │ │ │ │ │ └── MapsActivity.kt │ │ │ └── res │ │ │ │ ├── drawable-v24 │ │ │ │ └── ic_launcher_foreground.xml │ │ │ │ ├── drawable │ │ │ │ └── ic_launcher_background.xml │ │ │ │ ├── layout │ │ │ │ └── activity_maps.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 │ │ │ ├── release │ │ │ └── res │ │ │ │ └── values │ │ │ │ └── google_maps_api.xml │ │ │ └── test │ │ │ └── java │ │ │ └── com │ │ │ └── example │ │ │ └── catagentdeployer │ │ │ └── ExampleUnitTest.kt │ ├── build.gradle │ ├── gradle.properties │ ├── gradle │ │ └── wrapper │ │ │ ├── gradle-wrapper.jar │ │ │ └── gradle-wrapper.properties │ ├── gradlew │ ├── gradlew.bat │ └── settings.gradle └── Exercise7.3 │ ├── Cat Agent Deployer.iml │ ├── app │ ├── .gitignore │ ├── build.gradle │ ├── proguard-rules.pro │ └── src │ │ ├── androidTest │ │ └── java │ │ │ └── com │ │ │ └── example │ │ │ └── catagentdeployer │ │ │ └── ExampleInstrumentedTest.kt │ │ ├── debug │ │ └── res │ │ │ └── values │ │ │ └── google_maps_api.xml │ │ ├── main │ │ ├── AndroidManifest.xml │ │ ├── java │ │ │ └── com │ │ │ │ └── example │ │ │ │ └── catagentdeployer │ │ │ │ └── MapsActivity.kt │ │ └── res │ │ │ ├── drawable-v24 │ │ │ └── ic_launcher_foreground.xml │ │ │ ├── drawable │ │ │ ├── ic_launcher_background.xml │ │ │ └── target_icon.xml │ │ │ ├── layout │ │ │ └── activity_maps.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 │ │ ├── release │ │ └── res │ │ │ └── values │ │ │ └── google_maps_api.xml │ │ └── test │ │ └── java │ │ └── com │ │ └── example │ │ └── catagentdeployer │ │ └── ExampleUnitTest.kt │ ├── build.gradle │ ├── gradle.properties │ ├── gradlew │ ├── gradlew.bat │ ├── local.properties │ └── settings.gradle ├── Chapter08 ├── Activity08.01 │ ├── .gitignore │ ├── app │ │ ├── .gitignore │ │ ├── build.gradle │ │ ├── proguard-rules.pro │ │ └── src │ │ │ ├── androidTest │ │ │ └── java │ │ │ │ └── com │ │ │ │ └── example │ │ │ │ └── mywatterttracker │ │ │ │ └── ExampleInstrumentedTest.kt │ │ │ ├── main │ │ │ ├── AndroidManifest.xml │ │ │ ├── java │ │ │ │ └── com │ │ │ │ │ └── example │ │ │ │ │ └── mywatterttracker │ │ │ │ │ ├── MainActivity.kt │ │ │ │ │ └── WaterTrackingService.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 │ │ │ └── mywatterttracker │ │ │ └── ExampleUnitTest.kt │ ├── build.gradle │ ├── gradle.properties │ ├── gradle │ │ └── wrapper │ │ │ ├── gradle-wrapper.jar │ │ │ └── gradle-wrapper.properties │ ├── gradlew │ ├── gradlew.bat │ └── settings.gradle ├── Exercise8.1 │ ├── .gitignore │ ├── app │ │ ├── .gitignore │ │ ├── build.gradle │ │ ├── proguard-rules.pro │ │ └── src │ │ │ ├── androidTest │ │ │ └── java │ │ │ │ └── com │ │ │ │ └── example │ │ │ │ └── catagenttracker │ │ │ │ └── ExampleInstrumentedTest.kt │ │ │ ├── main │ │ │ ├── AndroidManifest.xml │ │ │ ├── java │ │ │ │ └── com │ │ │ │ │ └── example │ │ │ │ │ └── catagenttracker │ │ │ │ │ ├── MainActivity.kt │ │ │ │ │ └── worker │ │ │ │ │ ├── CatFurGroomingWorker.kt │ │ │ │ │ ├── CatLitterBoxSittingWorker.kt │ │ │ │ │ ├── CatStretchingWorker.kt │ │ │ │ │ └── CatSuitUpWorker.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 │ │ │ └── catagenttracker │ │ │ └── ExampleUnitTest.kt │ ├── build.gradle │ ├── gradle.properties │ ├── gradle │ │ └── wrapper │ │ │ ├── gradle-wrapper.jar │ │ │ └── gradle-wrapper.properties │ ├── gradlew │ ├── gradlew.bat │ └── settings.gradle └── Exercise8.2 │ ├── app │ ├── .gitignore │ ├── build.gradle │ ├── proguard-rules.pro │ └── src │ │ ├── androidTest │ │ └── java │ │ │ └── com │ │ │ └── example │ │ │ └── catagenttracker │ │ │ └── ExampleInstrumentedTest.kt │ │ ├── main │ │ ├── AndroidManifest.xml │ │ ├── java │ │ │ └── com │ │ │ │ └── example │ │ │ │ └── catagenttracker │ │ │ │ ├── MainActivity.kt │ │ │ │ ├── RouteTrackingService.kt │ │ │ │ └── worker │ │ │ │ ├── CatFurGroomingWorker.kt │ │ │ │ ├── CatLitterBoxSittingWorker.kt │ │ │ │ ├── CatStretchingWorker.kt │ │ │ │ └── CatSuitUpWorker.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 │ │ └── catagenttracker │ │ └── ExampleUnitTest.kt │ ├── build.gradle │ ├── gradle.properties │ ├── gradle │ └── wrapper │ │ └── gradle-wrapper.properties │ └── settings.gradle ├── Chapter09 ├── Activity09.01 │ ├── .gitignore │ ├── .idea │ │ ├── .name │ │ ├── codeStyles │ │ │ ├── Project.xml │ │ │ └── codeStyleConfig.xml │ │ ├── gradle.xml │ │ ├── misc.xml │ │ ├── runConfigurations.xml │ │ └── vcs.xml │ ├── app │ │ ├── .gitignore │ │ ├── build.gradle │ │ ├── proguard-rules.pro │ │ └── src │ │ │ ├── androidTest │ │ │ └── java │ │ │ │ └── com │ │ │ │ └── android │ │ │ │ └── testable │ │ │ │ └── myapplication │ │ │ │ ├── Activity1Robot.kt │ │ │ │ ├── Activity2Robot.kt │ │ │ │ ├── Activity3Robot.kt │ │ │ │ ├── MyInstrumentedApplication.kt │ │ │ │ ├── MyTestRunner.kt │ │ │ │ ├── MyViewAssertions.kt │ │ │ │ ├── RecyclerViewItemCountAssertion.kt │ │ │ │ └── UiTest.kt │ │ │ ├── main │ │ │ ├── AndroidManifest.xml │ │ │ ├── java │ │ │ │ └── com │ │ │ │ │ └── android │ │ │ │ │ └── testable │ │ │ │ │ └── myapplication │ │ │ │ │ ├── Activity1.kt │ │ │ │ │ ├── Activity2.kt │ │ │ │ │ ├── Activity3.kt │ │ │ │ │ ├── Item.kt │ │ │ │ │ ├── ItemAdapter.kt │ │ │ │ │ ├── ItemGenerator.kt │ │ │ │ │ ├── MyApplication.kt │ │ │ │ │ └── StringProvider.kt │ │ │ └── res │ │ │ │ ├── drawable-v24 │ │ │ │ └── ic_launcher_foreground.xml │ │ │ │ ├── drawable │ │ │ │ └── ic_launcher_background.xml │ │ │ │ ├── layout │ │ │ │ ├── activity_1.xml │ │ │ │ ├── activity_2.xml │ │ │ │ ├── activity_3.xml │ │ │ │ └── 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 │ │ │ │ └── android │ │ │ │ └── testable │ │ │ │ └── myapplication │ │ │ │ ├── Activity1Test.kt │ │ │ │ ├── Activity2Test.kt │ │ │ │ ├── Activity3Test.kt │ │ │ │ ├── InstantItemGenerator.kt │ │ │ │ ├── ItemGeneratorTest.kt │ │ │ │ └── StringProviderTest.kt │ │ │ └── resources │ │ │ ├── mockito-extensions │ │ │ └── org.mockito.plugins.MockMaker │ │ │ └── robolectric.properties │ ├── build.gradle │ ├── gradle.properties │ ├── gradle │ │ └── wrapper │ │ │ ├── gradle-wrapper.jar │ │ │ └── gradle-wrapper.properties │ ├── gradlew │ ├── gradlew.bat │ └── settings.gradle ├── Exercise09.01 │ ├── .gitignore │ ├── .idea │ │ ├── .name │ │ ├── codeStyles │ │ │ ├── Project.xml │ │ │ └── codeStyleConfig.xml │ │ ├── gradle.xml │ │ ├── misc.xml │ │ ├── runConfigurations.xml │ │ └── vcs.xml │ ├── app │ │ ├── .gitignore │ │ ├── build.gradle │ │ ├── proguard-rules.pro │ │ └── src │ │ │ ├── main │ │ │ ├── AndroidManifest.xml │ │ │ ├── java │ │ │ │ └── com │ │ │ │ │ └── android │ │ │ │ │ └── testable │ │ │ │ │ └── myapplication │ │ │ │ │ └── NumberAdder.kt │ │ │ └── res │ │ │ │ ├── drawable-v24 │ │ │ │ └── ic_launcher_foreground.xml │ │ │ │ ├── drawable │ │ │ │ └── ic_launcher_background.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 │ │ │ └── android │ │ │ └── testable │ │ │ └── myapplication │ │ │ ├── NumberAdderErrorHandlingTest.kt │ │ │ └── NumberAdderParameterTest.kt │ ├── build.gradle │ ├── gradle.properties │ ├── gradle │ │ └── wrapper │ │ │ ├── gradle-wrapper.jar │ │ │ └── gradle-wrapper.properties │ ├── gradlew │ ├── gradlew.bat │ └── settings.gradle ├── Exercise09.02 │ ├── .gitignore │ ├── .idea │ │ ├── .name │ │ ├── codeStyles │ │ │ ├── Project.xml │ │ │ └── codeStyleConfig.xml │ │ ├── gradle.xml │ │ ├── misc.xml │ │ ├── runConfigurations.xml │ │ └── vcs.xml │ ├── app │ │ ├── .gitignore │ │ ├── build.gradle │ │ ├── proguard-rules.pro │ │ └── src │ │ │ ├── androidTest │ │ │ └── java │ │ │ │ └── com │ │ │ │ └── android │ │ │ │ └── testable │ │ │ │ └── myapplication │ │ │ │ └── MainActivityUiTest.kt │ │ │ ├── main │ │ │ ├── AndroidManifest.xml │ │ │ ├── java │ │ │ │ └── com │ │ │ │ │ └── android │ │ │ │ │ └── testable │ │ │ │ │ └── myapplication │ │ │ │ │ ├── MainActivity.kt │ │ │ │ │ ├── NumberAdder.kt │ │ │ │ │ └── TextFormatter.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 │ │ │ │ └── android │ │ │ │ └── testable │ │ │ │ └── myapplication │ │ │ │ ├── MainActivityTest.kt │ │ │ │ ├── NumberAdderErrorHandlingTest.kt │ │ │ │ ├── NumberAdderParameterTest.kt │ │ │ │ └── TextFormatterTest.kt │ │ │ └── resources │ │ │ ├── mockito-extensions │ │ │ └── org.mockito.plugins.MockMaker │ │ │ └── robolectric.properties │ ├── build.gradle │ ├── gradle.properties │ ├── gradle │ │ └── wrapper │ │ │ ├── gradle-wrapper.jar │ │ │ └── gradle-wrapper.properties │ ├── gradlew │ ├── gradlew.bat │ └── settings.gradle ├── Exercise09.03 │ ├── .gitignore │ ├── .idea │ │ ├── .name │ │ ├── codeStyles │ │ │ ├── Project.xml │ │ │ └── codeStyleConfig.xml │ │ ├── gradle.xml │ │ ├── misc.xml │ │ ├── runConfigurations.xml │ │ └── vcs.xml │ ├── app │ │ ├── .gitignore │ │ ├── build.gradle │ │ ├── proguard-rules.pro │ │ └── src │ │ │ ├── androidTest │ │ │ └── java │ │ │ │ └── com │ │ │ │ └── android │ │ │ │ └── testable │ │ │ │ └── myapplication │ │ │ │ ├── FlowTest.kt │ │ │ │ ├── MyApplicationTestRunner.kt │ │ │ │ ├── TestMyApplication.kt │ │ │ │ └── TestRandomizer.kt │ │ │ ├── main │ │ │ ├── AndroidManifest.xml │ │ │ ├── java │ │ │ │ └── com │ │ │ │ │ └── android │ │ │ │ │ └── testable │ │ │ │ │ └── myapplication │ │ │ │ │ ├── Activity1.kt │ │ │ │ │ ├── Activity2.kt │ │ │ │ │ ├── MyApplication.kt │ │ │ │ │ ├── Randomizer.kt │ │ │ │ │ └── Synchronizer.kt │ │ │ └── res │ │ │ │ ├── drawable-v24 │ │ │ │ └── ic_launcher_foreground.xml │ │ │ │ ├── drawable │ │ │ │ └── ic_launcher_background.xml │ │ │ │ ├── layout │ │ │ │ ├── activity_1.xml │ │ │ │ └── activity_2.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 │ │ │ └── android │ │ │ └── testable │ │ │ └── myapplication │ │ │ └── ExampleUnitTest.kt │ ├── build.gradle │ ├── gradle.properties │ ├── gradle │ │ └── wrapper │ │ │ ├── gradle-wrapper.jar │ │ │ └── gradle-wrapper.properties │ ├── gradlew │ ├── gradlew.bat │ └── settings.gradle └── Exercise09.04 │ ├── .gitignore │ ├── .idea │ ├── codeStyles │ │ ├── Project.xml │ │ └── codeStyleConfig.xml │ ├── gradle.xml │ ├── misc.xml │ ├── runConfigurations.xml │ └── vcs.xml │ ├── app │ ├── .gitignore │ ├── build.gradle │ ├── proguard-rules.pro │ └── src │ │ ├── main │ │ ├── AndroidManifest.xml │ │ ├── java │ │ │ └── com │ │ │ │ └── android │ │ │ │ └── testable │ │ │ │ └── exercise0904 │ │ │ │ └── Adder.kt │ │ └── res │ │ │ ├── drawable-v24 │ │ │ └── ic_launcher_foreground.xml │ │ │ ├── drawable │ │ │ └── ic_launcher_background.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 │ │ └── android │ │ └── testable │ │ └── exercise0904 │ │ └── AdderTest.kt │ ├── build.gradle │ ├── gradle.properties │ ├── gradle │ └── wrapper │ │ ├── gradle-wrapper.jar │ │ └── gradle-wrapper.properties │ ├── gradlew │ ├── gradlew.bat │ └── settings.gradle ├── Chapter10 ├── Activity10.01 │ ├── .gitignore │ ├── .idea │ │ ├── .name │ │ ├── codeStyles │ │ │ ├── Project.xml │ │ │ └── codeStyleConfig.xml │ │ ├── gradle.xml │ │ ├── misc.xml │ │ ├── runConfigurations.xml │ │ └── vcs.xml │ ├── app │ │ ├── .gitignore │ │ ├── build.gradle │ │ ├── proguard-rules.pro │ │ └── src │ │ │ ├── androidTest │ │ │ └── java │ │ │ │ └── com │ │ │ │ └── android │ │ │ │ └── testable │ │ │ │ └── notesapplication │ │ │ │ └── ExampleInstrumentedTest.kt │ │ │ ├── main │ │ │ ├── AndroidManifest.xml │ │ │ ├── java │ │ │ │ └── com │ │ │ │ │ └── android │ │ │ │ │ └── testable │ │ │ │ │ └── notesapplication │ │ │ │ │ ├── CountNotesFragment.kt │ │ │ │ │ ├── CountNotesViewModel.kt │ │ │ │ │ ├── Note.kt │ │ │ │ │ ├── NoteDao.kt │ │ │ │ │ ├── NoteListAdapter.kt │ │ │ │ │ ├── NoteListFragment.kt │ │ │ │ │ ├── NoteListViewModel.kt │ │ │ │ │ ├── NoteRepository.kt │ │ │ │ │ ├── NoteRepositoryImpl.kt │ │ │ │ │ ├── NotesActivity.kt │ │ │ │ │ ├── NotesApplication.kt │ │ │ │ │ └── NotesDatabase.kt │ │ │ └── res │ │ │ │ ├── drawable-v24 │ │ │ │ └── ic_launcher_foreground.xml │ │ │ │ ├── drawable │ │ │ │ └── ic_launcher_background.xml │ │ │ │ ├── layout-land │ │ │ │ └── activity_note.xml │ │ │ │ ├── layout │ │ │ │ ├── activity_note.xml │ │ │ │ ├── fragment_count_notes.xml │ │ │ │ ├── fragment_note_list.xml │ │ │ │ └── view_note_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 │ │ │ │ └── android │ │ │ │ └── testable │ │ │ │ └── notesapplication │ │ │ │ ├── CountNotesViewModelTest.kt │ │ │ │ ├── NoteListViewModelTest.kt │ │ │ │ └── NoteRepositoryImplTest.kt │ │ │ └── resources │ │ │ └── mockito-extensions │ │ │ └── org.mockito.plugins.MockMaker │ ├── build.gradle │ ├── gradle.properties │ ├── gradle │ │ └── wrapper │ │ │ ├── gradle-wrapper.jar │ │ │ └── gradle-wrapper.properties │ ├── gradlew │ ├── gradlew.bat │ └── settings.gradle ├── Exercise10.01-10.04 │ ├── .gitignore │ ├── .idea │ │ ├── .name │ │ ├── codeStyles │ │ │ ├── Project.xml │ │ │ └── codeStyleConfig.xml │ │ ├── gradle.xml │ │ ├── misc.xml │ │ ├── runConfigurations.xml │ │ └── vcs.xml │ ├── app │ │ ├── .gitignore │ │ ├── build.gradle │ │ ├── proguard-rules.pro │ │ └── src │ │ │ ├── main │ │ │ ├── AndroidManifest.xml │ │ │ ├── java │ │ │ │ └── com │ │ │ │ │ └── android │ │ │ │ │ └── testable │ │ │ │ │ └── viewmodellivedata │ │ │ │ │ ├── SplitActivity.kt │ │ │ │ │ ├── SplitFragment1.kt │ │ │ │ │ ├── SplitFragment2.kt │ │ │ │ │ └── TotalsViewModel.kt │ │ │ └── res │ │ │ │ ├── drawable-v24 │ │ │ │ └── ic_launcher_foreground.xml │ │ │ │ ├── drawable │ │ │ │ └── ic_launcher_background.xml │ │ │ │ ├── layout-land │ │ │ │ └── activity_split.xml │ │ │ │ ├── layout │ │ │ │ ├── activity_split.xml │ │ │ │ ├── fragment_split_1.xml │ │ │ │ └── fragment_split_2.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 │ │ │ └── android │ │ │ └── testable │ │ │ └── viewmodellivedata │ │ │ └── TotalsViewModelTest.kt │ ├── build.gradle │ ├── gradle.properties │ ├── gradle │ │ └── wrapper │ │ │ ├── gradle-wrapper.jar │ │ │ └── gradle-wrapper.properties │ ├── gradlew │ ├── gradlew.bat │ └── settings.gradle ├── Exercise10.05 │ ├── .gitignore │ ├── .idea │ │ ├── .name │ │ ├── codeStyles │ │ │ ├── Project.xml │ │ │ └── codeStyleConfig.xml │ │ ├── gradle.xml │ │ ├── misc.xml │ │ ├── runConfigurations.xml │ │ └── vcs.xml │ ├── app │ │ ├── .gitignore │ │ ├── build.gradle │ │ ├── proguard-rules.pro │ │ └── src │ │ │ ├── androidTest │ │ │ └── java │ │ │ │ └── com │ │ │ │ └── android │ │ │ │ └── testable │ │ │ │ └── roomexample │ │ │ │ └── NewsDatabaseTest.kt │ │ │ ├── main │ │ │ ├── AndroidManifest.xml │ │ │ ├── java │ │ │ │ └── com │ │ │ │ │ └── android │ │ │ │ │ └── testable │ │ │ │ │ └── roomexample │ │ │ │ │ ├── Article.kt │ │ │ │ │ ├── ArticleDao.kt │ │ │ │ │ ├── JoinedArticleJournalist.kt │ │ │ │ │ ├── JoinedArticleJournalistDao.kt │ │ │ │ │ ├── Journalist.kt │ │ │ │ │ ├── JournalistDao.kt │ │ │ │ │ └── NewsDatabase.kt │ │ │ └── res │ │ │ │ ├── drawable-v24 │ │ │ │ └── ic_launcher_foreground.xml │ │ │ │ ├── drawable │ │ │ │ └── ic_launcher_background.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 │ │ │ └── android │ │ │ └── testable │ │ │ └── roomexample │ │ │ └── ExampleUnitTest.kt │ ├── build.gradle │ ├── gradle.properties │ ├── gradle │ │ └── wrapper │ │ │ ├── gradle-wrapper.jar │ │ │ └── gradle-wrapper.properties │ ├── gradlew │ ├── gradlew.bat │ └── settings.gradle └── Exercise10.06 │ ├── .gitignore │ ├── .idea │ ├── .name │ ├── codeStyles │ │ ├── Project.xml │ │ └── codeStyleConfig.xml │ ├── gradle.xml │ ├── misc.xml │ ├── runConfigurations.xml │ └── vcs.xml │ ├── app │ ├── .gitignore │ ├── build.gradle │ ├── proguard-rules.pro │ └── src │ │ ├── androidTest │ │ └── java │ │ │ └── com │ │ │ └── android │ │ │ └── testable │ │ │ └── lifecycleexample │ │ │ └── ExampleInstrumentedTest.kt │ │ ├── main │ │ ├── AndroidManifest.xml │ │ ├── java │ │ │ └── com │ │ │ │ └── android │ │ │ │ └── testable │ │ │ │ └── lifecycleexample │ │ │ │ ├── LifecycleActivity.kt │ │ │ │ ├── SplitActivity.kt │ │ │ │ └── ToastyLifecycleObserver.kt │ │ └── res │ │ │ ├── drawable-v24 │ │ │ └── ic_launcher_foreground.xml │ │ │ ├── drawable │ │ │ └── ic_launcher_background.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 │ │ └── android │ │ └── testable │ │ └── lifecycleexample │ │ └── ExampleUnitTest.kt │ ├── build.gradle │ ├── gradle.properties │ ├── gradle │ └── wrapper │ │ ├── gradle-wrapper.jar │ │ └── gradle-wrapper.properties │ ├── gradlew │ ├── gradlew.bat │ └── settings.gradle ├── Chapter11 ├── Activity11.01 │ ├── .gitignore │ ├── .idea │ │ ├── .name │ │ ├── codeStyles │ │ │ ├── Project.xml │ │ │ └── codeStyleConfig.xml │ │ ├── gradle.xml │ │ ├── misc.xml │ │ ├── runConfigurations.xml │ │ └── vcs.xml │ ├── app │ │ ├── .gitignore │ │ ├── build.gradle │ │ ├── proguard-rules.pro │ │ └── src │ │ │ ├── androidTest │ │ │ └── java │ │ │ │ └── com │ │ │ │ └── android │ │ │ │ └── testable │ │ │ │ └── remote_media_provider │ │ │ │ └── ExampleInstrumentedTest.kt │ │ │ ├── main │ │ │ ├── AndroidManifest.xml │ │ │ ├── java │ │ │ │ └── com │ │ │ │ │ └── android │ │ │ │ │ └── testable │ │ │ │ │ └── remote_media_provider │ │ │ │ │ ├── MainActivity.kt │ │ │ │ │ ├── MainAdapter.kt │ │ │ │ │ ├── MainViewModel.kt │ │ │ │ │ ├── RemoteProviderApplication.kt │ │ │ │ │ ├── SettingsActivity.kt │ │ │ │ │ ├── SettingsFragment.kt │ │ │ │ │ ├── api │ │ │ │ │ ├── Dog.kt │ │ │ │ │ └── DownloadService.kt │ │ │ │ │ ├── repository │ │ │ │ │ ├── DogMapper.kt │ │ │ │ │ ├── DogUi.kt │ │ │ │ │ ├── DownloadRepository.kt │ │ │ │ │ ├── DownloadRepositoryImpl.kt │ │ │ │ │ └── Result.kt │ │ │ │ │ └── storage │ │ │ │ │ ├── filesystem │ │ │ │ │ ├── FileToUriMapper.kt │ │ │ │ │ └── ProviderFileHandler.kt │ │ │ │ │ ├── preference │ │ │ │ │ └── DownloadPreferencesWrapper.kt │ │ │ │ │ └── room │ │ │ │ │ ├── DogDao.kt │ │ │ │ │ ├── DogDatabase.kt │ │ │ │ │ └── DogEntity.kt │ │ │ └── res │ │ │ │ ├── drawable-v24 │ │ │ │ └── ic_launcher_foreground.xml │ │ │ │ ├── drawable │ │ │ │ ├── ic_launcher_background.xml │ │ │ │ └── ic_settings.xml │ │ │ │ ├── layout │ │ │ │ ├── activity_main.xml │ │ │ │ ├── activity_settings.xml │ │ │ │ └── view_dog_item.xml │ │ │ │ ├── menu │ │ │ │ └── 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 │ │ │ │ ├── preferences.xml │ │ │ │ ├── strings.xml │ │ │ │ └── styles.xml │ │ │ │ └── xml │ │ │ │ ├── preferences_settings.xml │ │ │ │ └── provider_paths.xml │ │ │ └── test │ │ │ ├── java │ │ │ └── com │ │ │ │ └── android │ │ │ │ └── testable │ │ │ │ └── remote_media_provider │ │ │ │ ├── MainViewModelTest.kt │ │ │ │ ├── repository │ │ │ │ └── DownloadRepositoryImplTest.kt │ │ │ │ └── storage │ │ │ │ ├── filesystem │ │ │ │ └── ProviderFileHandlerTest.kt │ │ │ │ └── preference │ │ │ │ └── DownloadPreferencesWrapperTest.kt │ │ │ └── resources │ │ │ └── mockito-extensions │ │ │ └── org.mockito.plugins.MockMaker │ ├── build.gradle │ ├── gradle.properties │ ├── gradle │ │ └── wrapper │ │ │ ├── gradle-wrapper.jar │ │ │ └── gradle-wrapper.properties │ ├── gradlew │ ├── gradlew.bat │ └── settings.gradle ├── Exercise11.01-11.02 │ ├── .gitignore │ ├── .idea │ │ ├── .name │ │ ├── codeStyles │ │ │ ├── Project.xml │ │ │ └── codeStyleConfig.xml │ │ ├── gradle.xml │ │ ├── misc.xml │ │ ├── runConfigurations.xml │ │ └── vcs.xml │ ├── app │ │ ├── .gitignore │ │ ├── build.gradle │ │ ├── proguard-rules.pro │ │ └── src │ │ │ ├── main │ │ │ ├── AndroidManifest.xml │ │ │ ├── java │ │ │ │ └── com │ │ │ │ │ └── android │ │ │ │ │ └── testable │ │ │ │ │ └── repository │ │ │ │ │ ├── MainActivity.kt │ │ │ │ │ ├── PostAdapter.kt │ │ │ │ │ ├── PostViewModel.kt │ │ │ │ │ ├── RepositoryApplication.kt │ │ │ │ │ ├── api │ │ │ │ │ ├── Post.kt │ │ │ │ │ └── PostService.kt │ │ │ │ │ ├── db │ │ │ │ │ ├── PostDao.kt │ │ │ │ │ ├── PostDatabase.kt │ │ │ │ │ └── PostEntity.kt │ │ │ │ │ └── repository │ │ │ │ │ ├── PostMapper.kt │ │ │ │ │ ├── PostRepository.kt │ │ │ │ │ ├── PostRepositoryImpl.kt │ │ │ │ │ ├── Result.kt │ │ │ │ │ └── UiPost.kt │ │ │ └── res │ │ │ │ ├── drawable-v24 │ │ │ │ └── ic_launcher_foreground.xml │ │ │ │ ├── drawable │ │ │ │ └── ic_launcher_background.xml │ │ │ │ ├── layout │ │ │ │ ├── activity_main.xml │ │ │ │ └── view_post_row.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 │ │ │ │ └── android │ │ │ │ └── testable │ │ │ │ └── repository │ │ │ │ ├── PostViewModelTest.kt │ │ │ │ └── repository │ │ │ │ └── PostRepositoryImplTest.kt │ │ │ └── resources │ │ │ └── mockito-extensions │ │ │ └── org.mockito.plugins.MockMaker │ ├── build.gradle │ ├── gradle.properties │ ├── gradle │ │ └── wrapper │ │ │ ├── gradle-wrapper.jar │ │ │ └── gradle-wrapper.properties │ ├── gradlew │ ├── gradlew.bat │ └── settings.gradle ├── Exercise11.03 │ ├── .gitignore │ ├── .idea │ │ ├── .name │ │ ├── codeStyles │ │ │ ├── Project.xml │ │ │ └── codeStyleConfig.xml │ │ ├── gradle.xml │ │ ├── misc.xml │ │ ├── runConfigurations.xml │ │ └── vcs.xml │ ├── app │ │ ├── .gitignore │ │ ├── build.gradle │ │ ├── proguard-rules.pro │ │ └── src │ │ │ ├── androidTest │ │ │ └── java │ │ │ │ └── com │ │ │ │ └── android │ │ │ │ └── testable │ │ │ │ └── sharedpreferences │ │ │ │ └── ExampleInstrumentedTest.kt │ │ │ ├── main │ │ │ ├── AndroidManifest.xml │ │ │ ├── java │ │ │ │ └── com │ │ │ │ │ └── android │ │ │ │ │ └── testable │ │ │ │ │ └── sharedpreferences │ │ │ │ │ ├── MainActivity.kt │ │ │ │ │ ├── PreferenceApplication.kt │ │ │ │ │ ├── PreferenceViewModel.kt │ │ │ │ │ └── PreferenceWrapper.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 │ │ │ │ └── android │ │ │ │ └── testable │ │ │ │ └── sharedpreferences │ │ │ │ ├── PreferenceViewModelTest.kt │ │ │ │ └── PreferenceWrapperTest.kt │ │ │ └── resources │ │ │ └── mockito-extensions │ │ │ └── org.mockito.plugins.MockMaker │ ├── build.gradle │ ├── gradle.properties │ ├── gradle │ │ └── wrapper │ │ │ ├── gradle-wrapper.jar │ │ │ └── gradle-wrapper.properties │ ├── gradlew │ ├── gradlew.bat │ └── settings.gradle ├── Exercise11.04 │ ├── .gitignore │ ├── .idea │ │ ├── .name │ │ ├── codeStyles │ │ │ ├── Project.xml │ │ │ └── codeStyleConfig.xml │ │ ├── gradle.xml │ │ ├── misc.xml │ │ ├── runConfigurations.xml │ │ └── vcs.xml │ ├── app │ │ ├── .gitignore │ │ ├── build.gradle │ │ ├── proguard-rules.pro │ │ └── src │ │ │ ├── androidTest │ │ │ └── java │ │ │ │ └── com │ │ │ │ └── android │ │ │ │ └── testable │ │ │ │ └── preferencefragments │ │ │ │ └── ExampleInstrumentedTest.kt │ │ │ ├── main │ │ │ ├── AndroidManifest.xml │ │ │ ├── java │ │ │ │ └── com │ │ │ │ │ └── android │ │ │ │ │ └── testable │ │ │ │ │ └── preferencefragments │ │ │ │ │ ├── MainActivity.kt │ │ │ │ │ ├── MorePreferenceFragment.kt │ │ │ │ │ └── SettingsPreferenceFragment.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 │ │ │ │ ├── preference_keys.xml │ │ │ │ ├── strings.xml │ │ │ │ └── styles.xml │ │ │ │ └── xml │ │ │ │ ├── preferences_more.xml │ │ │ │ └── preferences_settings.xml │ │ │ └── test │ │ │ └── java │ │ │ └── com │ │ │ └── android │ │ │ └── testable │ │ │ └── preferencefragments │ │ │ └── ExampleUnitTest.kt │ ├── build.gradle │ ├── gradle.properties │ ├── gradle │ │ └── wrapper │ │ │ ├── gradle-wrapper.jar │ │ │ └── gradle-wrapper.properties │ ├── gradlew │ ├── gradlew.bat │ └── settings.gradle ├── Exercise11.05 │ ├── .gitignore │ ├── .idea │ │ ├── .name │ │ ├── codeStyles │ │ │ ├── Project.xml │ │ │ └── codeStyleConfig.xml │ │ ├── gradle.xml │ │ ├── misc.xml │ │ ├── runConfigurations.xml │ │ └── vcs.xml │ ├── app │ │ ├── .gitignore │ │ ├── build.gradle │ │ ├── proguard-rules.pro │ │ └── src │ │ │ ├── androidTest │ │ │ └── java │ │ │ │ └── com │ │ │ │ └── android │ │ │ │ └── testable │ │ │ │ └── files │ │ │ │ └── ExampleInstrumentedTest.kt │ │ │ ├── main │ │ │ ├── AndroidManifest.xml │ │ │ ├── assets │ │ │ │ └── my-app-file.txt │ │ │ ├── java │ │ │ │ └── com │ │ │ │ │ └── android │ │ │ │ │ └── testable │ │ │ │ │ └── files │ │ │ │ │ ├── AssetFileManager.kt │ │ │ │ │ ├── FileToUriMapper.kt │ │ │ │ │ ├── MainActivity.kt │ │ │ │ │ └── ProviderFileManager.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_provider_paths.xml │ │ │ └── test │ │ │ ├── java │ │ │ └── com │ │ │ │ └── android │ │ │ │ └── testable │ │ │ │ └── files │ │ │ │ ├── AssetFileManagerTest.kt │ │ │ │ └── ProviderFileManagerTest.kt │ │ │ └── resources │ │ │ └── mockito-extensions │ │ │ └── org.mockito.plugins.MockMaker │ ├── build.gradle │ ├── gradle.properties │ ├── gradle │ │ └── wrapper │ │ │ ├── gradle-wrapper.jar │ │ │ └── gradle-wrapper.properties │ ├── gradlew │ ├── gradlew.bat │ └── settings.gradle └── Exercise11.06 │ ├── .gitignore │ ├── .idea │ ├── .name │ ├── codeStyles │ │ ├── Project.xml │ │ └── codeStyleConfig.xml │ ├── gradle.xml │ ├── misc.xml │ ├── runConfigurations.xml │ └── vcs.xml │ ├── app │ ├── .gitignore │ ├── build.gradle │ ├── proguard-rules.pro │ └── src │ │ ├── androidTest │ │ └── java │ │ │ └── com │ │ │ └── android │ │ │ └── testable │ │ │ └── camera │ │ │ └── ExampleInstrumentedTest.kt │ │ ├── main │ │ ├── AndroidManifest.xml │ │ ├── java │ │ │ └── com │ │ │ │ └── android │ │ │ │ └── testable │ │ │ │ └── camera │ │ │ │ ├── FileHelper.kt │ │ │ │ ├── FileInfo.kt │ │ │ │ ├── MainActivity.kt │ │ │ │ └── ProviderFileManager.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_provider_paths.xml │ │ └── test │ │ ├── java │ │ └── com │ │ │ └── android │ │ │ └── testable │ │ │ └── camera │ │ │ └── ProviderFileManagerTest.kt │ │ └── resources │ │ └── mockito-extensions │ │ └── org.mockito.plugins.MockMaker │ ├── build.gradle │ ├── gradle.properties │ ├── gradle │ └── wrapper │ │ ├── gradle-wrapper.jar │ │ └── gradle-wrapper.properties │ ├── gradlew │ ├── gradlew.bat │ └── settings.gradle ├── Chapter12 ├── Activity12.01 │ ├── .gitignore │ ├── .idea │ │ ├── .name │ │ ├── codeStyles │ │ │ ├── Project.xml │ │ │ └── codeStyleConfig.xml │ │ ├── gradle.xml │ │ ├── misc.xml │ │ ├── runConfigurations.xml │ │ └── vcs.xml │ ├── app │ │ ├── .gitignore │ │ ├── build.gradle │ │ ├── proguard-rules.pro │ │ └── src │ │ │ ├── androidTest │ │ │ └── java │ │ │ │ └── com │ │ │ │ └── android │ │ │ │ └── testable │ │ │ │ └── myapplication │ │ │ │ ├── DummyRepository.kt │ │ │ │ ├── MainActivityTest.kt │ │ │ │ ├── MyTestRunner.kt │ │ │ │ ├── TestApplication.kt │ │ │ │ └── TestRepositoryModule.kt │ │ │ ├── main │ │ │ ├── AndroidManifest.xml │ │ │ ├── java │ │ │ │ └── com │ │ │ │ │ └── android │ │ │ │ │ └── testable │ │ │ │ │ └── myapplication │ │ │ │ │ ├── ApplicationComponent.kt │ │ │ │ │ ├── MainActivity.kt │ │ │ │ │ ├── MainActivityModule.kt │ │ │ │ │ ├── MainActivitySubcomponent.kt │ │ │ │ │ ├── MyApplication.kt │ │ │ │ │ ├── NetworkModule.kt │ │ │ │ │ ├── PostAdapter.kt │ │ │ │ │ ├── PostViewModel.kt │ │ │ │ │ ├── RepositoryModule.kt │ │ │ │ │ ├── api │ │ │ │ │ ├── Post.kt │ │ │ │ │ └── PostService.kt │ │ │ │ │ └── repository │ │ │ │ │ ├── PostRepository.kt │ │ │ │ │ └── PostRepositoryImpl.kt │ │ │ └── res │ │ │ │ ├── drawable-v24 │ │ │ │ └── ic_launcher_foreground.xml │ │ │ │ ├── drawable │ │ │ │ └── ic_launcher_background.xml │ │ │ │ ├── layout │ │ │ │ ├── activity_main.xml │ │ │ │ └── view_post_row.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 │ │ │ └── android │ │ │ └── testable │ │ │ └── myapplication │ │ │ ├── PostViewModelTest.kt │ │ │ └── repository │ │ │ └── PostRepositoryImplTest.kt │ ├── build.gradle │ ├── gradle.properties │ ├── gradle │ │ └── wrapper │ │ │ ├── gradle-wrapper.jar │ │ │ └── gradle-wrapper.properties │ ├── gradlew │ ├── gradlew.bat │ └── settings.gradle ├── Activity12.02 │ ├── .gitignore │ ├── .idea │ │ ├── .name │ │ ├── codeStyles │ │ │ ├── Project.xml │ │ │ └── codeStyleConfig.xml │ │ ├── gradle.xml │ │ ├── misc.xml │ │ ├── runConfigurations.xml │ │ └── vcs.xml │ ├── app │ │ ├── .gitignore │ │ ├── build.gradle │ │ ├── proguard-rules.pro │ │ └── src │ │ │ ├── androidTest │ │ │ └── java │ │ │ │ └── com │ │ │ │ └── android │ │ │ │ └── testable │ │ │ │ └── myapplication │ │ │ │ ├── DummyRepository.kt │ │ │ │ ├── MainActivityTest.kt │ │ │ │ ├── MyTestRunner.kt │ │ │ │ └── TestApplication.kt │ │ │ ├── main │ │ │ ├── AndroidManifest.xml │ │ │ ├── java │ │ │ │ └── com │ │ │ │ │ └── android │ │ │ │ │ └── testable │ │ │ │ │ └── myapplication │ │ │ │ │ ├── MainActivity.kt │ │ │ │ │ ├── MyApplication.kt │ │ │ │ │ ├── PostAdapter.kt │ │ │ │ │ ├── PostViewModel.kt │ │ │ │ │ ├── api │ │ │ │ │ ├── Post.kt │ │ │ │ │ └── PostService.kt │ │ │ │ │ └── repository │ │ │ │ │ ├── PostRepository.kt │ │ │ │ │ └── PostRepositoryImpl.kt │ │ │ └── res │ │ │ │ ├── drawable-v24 │ │ │ │ └── ic_launcher_foreground.xml │ │ │ │ ├── drawable │ │ │ │ └── ic_launcher_background.xml │ │ │ │ ├── layout │ │ │ │ ├── activity_main.xml │ │ │ │ └── view_post_row.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 │ │ │ └── android │ │ │ └── testable │ │ │ └── myapplication │ │ │ ├── PostViewModelTest.kt │ │ │ └── repository │ │ │ └── PostRepositoryImplTest.kt │ ├── build.gradle │ ├── gradle.properties │ ├── gradle │ │ └── wrapper │ │ │ ├── gradle-wrapper.jar │ │ │ └── gradle-wrapper.properties │ ├── gradlew │ ├── gradlew.bat │ └── settings.gradle ├── Exercise12.01 │ ├── .gitignore │ ├── .idea │ │ ├── .name │ │ ├── codeStyles │ │ │ ├── Project.xml │ │ │ └── codeStyleConfig.xml │ │ ├── gradle.xml │ │ ├── misc.xml │ │ ├── runConfigurations.xml │ │ └── vcs.xml │ ├── app │ │ ├── .gitignore │ │ ├── build.gradle │ │ ├── proguard-rules.pro │ │ └── src │ │ │ ├── androidTest │ │ │ └── java │ │ │ │ └── com │ │ │ │ └── android │ │ │ │ └── testable │ │ │ │ └── randomapplication │ │ │ │ └── ExampleInstrumentedTest.kt │ │ │ ├── main │ │ │ ├── AndroidManifest.xml │ │ │ ├── java │ │ │ │ └── com │ │ │ │ │ └── android │ │ │ │ │ └── testable │ │ │ │ │ └── randomapplication │ │ │ │ │ ├── ApplicationContainer.kt │ │ │ │ │ ├── MainActivity.kt │ │ │ │ │ ├── MainContainer.kt │ │ │ │ │ ├── MainViewModel.kt │ │ │ │ │ ├── NumberRepository.kt │ │ │ │ │ ├── NumberRepositoryImpl.kt │ │ │ │ │ └── RandomApplication.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 │ │ │ └── android │ │ │ └── testable │ │ │ └── randomapplication │ │ │ └── ExampleUnitTest.kt │ ├── build.gradle │ ├── gradle.properties │ ├── gradle │ │ └── wrapper │ │ │ ├── gradle-wrapper.jar │ │ │ └── gradle-wrapper.properties │ ├── gradlew │ ├── gradlew.bat │ └── settings.gradle ├── Exercise12.02 │ ├── .gitignore │ ├── .idea │ │ ├── .name │ │ ├── codeStyles │ │ │ ├── Project.xml │ │ │ └── codeStyleConfig.xml │ │ ├── gradle.xml │ │ ├── misc.xml │ │ ├── runConfigurations.xml │ │ └── vcs.xml │ ├── app │ │ ├── .gitignore │ │ ├── build.gradle │ │ ├── proguard-rules.pro │ │ └── src │ │ │ ├── androidTest │ │ │ └── java │ │ │ │ └── com │ │ │ │ └── android │ │ │ │ └── testable │ │ │ │ └── randomapplication │ │ │ │ └── ExampleInstrumentedTest.kt │ │ │ ├── main │ │ │ ├── AndroidManifest.xml │ │ │ ├── java │ │ │ │ └── com │ │ │ │ │ └── android │ │ │ │ │ └── testable │ │ │ │ │ └── randomapplication │ │ │ │ │ ├── ApplicationComponent.kt │ │ │ │ │ ├── ApplicationModule.kt │ │ │ │ │ ├── MainActivity.kt │ │ │ │ │ ├── MainModule.kt │ │ │ │ │ ├── MainScope.kt │ │ │ │ │ ├── MainSubcomponent.kt │ │ │ │ │ ├── MainViewModel.kt │ │ │ │ │ ├── NumberRepository.kt │ │ │ │ │ ├── NumberRepositoryImpl.kt │ │ │ │ │ └── RandomApplication.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 │ │ │ └── android │ │ │ └── testable │ │ │ └── randomapplication │ │ │ └── ExampleUnitTest.kt │ ├── build.gradle │ ├── gradle.properties │ ├── gradle │ │ └── wrapper │ │ │ ├── gradle-wrapper.jar │ │ │ └── gradle-wrapper.properties │ ├── gradlew │ ├── gradlew.bat │ └── settings.gradle ├── Exercise12.03 │ ├── .gitignore │ ├── .idea │ │ ├── .name │ │ ├── codeStyles │ │ │ ├── Project.xml │ │ │ └── codeStyleConfig.xml │ │ ├── gradle.xml │ │ ├── misc.xml │ │ ├── runConfigurations.xml │ │ └── vcs.xml │ ├── app │ │ ├── .gitignore │ │ ├── build.gradle │ │ ├── proguard-rules.pro │ │ └── src │ │ │ ├── androidTest │ │ │ └── java │ │ │ │ └── com │ │ │ │ └── android │ │ │ │ └── testable │ │ │ │ └── randomapplication │ │ │ │ └── ExampleInstrumentedTest.kt │ │ │ ├── main │ │ │ ├── AndroidManifest.xml │ │ │ ├── java │ │ │ │ └── com │ │ │ │ │ └── android │ │ │ │ │ └── testable │ │ │ │ │ └── randomapplication │ │ │ │ │ ├── ApplicationComponent.kt │ │ │ │ │ ├── ApplicationModule.kt │ │ │ │ │ ├── MainActivity.kt │ │ │ │ │ ├── MainModule.kt │ │ │ │ │ ├── MainProviderModule.kt │ │ │ │ │ ├── MainScope.kt │ │ │ │ │ ├── MainViewModel.kt │ │ │ │ │ ├── NumberRepository.kt │ │ │ │ │ ├── NumberRepositoryImpl.kt │ │ │ │ │ └── RandomApplication.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 │ │ │ └── android │ │ │ └── testable │ │ │ └── randomapplication │ │ │ └── ExampleUnitTest.kt │ ├── build.gradle │ ├── gradle.properties │ ├── gradle │ │ └── wrapper │ │ │ ├── gradle-wrapper.jar │ │ │ └── gradle-wrapper.properties │ ├── gradlew │ ├── gradlew.bat │ └── settings.gradle └── Exercise12.04 │ ├── .gitignore │ ├── .idea │ ├── .name │ ├── codeStyles │ │ ├── Project.xml │ │ └── codeStyleConfig.xml │ ├── gradle.xml │ ├── misc.xml │ ├── runConfigurations.xml │ └── vcs.xml │ ├── app │ ├── .gitignore │ ├── build.gradle │ ├── proguard-rules.pro │ └── src │ │ ├── androidTest │ │ └── java │ │ │ └── com │ │ │ └── android │ │ │ └── testable │ │ │ └── randomapplication │ │ │ └── ExampleInstrumentedTest.kt │ │ ├── main │ │ ├── AndroidManifest.xml │ │ ├── java │ │ │ └── com │ │ │ │ └── android │ │ │ │ └── testable │ │ │ │ └── randomapplication │ │ │ │ ├── MainActivity.kt │ │ │ │ ├── MainViewModel.kt │ │ │ │ ├── NumberRepository.kt │ │ │ │ ├── NumberRepositoryImpl.kt │ │ │ │ └── RandomApplication.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 │ │ └── android │ │ └── testable │ │ └── randomapplication │ │ └── ExampleUnitTest.kt │ ├── build.gradle │ ├── gradle.properties │ ├── gradle │ └── wrapper │ │ ├── gradle-wrapper.jar │ │ └── gradle-wrapper.properties │ ├── gradlew │ ├── gradlew.bat │ └── settings.gradle ├── Chapter13 ├── Activity13.01 │ ├── .gitignore │ ├── app │ │ ├── .gitignore │ │ ├── build.gradle │ │ ├── proguard-rules.pro │ │ └── src │ │ │ ├── androidTest │ │ │ └── java │ │ │ │ └── com │ │ │ │ └── example │ │ │ │ └── tvguide │ │ │ │ └── ExampleInstrumentedTest.kt │ │ │ ├── main │ │ │ ├── AndroidManifest.xml │ │ │ ├── ic_launcher-playstore.png │ │ │ ├── java │ │ │ │ └── com │ │ │ │ │ └── example │ │ │ │ │ └── tvguide │ │ │ │ │ ├── DetailsActivity.kt │ │ │ │ │ ├── MainActivity.kt │ │ │ │ │ ├── TVApplication.kt │ │ │ │ │ ├── TVShowAdapter.kt │ │ │ │ │ ├── TVShowRepository.kt │ │ │ │ │ ├── TVShowViewModel.kt │ │ │ │ │ ├── api │ │ │ │ │ └── TelevisionService.kt │ │ │ │ │ └── model │ │ │ │ │ ├── TVResponse.kt │ │ │ │ │ └── TVShow.kt │ │ │ └── res │ │ │ │ ├── drawable │ │ │ │ └── ic_launcher_foreground.xml │ │ │ │ ├── layout │ │ │ │ ├── activity_details.xml │ │ │ │ ├── activity_main.xml │ │ │ │ └── view_tv_show_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 │ │ │ │ ├── dimens.xml │ │ │ │ ├── ic_launcher_background.xml │ │ │ │ ├── strings.xml │ │ │ │ └── styles.xml │ │ │ └── test │ │ │ ├── java │ │ │ └── com │ │ │ │ └── example │ │ │ │ └── tvguide │ │ │ │ ├── LiveDataUtil.kt │ │ │ │ ├── TVShowRepositoryTest.kt │ │ │ │ └── TVShowViewModelTest.kt │ │ │ └── resources │ │ │ └── mockito-extensions │ │ │ └── org.mockito.plugins.MockMaker │ ├── build.gradle │ ├── gradle.properties │ ├── gradle │ │ └── wrapper │ │ │ ├── gradle-wrapper.jar │ │ │ └── gradle-wrapper.properties │ ├── gradlew │ ├── gradlew.bat │ └── settings.gradle ├── Exercise13.01 │ ├── .gitignore │ ├── app │ │ ├── .gitignore │ │ ├── build.gradle │ │ ├── proguard-rules.pro │ │ └── src │ │ │ ├── androidTest │ │ │ └── java │ │ │ │ └── com │ │ │ │ └── example │ │ │ │ └── popularmovies │ │ │ │ └── ExampleInstrumentedTest.kt │ │ │ ├── main │ │ │ ├── AndroidManifest.xml │ │ │ ├── ic_launcher-playstore.png │ │ │ ├── java │ │ │ │ └── com │ │ │ │ │ └── example │ │ │ │ │ └── popularmovies │ │ │ │ │ ├── DetailsActivity.kt │ │ │ │ │ ├── MainActivity.kt │ │ │ │ │ ├── MovieAdapter.kt │ │ │ │ │ ├── MovieApplication.kt │ │ │ │ │ ├── MovieRepository.kt │ │ │ │ │ ├── MovieViewModel.kt │ │ │ │ │ ├── api │ │ │ │ │ └── MovieService.kt │ │ │ │ │ └── model │ │ │ │ │ ├── Movie.kt │ │ │ │ │ └── PopularMoviesResponse.kt │ │ │ └── res │ │ │ │ ├── drawable │ │ │ │ └── ic_launcher_foreground.xml │ │ │ │ ├── layout │ │ │ │ ├── activity_details.xml │ │ │ │ ├── activity_main.xml │ │ │ │ └── view_movie_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 │ │ │ │ ├── dimens.xml │ │ │ │ ├── ic_launcher_background.xml │ │ │ │ ├── strings.xml │ │ │ │ └── styles.xml │ │ │ └── test │ │ │ ├── java │ │ │ └── com │ │ │ │ └── example │ │ │ │ └── popularmovies │ │ │ │ ├── LiveDataUtil.kt │ │ │ │ ├── MovieRepositoryTest.kt │ │ │ │ ├── MovieViewModelTest.kt │ │ │ │ └── RxImmediateSchedulerRule.kt │ │ │ └── resources │ │ │ └── mockito-extensions │ │ │ └── org.mockito.plugins.MockMaker │ ├── build.gradle │ ├── gradle.properties │ ├── gradle │ │ └── wrapper │ │ │ ├── gradle-wrapper.jar │ │ │ └── gradle-wrapper.properties │ ├── gradlew │ ├── gradlew.bat │ └── settings.gradle ├── Exercise13.02 │ ├── .gitignore │ ├── app │ │ ├── .gitignore │ │ ├── build.gradle │ │ ├── proguard-rules.pro │ │ └── src │ │ │ ├── androidTest │ │ │ └── java │ │ │ │ └── com │ │ │ │ └── example │ │ │ │ └── popularmovies │ │ │ │ └── ExampleInstrumentedTest.kt │ │ │ ├── main │ │ │ ├── AndroidManifest.xml │ │ │ ├── ic_launcher-playstore.png │ │ │ ├── java │ │ │ │ └── com │ │ │ │ │ └── example │ │ │ │ │ └── popularmovies │ │ │ │ │ ├── DetailsActivity.kt │ │ │ │ │ ├── MainActivity.kt │ │ │ │ │ ├── MovieAdapter.kt │ │ │ │ │ ├── MovieApplication.kt │ │ │ │ │ ├── MovieRepository.kt │ │ │ │ │ ├── MovieViewModel.kt │ │ │ │ │ ├── api │ │ │ │ │ └── MovieService.kt │ │ │ │ │ └── model │ │ │ │ │ ├── Movie.kt │ │ │ │ │ └── PopularMoviesResponse.kt │ │ │ └── res │ │ │ │ ├── drawable │ │ │ │ └── ic_launcher_foreground.xml │ │ │ │ ├── layout │ │ │ │ ├── activity_details.xml │ │ │ │ ├── activity_main.xml │ │ │ │ └── view_movie_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 │ │ │ │ ├── dimens.xml │ │ │ │ ├── ic_launcher_background.xml │ │ │ │ ├── strings.xml │ │ │ │ └── styles.xml │ │ │ └── test │ │ │ ├── java │ │ │ └── com │ │ │ │ └── example │ │ │ │ └── popularmovies │ │ │ │ ├── LiveDataUtil.kt │ │ │ │ ├── MovieRepositoryTest.kt │ │ │ │ ├── MovieViewModelTest.kt │ │ │ │ └── RxImmediateSchedulerRule.kt │ │ │ └── resources │ │ │ └── mockito-extensions │ │ │ └── org.mockito.plugins.MockMaker │ ├── build.gradle │ ├── gradle.properties │ ├── gradle │ │ └── wrapper │ │ │ ├── gradle-wrapper.jar │ │ │ └── gradle-wrapper.properties │ ├── gradlew │ ├── gradlew.bat │ └── settings.gradle ├── Exercise13.03 │ ├── .gitignore │ ├── app │ │ ├── .gitignore │ │ ├── build.gradle │ │ ├── proguard-rules.pro │ │ └── src │ │ │ ├── androidTest │ │ │ └── java │ │ │ │ └── com │ │ │ │ └── example │ │ │ │ └── popularmovies │ │ │ │ └── ExampleInstrumentedTest.kt │ │ │ ├── main │ │ │ ├── AndroidManifest.xml │ │ │ ├── ic_launcher-playstore.png │ │ │ ├── java │ │ │ │ └── com │ │ │ │ │ └── example │ │ │ │ │ └── popularmovies │ │ │ │ │ ├── DetailsActivity.kt │ │ │ │ │ ├── MainActivity.kt │ │ │ │ │ ├── MovieAdapter.kt │ │ │ │ │ ├── MovieApplication.kt │ │ │ │ │ ├── MovieRepository.kt │ │ │ │ │ ├── MovieViewModel.kt │ │ │ │ │ ├── api │ │ │ │ │ └── MovieService.kt │ │ │ │ │ └── model │ │ │ │ │ ├── Movie.kt │ │ │ │ │ └── PopularMoviesResponse.kt │ │ │ └── res │ │ │ │ ├── drawable │ │ │ │ └── ic_launcher_foreground.xml │ │ │ │ ├── layout │ │ │ │ ├── activity_details.xml │ │ │ │ ├── activity_main.xml │ │ │ │ └── view_movie_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 │ │ │ │ ├── dimens.xml │ │ │ │ ├── ic_launcher_background.xml │ │ │ │ ├── strings.xml │ │ │ │ └── styles.xml │ │ │ └── test │ │ │ ├── java │ │ │ └── com │ │ │ │ └── example │ │ │ │ └── popularmovies │ │ │ │ ├── LiveDataUtil.kt │ │ │ │ ├── MovieRepositoryTest.kt │ │ │ │ └── MovieViewModelTest.kt │ │ │ └── resources │ │ │ └── mockito-extensions │ │ │ └── org.mockito.plugins.MockMaker │ ├── build.gradle │ ├── gradle.properties │ ├── gradle │ │ └── wrapper │ │ │ ├── gradle-wrapper.jar │ │ │ └── gradle-wrapper.properties │ ├── gradlew │ ├── gradlew.bat │ └── settings.gradle └── Exercise13.04 │ ├── .gitignore │ ├── app │ ├── .gitignore │ ├── build.gradle │ ├── proguard-rules.pro │ └── src │ │ ├── androidTest │ │ └── java │ │ │ └── com │ │ │ └── example │ │ │ └── popularmovies │ │ │ └── ExampleInstrumentedTest.kt │ │ ├── main │ │ ├── AndroidManifest.xml │ │ ├── ic_launcher-playstore.png │ │ ├── java │ │ │ └── com │ │ │ │ └── example │ │ │ │ └── popularmovies │ │ │ │ ├── DetailsActivity.kt │ │ │ │ ├── MainActivity.kt │ │ │ │ ├── MovieAdapter.kt │ │ │ │ ├── MovieApplication.kt │ │ │ │ ├── MovieRepository.kt │ │ │ │ ├── MovieViewModel.kt │ │ │ │ ├── api │ │ │ │ └── MovieService.kt │ │ │ │ └── model │ │ │ │ ├── Movie.kt │ │ │ │ └── PopularMoviesResponse.kt │ │ └── res │ │ │ ├── drawable │ │ │ └── ic_launcher_foreground.xml │ │ │ ├── layout │ │ │ ├── activity_details.xml │ │ │ ├── activity_main.xml │ │ │ └── view_movie_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 │ │ │ ├── dimens.xml │ │ │ ├── ic_launcher_background.xml │ │ │ ├── strings.xml │ │ │ └── styles.xml │ │ └── test │ │ ├── java │ │ └── com │ │ │ └── example │ │ │ └── popularmovies │ │ │ ├── LiveDataUtil.kt │ │ │ ├── MovieRepositoryTest.kt │ │ │ └── MovieViewModelTest.kt │ │ └── resources │ │ └── mockito-extensions │ │ └── org.mockito.plugins.MockMaker │ ├── build.gradle │ ├── gradle.properties │ ├── gradle │ └── wrapper │ │ ├── gradle-wrapper.jar │ │ └── gradle-wrapper.properties │ ├── gradlew │ ├── gradlew.bat │ └── settings.gradle ├── Chapter14 ├── Activity14.01 │ ├── .gitignore │ ├── app │ │ ├── .gitignore │ │ ├── build.gradle │ │ ├── proguard-rules.pro │ │ └── src │ │ │ ├── androidTest │ │ │ └── java │ │ │ │ └── com │ │ │ │ └── example │ │ │ │ └── tvguide │ │ │ │ ├── ExampleInstrumentedTest.kt │ │ │ │ └── TVShowWorkerTest.kt │ │ │ ├── main │ │ │ ├── AndroidManifest.xml │ │ │ ├── ic_launcher-playstore.png │ │ │ ├── java │ │ │ │ └── com │ │ │ │ │ └── example │ │ │ │ │ └── tvguide │ │ │ │ │ ├── DetailsActivity.kt │ │ │ │ │ ├── MainActivity.kt │ │ │ │ │ ├── TVApplication.kt │ │ │ │ │ ├── TVShowAdapter.kt │ │ │ │ │ ├── TVShowRepository.kt │ │ │ │ │ ├── TVShowViewModel.kt │ │ │ │ │ ├── TVShowWorker.kt │ │ │ │ │ ├── api │ │ │ │ │ └── TelevisionService.kt │ │ │ │ │ ├── binding │ │ │ │ │ └── RecyclerViewBinding.kt │ │ │ │ │ ├── database │ │ │ │ │ ├── TVDao.kt │ │ │ │ │ └── TVDatabase.kt │ │ │ │ │ └── model │ │ │ │ │ ├── TVResponse.kt │ │ │ │ │ └── TVShow.kt │ │ │ └── res │ │ │ │ ├── drawable │ │ │ │ └── ic_launcher_foreground.xml │ │ │ │ ├── layout │ │ │ │ ├── activity_details.xml │ │ │ │ ├── activity_main.xml │ │ │ │ └── view_tv_show_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 │ │ │ │ ├── dimens.xml │ │ │ │ ├── ic_launcher_background.xml │ │ │ │ ├── strings.xml │ │ │ │ └── styles.xml │ │ │ └── test │ │ │ ├── java │ │ │ └── com │ │ │ │ └── example │ │ │ │ └── tvguide │ │ │ │ ├── LiveDataUtil.kt │ │ │ │ ├── TVShowRepositoryTest.kt │ │ │ │ └── TVShowViewModelTest.kt │ │ │ └── resources │ │ │ └── mockito-extensions │ │ │ └── org.mockito.plugins.MockMaker │ ├── build.gradle │ ├── gradle.properties │ ├── gradle │ │ └── wrapper │ │ │ ├── gradle-wrapper.jar │ │ │ └── gradle-wrapper.properties │ ├── gradlew │ ├── gradlew.bat │ └── settings.gradle ├── Exercise14.01 │ ├── .gitignore │ ├── app │ │ ├── .gitignore │ │ ├── build.gradle │ │ ├── proguard-rules.pro │ │ └── src │ │ │ ├── androidTest │ │ │ └── java │ │ │ │ └── com │ │ │ │ └── example │ │ │ │ └── popularmovies │ │ │ │ └── ExampleInstrumentedTest.kt │ │ │ ├── main │ │ │ ├── AndroidManifest.xml │ │ │ ├── ic_launcher-playstore.png │ │ │ ├── java │ │ │ │ └── com │ │ │ │ │ └── example │ │ │ │ │ └── popularmovies │ │ │ │ │ ├── DetailsActivity.kt │ │ │ │ │ ├── MainActivity.kt │ │ │ │ │ ├── MovieAdapter.kt │ │ │ │ │ ├── MovieApplication.kt │ │ │ │ │ ├── MovieRepository.kt │ │ │ │ │ ├── MovieViewModel.kt │ │ │ │ │ ├── api │ │ │ │ │ └── MovieService.kt │ │ │ │ │ ├── binding │ │ │ │ │ └── RecyclerViewBinding.kt │ │ │ │ │ └── model │ │ │ │ │ ├── Movie.kt │ │ │ │ │ └── PopularMoviesResponse.kt │ │ │ └── res │ │ │ │ ├── drawable │ │ │ │ └── ic_launcher_foreground.xml │ │ │ │ ├── layout │ │ │ │ ├── activity_details.xml │ │ │ │ ├── activity_main.xml │ │ │ │ └── view_movie_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 │ │ │ │ ├── dimens.xml │ │ │ │ ├── ic_launcher_background.xml │ │ │ │ ├── strings.xml │ │ │ │ └── styles.xml │ │ │ └── test │ │ │ ├── java │ │ │ └── com │ │ │ │ └── example │ │ │ │ └── popularmovies │ │ │ │ ├── LiveDataUtil.kt │ │ │ │ ├── MovieRepositoryTest.kt │ │ │ │ └── MovieViewModelTest.kt │ │ │ └── resources │ │ │ └── mockito-extensions │ │ │ └── org.mockito.plugins.MockMaker │ ├── build.gradle │ ├── gradle.properties │ ├── gradle │ │ └── wrapper │ │ │ ├── gradle-wrapper.jar │ │ │ └── gradle-wrapper.properties │ ├── gradlew │ ├── gradlew.bat │ └── settings.gradle ├── Exercise14.02 │ ├── .gitignore │ ├── app │ │ ├── .gitignore │ │ ├── build.gradle │ │ ├── proguard-rules.pro │ │ └── src │ │ │ ├── androidTest │ │ │ └── java │ │ │ │ └── com │ │ │ │ └── example │ │ │ │ └── popularmovies │ │ │ │ └── ExampleInstrumentedTest.kt │ │ │ ├── main │ │ │ ├── AndroidManifest.xml │ │ │ ├── ic_launcher-playstore.png │ │ │ ├── java │ │ │ │ └── com │ │ │ │ │ └── example │ │ │ │ │ └── popularmovies │ │ │ │ │ ├── DetailsActivity.kt │ │ │ │ │ ├── MainActivity.kt │ │ │ │ │ ├── MovieAdapter.kt │ │ │ │ │ ├── MovieApplication.kt │ │ │ │ │ ├── MovieRepository.kt │ │ │ │ │ ├── MovieViewModel.kt │ │ │ │ │ ├── api │ │ │ │ │ └── MovieService.kt │ │ │ │ │ ├── binding │ │ │ │ │ └── RecyclerViewBinding.kt │ │ │ │ │ ├── database │ │ │ │ │ ├── MovieDao.kt │ │ │ │ │ └── MovieDatabase.kt │ │ │ │ │ └── model │ │ │ │ │ ├── Movie.kt │ │ │ │ │ └── PopularMoviesResponse.kt │ │ │ └── res │ │ │ │ ├── drawable │ │ │ │ └── ic_launcher_foreground.xml │ │ │ │ ├── layout │ │ │ │ ├── activity_details.xml │ │ │ │ ├── activity_main.xml │ │ │ │ └── view_movie_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 │ │ │ │ ├── dimens.xml │ │ │ │ ├── ic_launcher_background.xml │ │ │ │ ├── strings.xml │ │ │ │ └── styles.xml │ │ │ └── test │ │ │ ├── java │ │ │ └── com │ │ │ │ └── example │ │ │ │ └── popularmovies │ │ │ │ ├── LiveDataUtil.kt │ │ │ │ ├── MovieRepositoryTest.kt │ │ │ │ └── MovieViewModelTest.kt │ │ │ └── resources │ │ │ └── mockito-extensions │ │ │ └── org.mockito.plugins.MockMaker │ ├── build.gradle │ ├── gradle.properties │ ├── gradle │ │ └── wrapper │ │ │ ├── gradle-wrapper.jar │ │ │ └── gradle-wrapper.properties │ ├── gradlew │ ├── gradlew.bat │ └── settings.gradle └── Exercise14.03 │ ├── .gitignore │ ├── app │ ├── .gitignore │ ├── build.gradle │ ├── proguard-rules.pro │ └── src │ │ ├── androidTest │ │ └── java │ │ │ └── com │ │ │ └── example │ │ │ └── popularmovies │ │ │ ├── ExampleInstrumentedTest.kt │ │ │ └── MovieWorkerTest.kt │ │ ├── main │ │ ├── AndroidManifest.xml │ │ ├── ic_launcher-playstore.png │ │ ├── java │ │ │ └── com │ │ │ │ └── example │ │ │ │ └── popularmovies │ │ │ │ ├── DetailsActivity.kt │ │ │ │ ├── MainActivity.kt │ │ │ │ ├── MovieAdapter.kt │ │ │ │ ├── MovieApplication.kt │ │ │ │ ├── MovieRepository.kt │ │ │ │ ├── MovieViewModel.kt │ │ │ │ ├── MovieWorker.kt │ │ │ │ ├── api │ │ │ │ └── MovieService.kt │ │ │ │ ├── binding │ │ │ │ └── RecyclerViewBinding.kt │ │ │ │ ├── database │ │ │ │ ├── MovieDao.kt │ │ │ │ └── MovieDatabase.kt │ │ │ │ └── model │ │ │ │ ├── Movie.kt │ │ │ │ └── PopularMoviesResponse.kt │ │ └── res │ │ │ ├── drawable │ │ │ └── ic_launcher_foreground.xml │ │ │ ├── layout │ │ │ ├── activity_details.xml │ │ │ ├── activity_main.xml │ │ │ └── view_movie_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 │ │ │ ├── dimens.xml │ │ │ ├── ic_launcher_background.xml │ │ │ ├── strings.xml │ │ │ └── styles.xml │ │ └── test │ │ ├── java │ │ └── com │ │ │ └── example │ │ │ └── popularmovies │ │ │ ├── LiveDataUtil.kt │ │ │ ├── MovieRepositoryTest.kt │ │ │ └── MovieViewModelTest.kt │ │ └── resources │ │ └── mockito-extensions │ │ └── org.mockito.plugins.MockMaker │ ├── build.gradle │ ├── gradle.properties │ ├── gradle │ └── wrapper │ │ ├── gradle-wrapper.jar │ │ └── gradle-wrapper.properties │ ├── gradlew │ ├── gradlew.bat │ └── settings.gradle ├── Chapter15 ├── Activity15.01 │ ├── .gitignore │ ├── app │ │ ├── .gitignore │ │ ├── build.gradle │ │ ├── proguard-rules.pro │ │ └── src │ │ │ ├── androidTest │ │ │ └── java │ │ │ │ └── com │ │ │ │ └── example │ │ │ │ └── passwordgenerator │ │ │ │ └── ExampleInstrumentedTest.kt │ │ │ ├── main │ │ │ ├── AndroidManifest.xml │ │ │ ├── java │ │ │ │ └── com │ │ │ │ │ └── example │ │ │ │ │ └── passwordgenerator │ │ │ │ │ ├── MainActivity.kt │ │ │ │ │ └── OutputActivity.kt │ │ │ └── res │ │ │ │ ├── drawable-v24 │ │ │ │ └── ic_launcher_foreground.xml │ │ │ │ ├── drawable │ │ │ │ └── ic_launcher_background.xml │ │ │ │ ├── layout │ │ │ │ ├── activity_main.xml │ │ │ │ ├── activity_output.xml │ │ │ │ └── layout_chose_2.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 │ │ │ │ └── motion_scene.xml │ │ │ └── test │ │ │ └── java │ │ │ └── com │ │ │ └── example │ │ │ └── passwordgenerator │ │ │ └── ExampleUnitTest.kt │ ├── build.gradle │ ├── gradle.properties │ ├── gradle │ │ └── wrapper │ │ │ ├── gradle-wrapper.jar │ │ │ └── gradle-wrapper.properties │ ├── gradlew │ ├── gradlew.bat │ └── settings.gradle ├── Exercise15.01 │ ├── .gitignore │ ├── app │ │ ├── .gitignore │ │ ├── build.gradle │ │ ├── proguard-rules.pro │ │ └── src │ │ │ ├── androidTest │ │ │ └── java │ │ │ │ └── com │ │ │ │ └── example │ │ │ │ └── tipcalculator │ │ │ │ └── ExampleInstrumentedTest.kt │ │ │ ├── main │ │ │ ├── AndroidManifest.xml │ │ │ ├── ic_launcher-playstore.png │ │ │ ├── java │ │ │ │ └── com │ │ │ │ │ └── example │ │ │ │ │ └── tipcalculator │ │ │ │ │ ├── MainActivity.kt │ │ │ │ │ └── OutputActivity.kt │ │ │ └── res │ │ │ │ ├── drawable │ │ │ │ ├── ic_launcher_background.xml │ │ │ │ └── ic_launcher_foreground.xml │ │ │ │ ├── layout │ │ │ │ ├── activity_main.xml │ │ │ │ └── activity_output.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 │ │ │ │ ├── ic_launcher_background.xml │ │ │ │ ├── strings.xml │ │ │ │ └── styles.xml │ │ │ └── test │ │ │ └── java │ │ │ └── com │ │ │ └── example │ │ │ └── tipcalculator │ │ │ └── ExampleUnitTest.kt │ ├── build.gradle │ ├── gradle.properties │ ├── gradle │ │ └── wrapper │ │ │ ├── gradle-wrapper.jar │ │ │ └── gradle-wrapper.properties │ ├── gradlew │ ├── gradlew.bat │ └── settings.gradle ├── Exercise15.02 │ ├── .gitignore │ ├── app │ │ ├── .gitignore │ │ ├── build.gradle │ │ ├── proguard-rules.pro │ │ └── src │ │ │ ├── androidTest │ │ │ └── java │ │ │ │ └── com │ │ │ │ └── example │ │ │ │ └── tipcalculator │ │ │ │ └── ExampleInstrumentedTest.kt │ │ │ ├── main │ │ │ ├── AndroidManifest.xml │ │ │ ├── ic_launcher-playstore.png │ │ │ ├── java │ │ │ │ └── com │ │ │ │ │ └── example │ │ │ │ │ └── tipcalculator │ │ │ │ │ ├── MainActivity.kt │ │ │ │ │ └── OutputActivity.kt │ │ │ └── res │ │ │ │ ├── drawable │ │ │ │ ├── ic_launcher_background.xml │ │ │ │ └── ic_launcher_foreground.xml │ │ │ │ ├── layout │ │ │ │ ├── activity_main.xml │ │ │ │ └── activity_output.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 │ │ │ │ ├── ic_launcher_background.xml │ │ │ │ ├── strings.xml │ │ │ │ └── styles.xml │ │ │ └── test │ │ │ └── java │ │ │ └── com │ │ │ └── example │ │ │ └── tipcalculator │ │ │ └── ExampleUnitTest.kt │ ├── build.gradle │ ├── gradle.properties │ ├── gradle │ │ └── wrapper │ │ │ ├── gradle-wrapper.jar │ │ │ └── gradle-wrapper.properties │ ├── gradlew │ ├── gradlew.bat │ └── settings.gradle ├── Exercise15.03 │ ├── .gitignore │ ├── app │ │ ├── .gitignore │ │ ├── build.gradle │ │ ├── proguard-rules.pro │ │ └── src │ │ │ ├── androidTest │ │ │ └── java │ │ │ │ └── com │ │ │ │ └── example │ │ │ │ └── tipcalculator │ │ │ │ └── ExampleInstrumentedTest.kt │ │ │ ├── main │ │ │ ├── AndroidManifest.xml │ │ │ ├── ic_launcher-playstore.png │ │ │ ├── java │ │ │ │ └── com │ │ │ │ │ └── example │ │ │ │ │ └── tipcalculator │ │ │ │ │ ├── MainActivity.kt │ │ │ │ │ └── OutputActivity.kt │ │ │ └── res │ │ │ │ ├── drawable │ │ │ │ ├── ic_launcher_background.xml │ │ │ │ └── ic_launcher_foreground.xml │ │ │ │ ├── layout │ │ │ │ ├── activity_main.xml │ │ │ │ └── activity_output.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 │ │ │ │ ├── ic_launcher_background.xml │ │ │ │ ├── strings.xml │ │ │ │ └── styles.xml │ │ │ │ └── xml │ │ │ │ └── motion_scene.xml │ │ │ └── test │ │ │ └── java │ │ │ └── com │ │ │ └── example │ │ │ └── tipcalculator │ │ │ └── ExampleUnitTest.kt │ ├── build.gradle │ ├── gradle.properties │ ├── gradle │ │ └── wrapper │ │ │ ├── gradle-wrapper.jar │ │ │ └── gradle-wrapper.properties │ ├── gradlew │ ├── gradlew.bat │ └── settings.gradle └── Exercise15.04 │ ├── .gitignore │ ├── app │ ├── .gitignore │ ├── build.gradle │ ├── proguard-rules.pro │ └── src │ │ ├── androidTest │ │ └── java │ │ │ └── com │ │ │ └── example │ │ │ └── tipcalculator │ │ │ └── ExampleInstrumentedTest.kt │ │ ├── main │ │ ├── AndroidManifest.xml │ │ ├── ic_launcher-playstore.png │ │ ├── java │ │ │ └── com │ │ │ │ └── example │ │ │ │ └── tipcalculator │ │ │ │ ├── MainActivity.kt │ │ │ │ └── OutputActivity.kt │ │ └── res │ │ │ ├── drawable │ │ │ ├── ic_launcher_background.xml │ │ │ └── ic_launcher_foreground.xml │ │ │ ├── layout │ │ │ ├── activity_main.xml │ │ │ └── activity_output.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 │ │ │ ├── ic_launcher_background.xml │ │ │ ├── strings.xml │ │ │ └── styles.xml │ │ │ └── xml │ │ │ └── motion_scene.xml │ │ └── test │ │ └── java │ │ └── com │ │ └── example │ │ └── tipcalculator │ │ └── ExampleUnitTest.kt │ ├── build.gradle │ ├── gradle.properties │ ├── gradle │ └── wrapper │ │ ├── gradle-wrapper.jar │ │ └── gradle-wrapper.properties │ ├── gradlew │ ├── gradlew.bat │ └── settings.gradle ├── LICENSE └── README.md /Chapter01/Activity1.01/.gitignore: -------------------------------------------------------------------------------- 1 | *.iml 2 | .gradle 3 | /local.properties 4 | /.idea/* 5 | .idea/ 6 | .DS_Store 7 | /build 8 | /captures 9 | .externalNativeBuild 10 | /*/build 11 | .cxx 12 | -------------------------------------------------------------------------------- /Chapter01/Activity1.01/app/.gitignore: -------------------------------------------------------------------------------- 1 | /build 2 | -------------------------------------------------------------------------------- /Chapter01/Activity1.01/app/src/main/res/mipmap-hdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter01/Activity1.01/app/src/main/res/mipmap-hdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter01/Activity1.01/app/src/main/res/mipmap-mdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter01/Activity1.01/app/src/main/res/mipmap-mdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter01/Activity1.01/app/src/main/res/mipmap-xhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter01/Activity1.01/app/src/main/res/mipmap-xhdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter01/Activity1.01/app/src/main/res/mipmap-xxhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter01/Activity1.01/app/src/main/res/mipmap-xxhdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter01/Activity1.01/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter01/Activity1.01/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter01/Activity1.01/gradle/wrapper/gradle-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter01/Activity1.01/gradle/wrapper/gradle-wrapper.jar -------------------------------------------------------------------------------- /Chapter01/Activity1.01/settings.gradle: -------------------------------------------------------------------------------- 1 | include ':app' 2 | rootProject.name='Colors' 3 | -------------------------------------------------------------------------------- /Chapter01/Exercise1.01/.gitignore: -------------------------------------------------------------------------------- 1 | *.iml 2 | .gradle 3 | /local.properties 4 | /.idea/* 5 | .idea/ 6 | .DS_Store 7 | /build 8 | /captures 9 | .externalNativeBuild 10 | /*/build 11 | .cxx 12 | -------------------------------------------------------------------------------- /Chapter01/Exercise1.01/app/.gitignore: -------------------------------------------------------------------------------- 1 | /build 2 | -------------------------------------------------------------------------------- /Chapter01/Exercise1.01/app/src/main/res/mipmap-hdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter01/Exercise1.01/app/src/main/res/mipmap-hdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter01/Exercise1.01/app/src/main/res/mipmap-mdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter01/Exercise1.01/app/src/main/res/mipmap-mdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter01/Exercise1.01/app/src/main/res/mipmap-xhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter01/Exercise1.01/app/src/main/res/mipmap-xhdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter01/Exercise1.01/app/src/main/res/mipmap-xxhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter01/Exercise1.01/app/src/main/res/mipmap-xxhdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter01/Exercise1.01/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter01/Exercise1.01/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter01/Exercise1.01/app/src/main/res/values/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | My Application 3 | 4 | -------------------------------------------------------------------------------- /Chapter01/Exercise1.01/gradle/wrapper/gradle-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter01/Exercise1.01/gradle/wrapper/gradle-wrapper.jar -------------------------------------------------------------------------------- /Chapter01/Exercise1.01/settings.gradle: -------------------------------------------------------------------------------- 1 | include ':app' 2 | rootProject.name='My Application' 3 | -------------------------------------------------------------------------------- /Chapter01/Exercise1.02/.gitignore: -------------------------------------------------------------------------------- 1 | *.iml 2 | .gradle 3 | /local.properties 4 | /.idea/* 5 | .idea/ 6 | .DS_Store 7 | /build 8 | /captures 9 | .externalNativeBuild 10 | /*/build 11 | .cxx 12 | -------------------------------------------------------------------------------- /Chapter01/Exercise1.02/app/.gitignore: -------------------------------------------------------------------------------- 1 | /build 2 | -------------------------------------------------------------------------------- /Chapter01/Exercise1.02/app/src/main/res/mipmap-hdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter01/Exercise1.02/app/src/main/res/mipmap-hdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter01/Exercise1.02/app/src/main/res/mipmap-mdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter01/Exercise1.02/app/src/main/res/mipmap-mdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter01/Exercise1.02/app/src/main/res/mipmap-xhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter01/Exercise1.02/app/src/main/res/mipmap-xhdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter01/Exercise1.02/app/src/main/res/mipmap-xxhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter01/Exercise1.02/app/src/main/res/mipmap-xxhdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter01/Exercise1.02/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter01/Exercise1.02/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter01/Exercise1.02/app/src/main/res/values/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | My Application 3 | 4 | -------------------------------------------------------------------------------- /Chapter01/Exercise1.02/gradle/wrapper/gradle-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter01/Exercise1.02/gradle/wrapper/gradle-wrapper.jar -------------------------------------------------------------------------------- /Chapter01/Exercise1.02/settings.gradle: -------------------------------------------------------------------------------- 1 | include ':app' 2 | rootProject.name='My Application' 3 | -------------------------------------------------------------------------------- /Chapter01/Exercise1.03/.gitignore: -------------------------------------------------------------------------------- 1 | *.iml 2 | .gradle 3 | /local.properties 4 | /.idea/* 5 | .idea/ 6 | .DS_Store 7 | /build 8 | /captures 9 | .externalNativeBuild 10 | /*/build 11 | .cxx 12 | -------------------------------------------------------------------------------- /Chapter01/Exercise1.03/app/.gitignore: -------------------------------------------------------------------------------- 1 | /build 2 | -------------------------------------------------------------------------------- /Chapter01/Exercise1.03/app/src/main/res/mipmap-hdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter01/Exercise1.03/app/src/main/res/mipmap-hdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter01/Exercise1.03/app/src/main/res/mipmap-mdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter01/Exercise1.03/app/src/main/res/mipmap-mdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter01/Exercise1.03/app/src/main/res/mipmap-xhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter01/Exercise1.03/app/src/main/res/mipmap-xhdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter01/Exercise1.03/app/src/main/res/mipmap-xxhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter01/Exercise1.03/app/src/main/res/mipmap-xxhdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter01/Exercise1.03/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter01/Exercise1.03/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter01/Exercise1.03/app/src/main/res/values/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | My Application 3 | 4 | -------------------------------------------------------------------------------- /Chapter01/Exercise1.03/gradle/wrapper/gradle-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter01/Exercise1.03/gradle/wrapper/gradle-wrapper.jar -------------------------------------------------------------------------------- /Chapter01/Exercise1.03/settings.gradle: -------------------------------------------------------------------------------- 1 | include ':app' 2 | rootProject.name='My Application' 3 | -------------------------------------------------------------------------------- /Chapter01/Exercise1.04/.gitignore: -------------------------------------------------------------------------------- 1 | *.iml 2 | .gradle 3 | /local.properties 4 | /.idea/* 5 | .idea/ 6 | .DS_Store 7 | /build 8 | /captures 9 | .externalNativeBuild 10 | /*/build 11 | .cxx 12 | -------------------------------------------------------------------------------- /Chapter01/Exercise1.04/app/.gitignore: -------------------------------------------------------------------------------- 1 | /build 2 | -------------------------------------------------------------------------------- /Chapter01/Exercise1.04/app/src/main/res/mipmap-hdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter01/Exercise1.04/app/src/main/res/mipmap-hdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter01/Exercise1.04/app/src/main/res/mipmap-mdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter01/Exercise1.04/app/src/main/res/mipmap-mdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter01/Exercise1.04/app/src/main/res/mipmap-xhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter01/Exercise1.04/app/src/main/res/mipmap-xhdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter01/Exercise1.04/app/src/main/res/mipmap-xxhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter01/Exercise1.04/app/src/main/res/mipmap-xxhdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter01/Exercise1.04/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter01/Exercise1.04/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter01/Exercise1.04/app/src/main/res/values/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | My Application 3 | 4 | -------------------------------------------------------------------------------- /Chapter01/Exercise1.04/gradle/wrapper/gradle-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter01/Exercise1.04/gradle/wrapper/gradle-wrapper.jar -------------------------------------------------------------------------------- /Chapter01/Exercise1.04/settings.gradle: -------------------------------------------------------------------------------- 1 | include ':app' 2 | rootProject.name='My Application' 3 | -------------------------------------------------------------------------------- /Chapter01/Exercise1.05/.gitignore: -------------------------------------------------------------------------------- 1 | *.iml 2 | .gradle 3 | /local.properties 4 | /.idea/* 5 | .idea/ 6 | .DS_Store 7 | /build 8 | /captures 9 | .externalNativeBuild 10 | /*/build 11 | .cxx 12 | -------------------------------------------------------------------------------- /Chapter01/Exercise1.05/app/.gitignore: -------------------------------------------------------------------------------- 1 | /build 2 | -------------------------------------------------------------------------------- /Chapter01/Exercise1.05/app/src/main/res/mipmap-hdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter01/Exercise1.05/app/src/main/res/mipmap-hdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter01/Exercise1.05/app/src/main/res/mipmap-mdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter01/Exercise1.05/app/src/main/res/mipmap-mdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter01/Exercise1.05/app/src/main/res/mipmap-xhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter01/Exercise1.05/app/src/main/res/mipmap-xhdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter01/Exercise1.05/app/src/main/res/mipmap-xxhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter01/Exercise1.05/app/src/main/res/mipmap-xxhdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter01/Exercise1.05/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter01/Exercise1.05/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter01/Exercise1.05/gradle/wrapper/gradle-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter01/Exercise1.05/gradle/wrapper/gradle-wrapper.jar -------------------------------------------------------------------------------- /Chapter01/Exercise1.05/settings.gradle: -------------------------------------------------------------------------------- 1 | include ':app' 2 | rootProject.name='My Application' 3 | -------------------------------------------------------------------------------- /Chapter02/Activity1.01/.gitignore: -------------------------------------------------------------------------------- 1 | *.iml 2 | .gradle 3 | /local.properties 4 | /.idea/* 5 | .idea/ 6 | .DS_Store 7 | /build 8 | /captures 9 | .externalNativeBuild 10 | /*/build 11 | .cxx 12 | -------------------------------------------------------------------------------- /Chapter02/Activity1.01/app/.gitignore: -------------------------------------------------------------------------------- 1 | /build 2 | -------------------------------------------------------------------------------- /Chapter02/Activity1.01/app/src/main/res/mipmap-hdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter02/Activity1.01/app/src/main/res/mipmap-hdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter02/Activity1.01/app/src/main/res/mipmap-mdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter02/Activity1.01/app/src/main/res/mipmap-mdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter02/Activity1.01/app/src/main/res/mipmap-xhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter02/Activity1.01/app/src/main/res/mipmap-xhdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter02/Activity1.01/app/src/main/res/mipmap-xxhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter02/Activity1.01/app/src/main/res/mipmap-xxhdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter02/Activity1.01/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter02/Activity1.01/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter02/Activity1.01/gradle/wrapper/gradle-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter02/Activity1.01/gradle/wrapper/gradle-wrapper.jar -------------------------------------------------------------------------------- /Chapter02/Activity1.01/settings.gradle: -------------------------------------------------------------------------------- 1 | include ':app' 2 | rootProject.name='LoginActivity' 3 | -------------------------------------------------------------------------------- /Chapter02/Activity1.02/.gitignore: -------------------------------------------------------------------------------- 1 | *.iml 2 | .gradle 3 | /local.properties 4 | /.idea/* 5 | .idea/ 6 | .DS_Store 7 | /build 8 | /captures 9 | .externalNativeBuild 10 | /*/build 11 | .cxx 12 | -------------------------------------------------------------------------------- /Chapter02/Activity1.02/app/.gitignore: -------------------------------------------------------------------------------- 1 | /build 2 | -------------------------------------------------------------------------------- /Chapter02/Activity1.02/app/src/main/res/mipmap-hdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter02/Activity1.02/app/src/main/res/mipmap-hdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter02/Activity1.02/app/src/main/res/mipmap-mdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter02/Activity1.02/app/src/main/res/mipmap-mdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter02/Activity1.02/app/src/main/res/mipmap-xhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter02/Activity1.02/app/src/main/res/mipmap-xhdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter02/Activity1.02/app/src/main/res/mipmap-xxhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter02/Activity1.02/app/src/main/res/mipmap-xxhdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter02/Activity1.02/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter02/Activity1.02/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter02/Activity1.02/gradle/wrapper/gradle-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter02/Activity1.02/gradle/wrapper/gradle-wrapper.jar -------------------------------------------------------------------------------- /Chapter02/Activity1.02/settings.gradle: -------------------------------------------------------------------------------- 1 | include ':app' 2 | rootProject.name='LoginActivity' 3 | -------------------------------------------------------------------------------- /Chapter02/Activity1.03/.gitignore: -------------------------------------------------------------------------------- 1 | *.iml 2 | .gradle 3 | /local.properties 4 | /.idea/* 5 | .idea/ 6 | .DS_Store 7 | /build 8 | /captures 9 | .externalNativeBuild 10 | /*/build 11 | .cxx 12 | -------------------------------------------------------------------------------- /Chapter02/Activity1.03/app/.gitignore: -------------------------------------------------------------------------------- 1 | /build 2 | -------------------------------------------------------------------------------- /Chapter02/Activity1.03/app/src/main/res/mipmap-hdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter02/Activity1.03/app/src/main/res/mipmap-hdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter02/Activity1.03/app/src/main/res/mipmap-mdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter02/Activity1.03/app/src/main/res/mipmap-mdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter02/Activity1.03/app/src/main/res/mipmap-xhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter02/Activity1.03/app/src/main/res/mipmap-xhdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter02/Activity1.03/app/src/main/res/mipmap-xxhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter02/Activity1.03/app/src/main/res/mipmap-xxhdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter02/Activity1.03/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter02/Activity1.03/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter02/Activity1.03/gradle/wrapper/gradle-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter02/Activity1.03/gradle/wrapper/gradle-wrapper.jar -------------------------------------------------------------------------------- /Chapter02/Activity1.03/settings.gradle: -------------------------------------------------------------------------------- 1 | include ':app' 2 | rootProject.name='LoginActivity' 3 | -------------------------------------------------------------------------------- /Chapter02/Exercise2.01/.gitignore: -------------------------------------------------------------------------------- 1 | *.iml 2 | .gradle 3 | /local.properties 4 | /.idea/* 5 | .idea/ 6 | .DS_Store 7 | /build 8 | /captures 9 | .externalNativeBuild 10 | /*/build 11 | .cxx 12 | -------------------------------------------------------------------------------- /Chapter02/Exercise2.01/app/.gitignore: -------------------------------------------------------------------------------- 1 | /build 2 | -------------------------------------------------------------------------------- /Chapter02/Exercise2.01/app/src/main/res/mipmap-hdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter02/Exercise2.01/app/src/main/res/mipmap-hdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter02/Exercise2.01/app/src/main/res/mipmap-mdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter02/Exercise2.01/app/src/main/res/mipmap-mdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter02/Exercise2.01/app/src/main/res/mipmap-xhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter02/Exercise2.01/app/src/main/res/mipmap-xhdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter02/Exercise2.01/app/src/main/res/mipmap-xxhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter02/Exercise2.01/app/src/main/res/mipmap-xxhdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter02/Exercise2.01/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter02/Exercise2.01/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter02/Exercise2.01/app/src/main/res/values/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | Activity Callbacks 3 | 4 | -------------------------------------------------------------------------------- /Chapter02/Exercise2.01/gradle/wrapper/gradle-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter02/Exercise2.01/gradle/wrapper/gradle-wrapper.jar -------------------------------------------------------------------------------- /Chapter02/Exercise2.01/settings.gradle: -------------------------------------------------------------------------------- 1 | include ':app' 2 | rootProject.name='ActivityCallbacks' 3 | -------------------------------------------------------------------------------- /Chapter02/Exercise2.02/.gitignore: -------------------------------------------------------------------------------- 1 | *.iml 2 | .gradle 3 | /local.properties 4 | /.idea/* 5 | .idea/ 6 | .DS_Store 7 | /build 8 | /captures 9 | .externalNativeBuild 10 | /*/build 11 | .cxx 12 | -------------------------------------------------------------------------------- /Chapter02/Exercise2.02/app/.gitignore: -------------------------------------------------------------------------------- 1 | /build 2 | -------------------------------------------------------------------------------- /Chapter02/Exercise2.02/app/src/main/res/mipmap-hdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter02/Exercise2.02/app/src/main/res/mipmap-hdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter02/Exercise2.02/app/src/main/res/mipmap-mdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter02/Exercise2.02/app/src/main/res/mipmap-mdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter02/Exercise2.02/app/src/main/res/mipmap-xhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter02/Exercise2.02/app/src/main/res/mipmap-xhdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter02/Exercise2.02/app/src/main/res/mipmap-xxhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter02/Exercise2.02/app/src/main/res/mipmap-xxhdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter02/Exercise2.02/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter02/Exercise2.02/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter02/Exercise2.02/gradle/wrapper/gradle-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter02/Exercise2.02/gradle/wrapper/gradle-wrapper.jar -------------------------------------------------------------------------------- /Chapter02/Exercise2.02/settings.gradle: -------------------------------------------------------------------------------- 1 | include ':app' 2 | rootProject.name='SaveAndRestore' 3 | -------------------------------------------------------------------------------- /Chapter02/Exercise2.03/.gitignore: -------------------------------------------------------------------------------- 1 | *.iml 2 | .gradle 3 | /local.properties 4 | /.idea/* 5 | .idea/ 6 | .DS_Store 7 | /build 8 | /captures 9 | .externalNativeBuild 10 | /*/build 11 | .cxx 12 | -------------------------------------------------------------------------------- /Chapter02/Exercise2.03/app/.gitignore: -------------------------------------------------------------------------------- 1 | /build 2 | -------------------------------------------------------------------------------- /Chapter02/Exercise2.03/app/src/main/res/mipmap-hdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter02/Exercise2.03/app/src/main/res/mipmap-hdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter02/Exercise2.03/app/src/main/res/mipmap-mdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter02/Exercise2.03/app/src/main/res/mipmap-mdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter02/Exercise2.03/app/src/main/res/mipmap-xhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter02/Exercise2.03/app/src/main/res/mipmap-xhdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter02/Exercise2.03/app/src/main/res/mipmap-xxhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter02/Exercise2.03/app/src/main/res/mipmap-xxhdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter02/Exercise2.03/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter02/Exercise2.03/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter02/Exercise2.03/gradle/wrapper/gradle-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter02/Exercise2.03/gradle/wrapper/gradle-wrapper.jar -------------------------------------------------------------------------------- /Chapter02/Exercise2.03/settings.gradle: -------------------------------------------------------------------------------- 1 | include ':app' 2 | rootProject.name='SaveAndRestore' 3 | -------------------------------------------------------------------------------- /Chapter02/Exercise2.04/.gitignore: -------------------------------------------------------------------------------- 1 | *.iml 2 | .gradle 3 | /local.properties 4 | /.idea/* 5 | .idea/ 6 | .DS_Store 7 | /build 8 | /captures 9 | .externalNativeBuild 10 | /*/build 11 | .cxx 12 | -------------------------------------------------------------------------------- /Chapter02/Exercise2.04/app/.gitignore: -------------------------------------------------------------------------------- 1 | /build 2 | -------------------------------------------------------------------------------- /Chapter02/Exercise2.04/app/src/main/res/mipmap-hdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter02/Exercise2.04/app/src/main/res/mipmap-hdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter02/Exercise2.04/app/src/main/res/mipmap-mdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter02/Exercise2.04/app/src/main/res/mipmap-mdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter02/Exercise2.04/app/src/main/res/mipmap-xhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter02/Exercise2.04/app/src/main/res/mipmap-xhdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter02/Exercise2.04/app/src/main/res/mipmap-xxhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter02/Exercise2.04/app/src/main/res/mipmap-xxhdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter02/Exercise2.04/gradle/wrapper/gradle-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter02/Exercise2.04/gradle/wrapper/gradle-wrapper.jar -------------------------------------------------------------------------------- /Chapter02/Exercise2.04/settings.gradle: -------------------------------------------------------------------------------- 1 | include ':app' 2 | rootProject.name='IntentsIntroduction' 3 | -------------------------------------------------------------------------------- /Chapter02/Exercise2.05/.gitignore: -------------------------------------------------------------------------------- 1 | *.iml 2 | .gradle 3 | /local.properties 4 | /.idea/* 5 | .idea/ 6 | .DS_Store 7 | /build 8 | /captures 9 | .externalNativeBuild 10 | /*/build 11 | .cxx 12 | -------------------------------------------------------------------------------- /Chapter02/Exercise2.05/app/.gitignore: -------------------------------------------------------------------------------- 1 | /build 2 | -------------------------------------------------------------------------------- /Chapter02/Exercise2.05/app/src/main/res/mipmap-hdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter02/Exercise2.05/app/src/main/res/mipmap-hdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter02/Exercise2.05/app/src/main/res/mipmap-mdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter02/Exercise2.05/app/src/main/res/mipmap-mdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter02/Exercise2.05/app/src/main/res/mipmap-xhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter02/Exercise2.05/app/src/main/res/mipmap-xhdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter02/Exercise2.05/gradle/wrapper/gradle-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter02/Exercise2.05/gradle/wrapper/gradle-wrapper.jar -------------------------------------------------------------------------------- /Chapter02/Exercise2.05/settings.gradle: -------------------------------------------------------------------------------- 1 | include ':app' 2 | rootProject.name='ActivityResults' 3 | -------------------------------------------------------------------------------- /Chapter02/Exercise2.06/.gitignore: -------------------------------------------------------------------------------- 1 | *.iml 2 | .gradle 3 | /local.properties 4 | /.idea/* 5 | .idea/ 6 | .DS_Store 7 | /build 8 | /captures 9 | .externalNativeBuild 10 | /*/build 11 | .cxx 12 | -------------------------------------------------------------------------------- /Chapter02/Exercise2.06/app/.gitignore: -------------------------------------------------------------------------------- 1 | /build 2 | -------------------------------------------------------------------------------- /Chapter02/Exercise2.06/app/src/main/res/mipmap-hdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter02/Exercise2.06/app/src/main/res/mipmap-hdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter02/Exercise2.06/app/src/main/res/mipmap-mdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter02/Exercise2.06/app/src/main/res/mipmap-mdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter02/Exercise2.06/app/src/main/res/mipmap-xhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter02/Exercise2.06/app/src/main/res/mipmap-xhdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter02/Exercise2.06/gradle/wrapper/gradle-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter02/Exercise2.06/gradle/wrapper/gradle-wrapper.jar -------------------------------------------------------------------------------- /Chapter02/Exercise2.06/settings.gradle: -------------------------------------------------------------------------------- 1 | include ':app' 2 | rootProject.name='LaunchModes' 3 | -------------------------------------------------------------------------------- /Chapter03/Activity3.01/app/.gitignore: -------------------------------------------------------------------------------- 1 | /build 2 | -------------------------------------------------------------------------------- /Chapter03/Activity3.01/app/src/main/res/mipmap-hdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter03/Activity3.01/app/src/main/res/mipmap-hdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter03/Activity3.01/app/src/main/res/mipmap-mdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter03/Activity3.01/app/src/main/res/mipmap-mdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter03/Activity3.01/app/src/main/res/mipmap-xhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter03/Activity3.01/app/src/main/res/mipmap-xhdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter03/Activity3.01/gradle/wrapper/gradle-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter03/Activity3.01/gradle/wrapper/gradle-wrapper.jar -------------------------------------------------------------------------------- /Chapter03/Activity3.01/settings.gradle: -------------------------------------------------------------------------------- 1 | rootProject.name='Planet Quiz' 2 | include ':app' 3 | -------------------------------------------------------------------------------- /Chapter03/Exercise3.01/app/.gitignore: -------------------------------------------------------------------------------- 1 | /build 2 | -------------------------------------------------------------------------------- /Chapter03/Exercise3.01/app/src/main/res/mipmap-hdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter03/Exercise3.01/app/src/main/res/mipmap-hdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter03/Exercise3.01/app/src/main/res/mipmap-mdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter03/Exercise3.01/app/src/main/res/mipmap-mdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter03/Exercise3.01/app/src/main/res/mipmap-xhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter03/Exercise3.01/app/src/main/res/mipmap-xhdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter03/Exercise3.01/gradle/wrapper/gradle-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter03/Exercise3.01/gradle/wrapper/gradle-wrapper.jar -------------------------------------------------------------------------------- /Chapter03/Exercise3.01/settings.gradle: -------------------------------------------------------------------------------- 1 | rootProject.name='Fragment Lifecycle' 2 | include ':app' 3 | -------------------------------------------------------------------------------- /Chapter03/Exercise3.02/.gitignore: -------------------------------------------------------------------------------- 1 | *.iml 2 | .gradle 3 | /local.properties 4 | /.idea/* 5 | .idea/ 6 | .DS_Store 7 | /build 8 | /captures 9 | .externalNativeBuild 10 | /*/build 11 | .cxx -------------------------------------------------------------------------------- /Chapter03/Exercise3.02/app/.gitignore: -------------------------------------------------------------------------------- 1 | /build 2 | -------------------------------------------------------------------------------- /Chapter03/Exercise3.02/app/src/main/res/mipmap-hdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter03/Exercise3.02/app/src/main/res/mipmap-hdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter03/Exercise3.02/app/src/main/res/mipmap-mdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter03/Exercise3.02/app/src/main/res/mipmap-mdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter03/Exercise3.02/app/src/main/res/mipmap-xhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter03/Exercise3.02/app/src/main/res/mipmap-xhdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter03/Exercise3.02/gradle/wrapper/gradle-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter03/Exercise3.02/gradle/wrapper/gradle-wrapper.jar -------------------------------------------------------------------------------- /Chapter03/Exercise3.02/settings.gradle: -------------------------------------------------------------------------------- 1 | rootProject.name='Fragment Intro' 2 | include ':app' 3 | -------------------------------------------------------------------------------- /Chapter03/Exercise3.03/app/.gitignore: -------------------------------------------------------------------------------- 1 | /build 2 | -------------------------------------------------------------------------------- /Chapter03/Exercise3.03/app/src/main/res/mipmap-hdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter03/Exercise3.03/app/src/main/res/mipmap-hdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter03/Exercise3.03/app/src/main/res/mipmap-mdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter03/Exercise3.03/app/src/main/res/mipmap-mdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter03/Exercise3.03/app/src/main/res/mipmap-xhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter03/Exercise3.03/app/src/main/res/mipmap-xhdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter03/Exercise3.03/gradle/wrapper/gradle-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter03/Exercise3.03/gradle/wrapper/gradle-wrapper.jar -------------------------------------------------------------------------------- /Chapter03/Exercise3.03/settings.gradle: -------------------------------------------------------------------------------- 1 | rootProject.name='FragmentsTablets' 2 | include ':app' 3 | -------------------------------------------------------------------------------- /Chapter03/Exercise3.04/app/.gitignore: -------------------------------------------------------------------------------- 1 | /build 2 | -------------------------------------------------------------------------------- /Chapter03/Exercise3.04/app/src/main/res/mipmap-hdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter03/Exercise3.04/app/src/main/res/mipmap-hdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter03/Exercise3.04/app/src/main/res/mipmap-mdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter03/Exercise3.04/app/src/main/res/mipmap-mdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter03/Exercise3.04/app/src/main/res/mipmap-xhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter03/Exercise3.04/app/src/main/res/mipmap-xhdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter03/Exercise3.04/gradle/wrapper/gradle-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter03/Exercise3.04/gradle/wrapper/gradle-wrapper.jar -------------------------------------------------------------------------------- /Chapter03/Exercise3.04/settings.gradle: -------------------------------------------------------------------------------- 1 | rootProject.name='Dynamic Fragments' 2 | include ':app' 3 | -------------------------------------------------------------------------------- /Chapter03/Exercise3.05/app/.gitignore: -------------------------------------------------------------------------------- 1 | /build 2 | -------------------------------------------------------------------------------- /Chapter03/Exercise3.05/app/src/main/res/mipmap-hdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter03/Exercise3.05/app/src/main/res/mipmap-hdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter03/Exercise3.05/app/src/main/res/mipmap-mdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter03/Exercise3.05/app/src/main/res/mipmap-mdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter03/Exercise3.05/app/src/main/res/mipmap-xhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter03/Exercise3.05/app/src/main/res/mipmap-xhdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter03/Exercise3.05/gradle/wrapper/gradle-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter03/Exercise3.05/gradle/wrapper/gradle-wrapper.jar -------------------------------------------------------------------------------- /Chapter03/Exercise3.05/settings.gradle: -------------------------------------------------------------------------------- 1 | rootProject.name='Jetpack Fragments' 2 | include ':app' 3 | -------------------------------------------------------------------------------- /Chapter04/Activity4.01/.idea/.name: -------------------------------------------------------------------------------- 1 | Navigation Activity -------------------------------------------------------------------------------- /Chapter04/Activity4.01/.idea/codeStyles/codeStyleConfig.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 5 | -------------------------------------------------------------------------------- /Chapter04/Activity4.01/.idea/compiler.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /Chapter04/Activity4.01/.idea/vcs.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /Chapter04/Activity4.01/app/.gitignore: -------------------------------------------------------------------------------- 1 | /build -------------------------------------------------------------------------------- /Chapter04/Activity4.01/app/src/main/res/mipmap-hdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter04/Activity4.01/app/src/main/res/mipmap-hdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter04/Activity4.01/app/src/main/res/mipmap-mdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter04/Activity4.01/app/src/main/res/mipmap-mdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter04/Activity4.01/app/src/main/res/mipmap-xhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter04/Activity4.01/app/src/main/res/mipmap-xhdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter04/Activity4.01/gradle/wrapper/gradle-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter04/Activity4.01/gradle/wrapper/gradle-wrapper.jar -------------------------------------------------------------------------------- /Chapter04/Activity4.01/settings.gradle: -------------------------------------------------------------------------------- 1 | include ':app' 2 | rootProject.name = "Navigation Activity" 3 | -------------------------------------------------------------------------------- /Chapter04/Exercise4.01/.idea/.name: -------------------------------------------------------------------------------- 1 | Navigation Drawer -------------------------------------------------------------------------------- /Chapter04/Exercise4.01/.idea/codeStyles/codeStyleConfig.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 5 | -------------------------------------------------------------------------------- /Chapter04/Exercise4.01/.idea/compiler.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /Chapter04/Exercise4.01/.idea/vcs.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /Chapter04/Exercise4.01/app/.gitignore: -------------------------------------------------------------------------------- 1 | /build -------------------------------------------------------------------------------- /Chapter04/Exercise4.01/app/src/main/res/mipmap-hdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter04/Exercise4.01/app/src/main/res/mipmap-hdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter04/Exercise4.01/app/src/main/res/mipmap-mdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter04/Exercise4.01/app/src/main/res/mipmap-mdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter04/Exercise4.01/app/src/main/res/mipmap-xhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter04/Exercise4.01/app/src/main/res/mipmap-xhdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter04/Exercise4.01/gradle/wrapper/gradle-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter04/Exercise4.01/gradle/wrapper/gradle-wrapper.jar -------------------------------------------------------------------------------- /Chapter04/Exercise4.01/settings.gradle: -------------------------------------------------------------------------------- 1 | include ':app' 2 | rootProject.name = "Navigation Drawer" -------------------------------------------------------------------------------- /Chapter04/Exercise4.02/.idea/.name: -------------------------------------------------------------------------------- 1 | Bottom Navigation -------------------------------------------------------------------------------- /Chapter04/Exercise4.02/.idea/codeStyles/codeStyleConfig.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 5 | -------------------------------------------------------------------------------- /Chapter04/Exercise4.02/.idea/compiler.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /Chapter04/Exercise4.02/.idea/vcs.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /Chapter04/Exercise4.02/app/.gitignore: -------------------------------------------------------------------------------- 1 | /build -------------------------------------------------------------------------------- /Chapter04/Exercise4.02/app/src/main/res/mipmap-hdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter04/Exercise4.02/app/src/main/res/mipmap-hdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter04/Exercise4.02/app/src/main/res/mipmap-mdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter04/Exercise4.02/app/src/main/res/mipmap-mdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter04/Exercise4.02/app/src/main/res/mipmap-xhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter04/Exercise4.02/app/src/main/res/mipmap-xhdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter04/Exercise4.02/gradle/wrapper/gradle-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter04/Exercise4.02/gradle/wrapper/gradle-wrapper.jar -------------------------------------------------------------------------------- /Chapter04/Exercise4.02/settings.gradle: -------------------------------------------------------------------------------- 1 | include ':app' 2 | rootProject.name = "Bottom Navigation" -------------------------------------------------------------------------------- /Chapter04/Exercise4.03/.idea/.name: -------------------------------------------------------------------------------- 1 | Tab Navigation -------------------------------------------------------------------------------- /Chapter04/Exercise4.03/.idea/codeStyles/codeStyleConfig.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 5 | -------------------------------------------------------------------------------- /Chapter04/Exercise4.03/.idea/vcs.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /Chapter04/Exercise4.03/app/.gitignore: -------------------------------------------------------------------------------- 1 | /build 2 | -------------------------------------------------------------------------------- /Chapter04/Exercise4.03/app/src/main/res/mipmap-hdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter04/Exercise4.03/app/src/main/res/mipmap-hdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter04/Exercise4.03/app/src/main/res/mipmap-mdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter04/Exercise4.03/app/src/main/res/mipmap-mdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter04/Exercise4.03/app/src/main/res/mipmap-xhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter04/Exercise4.03/app/src/main/res/mipmap-xhdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter04/Exercise4.03/gradle/wrapper/gradle-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter04/Exercise4.03/gradle/wrapper/gradle-wrapper.jar -------------------------------------------------------------------------------- /Chapter04/Exercise4.03/settings.gradle: -------------------------------------------------------------------------------- 1 | include ':app' 2 | rootProject.name = "Tab Navigation" 3 | -------------------------------------------------------------------------------- /Chapter05/Activity5.01/.idea/.name: -------------------------------------------------------------------------------- 1 | New York Weather -------------------------------------------------------------------------------- /Chapter05/Activity5.01/.idea/vcs.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /Chapter05/Activity5.01/app/.gitignore: -------------------------------------------------------------------------------- 1 | /build 2 | -------------------------------------------------------------------------------- /Chapter05/Activity5.01/app/src/main/res/mipmap-hdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter05/Activity5.01/app/src/main/res/mipmap-hdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter05/Activity5.01/app/src/main/res/mipmap-mdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter05/Activity5.01/app/src/main/res/mipmap-mdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter05/Activity5.01/app/src/main/res/mipmap-xhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter05/Activity5.01/app/src/main/res/mipmap-xhdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter05/Activity5.01/app/src/main/res/values/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | New York Weather 3 | 4 | -------------------------------------------------------------------------------- /Chapter05/Activity5.01/gradle/wrapper/gradle-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter05/Activity5.01/gradle/wrapper/gradle-wrapper.jar -------------------------------------------------------------------------------- /Chapter05/Activity5.01/settings.gradle: -------------------------------------------------------------------------------- 1 | include ':app' 2 | rootProject.name='New York Weather' 3 | -------------------------------------------------------------------------------- /Chapter05/Exercise5.01/.idea/.name: -------------------------------------------------------------------------------- 1 | Cat Agent Profile -------------------------------------------------------------------------------- /Chapter05/Exercise5.01/.idea/codeStyles/codeStyleConfig.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 5 | -------------------------------------------------------------------------------- /Chapter05/Exercise5.01/.idea/vcs.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /Chapter05/Exercise5.01/app/.gitignore: -------------------------------------------------------------------------------- 1 | /build 2 | -------------------------------------------------------------------------------- /Chapter05/Exercise5.01/app/src/main/res/mipmap-hdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter05/Exercise5.01/app/src/main/res/mipmap-hdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter05/Exercise5.01/app/src/main/res/mipmap-mdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter05/Exercise5.01/app/src/main/res/mipmap-mdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter05/Exercise5.01/app/src/main/res/mipmap-xhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter05/Exercise5.01/app/src/main/res/mipmap-xhdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter05/Exercise5.01/app/src/main/res/values/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | Cat Agent Profile 3 | 4 | -------------------------------------------------------------------------------- /Chapter05/Exercise5.01/gradle/wrapper/gradle-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter05/Exercise5.01/gradle/wrapper/gradle-wrapper.jar -------------------------------------------------------------------------------- /Chapter05/Exercise5.01/settings.gradle: -------------------------------------------------------------------------------- 1 | include ':app' 2 | rootProject.name='Cat Agent Profile' 3 | -------------------------------------------------------------------------------- /Chapter05/Exercise5.02/.idea/.name: -------------------------------------------------------------------------------- 1 | Cat Agent Profile -------------------------------------------------------------------------------- /Chapter05/Exercise5.02/.idea/codeStyles/codeStyleConfig.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 5 | -------------------------------------------------------------------------------- /Chapter05/Exercise5.02/.idea/vcs.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /Chapter05/Exercise5.02/app/.gitignore: -------------------------------------------------------------------------------- 1 | /build 2 | -------------------------------------------------------------------------------- /Chapter05/Exercise5.02/app/src/main/java/com/example/catagentprofile/model/CatBreedData.kt: -------------------------------------------------------------------------------- 1 | package com.example.catagentprofile.model 2 | 3 | data class CatBreedData( 4 | val name: String, 5 | val temperament: String 6 | ) 7 | -------------------------------------------------------------------------------- /Chapter05/Exercise5.02/app/src/main/res/mipmap-hdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter05/Exercise5.02/app/src/main/res/mipmap-hdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter05/Exercise5.02/app/src/main/res/mipmap-mdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter05/Exercise5.02/app/src/main/res/mipmap-mdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter05/Exercise5.02/app/src/main/res/mipmap-xhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter05/Exercise5.02/app/src/main/res/mipmap-xhdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter05/Exercise5.02/app/src/main/res/values/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | Cat Agent Profile 3 | 4 | -------------------------------------------------------------------------------- /Chapter05/Exercise5.02/gradle/wrapper/gradle-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter05/Exercise5.02/gradle/wrapper/gradle-wrapper.jar -------------------------------------------------------------------------------- /Chapter05/Exercise5.02/settings.gradle: -------------------------------------------------------------------------------- 1 | include ':app' 2 | rootProject.name='Cat Agent Profile' 3 | -------------------------------------------------------------------------------- /Chapter05/Exercise5.03/.idea/.name: -------------------------------------------------------------------------------- 1 | Cat Agent Profile -------------------------------------------------------------------------------- /Chapter05/Exercise5.03/.idea/codeStyles/codeStyleConfig.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 5 | -------------------------------------------------------------------------------- /Chapter05/Exercise5.03/.idea/vcs.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /Chapter05/Exercise5.03/app/.gitignore: -------------------------------------------------------------------------------- 1 | /build 2 | -------------------------------------------------------------------------------- /Chapter05/Exercise5.03/app/src/main/java/com/example/catagentprofile/model/CatBreedData.kt: -------------------------------------------------------------------------------- 1 | package com.example.catagentprofile.model 2 | 3 | data class CatBreedData( 4 | val name: String, 5 | val temperament: String 6 | ) 7 | -------------------------------------------------------------------------------- /Chapter05/Exercise5.03/app/src/main/res/mipmap-hdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter05/Exercise5.03/app/src/main/res/mipmap-hdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter05/Exercise5.03/app/src/main/res/mipmap-mdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter05/Exercise5.03/app/src/main/res/mipmap-mdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter05/Exercise5.03/app/src/main/res/mipmap-xhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter05/Exercise5.03/app/src/main/res/mipmap-xhdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter05/Exercise5.03/app/src/main/res/values/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | Cat Agent Profile 3 | 4 | -------------------------------------------------------------------------------- /Chapter05/Exercise5.03/gradle/wrapper/gradle-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter05/Exercise5.03/gradle/wrapper/gradle-wrapper.jar -------------------------------------------------------------------------------- /Chapter05/Exercise5.03/settings.gradle: -------------------------------------------------------------------------------- 1 | include ':app' 2 | rootProject.name='Cat Agent Profile' 3 | -------------------------------------------------------------------------------- /Chapter06/Activity6.01/app/.gitignore: -------------------------------------------------------------------------------- 1 | /build 2 | -------------------------------------------------------------------------------- /Chapter06/Activity6.01/app/src/main/res/mipmap-hdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter06/Activity6.01/app/src/main/res/mipmap-hdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter06/Activity6.01/app/src/main/res/mipmap-mdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter06/Activity6.01/app/src/main/res/mipmap-mdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter06/Activity6.01/app/src/main/res/mipmap-xhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter06/Activity6.01/app/src/main/res/mipmap-xhdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter06/Activity6.01/app/src/main/res/values/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | Recipe Book 3 | 4 | -------------------------------------------------------------------------------- /Chapter06/Activity6.01/gradle/wrapper/gradle-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter06/Activity6.01/gradle/wrapper/gradle-wrapper.jar -------------------------------------------------------------------------------- /Chapter06/Activity6.01/settings.gradle: -------------------------------------------------------------------------------- 1 | include ':app' 2 | rootProject.name = "Recipe Book" 3 | -------------------------------------------------------------------------------- /Chapter06/Exercise6.01/.idea/.name: -------------------------------------------------------------------------------- 1 | My RecyclerView App -------------------------------------------------------------------------------- /Chapter06/Exercise6.01/.idea/codeStyles/codeStyleConfig.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 5 | -------------------------------------------------------------------------------- /Chapter06/Exercise6.01/.idea/vcs.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /Chapter06/Exercise6.01/app/.gitignore: -------------------------------------------------------------------------------- 1 | /build 2 | -------------------------------------------------------------------------------- /Chapter06/Exercise6.01/app/src/main/res/mipmap-hdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter06/Exercise6.01/app/src/main/res/mipmap-hdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter06/Exercise6.01/app/src/main/res/mipmap-mdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter06/Exercise6.01/app/src/main/res/mipmap-mdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter06/Exercise6.01/app/src/main/res/mipmap-xhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter06/Exercise6.01/app/src/main/res/mipmap-xhdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter06/Exercise6.01/app/src/main/res/values/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | My RecyclerView App 3 | 4 | -------------------------------------------------------------------------------- /Chapter06/Exercise6.01/gradle/wrapper/gradle-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter06/Exercise6.01/gradle/wrapper/gradle-wrapper.jar -------------------------------------------------------------------------------- /Chapter06/Exercise6.01/settings.gradle: -------------------------------------------------------------------------------- 1 | include ':app' 2 | rootProject.name='My RecyclerView App' 3 | -------------------------------------------------------------------------------- /Chapter06/Exercise6.02/.idea/.name: -------------------------------------------------------------------------------- 1 | My RecyclerView App -------------------------------------------------------------------------------- /Chapter06/Exercise6.02/.idea/codeStyles/codeStyleConfig.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 5 | -------------------------------------------------------------------------------- /Chapter06/Exercise6.02/.idea/vcs.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /Chapter06/Exercise6.02/app/.gitignore: -------------------------------------------------------------------------------- 1 | /build 2 | -------------------------------------------------------------------------------- /Chapter06/Exercise6.02/app/src/main/java/com/example/myrecyclerviewapp/model/Gender.kt: -------------------------------------------------------------------------------- 1 | package com.example.myrecyclerviewapp.model 2 | 3 | enum class Gender { 4 | Female, 5 | Male, 6 | Unknown 7 | } 8 | -------------------------------------------------------------------------------- /Chapter06/Exercise6.02/app/src/main/res/mipmap-hdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter06/Exercise6.02/app/src/main/res/mipmap-hdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter06/Exercise6.02/app/src/main/res/mipmap-mdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter06/Exercise6.02/app/src/main/res/mipmap-mdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter06/Exercise6.02/app/src/main/res/mipmap-xhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter06/Exercise6.02/app/src/main/res/mipmap-xhdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter06/Exercise6.02/gradle/wrapper/gradle-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter06/Exercise6.02/gradle/wrapper/gradle-wrapper.jar -------------------------------------------------------------------------------- /Chapter06/Exercise6.02/settings.gradle: -------------------------------------------------------------------------------- 1 | include ':app' 2 | rootProject.name='My RecyclerView App' 3 | -------------------------------------------------------------------------------- /Chapter06/Exercise6.03/.idea/.name: -------------------------------------------------------------------------------- 1 | My RecyclerView App -------------------------------------------------------------------------------- /Chapter06/Exercise6.03/.idea/codeStyles/codeStyleConfig.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 5 | -------------------------------------------------------------------------------- /Chapter06/Exercise6.03/.idea/vcs.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /Chapter06/Exercise6.03/app/.gitignore: -------------------------------------------------------------------------------- 1 | /build 2 | -------------------------------------------------------------------------------- /Chapter06/Exercise6.03/app/src/main/java/com/example/myrecyclerviewapp/model/Gender.kt: -------------------------------------------------------------------------------- 1 | package com.example.myrecyclerviewapp.model 2 | 3 | enum class Gender { 4 | Female, 5 | Male, 6 | Unknown 7 | } 8 | -------------------------------------------------------------------------------- /Chapter06/Exercise6.03/app/src/main/res/mipmap-hdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter06/Exercise6.03/app/src/main/res/mipmap-hdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter06/Exercise6.03/app/src/main/res/mipmap-mdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter06/Exercise6.03/app/src/main/res/mipmap-mdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter06/Exercise6.03/app/src/main/res/mipmap-xhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter06/Exercise6.03/app/src/main/res/mipmap-xhdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter06/Exercise6.03/gradle/wrapper/gradle-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter06/Exercise6.03/gradle/wrapper/gradle-wrapper.jar -------------------------------------------------------------------------------- /Chapter06/Exercise6.03/settings.gradle: -------------------------------------------------------------------------------- 1 | include ':app' 2 | rootProject.name='My RecyclerView App' 3 | -------------------------------------------------------------------------------- /Chapter06/Exercise6.04/.idea/.name: -------------------------------------------------------------------------------- 1 | My RecyclerView App -------------------------------------------------------------------------------- /Chapter06/Exercise6.04/.idea/codeStyles/codeStyleConfig.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 5 | -------------------------------------------------------------------------------- /Chapter06/Exercise6.04/.idea/vcs.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /Chapter06/Exercise6.04/app/.gitignore: -------------------------------------------------------------------------------- 1 | /build 2 | -------------------------------------------------------------------------------- /Chapter06/Exercise6.04/app/src/main/java/com/example/myrecyclerviewapp/model/Gender.kt: -------------------------------------------------------------------------------- 1 | package com.example.myrecyclerviewapp.model 2 | 3 | enum class Gender { 4 | Female, 5 | Male, 6 | Unknown 7 | } 8 | -------------------------------------------------------------------------------- /Chapter06/Exercise6.04/app/src/main/res/mipmap-hdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter06/Exercise6.04/app/src/main/res/mipmap-hdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter06/Exercise6.04/app/src/main/res/mipmap-mdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter06/Exercise6.04/app/src/main/res/mipmap-mdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter06/Exercise6.04/app/src/main/res/mipmap-xhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter06/Exercise6.04/app/src/main/res/mipmap-xhdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter06/Exercise6.04/gradle/wrapper/gradle-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter06/Exercise6.04/gradle/wrapper/gradle-wrapper.jar -------------------------------------------------------------------------------- /Chapter06/Exercise6.04/settings.gradle: -------------------------------------------------------------------------------- 1 | include ':app' 2 | rootProject.name='My RecyclerView App' 3 | -------------------------------------------------------------------------------- /Chapter06/Exercise6.05/.idea/.name: -------------------------------------------------------------------------------- 1 | My RecyclerView App -------------------------------------------------------------------------------- /Chapter06/Exercise6.05/.idea/codeStyles/codeStyleConfig.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 5 | -------------------------------------------------------------------------------- /Chapter06/Exercise6.05/.idea/vcs.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /Chapter06/Exercise6.05/app/.gitignore: -------------------------------------------------------------------------------- 1 | /build 2 | -------------------------------------------------------------------------------- /Chapter06/Exercise6.05/app/src/main/java/com/example/myrecyclerviewapp/model/Gender.kt: -------------------------------------------------------------------------------- 1 | package com.example.myrecyclerviewapp.model 2 | 3 | enum class Gender { 4 | Female, 5 | Male, 6 | Unknown 7 | } 8 | -------------------------------------------------------------------------------- /Chapter06/Exercise6.05/app/src/main/res/mipmap-hdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter06/Exercise6.05/app/src/main/res/mipmap-hdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter06/Exercise6.05/app/src/main/res/mipmap-mdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter06/Exercise6.05/app/src/main/res/mipmap-mdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter06/Exercise6.05/app/src/main/res/mipmap-xhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter06/Exercise6.05/app/src/main/res/mipmap-xhdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter06/Exercise6.05/gradle/wrapper/gradle-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter06/Exercise6.05/gradle/wrapper/gradle-wrapper.jar -------------------------------------------------------------------------------- /Chapter06/Exercise6.05/settings.gradle: -------------------------------------------------------------------------------- 1 | include ':app' 2 | rootProject.name='My RecyclerView App' 3 | -------------------------------------------------------------------------------- /Chapter06/Exercise6.06/.idea/.name: -------------------------------------------------------------------------------- 1 | My RecyclerView App -------------------------------------------------------------------------------- /Chapter06/Exercise6.06/.idea/codeStyles/codeStyleConfig.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 5 | -------------------------------------------------------------------------------- /Chapter06/Exercise6.06/.idea/vcs.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /Chapter06/Exercise6.06/app/.gitignore: -------------------------------------------------------------------------------- 1 | /build 2 | -------------------------------------------------------------------------------- /Chapter06/Exercise6.06/app/src/main/java/com/example/myrecyclerviewapp/model/Gender.kt: -------------------------------------------------------------------------------- 1 | package com.example.myrecyclerviewapp.model 2 | 3 | enum class Gender { 4 | Female, 5 | Male, 6 | Unknown 7 | } 8 | -------------------------------------------------------------------------------- /Chapter06/Exercise6.06/app/src/main/res/mipmap-hdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter06/Exercise6.06/app/src/main/res/mipmap-hdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter06/Exercise6.06/app/src/main/res/mipmap-mdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter06/Exercise6.06/app/src/main/res/mipmap-mdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter06/Exercise6.06/app/src/main/res/mipmap-xhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter06/Exercise6.06/app/src/main/res/mipmap-xhdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter06/Exercise6.06/gradle/wrapper/gradle-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter06/Exercise6.06/gradle/wrapper/gradle-wrapper.jar -------------------------------------------------------------------------------- /Chapter06/Exercise6.06/settings.gradle: -------------------------------------------------------------------------------- 1 | include ':app' 2 | rootProject.name='My RecyclerView App' 3 | -------------------------------------------------------------------------------- /Chapter07/Activity7.1/.idea/.name: -------------------------------------------------------------------------------- 1 | Parked Car Finder -------------------------------------------------------------------------------- /Chapter07/Activity7.1/.idea/vcs.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /Chapter07/Activity7.1/app/.gitignore: -------------------------------------------------------------------------------- 1 | /build 2 | -------------------------------------------------------------------------------- /Chapter07/Activity7.1/app/src/main/res/mipmap-hdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter07/Activity7.1/app/src/main/res/mipmap-hdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter07/Activity7.1/app/src/main/res/mipmap-mdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter07/Activity7.1/app/src/main/res/mipmap-mdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter07/Activity7.1/app/src/main/res/mipmap-xhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter07/Activity7.1/app/src/main/res/mipmap-xhdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter07/Activity7.1/app/src/main/res/mipmap-xxhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter07/Activity7.1/app/src/main/res/mipmap-xxhdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter07/Activity7.1/app/src/main/res/values/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | Parked Car Finder 3 | Map 4 | 5 | -------------------------------------------------------------------------------- /Chapter07/Activity7.1/gradle/wrapper/gradle-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter07/Activity7.1/gradle/wrapper/gradle-wrapper.jar -------------------------------------------------------------------------------- /Chapter07/Activity7.1/settings.gradle: -------------------------------------------------------------------------------- 1 | include ':app' 2 | rootProject.name = "Parked Car Finder" 3 | -------------------------------------------------------------------------------- /Chapter07/Exercise7.1/.idea/.name: -------------------------------------------------------------------------------- 1 | Cat Agent Deployer -------------------------------------------------------------------------------- /Chapter07/Exercise7.1/.idea/vcs.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /Chapter07/Exercise7.1/app/.gitignore: -------------------------------------------------------------------------------- 1 | /build 2 | -------------------------------------------------------------------------------- /Chapter07/Exercise7.1/app/src/main/res/mipmap-hdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter07/Exercise7.1/app/src/main/res/mipmap-hdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter07/Exercise7.1/app/src/main/res/mipmap-mdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter07/Exercise7.1/app/src/main/res/mipmap-mdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter07/Exercise7.1/app/src/main/res/mipmap-xhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter07/Exercise7.1/app/src/main/res/mipmap-xhdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter07/Exercise7.1/app/src/main/res/mipmap-xxhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter07/Exercise7.1/app/src/main/res/mipmap-xxhdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter07/Exercise7.1/app/src/main/res/values/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | Cat Agent Deployer 3 | Map 4 | 5 | -------------------------------------------------------------------------------- /Chapter07/Exercise7.1/gradle/wrapper/gradle-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter07/Exercise7.1/gradle/wrapper/gradle-wrapper.jar -------------------------------------------------------------------------------- /Chapter07/Exercise7.1/settings.gradle: -------------------------------------------------------------------------------- 1 | include ':app' 2 | rootProject.name='Cat Agent Deployer' 3 | -------------------------------------------------------------------------------- /Chapter07/Exercise7.2/.idea/.name: -------------------------------------------------------------------------------- 1 | Cat Agent Deployer -------------------------------------------------------------------------------- /Chapter07/Exercise7.2/.idea/vcs.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /Chapter07/Exercise7.2/app/.gitignore: -------------------------------------------------------------------------------- 1 | /build 2 | -------------------------------------------------------------------------------- /Chapter07/Exercise7.2/app/src/main/res/mipmap-hdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter07/Exercise7.2/app/src/main/res/mipmap-hdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter07/Exercise7.2/app/src/main/res/mipmap-mdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter07/Exercise7.2/app/src/main/res/mipmap-mdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter07/Exercise7.2/app/src/main/res/mipmap-xhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter07/Exercise7.2/app/src/main/res/mipmap-xhdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter07/Exercise7.2/app/src/main/res/mipmap-xxhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter07/Exercise7.2/app/src/main/res/mipmap-xxhdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter07/Exercise7.2/app/src/main/res/values/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | Cat Agent Deployer 3 | Map 4 | 5 | -------------------------------------------------------------------------------- /Chapter07/Exercise7.2/gradle/wrapper/gradle-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter07/Exercise7.2/gradle/wrapper/gradle-wrapper.jar -------------------------------------------------------------------------------- /Chapter07/Exercise7.2/settings.gradle: -------------------------------------------------------------------------------- 1 | include ':app' 2 | rootProject.name='Cat Agent Deployer' 3 | -------------------------------------------------------------------------------- /Chapter07/Exercise7.3/app/.gitignore: -------------------------------------------------------------------------------- 1 | /build 2 | -------------------------------------------------------------------------------- /Chapter07/Exercise7.3/app/src/main/res/mipmap-hdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter07/Exercise7.3/app/src/main/res/mipmap-hdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter07/Exercise7.3/app/src/main/res/mipmap-mdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter07/Exercise7.3/app/src/main/res/mipmap-mdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter07/Exercise7.3/app/src/main/res/mipmap-xhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter07/Exercise7.3/app/src/main/res/mipmap-xhdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter07/Exercise7.3/app/src/main/res/mipmap-xxhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter07/Exercise7.3/app/src/main/res/mipmap-xxhdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter07/Exercise7.3/app/src/main/res/values/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | Cat Agent Deployer 3 | Map 4 | 5 | -------------------------------------------------------------------------------- /Chapter07/Exercise7.3/settings.gradle: -------------------------------------------------------------------------------- 1 | include ':app' 2 | rootProject.name='Cat Agent Deployer' 3 | -------------------------------------------------------------------------------- /Chapter08/Activity08.01/app/.gitignore: -------------------------------------------------------------------------------- 1 | /build 2 | -------------------------------------------------------------------------------- /Chapter08/Activity08.01/app/src/main/res/mipmap-hdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter08/Activity08.01/app/src/main/res/mipmap-hdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter08/Activity08.01/app/src/main/res/mipmap-mdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter08/Activity08.01/app/src/main/res/mipmap-mdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter08/Activity08.01/app/src/main/res/values/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | My Water Tracker 3 | 4 | -------------------------------------------------------------------------------- /Chapter08/Activity08.01/gradle/wrapper/gradle-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter08/Activity08.01/gradle/wrapper/gradle-wrapper.jar -------------------------------------------------------------------------------- /Chapter08/Activity08.01/settings.gradle: -------------------------------------------------------------------------------- 1 | rootProject.name='My Water Tracker' 2 | include ':app' 3 | -------------------------------------------------------------------------------- /Chapter08/Exercise8.1/app/.gitignore: -------------------------------------------------------------------------------- 1 | /build 2 | -------------------------------------------------------------------------------- /Chapter08/Exercise8.1/app/src/main/res/mipmap-hdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter08/Exercise8.1/app/src/main/res/mipmap-hdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter08/Exercise8.1/app/src/main/res/mipmap-mdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter08/Exercise8.1/app/src/main/res/mipmap-mdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter08/Exercise8.1/app/src/main/res/mipmap-xhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter08/Exercise8.1/app/src/main/res/mipmap-xhdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter08/Exercise8.1/app/src/main/res/mipmap-xxhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter08/Exercise8.1/app/src/main/res/mipmap-xxhdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter08/Exercise8.1/app/src/main/res/values/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | Cat Agent Tracker 3 | 4 | -------------------------------------------------------------------------------- /Chapter08/Exercise8.1/gradle/wrapper/gradle-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter08/Exercise8.1/gradle/wrapper/gradle-wrapper.jar -------------------------------------------------------------------------------- /Chapter08/Exercise8.1/settings.gradle: -------------------------------------------------------------------------------- 1 | rootProject.name='Cat Agent Tracker' 2 | include ':app' 3 | -------------------------------------------------------------------------------- /Chapter08/Exercise8.2/app/.gitignore: -------------------------------------------------------------------------------- 1 | /build 2 | -------------------------------------------------------------------------------- /Chapter08/Exercise8.2/app/src/main/res/mipmap-hdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter08/Exercise8.2/app/src/main/res/mipmap-hdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter08/Exercise8.2/app/src/main/res/mipmap-mdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter08/Exercise8.2/app/src/main/res/mipmap-mdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter08/Exercise8.2/app/src/main/res/mipmap-xhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter08/Exercise8.2/app/src/main/res/mipmap-xhdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter08/Exercise8.2/app/src/main/res/mipmap-xxhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter08/Exercise8.2/app/src/main/res/mipmap-xxhdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter08/Exercise8.2/app/src/main/res/values/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | Cat Agent Tracker 3 | 4 | -------------------------------------------------------------------------------- /Chapter08/Exercise8.2/settings.gradle: -------------------------------------------------------------------------------- 1 | rootProject.name='Cat Agent Tracker' 2 | include ':app' 3 | -------------------------------------------------------------------------------- /Chapter09/Activity09.01/.idea/.name: -------------------------------------------------------------------------------- 1 | My Application -------------------------------------------------------------------------------- /Chapter09/Activity09.01/.idea/codeStyles/codeStyleConfig.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 5 | -------------------------------------------------------------------------------- /Chapter09/Activity09.01/.idea/vcs.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /Chapter09/Activity09.01/app/.gitignore: -------------------------------------------------------------------------------- 1 | /build 2 | -------------------------------------------------------------------------------- /Chapter09/Activity09.01/app/src/main/res/mipmap-hdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter09/Activity09.01/app/src/main/res/mipmap-hdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter09/Activity09.01/app/src/main/res/mipmap-mdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter09/Activity09.01/app/src/main/res/mipmap-mdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter09/Activity09.01/app/src/test/resources/mockito-extensions/org.mockito.plugins.MockMaker: -------------------------------------------------------------------------------- 1 | mock-maker-inline -------------------------------------------------------------------------------- /Chapter09/Activity09.01/app/src/test/resources/robolectric.properties: -------------------------------------------------------------------------------- 1 | sdk=28 -------------------------------------------------------------------------------- /Chapter09/Activity09.01/gradle/wrapper/gradle-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter09/Activity09.01/gradle/wrapper/gradle-wrapper.jar -------------------------------------------------------------------------------- /Chapter09/Activity09.01/settings.gradle: -------------------------------------------------------------------------------- 1 | include ':app' 2 | rootProject.name='My Application' 3 | -------------------------------------------------------------------------------- /Chapter09/Exercise09.01/.idea/.name: -------------------------------------------------------------------------------- 1 | My Application -------------------------------------------------------------------------------- /Chapter09/Exercise09.01/.idea/codeStyles/codeStyleConfig.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 5 | -------------------------------------------------------------------------------- /Chapter09/Exercise09.01/.idea/vcs.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /Chapter09/Exercise09.01/app/.gitignore: -------------------------------------------------------------------------------- 1 | /build 2 | -------------------------------------------------------------------------------- /Chapter09/Exercise09.01/app/src/main/res/mipmap-hdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter09/Exercise09.01/app/src/main/res/mipmap-hdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter09/Exercise09.01/app/src/main/res/mipmap-mdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter09/Exercise09.01/app/src/main/res/mipmap-mdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter09/Exercise09.01/app/src/main/res/values/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | My Application 3 | 4 | -------------------------------------------------------------------------------- /Chapter09/Exercise09.01/gradle/wrapper/gradle-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter09/Exercise09.01/gradle/wrapper/gradle-wrapper.jar -------------------------------------------------------------------------------- /Chapter09/Exercise09.01/settings.gradle: -------------------------------------------------------------------------------- 1 | include ':app' 2 | rootProject.name='My Application' 3 | -------------------------------------------------------------------------------- /Chapter09/Exercise09.02/.idea/.name: -------------------------------------------------------------------------------- 1 | My Application -------------------------------------------------------------------------------- /Chapter09/Exercise09.02/.idea/codeStyles/codeStyleConfig.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 5 | -------------------------------------------------------------------------------- /Chapter09/Exercise09.02/.idea/vcs.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /Chapter09/Exercise09.02/app/.gitignore: -------------------------------------------------------------------------------- 1 | /build 2 | -------------------------------------------------------------------------------- /Chapter09/Exercise09.02/app/src/main/res/mipmap-hdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter09/Exercise09.02/app/src/main/res/mipmap-hdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter09/Exercise09.02/app/src/main/res/mipmap-mdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter09/Exercise09.02/app/src/main/res/mipmap-mdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter09/Exercise09.02/app/src/test/resources/mockito-extensions/org.mockito.plugins.MockMaker: -------------------------------------------------------------------------------- 1 | mock-maker-inline -------------------------------------------------------------------------------- /Chapter09/Exercise09.02/app/src/test/resources/robolectric.properties: -------------------------------------------------------------------------------- 1 | sdk=28 -------------------------------------------------------------------------------- /Chapter09/Exercise09.02/gradle/wrapper/gradle-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter09/Exercise09.02/gradle/wrapper/gradle-wrapper.jar -------------------------------------------------------------------------------- /Chapter09/Exercise09.02/settings.gradle: -------------------------------------------------------------------------------- 1 | include ':app' 2 | rootProject.name='My Application' 3 | -------------------------------------------------------------------------------- /Chapter09/Exercise09.03/.idea/.name: -------------------------------------------------------------------------------- 1 | My Application -------------------------------------------------------------------------------- /Chapter09/Exercise09.03/.idea/codeStyles/codeStyleConfig.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 5 | -------------------------------------------------------------------------------- /Chapter09/Exercise09.03/.idea/vcs.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /Chapter09/Exercise09.03/app/.gitignore: -------------------------------------------------------------------------------- 1 | /build 2 | -------------------------------------------------------------------------------- /Chapter09/Exercise09.03/app/src/main/res/mipmap-hdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter09/Exercise09.03/app/src/main/res/mipmap-hdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter09/Exercise09.03/app/src/main/res/mipmap-mdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter09/Exercise09.03/app/src/main/res/mipmap-mdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter09/Exercise09.03/gradle/wrapper/gradle-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter09/Exercise09.03/gradle/wrapper/gradle-wrapper.jar -------------------------------------------------------------------------------- /Chapter09/Exercise09.03/settings.gradle: -------------------------------------------------------------------------------- 1 | include ':app' 2 | rootProject.name='My Application' 3 | -------------------------------------------------------------------------------- /Chapter09/Exercise09.04/.idea/codeStyles/codeStyleConfig.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 5 | -------------------------------------------------------------------------------- /Chapter09/Exercise09.04/.idea/vcs.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /Chapter09/Exercise09.04/app/.gitignore: -------------------------------------------------------------------------------- 1 | /build 2 | -------------------------------------------------------------------------------- /Chapter09/Exercise09.04/app/src/main/res/mipmap-hdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter09/Exercise09.04/app/src/main/res/mipmap-hdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter09/Exercise09.04/app/src/main/res/mipmap-mdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter09/Exercise09.04/app/src/main/res/mipmap-mdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter09/Exercise09.04/app/src/main/res/values/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | Exercise09.04 3 | 4 | -------------------------------------------------------------------------------- /Chapter09/Exercise09.04/gradle/wrapper/gradle-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter09/Exercise09.04/gradle/wrapper/gradle-wrapper.jar -------------------------------------------------------------------------------- /Chapter09/Exercise09.04/settings.gradle: -------------------------------------------------------------------------------- 1 | include ':app' 2 | rootProject.name='Exercise09.04' 3 | -------------------------------------------------------------------------------- /Chapter10/Activity10.01/.idea/.name: -------------------------------------------------------------------------------- 1 | NotesApplication -------------------------------------------------------------------------------- /Chapter10/Activity10.01/.idea/codeStyles/codeStyleConfig.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 5 | -------------------------------------------------------------------------------- /Chapter10/Activity10.01/.idea/vcs.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /Chapter10/Activity10.01/app/.gitignore: -------------------------------------------------------------------------------- 1 | /build 2 | -------------------------------------------------------------------------------- /Chapter10/Activity10.01/app/src/main/res/mipmap-hdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter10/Activity10.01/app/src/main/res/mipmap-hdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter10/Activity10.01/app/src/main/res/mipmap-mdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter10/Activity10.01/app/src/main/res/mipmap-mdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter10/Activity10.01/app/src/test/resources/mockito-extensions/org.mockito.plugins.MockMaker: -------------------------------------------------------------------------------- 1 | mock-maker-inline -------------------------------------------------------------------------------- /Chapter10/Activity10.01/gradle/wrapper/gradle-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter10/Activity10.01/gradle/wrapper/gradle-wrapper.jar -------------------------------------------------------------------------------- /Chapter10/Activity10.01/settings.gradle: -------------------------------------------------------------------------------- 1 | include ':app' 2 | rootProject.name='NotesApplication' 3 | -------------------------------------------------------------------------------- /Chapter10/Exercise10.01-10.04/.idea/.name: -------------------------------------------------------------------------------- 1 | ViewModelLiveData -------------------------------------------------------------------------------- /Chapter10/Exercise10.01-10.04/.idea/codeStyles/codeStyleConfig.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 5 | -------------------------------------------------------------------------------- /Chapter10/Exercise10.01-10.04/app/.gitignore: -------------------------------------------------------------------------------- 1 | /build 2 | -------------------------------------------------------------------------------- /Chapter10/Exercise10.01-10.04/gradle/wrapper/gradle-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter10/Exercise10.01-10.04/gradle/wrapper/gradle-wrapper.jar -------------------------------------------------------------------------------- /Chapter10/Exercise10.01-10.04/settings.gradle: -------------------------------------------------------------------------------- 1 | include ':app' 2 | rootProject.name='ViewModelLiveData' 3 | -------------------------------------------------------------------------------- /Chapter10/Exercise10.05/.idea/.name: -------------------------------------------------------------------------------- 1 | RoomExample -------------------------------------------------------------------------------- /Chapter10/Exercise10.05/.idea/codeStyles/codeStyleConfig.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 5 | -------------------------------------------------------------------------------- /Chapter10/Exercise10.05/.idea/vcs.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /Chapter10/Exercise10.05/app/.gitignore: -------------------------------------------------------------------------------- 1 | /build 2 | -------------------------------------------------------------------------------- /Chapter10/Exercise10.05/app/src/main/res/mipmap-hdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter10/Exercise10.05/app/src/main/res/mipmap-hdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter10/Exercise10.05/app/src/main/res/mipmap-mdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter10/Exercise10.05/app/src/main/res/mipmap-mdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter10/Exercise10.05/app/src/main/res/values/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | RoomExample 3 | 4 | -------------------------------------------------------------------------------- /Chapter10/Exercise10.05/gradle/wrapper/gradle-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter10/Exercise10.05/gradle/wrapper/gradle-wrapper.jar -------------------------------------------------------------------------------- /Chapter10/Exercise10.05/settings.gradle: -------------------------------------------------------------------------------- 1 | include ':app' 2 | rootProject.name='RoomExample' 3 | -------------------------------------------------------------------------------- /Chapter10/Exercise10.06/.idea/.name: -------------------------------------------------------------------------------- 1 | LifecycleExample -------------------------------------------------------------------------------- /Chapter10/Exercise10.06/.idea/codeStyles/codeStyleConfig.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 5 | -------------------------------------------------------------------------------- /Chapter10/Exercise10.06/.idea/vcs.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /Chapter10/Exercise10.06/app/.gitignore: -------------------------------------------------------------------------------- 1 | /build 2 | -------------------------------------------------------------------------------- /Chapter10/Exercise10.06/app/src/main/res/mipmap-hdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter10/Exercise10.06/app/src/main/res/mipmap-hdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter10/Exercise10.06/app/src/main/res/mipmap-mdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter10/Exercise10.06/app/src/main/res/mipmap-mdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter10/Exercise10.06/app/src/main/res/values/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | LifecycleExample 3 | 4 | -------------------------------------------------------------------------------- /Chapter10/Exercise10.06/gradle/wrapper/gradle-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter10/Exercise10.06/gradle/wrapper/gradle-wrapper.jar -------------------------------------------------------------------------------- /Chapter10/Exercise10.06/settings.gradle: -------------------------------------------------------------------------------- 1 | include ':app' 2 | rootProject.name='LifecycleExample' 3 | -------------------------------------------------------------------------------- /Chapter11/Activity11.01/.idea/.name: -------------------------------------------------------------------------------- 1 | Remote-media-provider -------------------------------------------------------------------------------- /Chapter11/Activity11.01/.idea/codeStyles/codeStyleConfig.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 5 | -------------------------------------------------------------------------------- /Chapter11/Activity11.01/.idea/vcs.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /Chapter11/Activity11.01/app/.gitignore: -------------------------------------------------------------------------------- 1 | /build 2 | -------------------------------------------------------------------------------- /Chapter11/Activity11.01/app/src/main/java/com/android/testable/remote_media_provider/repository/DogUi.kt: -------------------------------------------------------------------------------- 1 | package com.android.testable.remote_media_provider.repository 2 | 3 | data class DogUi(val url: String) -------------------------------------------------------------------------------- /Chapter11/Activity11.01/app/src/main/res/mipmap-hdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter11/Activity11.01/app/src/main/res/mipmap-hdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter11/Activity11.01/app/src/main/res/mipmap-mdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter11/Activity11.01/app/src/main/res/mipmap-mdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter11/Activity11.01/app/src/main/res/values/preferences.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | preference_key_nr_results 4 | -------------------------------------------------------------------------------- /Chapter11/Activity11.01/app/src/main/res/xml/provider_paths.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 6 | -------------------------------------------------------------------------------- /Chapter11/Activity11.01/app/src/test/resources/mockito-extensions/org.mockito.plugins.MockMaker: -------------------------------------------------------------------------------- 1 | mock-maker-inline -------------------------------------------------------------------------------- /Chapter11/Activity11.01/gradle/wrapper/gradle-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter11/Activity11.01/gradle/wrapper/gradle-wrapper.jar -------------------------------------------------------------------------------- /Chapter11/Activity11.01/settings.gradle: -------------------------------------------------------------------------------- 1 | include ':app' 2 | rootProject.name='Remote-media-provider' 3 | -------------------------------------------------------------------------------- /Chapter11/Exercise11.01-11.02/.idea/.name: -------------------------------------------------------------------------------- 1 | Repository -------------------------------------------------------------------------------- /Chapter11/Exercise11.01-11.02/.idea/codeStyles/codeStyleConfig.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 5 | -------------------------------------------------------------------------------- /Chapter11/Exercise11.01-11.02/app/.gitignore: -------------------------------------------------------------------------------- 1 | /build 2 | -------------------------------------------------------------------------------- /Chapter11/Exercise11.01-11.02/app/src/main/java/com/android/testable/repository/repository/UiPost.kt: -------------------------------------------------------------------------------- 1 | package com.android.testable.repository.repository 2 | 3 | data class UiPost( 4 | val title: String, 5 | val body: String 6 | ) -------------------------------------------------------------------------------- /Chapter11/Exercise11.01-11.02/app/src/main/res/values/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | Repository 3 | Something went wrong 4 | 5 | -------------------------------------------------------------------------------- /Chapter11/Exercise11.01-11.02/app/src/test/resources/mockito-extensions/org.mockito.plugins.MockMaker: -------------------------------------------------------------------------------- 1 | mock-maker-inline -------------------------------------------------------------------------------- /Chapter11/Exercise11.01-11.02/gradle/wrapper/gradle-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter11/Exercise11.01-11.02/gradle/wrapper/gradle-wrapper.jar -------------------------------------------------------------------------------- /Chapter11/Exercise11.01-11.02/settings.gradle: -------------------------------------------------------------------------------- 1 | include ':app' 2 | rootProject.name='Repository' 3 | -------------------------------------------------------------------------------- /Chapter11/Exercise11.03/.idea/.name: -------------------------------------------------------------------------------- 1 | SharedPreferences -------------------------------------------------------------------------------- /Chapter11/Exercise11.03/.idea/codeStyles/codeStyleConfig.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 5 | -------------------------------------------------------------------------------- /Chapter11/Exercise11.03/.idea/vcs.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /Chapter11/Exercise11.03/app/.gitignore: -------------------------------------------------------------------------------- 1 | /build 2 | -------------------------------------------------------------------------------- /Chapter11/Exercise11.03/app/src/main/res/mipmap-hdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter11/Exercise11.03/app/src/main/res/mipmap-hdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter11/Exercise11.03/app/src/main/res/mipmap-mdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter11/Exercise11.03/app/src/main/res/mipmap-mdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter11/Exercise11.03/app/src/main/res/values/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | SharedPreferences 3 | 4 | -------------------------------------------------------------------------------- /Chapter11/Exercise11.03/app/src/test/resources/mockito-extensions/org.mockito.plugins.MockMaker: -------------------------------------------------------------------------------- 1 | mock-maker-inline -------------------------------------------------------------------------------- /Chapter11/Exercise11.03/gradle/wrapper/gradle-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter11/Exercise11.03/gradle/wrapper/gradle-wrapper.jar -------------------------------------------------------------------------------- /Chapter11/Exercise11.03/settings.gradle: -------------------------------------------------------------------------------- 1 | include ':app' 2 | rootProject.name='SharedPreferences' 3 | -------------------------------------------------------------------------------- /Chapter11/Exercise11.04/.idea/.name: -------------------------------------------------------------------------------- 1 | PreferenceFragments -------------------------------------------------------------------------------- /Chapter11/Exercise11.04/.idea/codeStyles/codeStyleConfig.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 5 | -------------------------------------------------------------------------------- /Chapter11/Exercise11.04/.idea/vcs.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /Chapter11/Exercise11.04/app/.gitignore: -------------------------------------------------------------------------------- 1 | /build 2 | -------------------------------------------------------------------------------- /Chapter11/Exercise11.04/app/src/main/res/mipmap-hdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter11/Exercise11.04/app/src/main/res/mipmap-hdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter11/Exercise11.04/app/src/main/res/mipmap-mdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter11/Exercise11.04/app/src/main/res/mipmap-mdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter11/Exercise11.04/gradle/wrapper/gradle-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter11/Exercise11.04/gradle/wrapper/gradle-wrapper.jar -------------------------------------------------------------------------------- /Chapter11/Exercise11.04/settings.gradle: -------------------------------------------------------------------------------- 1 | include ':app' 2 | rootProject.name='PreferenceFragments' 3 | -------------------------------------------------------------------------------- /Chapter11/Exercise11.05/.idea/.name: -------------------------------------------------------------------------------- 1 | Files -------------------------------------------------------------------------------- /Chapter11/Exercise11.05/.idea/codeStyles/codeStyleConfig.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 5 | -------------------------------------------------------------------------------- /Chapter11/Exercise11.05/.idea/vcs.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /Chapter11/Exercise11.05/app/.gitignore: -------------------------------------------------------------------------------- 1 | /build 2 | -------------------------------------------------------------------------------- /Chapter11/Exercise11.05/app/src/main/assets/my-app-file.txt: -------------------------------------------------------------------------------- 1 | This 2 | is 3 | a 4 | multiline 5 | text 6 | file -------------------------------------------------------------------------------- /Chapter11/Exercise11.05/app/src/main/res/mipmap-hdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter11/Exercise11.05/app/src/main/res/mipmap-hdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter11/Exercise11.05/app/src/main/res/mipmap-mdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter11/Exercise11.05/app/src/main/res/mipmap-mdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter11/Exercise11.05/app/src/main/res/values/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | Files 3 | FileProvider 4 | SAF 5 | 6 | -------------------------------------------------------------------------------- /Chapter11/Exercise11.05/app/src/main/res/xml/file_provider_paths.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /Chapter11/Exercise11.05/app/src/test/resources/mockito-extensions/org.mockito.plugins.MockMaker: -------------------------------------------------------------------------------- 1 | mock-maker-inline -------------------------------------------------------------------------------- /Chapter11/Exercise11.05/gradle/wrapper/gradle-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter11/Exercise11.05/gradle/wrapper/gradle-wrapper.jar -------------------------------------------------------------------------------- /Chapter11/Exercise11.05/settings.gradle: -------------------------------------------------------------------------------- 1 | include ':app' 2 | rootProject.name='Files' 3 | -------------------------------------------------------------------------------- /Chapter11/Exercise11.06/.idea/.name: -------------------------------------------------------------------------------- 1 | Camera -------------------------------------------------------------------------------- /Chapter11/Exercise11.06/.idea/codeStyles/codeStyleConfig.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 5 | -------------------------------------------------------------------------------- /Chapter11/Exercise11.06/.idea/vcs.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /Chapter11/Exercise11.06/app/.gitignore: -------------------------------------------------------------------------------- 1 | /build 2 | -------------------------------------------------------------------------------- /Chapter11/Exercise11.06/app/src/main/res/mipmap-hdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter11/Exercise11.06/app/src/main/res/mipmap-hdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter11/Exercise11.06/app/src/main/res/mipmap-mdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter11/Exercise11.06/app/src/main/res/mipmap-mdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter11/Exercise11.06/app/src/main/res/values/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | Camera 3 | Photo 4 | Video 5 | 6 | -------------------------------------------------------------------------------- /Chapter11/Exercise11.06/app/src/test/resources/mockito-extensions/org.mockito.plugins.MockMaker: -------------------------------------------------------------------------------- 1 | mock-maker-inline -------------------------------------------------------------------------------- /Chapter11/Exercise11.06/gradle/wrapper/gradle-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter11/Exercise11.06/gradle/wrapper/gradle-wrapper.jar -------------------------------------------------------------------------------- /Chapter11/Exercise11.06/settings.gradle: -------------------------------------------------------------------------------- 1 | include ':app' 2 | rootProject.name='Camera' 3 | -------------------------------------------------------------------------------- /Chapter12/Activity12.01/.idea/.name: -------------------------------------------------------------------------------- 1 | My Application -------------------------------------------------------------------------------- /Chapter12/Activity12.01/.idea/codeStyles/codeStyleConfig.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 5 | -------------------------------------------------------------------------------- /Chapter12/Activity12.01/.idea/vcs.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /Chapter12/Activity12.01/app/.gitignore: -------------------------------------------------------------------------------- 1 | /build 2 | -------------------------------------------------------------------------------- /Chapter12/Activity12.01/app/src/main/res/mipmap-hdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter12/Activity12.01/app/src/main/res/mipmap-hdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter12/Activity12.01/app/src/main/res/mipmap-mdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter12/Activity12.01/app/src/main/res/mipmap-mdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter12/Activity12.01/app/src/main/res/values/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | My Application 3 | 4 | -------------------------------------------------------------------------------- /Chapter12/Activity12.01/gradle/wrapper/gradle-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter12/Activity12.01/gradle/wrapper/gradle-wrapper.jar -------------------------------------------------------------------------------- /Chapter12/Activity12.01/settings.gradle: -------------------------------------------------------------------------------- 1 | include ':app' 2 | rootProject.name='My Application' 3 | -------------------------------------------------------------------------------- /Chapter12/Activity12.02/.idea/.name: -------------------------------------------------------------------------------- 1 | My Application -------------------------------------------------------------------------------- /Chapter12/Activity12.02/.idea/codeStyles/codeStyleConfig.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 5 | -------------------------------------------------------------------------------- /Chapter12/Activity12.02/.idea/vcs.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /Chapter12/Activity12.02/app/.gitignore: -------------------------------------------------------------------------------- 1 | /build 2 | -------------------------------------------------------------------------------- /Chapter12/Activity12.02/app/src/main/res/mipmap-hdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter12/Activity12.02/app/src/main/res/mipmap-hdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter12/Activity12.02/app/src/main/res/mipmap-mdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter12/Activity12.02/app/src/main/res/mipmap-mdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter12/Activity12.02/app/src/main/res/values/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | My Application 3 | 4 | -------------------------------------------------------------------------------- /Chapter12/Activity12.02/gradle/wrapper/gradle-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter12/Activity12.02/gradle/wrapper/gradle-wrapper.jar -------------------------------------------------------------------------------- /Chapter12/Activity12.02/settings.gradle: -------------------------------------------------------------------------------- 1 | include ':app' 2 | rootProject.name='My Application' 3 | -------------------------------------------------------------------------------- /Chapter12/Exercise12.01/.idea/.name: -------------------------------------------------------------------------------- 1 | Exercise12.01 -------------------------------------------------------------------------------- /Chapter12/Exercise12.01/.idea/codeStyles/codeStyleConfig.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 5 | -------------------------------------------------------------------------------- /Chapter12/Exercise12.01/.idea/vcs.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /Chapter12/Exercise12.01/app/.gitignore: -------------------------------------------------------------------------------- 1 | /build 2 | -------------------------------------------------------------------------------- /Chapter12/Exercise12.01/app/src/main/java/com/android/testable/randomapplication/NumberRepository.kt: -------------------------------------------------------------------------------- 1 | package com.android.testable.randomapplication 2 | 3 | interface NumberRepository { 4 | 5 | fun generateNextNumber(): Int 6 | } -------------------------------------------------------------------------------- /Chapter12/Exercise12.01/app/src/main/res/mipmap-hdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter12/Exercise12.01/app/src/main/res/mipmap-hdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter12/Exercise12.01/app/src/main/res/mipmap-mdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter12/Exercise12.01/app/src/main/res/mipmap-mdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter12/Exercise12.01/app/src/main/res/values/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | RandomApplication 3 | Randomize 4 | 5 | -------------------------------------------------------------------------------- /Chapter12/Exercise12.01/gradle/wrapper/gradle-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter12/Exercise12.01/gradle/wrapper/gradle-wrapper.jar -------------------------------------------------------------------------------- /Chapter12/Exercise12.01/settings.gradle: -------------------------------------------------------------------------------- 1 | include ':app' 2 | rootProject.name='Exercise12.01' 3 | -------------------------------------------------------------------------------- /Chapter12/Exercise12.02/.idea/.name: -------------------------------------------------------------------------------- 1 | RandomApplication -------------------------------------------------------------------------------- /Chapter12/Exercise12.02/.idea/codeStyles/codeStyleConfig.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 5 | -------------------------------------------------------------------------------- /Chapter12/Exercise12.02/.idea/vcs.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /Chapter12/Exercise12.02/app/.gitignore: -------------------------------------------------------------------------------- 1 | /build 2 | -------------------------------------------------------------------------------- /Chapter12/Exercise12.02/app/src/main/java/com/android/testable/randomapplication/NumberRepository.kt: -------------------------------------------------------------------------------- 1 | package com.android.testable.randomapplication 2 | 3 | interface NumberRepository { 4 | 5 | fun generateNextNumber(): Int 6 | } -------------------------------------------------------------------------------- /Chapter12/Exercise12.02/app/src/main/res/mipmap-hdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter12/Exercise12.02/app/src/main/res/mipmap-hdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter12/Exercise12.02/app/src/main/res/mipmap-mdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter12/Exercise12.02/app/src/main/res/mipmap-mdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter12/Exercise12.02/app/src/main/res/values/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | RandomApplication 3 | Randomize 4 | 5 | -------------------------------------------------------------------------------- /Chapter12/Exercise12.02/gradle/wrapper/gradle-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter12/Exercise12.02/gradle/wrapper/gradle-wrapper.jar -------------------------------------------------------------------------------- /Chapter12/Exercise12.02/settings.gradle: -------------------------------------------------------------------------------- 1 | include ':app' 2 | rootProject.name='RandomApplication' 3 | -------------------------------------------------------------------------------- /Chapter12/Exercise12.03/.idea/.name: -------------------------------------------------------------------------------- 1 | RandomApplication -------------------------------------------------------------------------------- /Chapter12/Exercise12.03/.idea/codeStyles/codeStyleConfig.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 5 | -------------------------------------------------------------------------------- /Chapter12/Exercise12.03/.idea/vcs.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /Chapter12/Exercise12.03/app/.gitignore: -------------------------------------------------------------------------------- 1 | /build 2 | -------------------------------------------------------------------------------- /Chapter12/Exercise12.03/app/src/main/java/com/android/testable/randomapplication/NumberRepository.kt: -------------------------------------------------------------------------------- 1 | package com.android.testable.randomapplication 2 | 3 | interface NumberRepository { 4 | 5 | fun generateNextNumber(): Int 6 | } -------------------------------------------------------------------------------- /Chapter12/Exercise12.03/app/src/main/res/mipmap-hdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter12/Exercise12.03/app/src/main/res/mipmap-hdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter12/Exercise12.03/app/src/main/res/mipmap-mdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter12/Exercise12.03/app/src/main/res/mipmap-mdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter12/Exercise12.03/app/src/main/res/values/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | RandomApplication 3 | Randomize 4 | 5 | -------------------------------------------------------------------------------- /Chapter12/Exercise12.03/gradle/wrapper/gradle-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter12/Exercise12.03/gradle/wrapper/gradle-wrapper.jar -------------------------------------------------------------------------------- /Chapter12/Exercise12.03/settings.gradle: -------------------------------------------------------------------------------- 1 | include ':app' 2 | rootProject.name='RandomApplication' 3 | -------------------------------------------------------------------------------- /Chapter12/Exercise12.04/.idea/.name: -------------------------------------------------------------------------------- 1 | Random Application -------------------------------------------------------------------------------- /Chapter12/Exercise12.04/.idea/codeStyles/codeStyleConfig.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 5 | -------------------------------------------------------------------------------- /Chapter12/Exercise12.04/.idea/vcs.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /Chapter12/Exercise12.04/app/.gitignore: -------------------------------------------------------------------------------- 1 | /build 2 | -------------------------------------------------------------------------------- /Chapter12/Exercise12.04/app/src/main/java/com/android/testable/randomapplication/NumberRepository.kt: -------------------------------------------------------------------------------- 1 | package com.android.testable.randomapplication 2 | 3 | interface NumberRepository { 4 | 5 | fun generateNextNumber(): Int 6 | } -------------------------------------------------------------------------------- /Chapter12/Exercise12.04/app/src/main/res/mipmap-hdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter12/Exercise12.04/app/src/main/res/mipmap-hdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter12/Exercise12.04/app/src/main/res/mipmap-mdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter12/Exercise12.04/app/src/main/res/mipmap-mdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter12/Exercise12.04/app/src/main/res/values/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | Random Application 3 | Randomize 4 | 5 | -------------------------------------------------------------------------------- /Chapter12/Exercise12.04/gradle/wrapper/gradle-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter12/Exercise12.04/gradle/wrapper/gradle-wrapper.jar -------------------------------------------------------------------------------- /Chapter12/Exercise12.04/settings.gradle: -------------------------------------------------------------------------------- 1 | include ':app' 2 | rootProject.name='Random Application' 3 | -------------------------------------------------------------------------------- /Chapter13/Activity13.01/app/.gitignore: -------------------------------------------------------------------------------- 1 | /build -------------------------------------------------------------------------------- /Chapter13/Activity13.01/app/src/main/ic_launcher-playstore.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter13/Activity13.01/app/src/main/ic_launcher-playstore.png -------------------------------------------------------------------------------- /Chapter13/Activity13.01/app/src/main/java/com/example/tvguide/model/TVResponse.kt: -------------------------------------------------------------------------------- 1 | package com.example.tvguide.model 2 | 3 | data class TVResponse( 4 | val page: Int, 5 | val results: List 6 | ) -------------------------------------------------------------------------------- /Chapter13/Activity13.01/app/src/main/res/mipmap-hdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter13/Activity13.01/app/src/main/res/mipmap-hdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter13/Activity13.01/app/src/main/res/mipmap-mdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter13/Activity13.01/app/src/main/res/mipmap-mdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter13/Activity13.01/app/src/main/res/values/dimens.xml: -------------------------------------------------------------------------------- 1 | 2 | 16dp 3 | 4 | -------------------------------------------------------------------------------- /Chapter13/Activity13.01/app/src/main/res/values/ic_launcher_background.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | #03A9F4 4 | -------------------------------------------------------------------------------- /Chapter13/Activity13.01/app/src/main/res/values/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | TV Guide 3 | -------------------------------------------------------------------------------- /Chapter13/Activity13.01/app/src/test/resources/mockito-extensions/org.mockito.plugins.MockMaker: -------------------------------------------------------------------------------- 1 | mock-maker-inline -------------------------------------------------------------------------------- /Chapter13/Activity13.01/gradle/wrapper/gradle-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter13/Activity13.01/gradle/wrapper/gradle-wrapper.jar -------------------------------------------------------------------------------- /Chapter13/Activity13.01/settings.gradle: -------------------------------------------------------------------------------- 1 | include ':app' 2 | rootProject.name = "TV Guide" -------------------------------------------------------------------------------- /Chapter13/Exercise13.01/app/.gitignore: -------------------------------------------------------------------------------- 1 | /build -------------------------------------------------------------------------------- /Chapter13/Exercise13.01/app/src/main/ic_launcher-playstore.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter13/Exercise13.01/app/src/main/ic_launcher-playstore.png -------------------------------------------------------------------------------- /Chapter13/Exercise13.01/app/src/main/java/com/example/popularmovies/model/PopularMoviesResponse.kt: -------------------------------------------------------------------------------- 1 | package com.example.popularmovies.model 2 | 3 | data class PopularMoviesResponse( 4 | val page: Int, 5 | val results: List 6 | ) -------------------------------------------------------------------------------- /Chapter13/Exercise13.01/app/src/main/res/mipmap-hdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter13/Exercise13.01/app/src/main/res/mipmap-hdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter13/Exercise13.01/app/src/main/res/mipmap-mdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter13/Exercise13.01/app/src/main/res/mipmap-mdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter13/Exercise13.01/app/src/main/res/values/dimens.xml: -------------------------------------------------------------------------------- 1 | 2 | 16dp 3 | 4 | -------------------------------------------------------------------------------- /Chapter13/Exercise13.01/app/src/main/res/values/ic_launcher_background.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | #FFEB3B 4 | -------------------------------------------------------------------------------- /Chapter13/Exercise13.01/app/src/main/res/values/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | Popular Movies 3 | -------------------------------------------------------------------------------- /Chapter13/Exercise13.01/app/src/test/resources/mockito-extensions/org.mockito.plugins.MockMaker: -------------------------------------------------------------------------------- 1 | mock-maker-inline -------------------------------------------------------------------------------- /Chapter13/Exercise13.01/gradle/wrapper/gradle-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter13/Exercise13.01/gradle/wrapper/gradle-wrapper.jar -------------------------------------------------------------------------------- /Chapter13/Exercise13.01/settings.gradle: -------------------------------------------------------------------------------- 1 | include ':app' 2 | rootProject.name = "Popular Movies" -------------------------------------------------------------------------------- /Chapter13/Exercise13.02/app/.gitignore: -------------------------------------------------------------------------------- 1 | /build -------------------------------------------------------------------------------- /Chapter13/Exercise13.02/app/src/main/ic_launcher-playstore.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter13/Exercise13.02/app/src/main/ic_launcher-playstore.png -------------------------------------------------------------------------------- /Chapter13/Exercise13.02/app/src/main/java/com/example/popularmovies/model/PopularMoviesResponse.kt: -------------------------------------------------------------------------------- 1 | package com.example.popularmovies.model 2 | 3 | data class PopularMoviesResponse( 4 | val page: Int, 5 | val results: List 6 | ) -------------------------------------------------------------------------------- /Chapter13/Exercise13.02/app/src/main/res/mipmap-hdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter13/Exercise13.02/app/src/main/res/mipmap-hdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter13/Exercise13.02/app/src/main/res/mipmap-mdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter13/Exercise13.02/app/src/main/res/mipmap-mdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter13/Exercise13.02/app/src/main/res/values/dimens.xml: -------------------------------------------------------------------------------- 1 | 2 | 16dp 3 | 4 | -------------------------------------------------------------------------------- /Chapter13/Exercise13.02/app/src/main/res/values/ic_launcher_background.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | #FFEB3B 4 | -------------------------------------------------------------------------------- /Chapter13/Exercise13.02/app/src/main/res/values/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | Popular Movies 3 | -------------------------------------------------------------------------------- /Chapter13/Exercise13.02/app/src/test/resources/mockito-extensions/org.mockito.plugins.MockMaker: -------------------------------------------------------------------------------- 1 | mock-maker-inline -------------------------------------------------------------------------------- /Chapter13/Exercise13.02/gradle/wrapper/gradle-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter13/Exercise13.02/gradle/wrapper/gradle-wrapper.jar -------------------------------------------------------------------------------- /Chapter13/Exercise13.02/settings.gradle: -------------------------------------------------------------------------------- 1 | include ':app' 2 | rootProject.name = "Popular Movies" -------------------------------------------------------------------------------- /Chapter13/Exercise13.03/app/.gitignore: -------------------------------------------------------------------------------- 1 | /build -------------------------------------------------------------------------------- /Chapter13/Exercise13.03/app/src/main/ic_launcher-playstore.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter13/Exercise13.03/app/src/main/ic_launcher-playstore.png -------------------------------------------------------------------------------- /Chapter13/Exercise13.03/app/src/main/java/com/example/popularmovies/model/PopularMoviesResponse.kt: -------------------------------------------------------------------------------- 1 | package com.example.popularmovies.model 2 | 3 | data class PopularMoviesResponse( 4 | val page: Int, 5 | val results: List 6 | ) -------------------------------------------------------------------------------- /Chapter13/Exercise13.03/app/src/main/res/mipmap-hdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter13/Exercise13.03/app/src/main/res/mipmap-hdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter13/Exercise13.03/app/src/main/res/mipmap-mdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter13/Exercise13.03/app/src/main/res/mipmap-mdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter13/Exercise13.03/app/src/main/res/values/dimens.xml: -------------------------------------------------------------------------------- 1 | 2 | 16dp 3 | 4 | -------------------------------------------------------------------------------- /Chapter13/Exercise13.03/app/src/main/res/values/ic_launcher_background.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | #FFEB3B 4 | -------------------------------------------------------------------------------- /Chapter13/Exercise13.03/app/src/main/res/values/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | Popular Movies 3 | -------------------------------------------------------------------------------- /Chapter13/Exercise13.03/app/src/test/resources/mockito-extensions/org.mockito.plugins.MockMaker: -------------------------------------------------------------------------------- 1 | mock-maker-inline -------------------------------------------------------------------------------- /Chapter13/Exercise13.03/gradle/wrapper/gradle-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter13/Exercise13.03/gradle/wrapper/gradle-wrapper.jar -------------------------------------------------------------------------------- /Chapter13/Exercise13.03/settings.gradle: -------------------------------------------------------------------------------- 1 | include ':app' 2 | rootProject.name = "Popular Movies" -------------------------------------------------------------------------------- /Chapter13/Exercise13.04/app/.gitignore: -------------------------------------------------------------------------------- 1 | /build -------------------------------------------------------------------------------- /Chapter13/Exercise13.04/app/src/main/ic_launcher-playstore.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter13/Exercise13.04/app/src/main/ic_launcher-playstore.png -------------------------------------------------------------------------------- /Chapter13/Exercise13.04/app/src/main/java/com/example/popularmovies/model/PopularMoviesResponse.kt: -------------------------------------------------------------------------------- 1 | package com.example.popularmovies.model 2 | 3 | data class PopularMoviesResponse( 4 | val page: Int, 5 | val results: List 6 | ) -------------------------------------------------------------------------------- /Chapter13/Exercise13.04/app/src/main/res/mipmap-hdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter13/Exercise13.04/app/src/main/res/mipmap-hdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter13/Exercise13.04/app/src/main/res/mipmap-mdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter13/Exercise13.04/app/src/main/res/mipmap-mdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter13/Exercise13.04/app/src/main/res/values/dimens.xml: -------------------------------------------------------------------------------- 1 | 2 | 16dp 3 | 4 | -------------------------------------------------------------------------------- /Chapter13/Exercise13.04/app/src/main/res/values/ic_launcher_background.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | #FFEB3B 4 | -------------------------------------------------------------------------------- /Chapter13/Exercise13.04/app/src/main/res/values/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | Popular Movies 3 | -------------------------------------------------------------------------------- /Chapter13/Exercise13.04/app/src/test/resources/mockito-extensions/org.mockito.plugins.MockMaker: -------------------------------------------------------------------------------- 1 | mock-maker-inline -------------------------------------------------------------------------------- /Chapter13/Exercise13.04/gradle/wrapper/gradle-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter13/Exercise13.04/gradle/wrapper/gradle-wrapper.jar -------------------------------------------------------------------------------- /Chapter13/Exercise13.04/settings.gradle: -------------------------------------------------------------------------------- 1 | include ':app' 2 | rootProject.name = "Popular Movies" -------------------------------------------------------------------------------- /Chapter14/Activity14.01/app/.gitignore: -------------------------------------------------------------------------------- 1 | /build -------------------------------------------------------------------------------- /Chapter14/Activity14.01/app/src/main/ic_launcher-playstore.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter14/Activity14.01/app/src/main/ic_launcher-playstore.png -------------------------------------------------------------------------------- /Chapter14/Activity14.01/app/src/main/java/com/example/tvguide/model/TVResponse.kt: -------------------------------------------------------------------------------- 1 | package com.example.tvguide.model 2 | 3 | data class TVResponse( 4 | val page: Int, 5 | val results: List 6 | ) -------------------------------------------------------------------------------- /Chapter14/Activity14.01/app/src/main/res/mipmap-hdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter14/Activity14.01/app/src/main/res/mipmap-hdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter14/Activity14.01/app/src/main/res/mipmap-mdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter14/Activity14.01/app/src/main/res/mipmap-mdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter14/Activity14.01/app/src/main/res/values/dimens.xml: -------------------------------------------------------------------------------- 1 | 2 | 16dp 3 | 4 | -------------------------------------------------------------------------------- /Chapter14/Activity14.01/app/src/main/res/values/ic_launcher_background.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | #03A9F4 4 | -------------------------------------------------------------------------------- /Chapter14/Activity14.01/app/src/main/res/values/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | TV Guide 3 | -------------------------------------------------------------------------------- /Chapter14/Activity14.01/app/src/test/resources/mockito-extensions/org.mockito.plugins.MockMaker: -------------------------------------------------------------------------------- 1 | mock-maker-inline -------------------------------------------------------------------------------- /Chapter14/Activity14.01/gradle/wrapper/gradle-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter14/Activity14.01/gradle/wrapper/gradle-wrapper.jar -------------------------------------------------------------------------------- /Chapter14/Activity14.01/settings.gradle: -------------------------------------------------------------------------------- 1 | include ':app' 2 | rootProject.name = "TV Guide" -------------------------------------------------------------------------------- /Chapter14/Exercise14.01/app/.gitignore: -------------------------------------------------------------------------------- 1 | /build -------------------------------------------------------------------------------- /Chapter14/Exercise14.01/app/src/main/ic_launcher-playstore.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter14/Exercise14.01/app/src/main/ic_launcher-playstore.png -------------------------------------------------------------------------------- /Chapter14/Exercise14.01/app/src/main/java/com/example/popularmovies/model/PopularMoviesResponse.kt: -------------------------------------------------------------------------------- 1 | package com.example.popularmovies.model 2 | 3 | data class PopularMoviesResponse( 4 | val page: Int, 5 | val results: List 6 | ) -------------------------------------------------------------------------------- /Chapter14/Exercise14.01/app/src/main/res/mipmap-hdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter14/Exercise14.01/app/src/main/res/mipmap-hdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter14/Exercise14.01/app/src/main/res/mipmap-mdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter14/Exercise14.01/app/src/main/res/mipmap-mdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter14/Exercise14.01/app/src/main/res/values/dimens.xml: -------------------------------------------------------------------------------- 1 | 2 | 16dp 3 | 4 | -------------------------------------------------------------------------------- /Chapter14/Exercise14.01/app/src/main/res/values/ic_launcher_background.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | #FFEB3B 4 | -------------------------------------------------------------------------------- /Chapter14/Exercise14.01/app/src/main/res/values/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | Popular Movies 3 | -------------------------------------------------------------------------------- /Chapter14/Exercise14.01/app/src/test/resources/mockito-extensions/org.mockito.plugins.MockMaker: -------------------------------------------------------------------------------- 1 | mock-maker-inline -------------------------------------------------------------------------------- /Chapter14/Exercise14.01/gradle/wrapper/gradle-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter14/Exercise14.01/gradle/wrapper/gradle-wrapper.jar -------------------------------------------------------------------------------- /Chapter14/Exercise14.01/settings.gradle: -------------------------------------------------------------------------------- 1 | include ':app' 2 | rootProject.name = "Popular Movies" -------------------------------------------------------------------------------- /Chapter14/Exercise14.02/app/.gitignore: -------------------------------------------------------------------------------- 1 | /build -------------------------------------------------------------------------------- /Chapter14/Exercise14.02/app/src/main/ic_launcher-playstore.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter14/Exercise14.02/app/src/main/ic_launcher-playstore.png -------------------------------------------------------------------------------- /Chapter14/Exercise14.02/app/src/main/java/com/example/popularmovies/model/PopularMoviesResponse.kt: -------------------------------------------------------------------------------- 1 | package com.example.popularmovies.model 2 | 3 | data class PopularMoviesResponse( 4 | val page: Int, 5 | val results: List 6 | ) -------------------------------------------------------------------------------- /Chapter14/Exercise14.02/app/src/main/res/mipmap-hdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter14/Exercise14.02/app/src/main/res/mipmap-hdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter14/Exercise14.02/app/src/main/res/mipmap-mdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter14/Exercise14.02/app/src/main/res/mipmap-mdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter14/Exercise14.02/app/src/main/res/values/dimens.xml: -------------------------------------------------------------------------------- 1 | 2 | 16dp 3 | 4 | -------------------------------------------------------------------------------- /Chapter14/Exercise14.02/app/src/main/res/values/ic_launcher_background.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | #FFEB3B 4 | -------------------------------------------------------------------------------- /Chapter14/Exercise14.02/app/src/main/res/values/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | Popular Movies 3 | -------------------------------------------------------------------------------- /Chapter14/Exercise14.02/app/src/test/resources/mockito-extensions/org.mockito.plugins.MockMaker: -------------------------------------------------------------------------------- 1 | mock-maker-inline -------------------------------------------------------------------------------- /Chapter14/Exercise14.02/gradle/wrapper/gradle-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter14/Exercise14.02/gradle/wrapper/gradle-wrapper.jar -------------------------------------------------------------------------------- /Chapter14/Exercise14.02/settings.gradle: -------------------------------------------------------------------------------- 1 | include ':app' 2 | rootProject.name = "Popular Movies" -------------------------------------------------------------------------------- /Chapter14/Exercise14.03/app/.gitignore: -------------------------------------------------------------------------------- 1 | /build -------------------------------------------------------------------------------- /Chapter14/Exercise14.03/app/src/main/ic_launcher-playstore.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter14/Exercise14.03/app/src/main/ic_launcher-playstore.png -------------------------------------------------------------------------------- /Chapter14/Exercise14.03/app/src/main/java/com/example/popularmovies/model/PopularMoviesResponse.kt: -------------------------------------------------------------------------------- 1 | package com.example.popularmovies.model 2 | 3 | data class PopularMoviesResponse( 4 | val page: Int, 5 | val results: List 6 | ) -------------------------------------------------------------------------------- /Chapter14/Exercise14.03/app/src/main/res/mipmap-hdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter14/Exercise14.03/app/src/main/res/mipmap-hdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter14/Exercise14.03/app/src/main/res/mipmap-mdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter14/Exercise14.03/app/src/main/res/mipmap-mdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter14/Exercise14.03/app/src/main/res/values/dimens.xml: -------------------------------------------------------------------------------- 1 | 2 | 16dp 3 | 4 | -------------------------------------------------------------------------------- /Chapter14/Exercise14.03/app/src/main/res/values/ic_launcher_background.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | #FFEB3B 4 | -------------------------------------------------------------------------------- /Chapter14/Exercise14.03/app/src/main/res/values/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | Popular Movies 3 | -------------------------------------------------------------------------------- /Chapter14/Exercise14.03/app/src/test/resources/mockito-extensions/org.mockito.plugins.MockMaker: -------------------------------------------------------------------------------- 1 | mock-maker-inline -------------------------------------------------------------------------------- /Chapter14/Exercise14.03/gradle/wrapper/gradle-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter14/Exercise14.03/gradle/wrapper/gradle-wrapper.jar -------------------------------------------------------------------------------- /Chapter14/Exercise14.03/settings.gradle: -------------------------------------------------------------------------------- 1 | include ':app' 2 | rootProject.name = "Popular Movies" -------------------------------------------------------------------------------- /Chapter15/Activity15.01/app/.gitignore: -------------------------------------------------------------------------------- 1 | /build -------------------------------------------------------------------------------- /Chapter15/Activity15.01/app/src/main/res/mipmap-hdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter15/Activity15.01/app/src/main/res/mipmap-hdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter15/Activity15.01/app/src/main/res/mipmap-mdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter15/Activity15.01/app/src/main/res/mipmap-mdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter15/Activity15.01/app/src/main/res/values/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | Password Generator 3 | -------------------------------------------------------------------------------- /Chapter15/Activity15.01/gradle/wrapper/gradle-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter15/Activity15.01/gradle/wrapper/gradle-wrapper.jar -------------------------------------------------------------------------------- /Chapter15/Activity15.01/settings.gradle: -------------------------------------------------------------------------------- 1 | include ':app' 2 | rootProject.name = "Password Generator" -------------------------------------------------------------------------------- /Chapter15/Exercise15.01/app/.gitignore: -------------------------------------------------------------------------------- 1 | /build -------------------------------------------------------------------------------- /Chapter15/Exercise15.01/app/src/main/ic_launcher-playstore.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter15/Exercise15.01/app/src/main/ic_launcher-playstore.png -------------------------------------------------------------------------------- /Chapter15/Exercise15.01/app/src/main/res/mipmap-hdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter15/Exercise15.01/app/src/main/res/mipmap-hdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter15/Exercise15.01/app/src/main/res/mipmap-mdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter15/Exercise15.01/app/src/main/res/mipmap-mdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter15/Exercise15.01/app/src/main/res/values/ic_launcher_background.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | #4CAF50 4 | -------------------------------------------------------------------------------- /Chapter15/Exercise15.01/app/src/main/res/values/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | Tip Calculator 3 | 4 | -------------------------------------------------------------------------------- /Chapter15/Exercise15.01/gradle/wrapper/gradle-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter15/Exercise15.01/gradle/wrapper/gradle-wrapper.jar -------------------------------------------------------------------------------- /Chapter15/Exercise15.01/settings.gradle: -------------------------------------------------------------------------------- 1 | include ':app' 2 | rootProject.name = "Tip Calculator" -------------------------------------------------------------------------------- /Chapter15/Exercise15.02/app/.gitignore: -------------------------------------------------------------------------------- 1 | /build -------------------------------------------------------------------------------- /Chapter15/Exercise15.02/app/src/main/ic_launcher-playstore.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter15/Exercise15.02/app/src/main/ic_launcher-playstore.png -------------------------------------------------------------------------------- /Chapter15/Exercise15.02/app/src/main/res/mipmap-hdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter15/Exercise15.02/app/src/main/res/mipmap-hdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter15/Exercise15.02/app/src/main/res/mipmap-mdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter15/Exercise15.02/app/src/main/res/mipmap-mdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter15/Exercise15.02/app/src/main/res/values/ic_launcher_background.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | #4CAF50 4 | -------------------------------------------------------------------------------- /Chapter15/Exercise15.02/app/src/main/res/values/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | Tip Calculator 3 | 4 | -------------------------------------------------------------------------------- /Chapter15/Exercise15.02/gradle/wrapper/gradle-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter15/Exercise15.02/gradle/wrapper/gradle-wrapper.jar -------------------------------------------------------------------------------- /Chapter15/Exercise15.02/settings.gradle: -------------------------------------------------------------------------------- 1 | include ':app' 2 | rootProject.name = "Tip Calculator" -------------------------------------------------------------------------------- /Chapter15/Exercise15.03/app/.gitignore: -------------------------------------------------------------------------------- 1 | /build -------------------------------------------------------------------------------- /Chapter15/Exercise15.03/app/src/main/ic_launcher-playstore.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter15/Exercise15.03/app/src/main/ic_launcher-playstore.png -------------------------------------------------------------------------------- /Chapter15/Exercise15.03/app/src/main/res/mipmap-hdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter15/Exercise15.03/app/src/main/res/mipmap-hdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter15/Exercise15.03/app/src/main/res/mipmap-mdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter15/Exercise15.03/app/src/main/res/mipmap-mdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter15/Exercise15.03/app/src/main/res/values/ic_launcher_background.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | #4CAF50 4 | -------------------------------------------------------------------------------- /Chapter15/Exercise15.03/app/src/main/res/values/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | Tip Calculator 3 | 4 | -------------------------------------------------------------------------------- /Chapter15/Exercise15.03/gradle/wrapper/gradle-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter15/Exercise15.03/gradle/wrapper/gradle-wrapper.jar -------------------------------------------------------------------------------- /Chapter15/Exercise15.03/settings.gradle: -------------------------------------------------------------------------------- 1 | include ':app' 2 | rootProject.name = "Tip Calculator" -------------------------------------------------------------------------------- /Chapter15/Exercise15.04/app/.gitignore: -------------------------------------------------------------------------------- 1 | /build -------------------------------------------------------------------------------- /Chapter15/Exercise15.04/app/src/main/ic_launcher-playstore.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter15/Exercise15.04/app/src/main/ic_launcher-playstore.png -------------------------------------------------------------------------------- /Chapter15/Exercise15.04/app/src/main/res/mipmap-hdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter15/Exercise15.04/app/src/main/res/mipmap-hdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter15/Exercise15.04/app/src/main/res/mipmap-mdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter15/Exercise15.04/app/src/main/res/mipmap-mdpi/ic_launcher.png -------------------------------------------------------------------------------- /Chapter15/Exercise15.04/app/src/main/res/values/ic_launcher_background.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | #4CAF50 4 | -------------------------------------------------------------------------------- /Chapter15/Exercise15.04/app/src/main/res/values/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | Tip Calculator 3 | 4 | -------------------------------------------------------------------------------- /Chapter15/Exercise15.04/gradle/wrapper/gradle-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktWorkshops/The-Android-Workshop/ab42898f6debe3bc83d0f08bbb1c0b7dea959d4b/Chapter15/Exercise15.04/gradle/wrapper/gradle-wrapper.jar -------------------------------------------------------------------------------- /Chapter15/Exercise15.04/settings.gradle: -------------------------------------------------------------------------------- 1 | include ':app' 2 | rootProject.name = "Tip Calculator" --------------------------------------------------------------------------------