在android下生成apk时,assets文件夹下的东西被自动删除怎么回事?(cocos2d)

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了在android下生成apk时,assets文件夹下的东西被自动删除怎么回事?(cocos2d)相关的知识,希望对你有一定的参考价值。

自己找到原因了。build_native.sh文件里面有一段,如果存在assets文件夹则删除、、、

gen中的包和类是自动生成的,里面的R.java里面的内容是所有控件的ID号,当布局有问题的时候,clean一下,gen里面的内容会消失,就是丢失R包的现象,当然,有时候别的原因也会出现这一现象。
assets:android除了提供/res目录存放资源文件外,在/assets目录也可以存放资源文件,而且/assets目录下的资源文件不会在R.java自动生成ID,所以读取/assets目录下的文件必须指定文件的路径。
bin文件里面有一个apk文件,可以直接用来安装android项目
res是存放图片之类的资源的
里面的文件夹分别表示方的内容:values里面是放xml文件的,一般是String.xml,color.xml等属性内容;drawable是放图片文件的;layout是放布局文件的
参考技术A 程序出错 诚心为你解答,给个好评哦亲,谢谢啦本回答被提问者采纳 参考技术B 这个是系统默认的哦

C++学习(二八六)Android Studio下assets目录与引用

assets目录下不会生成R文件索引,在res目录下会生成R文件索引。assets:不会在R.java文件下生成相应的标记, assets文件夹可以自己创建文件夹,必须使用AssetsManager类进行访问,存放到这里的资源在运行打包的时候都会打入程序安装包中。

1、目录建立

在main目录下右键,执行如下操作

2、assets下文件引用

因为apk安装之后会放在/data/app/**.apk目录下,以apk形式存在,assets并不会解压到/data/data/YourApp目录下去,所以我们无法直接获取到assets的绝对路径,因为它们根本就没有。
还好Android系统为我们提供了一个AssetManager工具类。AssetManager提供对应用程序的原始资源文件进行访问;这个类提供了一个低级别的API,它允许你以简单的字节流的形式打开和读取和应用程序绑定在一起的原始资源文件。

AssetManager.open(String filename),返回的是一个InputSteam类型的字节流,这里的filename必须是文件比如(aa.txt;img/semll.jpg),而不能是文件夹。

获取assets目录下的所有文件及目录名,content(当前的上下文如Activity,Service等ContextWrapper的子类的都可以)String fileNames[] =context.getAssets().list(path);    

 

 

 

 

以上是关于在android下生成apk时,assets文件夹下的东西被自动删除怎么回事?(cocos2d)的主要内容,如果未能解决你的问题,请参考以下文章

用eclipse编写android项目时,项目中的gen,assets,bin,res和res里面的三个文件都是具体干啥用的?

Android assets

android 怎么在代码中引用assets中的资源

Android中asset文件夹和raw文件夹

Android assets文件夹

Android开发系列(十七):读取assets文件夹下的数据库文件