问题标签 [android-instant-apps]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
android - Android Instant Apps 的基本功能模块
嗨,我正在阅读 Android Instant 应用程序的文档。我在这里看到了这个声明Instant Apps 的项目结构
当内置到免安装应用中时,此模块会构建一个功能 APK。当内置到已安装的应用程序中时,基本功能模块会生成一个 AAR 文件。
如我所见,Android Studio 中没有选项可以以不同的方式构建即时应用程序或安装的应用程序?他们在这里是什么意思?
android - Android Instant Apps:将现有的 multidex 应用程序迁移到基本/功能模块?
我正在将现有的多 dex 应用程序迁移到 Instant 应用程序中,并将我的应用程序转换为推荐的项目结构。
有一堆相关的编译问题已成功解决,但是在尝试运行可安装的“应用程序”模块时,我遇到了堆栈跟踪中所述的以下错误。
我怀疑这是因为我的 nowbaseFeature
模块(以前的多 dex 应用程序)与即时应用程序架构不兼容。
关于处理此问题的最佳方法的任何提示?如果有人能指出现有的 multidex 应用程序如何移植到新的即时应用程序架构,那就太好了:)
堆栈跟踪:
android - INVALID_ARGUMENT:应用程序凭据标头无效。请修复客户端以传递有效的应用程序凭据标头
尝试运行简单的 Android Instant App 时,我在控制台中收到此错误,并且该应用程序无法打开。这个错误是什么意思,我如何传递一个有效的凭证头?
android - 是否可以在模拟器上使用已发布的即时应用程序(BuzzFeed、Wish 等)?
我按照Google 的教程在模拟器上运行了一个 hello world 即时应用程序。
一切正常,我收到对话框,询问是否允许启用即时应用程序,然后单击“我在”。之后,我还可以看到在设置 > Google > 即时应用中启用了即时应用。
但是当我打开浏览器,运行搜索并点击已经发布了即时应用程序的网站的链接时,例如 BuzzFeed、NY Times Crossword 和 Wish,它们只会打开常规网页。
我发现这些应用正在观看 Google IO 16 和 17 关于即时应用的演示。我什至尝试了此主题演讲中的链接https://www.buzzfeed.com/tasty,但无济于事。
我怀疑这是因为当前支持的模拟器没有内置 Play Store。
根据此列表,我也在一个尚不支持即时应用程序的国家/地区(巴西)。但我不确定这是否会影响模拟器。
有谁知道这些是否确实是我无法查看已在 Play Store 上发布的即时应用程序的原因?
android - Instant Apps:使用基础模块中的功能模块,没有强依赖关系
我正在尝试在我的 Android 应用中实现新的 Instant App 功能。我有 4 个模块:
- 具有所有活动和逻辑的基本功能模块:
base
- 具有推送通知类的功能模块:
push
- 安装的应用模块:
installed
- 即时应用模块:
instant
由于 Instant App 不支持推送通知,我只想push
为已安装的应用启用模块。但是我在base
那个调用push
方法中共享了类。例如,我push
在应用程序类中的应用程序启动期间初始化模块。
我如何组织依赖关系,所以我不必包含push
模块到base
模块,而是能够push
从base
? 我有一个想法,我可以PushManagerProvider
在base
模块中创建接口,instant
并且installed
可以提供自己的实现,但我不确定如何base
根据当前模块注入具体实现。
android - React native 和 Android Instant Apps 将如何发挥作用?有什么想法吗?
谷歌最近发布了安卓即时应用程序。这基本上是代码拆分。这是否适用于 React 本机应用程序,因为本机构建将生成主 js 包。
有什么想法可以充分利用这两种技术,尤其是 Hybrid React Native Android 应用程序?
android - Android Instant App : 功能模块 : 该模块不能是 android 库
按照Google IO 教程,我开始转换我的应用程序以支持即时功能。我让构建正确运行。我已经禁用,因为我遇到了构建错误。禁用这两个模块后,模块构建没有错误,但是当我去编辑应用程序基本功能的配置时,我得到了。aapt2
enableNewResourceProcessing
flags
The module cannot be android library
有谁知道是什么导致了这个问题。我com.android.feature plugin
在功能模块的构建中使用构建风格和构建类型。
android - 导入依赖于本地 aar 文件的库模块
我有一个具有以下结构的 Android Instant App:
- B:基础模块
- 已安装:已安装的应用模块
- Instant:即时应用模块
- F:具有特定于已安装应用程序的功能的功能。F 取决于位于
local-lib
的本地 aar 库project\F\libs
。
F
的 build.gradle 如下:
我试图将F
模块包含到Installed
应用程序模块中,如下所示:
但 gradle 无法解决local-lib
,给出错误:
我试图将libs
文件夹复制到project\Installed\libs
,并且它有效。所以基本上我需要 2 个副本local-lib
来完成这项工作?我应该如何组织导入以避免重复?完美的情况是libs
文件夹在F
模块内。
android - 是否有一个 Android 构建标志来检查应用程序的 APK 和 Instant App 版本
就像在运行BuildConfig.FLAVOR
时BuildConfig.DEBUG
是否有构建标志来检查 APK 版本或 Android 应用程序的 Instant App 版本?
还是有其他获取信息的方法?