gitextract_os787tpu/ ├── .github/ │ └── workflows/ │ └── android.yml ├── .gitignore ├── .idea/ │ └── vcs.xml ├── README.md ├── app/ │ ├── .gitignore │ ├── build.gradle │ ├── proguard-rules.pro │ └── src/ │ ├── androidTest/ │ │ └── java/ │ │ └── com/ │ │ └── example/ │ │ └── teprinciple/ │ │ └── updateappdemo/ │ │ └── ExampleInstrumentedTest.java │ └── main/ │ ├── AndroidManifest.xml │ ├── java/ │ │ └── com/ │ │ └── example/ │ │ └── teprinciple/ │ │ └── updateappdemo/ │ │ ├── CheckMd5DemoActivity.kt │ │ ├── JavaDemoActivity.java │ │ ├── MainActivity.kt │ │ └── SpanUtils.java │ └── res/ │ ├── drawable/ │ │ └── bg_btn.xml │ ├── layout/ │ │ ├── activity_java_demo.xml │ │ ├── activity_main.xml │ │ ├── check_md5_demo_activity.xml │ │ └── view_update_dialog_custom.xml │ ├── values/ │ │ ├── colors.xml │ │ ├── dimens.xml │ │ ├── strings.xml │ │ └── styles.xml │ └── values-w820dp/ │ └── dimens.xml ├── build.gradle ├── gradle/ │ └── wrapper/ │ ├── gradle-wrapper.jar │ └── gradle-wrapper.properties ├── gradle.properties ├── gradlew ├── gradlew.bat ├── readme/ │ ├── README_1.5.2.md │ ├── version.md │ └── 自定义UI.md ├── settings.gradle ├── update.jks └── updateapputils/ ├── .gitignore ├── build.gradle ├── proguard-rules.pro └── src/ ├── androidTest/ │ └── java/ │ └── teprinciple/ │ └── library/ │ └── ExampleInstrumentedTest.java └── main/ ├── AndroidManifest.xml ├── java/ │ ├── constant/ │ │ ├── DownLoadBy.kt │ │ └── UiType.kt │ ├── extension/ │ │ ├── BooleanKtx.kt │ │ ├── ContextKtx.kt │ │ ├── CoreKtx.kt │ │ └── StringKtx.kt │ ├── listener/ │ │ ├── Md5CheckResultListener.kt │ │ ├── OnBtnClickListener.kt │ │ ├── OnInitUiListener.kt │ │ └── UpdateDownloadListener.kt │ ├── model/ │ │ ├── UiConfig.kt │ │ ├── UpdateConfig.kt │ │ └── UpdateInfo.kt │ ├── ui/ │ │ └── UpdateAppActivity.kt │ ├── update/ │ │ ├── DownloadAppUtils.kt │ │ ├── UpdateAppReceiver.kt │ │ ├── UpdateAppService.kt │ │ ├── UpdateAppUtils.kt │ │ └── UpdateFileProvider.kt │ └── util/ │ ├── AlertDialogUtil.kt │ ├── FileDownloadUtil.kt │ ├── GlobalContextProvider.kt │ ├── SPUtil.kt │ └── SignMd5Util.kt └── res/ ├── anim/ │ ├── dialog_enter.xml │ └── dialog_out.xml ├── drawable/ │ ├── bg_update_btn.xml │ └── bg_update_dialog.xml ├── layout/ │ ├── view_update_dialog_plentiful.xml │ └── view_update_dialog_simple.xml ├── values/ │ ├── colors.xml │ ├── strings.xml │ └── styles.xml ├── values-en/ │ └── strings.xml └── xml/ ├── network_security_config.xml └── update_file_paths.xml