博观而约取,厚积而薄发。这篇文章主要讲述Android 项目中的资源获取方法相关的知识,希望能为你提供帮助。
android资源文件分类:Android资源文件大致可以分为两种:
第一种是res目录下存放的可编译的资源文件:这种资源文件系统会在R.java里面自动生成该资源文件的ID,所以访问这种资源文件比较简单,通过R.XXX.ID即可;
第二种是assets目录下存放的原生资源文件:因为系统在编译的时候不会编译assets下的资源文件,所以我们不能通过R.XXX.ID的方式访问它们。那我么能不能通过该资源的绝对路径去访问它们呢?因为apk安装之后会放在/data/app/**.apk目录下,以apk形式存在,asset/res和被绑定在apk里,并不会解压到/data/data/YourApp目录下去,所以我们无法直接获取到assets的绝对路径,因为它们根本就没有。
还好Android系统为我们提供了一个AssetManager工具类。
查看官方API可知,AssetManager提供对应用程序的原始资源文件进行访问;这个类提供了一个低级别的API,它允许你以简单的字节流的形式打开和读取和应用程序绑定在一起的原始资源文件。
AssetManager类概述:提供对应用程序的原始资源文件进行访问;这个类提供了一个低级别的API,它允许你以简单的字节流的形式打开和读取和应用程序绑定在一起的原始资源文件。通过getAssets()方法获取AssetManager对象。
AssetManager类常用方法:
Public Methods |
|
final String[] |
list(String path) 返回指定路径下的所有文件及目录名。 |
【Android 项目中的资源获取方法】final InputStream |
open(String fileName) 使用 ACCESS_STREAMING模式打开assets下的指定文件。. |
final InputStream |
open(String fileName, int accessMode) 使用显示的访问模式打开assets下的指定文件. |
推荐阅读
- Android通过反射打造能够存储不论什么对象的万能SharedPreferences
- 学习Android数据库SQLite的笔记
- WebRTC音频预处理单元APM的整体编译及使用 - android
- Uva 10652 Board Wrapping
- APPCAN学习笔记002---app高速开发AppCan.cn平台特色
- Android设计模式之单例模式的七种写法
- Android零基础入门第29节(善用TableLayout表格布局,事半功倍)
- this -- apply或call调用
- android bug笔记