关闭

Android读取打包到assets目录下的文件

6869人阅读 评论(0) 收藏 举报
分类:

apk安装之后会放在/data/app/**.apk目录下,以apk形式存在,asset/res和被绑定在apk里,并不会解压到/data/data/YourApp目录下去,所以我们无法直接获取到assets的绝对路径,因为它们根本就没有。

例如访问本地的一个index.html文件

将index.html放到assets目录下,然后通过WebView的loadUrl(file:///android_asset/index.html)访问,这是没有问题的,但是如果你想在/data/data/YourApp找到index.html,那是不可能的。你可以通过RE来查看/data/data/YourApp目录,看是否有index.html存在。答案当然是没有了。


如果想访问assets目录下的文件,只能通过AssetManager,它的原理也是找到/data/app/**.apk,然后解压读取数据。


目前nodejs在android平台上使用第三方模块遇到这样的问题。第三方模块也是和nodejs一起打包的,nodejs需要读取第三方模块。目前先采用2>中提到的方案,即先解压到sdcard中再读取。


1> Android资源管理框架(Asset Manager) 

原文:http://blog.csdn.net/luoshengyang/article/details/8738877/

2> android中拷贝assets下的资源文件到SD卡中(可以超过1M)

原文:http://www.cnblogs.com/wainiwann/p/3274386.html





0
1

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:189187次
    • 积分:2720
    • 等级:
    • 排名:第14130名
    • 原创:66篇
    • 转载:38篇
    • 译文:0篇
    • 评论:27条
    文章分类
    最新评论