转自:http://www.chenwg.com/android/android%E5%A4%8D%E5%88%B6assets%E7%9B%AE%E5%BD%95%E4%B8%8B%E7%9A%84%E5%9B%BE%E7%89%87%E5%88%B0%E5%86%85%E5%AD%98.html

有些Android应用需要一些初始化数据,但是考虑到国内这种龟速网络和高昂的网络流量费用,可以将这些初始化数据存在数据库中,有时遇到图片的情况下,可以在初始化的阶段将assets目录下的图片复制到内存中。

下面是我实现的一个方法:

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 /** * 读取Assets文件夹中的图片资源 * @param context * @param fileName * @return */ public static Bitmap getImageFromAssetsFile(Context context, String fileName) { //获取应用的包名 String packageName = context.getPackageName(); //定义存放这些图片的内存路径 String path= "/data/data/" +packageName; //如果这个路径不存在则新建 File file = new File(path); Bitmap image = null ; boolean isExist = file.exists(); if (!isExist){ file.mkdirs(); } //获取assets下的资源 AssetManager am = context.getAssets(); try { //图片放在img文件夹下 InputStream is = am.open( "img/" +fileName); image = BitmapFactory.decodeStream(is); FileOutputStream out = new FileOutputStream(path+ "/" +fileName); //这个方法非常赞 image.compress(Bitmap.CompressFormat.PNG, 100 ,out); out.flush(); out.close(); is.close(); } catch (IOException e) { e.printStackTrace(); } return image; }

更多相关文章

  1. Android单张图片查看、单指移动、双指缩放、双击最大化或最小化
  2. [Android] 旋转照片/图片
  3. Android 效率开发之图片保存到图库
  4. Android PNG渐变背景图片失真问题
  5. Android 初始化语言(Android init Language翻译)
  6. CardView 添加背景图片、改变颜色、水波纹效果的方法
  7. android 拉伸图片
  8. Android 实现图片的自动缩放,适应分辨率不同的手机
  9. Android多module初始化application

随机推荐

  1. Android SQLite Database and ContentPro
  2. Android 关闭后台音频播放
  3. Android GPS获取当前位置信息
  4. Android下拉刷新实例
  5. android之listView缓存机制
  6. Android版本差异
  7. Android SDK and AVD Manage图标没找到
  8. android的消息队列机制
  9. Android 版本
  10. 【Android Studio】Migrating From Eclip