首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何在Android中访问资产包数据(kotlin)

如何在Android中访问资产包数据(kotlin)
EN

Stack Overflow用户
提问于 2020-06-30 04:57:14
回答 1查看 2.2K关注 0票数 4

我使用资产包库https://developer.android.com/guide/app-bundle/asset-delivery/build-native-java将一些资产打包到我的Android kotlin应用程序中

不是,我应该能够通过context.assets使用AssetManager访问资产。然而,我不知道正确的路径是什么。

我的资源包被称为models,并且正确地创建在.aab文件的根文件夹中,所以我猜它也是正确安装的。

现在,根据文档(https://developer.android.com/guide/playcore/asset-delivery/integrate-java),我可以像这样访问资产:

代码语言:javascript
运行
复制
import android.content.res.AssetManager;
...
Context context = createPackageContext("com.example.app", 0);
AssetManager assetManager = context.getAssets();
InputStream is = assetManager.open("asset-name");

在这里我将包名改为我的包名。但是资产名称是什么?!?它不是我的models资源文件夹中的文件的名称。我尝试了assetManager.list(p)p,但我找不到我的资产存储在哪里。

对于p=''assetManager.list(p)的结果为

代码语言:javascript
运行
复制
 hw_pc_white_apps.xml
    hw_pc_white_apps_pad.xml
    images
    permission_grant_policy.xml
    permission_grant_policy_oversea.xml
    pfw
    sfpconfig.json
    ukeyapp.xml
    water.frag
    water.vert
    webkit
    wifi_policy.xml
    wifipro_regexlist.xml

这对我来说也没什么意义。如何从资产包中访问资产?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-06-30 05:29:37

好吧,我找到了解决方案: Android Studio默认不提供资产包,需要在Run -> Edit configuration -> Deliver APK from app bundle (https://developer.android.com/guide/app-bundle/test)下调整配置以交付资产和应用程序。

现在,可以像访问主应用程序的资产一样访问这些资产。

票数 8
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/62646556

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档