Android 开发技术周报 Issue#298

新闻

  1. 谷歌Pixel 2系列三年Android系统更新支持画上句号

  2. 为什么没人告诉我Android手机居然还能有线上网?

  3. 谷歌概述了2021年的Android应用开发与政策变动规划

  4. 谷歌Android Messages测试版将推出RCS端到端加密功能

教程

  1. Android Jetpack之Navigation全面剖析

  2. 记一次简单的耗电发热问题排查过程

开源库

  1. VideoTimeLine

    一组视频时间轴自定义控件

  2. kssm

    Simple State Machines in Kotlin (KSSM)

  3. android-startup

    The Android Startup library provides a straightforward, performant way to initialize components at the application startup. Both library developers and app developers can use Android Startup to streamline startup sequences and explicitly set the order of initialization.Android Startup提供一种在应用启动时能够更加简单、高效的方式来初始化组件。开发人员可以使用Android Startup来简化启动序列,并显式地设置初始化顺序与组件之间的依赖关系。 与此同时,Android Startup支持同步与异步等待,并通过有向无环图拓扑排序的方式来保证内部依赖组件的初始化顺序。

  4. linenoise-android

    Linenoise built with Android NDK, packaged as an Android library with Java binding.

  5. fpsviewer

    A Real-time Fps Tool for Android.一个能实时显示fps,一段时间的平均帧率,以及帧率范围占比,并能获取卡顿堆栈的可视化工具。侵入性低,通过在异步线程采样获取堆栈,无代码侵入,性能消耗可忽略,对性能监控项的异常数据进行采集和分析,整理输出展示相应的堆栈,从而帮助开发者开发出更高质量的应用。

  6. PopKorn

    PopKorn is a simple, powerful and lightweight Multiplatform Dependency Injector written 100% Kotlin. It doesn't need any boilerplate, just use it! It supports AND, IOS, JVM, JS and NATIVE.

  7. firebase-kotlin-sdk

    A Kotlin-first SDK for Firebase

  8. CursorWheelLayout

    An Android Widget for selecting items that rotate on a wheel.

  9. exhaustive

    An annotation and Kotlin compiler plugin for enforcing a when statement is exhaustive

  10. Enro

    A simple navigation library for Android

  11. atrium

    A multiplatform assertion library for Kotlin

  12. android-youtube-player

    YouTube Player library for Android and Chromecast, stable and customizable.

  13. android-testify

    Add screenshots to your Android tests

  14. AndroidTopSheet

    A top version of BottomSheetDialog

  15. JetTheme

    A flexible theme provider for Jetpack Compose. Supports dynamic theme changes and saving theme preference.

  16. ReadTime

    A Simple Android library to get the number of words and give you the time it will take you to finish an article/story.

  17. FancyLocationProvider

    Wrapper of FusedLocationProviderClient for Android to support modern usage like LiveData and Flow

  18. DownloadInstaller

    Android App 应用内更新的下载,储存,安装 ,未知来源等问题处理

  19. change-tracker-plugin

    A gradle plugin to run your verification tasks only on modules affected by the latest changes.

  20. version-checker-gradle-lint

    Warning on new versions available even when using Kotlin-DSL plugin.

  21. releases-hub-gradle-plugin

    Gradle Plugin to automatically upgrade your gradle project dependencies and send a GitHub pull request with the changes

插件

  1. AffectedModuleDetector

    A Gradle Plugin to determine which modules were affected by a set of files in a commit.

  2. exhaustive

    An annotation and Kotlin compiler plugin for enforcing a when statement is exhaustive

  3. Android-ORM-benchmark

    Performance comparison of Android ORM Frameworks

  4. Network-Demo

    Retrofit + OkHttp3 + coroutines + LiveData打造一款网络请求框架

示例

  1. MovieTray

    Its a playground application focusing on Paging3, MVVM architecture, Kotlin Extension functions, Retrofit, DSL, Navigation component, MotionLayout, SharedElementTransition, Single Activity Architecture, DataStore etc.

  2. AnimeXStream

    An Android app to watch anime on your phone without ads.

工具

  1. ProjectorAndroidStudio

    Guide to setup JetBrains Projector and access Android Studio from any device

  2. zealot

    移动应用上传下载竟然如此简单、移动 App 应用分发系统 Over The Air Server for deployment of Android and iOS apps

  3. super-jadx

    Add new features for reverse engineering, such as: renaming of classes, fields, methods, variables, reference graphs and more.