android assets目录在哪,Android Studio 中 assets目录的使用

本文介绍了Android Studio中assets文件夹的用途、位置、文件大小限制及如何读取assets目录下的文件。assets文件夹通常用于存放音频、图片等原始资源,不生成资源ID,需要通过AssetManager来访问。在实际测试中,4.5M的音频文件可以正常放入。读取assets文件需使用AssetManager的open方法获取输入流。安装后,assets文件位于/data/data/应用包名/lib/assets。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

项目中存放音频图片等资源,我把需要的资源放在了assets目录下,今天看了看官方文档,做个总结,希望对大家有所帮助。

1.Android Studio assets文件夹在哪里?

路径:app/src/main/assets app是我们的Module名称

注意:android Studio在创建新的项目的时候是没有assets目录的,需要我们重新创建。

MyProject/

src/

MyActivity.java

res/

drawable/

icon.png

layout/

main.xml

info.xml

values/

strings.xml

assets/

abc.mp3

2. assest文件夹里放文件,对于文件的大小有没有限制?

在官方的文档中没有看到相关的说明,亲自测了一下放个4.5M的音频是没有问题的。下面是官方官方文档在介绍raw目录的同时给出的assets目录使用说明:

raw/

Arbitrary files to save in their raw form. To open these resources with a raw InputStream, call Resources.openRawResource() with the resource ID, which is R.raw.filename.

However, if you need access to original file names and file hierarchy, you might consider saving some resources in the assets/ directory (instead of res/raw/). Files in assets/ are not given a resource ID, so you can read them only using AssetManager.

意思是说raw目录中的文件会生成ID,可以通过R.raw.filename直接调用

而assets目录下的文件则需要通过路径名称去引用。因此在assets目录下我们依然可以创建子目录。

3.怎样读物assets目录下的文件

在上面的文档中我们看到,我们只能通过AssetManager类去读去assets目录下的文件。

我们可以通过open(String filename)方法获取流InputStream,然后写入。

final InputStream open(String fileName)

Open an asset using ACCESS_STREAMING mode.

public void readFromAssets(String fileName){

try {

InputStream in = getAssets().open(fileName);

readTextFile(in);

} catch (IOException e) {

e.printStackTrace();

}

}

private String readTextFile(InputStream inputStream) {

ByteArrayOutputStream outputStream = new ByteArrayOutputStream();

byte buf[] = new byte[1024];

int len;

try {

while ((len = inputStream.read(buf)) != -1) {

outputStream.write(buf, 0, len);

}

outputStream.close();

inputStream.close();

} catch (IOException e) {

}

return outputStream.toString();

}

3.app安装在手机后,assets目录下的文件路径是什么?

/data/data/应用包名/lib/assets

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值