android - 如何在 Android 中设计和分发具有丰富 UI、交互和依赖项的库?
问题描述
我正在编写一个将被许多应用程序使用的 SDK(Android aar 库)。这个想法是为客户端应用程序提供一个活动来处理复杂的步骤流。SDK 与许多其他 Android 应用程序一样构建:多屏幕、专用主题、导航、与 API 的 HTTPS 通信等。
我已经使用 Jetpack(和其他 3rd 方库)有一段时间了,现在使用谷歌推荐的东西对我来说似乎很自然。
如果我使用 AndroidX、Navigation Component、Retrofit、Dagger 等,我会在分发我的库时遇到问题吗?我会遇到兼容性问题、版本不匹配和其他不需要的副作用吗?
我想我可以使用低级 Android API 并返回到 Loaders、HttpPost 和 FragmentManager 以尽量减少摩擦,但这远非理想。
解决方案
我对此也很陌生。在工作中,我开始将大量代码放入 Android 库中,并使用 Sonatype Nexus 作为存储库。
我相信像只编译依赖项这样的方法可以避免很多依赖项冲突问题?
在编译时需要其 API 但其实现将由消费库、应用程序或运行时环境提供的依赖项。
推荐阅读
- python - 如何将列索引转换为熊猫中的列名?
- java - 我的分形没有正确打印,当我使用正确的值时,它根本不会打印
- python - python @setter 从类中调用时从哪里接收它的参数?
- amazon-web-services - 如何使用 fluentd fluent-plugin-rewrite 和 cloudwatch 洞察快速入门?
- java - 为什么我的 java Scanner.nextLine() 代码有时会跳过一行?
- java - ExceptionHandling() 安全配置不起作用
- cellular-network - 有没有办法为蜂窝网络自托管接入点?
- php - 无法将文件存储在我的存储中 - laravel
- python - 如何更改将行值添加到列的 pd DataFrame 的结构?
- php - 如何在电子邮件中发送嵌入的pdf