我正在尝试将新的Android动态交付功能添加到我的应用程序中,但我尝试访问动态特性模块的资源时一直失败。
基本思想是加载一个没有代码但有一堆矢量文件作为可绘制资源的模块。
我能够加载该模块,甚至访问给定模块的资产,但我无法弄清楚如何访问资源。
基本思想是加载一个没有代码但有一堆矢量文件作为可绘制资源的模块。
我能够加载该模块,甚至访问给定模块的资产,但我无法弄清楚如何访问资源。
val res = context.createPackageContext(context.packageName, 0).also {
SplitCompat.install(it)
}.resources
val assetsStream = res.assets.open("test.txt")
val assetContent = assetsStream.bufferedReader()
.use {
it.readText()
}
var iconResourceId = res.getIdentifier(stringIdentifier, IDENTIFIER_DRAWABLE, context.packageName)
如我所说,我能够读取资产txt文件中的文本,但是我似乎在资源中找不到任何可绘制项。
当我尝试获取我知道位于动态模块资源文件夹中的可绘制项时,我会遇到ResourcesNotFoundException
错误。
我已经阅读了Google提供的Android文档,但是我无法找到有关如何访问下载的模块资源的详细信息。
https://developer.android.com/guide/app-bundle/playcore#access_installed_modules