Google 最近更新了有关即时应用的文档:Prepare your app
除了 3. Refactor your app, if necessary 之外,大部分点都清楚。 .
他们建议零售模块,如浏览、搜索、商品详情和结帐。
问题:如何将应用拆分为功能齐全且可通过 URL 寻址的模块?
我确实看到了几个问题:
- 如果我们使用 dagger、butterknife 等库...所有模块都将依赖于其他模块
- 如果我们的模块根据需要包含( View ),如何在不导入此模块的情况下实现到另一个 View (从另一个模块)的转换?
有人可以在黑暗中照亮吗?谢谢!
最佳答案
Instant Apps 所需的适当模块分离可以通过以下步骤轻松完成:
- 创建一个共享模块,其中包含应跨功能模块共享的代码和资源。
- 为每个主要功能创建几个功能模块(在 Google 提供的示例中:浏览、搜索、商品详情和结帐)。这些模块可以依赖于 p.1 中创建的共享模块,但它们之间不应相互了解。
- 要从不同的模块启动一个 Activity ,使目标 Activity 的 URL 可寻址,并通过隐式 Intent 启动它。谷歌 suggests使用应用链接。
- 要构建您的常规 Android 应用,请创建一个依赖于功能模块的应用模块。
- 一旦 Google 向公众发布其 Android InstantApp SDK,您就可以构建自己的 Instant Apps(每个功能一个)。
关于安卓免安装应用 : How to create URL addressable modules?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42091283/