Android复制assets目录下的图片到内存
有些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; } |
Android复制assets目录下的图片到内存的更多相关文章
- Android复制Assets目录下的文件到指定目录
package com.android.demo; import java.io.File; import java.io.FileOutputStream; import java.io.Input ...
- Android从assets目录下读取文件相关
有一个需求是app的帮助文档是word格式,ios可以直接用webview加载word显示,Android不行.而美工不配合转换成图片,前端没时间把word写成html 没办法,自己搞. 步骤: 1. ...
- 获取Assets目录下的图片显示并上传
package com.jingle.getlocal; import java.io.ByteArrayOutputStream; import java.io.InputStream; impor ...
- 获取Assets目录下的图片并显示
package com.jingle.getlocal; import java.io.InputStream; import android.app.Activity; import android ...
- Android读取assets目录下的资源
1.获取资源的输入流 资源文件 sample.txt 位于 $PROJECT_HOME/assets/ 目录下,可以在 Activity 中通过 Context.getAssets().open(“s ...
- 安卓获取Assets目录下的资源
获取Assets目录下的资源 *:first-child { margin-top: 0 !important; } body>*:last-child { margin-bottom: 0 ! ...
- Android开发之assets目录下资源使用总结
预前知识: Android资源文件分类: Android资源文件大致可以分为两种: 第一种是res目录下存放的可编译的资源文件: 这种资源文件系统会在R.Java里面自动生成该资源文件的ID,所以访问 ...
- Xamarin.Android 如何使用Assets目录下的文件
原文:Xamarin.Android 如何使用Assets目录下的文件 个人原创,转载注明出处:http://blog.csdn.net/supluo/article/details/43672411 ...
- 安卓:从assets目录下复制文件到指定目录
有些时候我们直接将某些资源文件内置到apk中,便于直接使用. 1.首先将文件放置在项目/app/src/main/assets目录中 2.功能代码: public void copyFile(Stri ...
随机推荐
- jeesite笔记
环境 Github上的不能初始化数据库:https://github.com/thinkgem/jeesite 官网上的可以: http://jeesite.com/ 用 Idea 打开,修改 \sr ...
- EntityFramework中使用Repository装饰器
铺垫 通常在使用 EntityFramework 时,我们会封装出 IRepository 和 IUnitOfWork 接口,前者负责 CRUD 操作,后者负责数据提交 Commit. public ...
- [游戏学习28] MFC 时钟
>_<:这是一个时钟小程序 >_<:通过调用获得系统时间然后经过计算得出当前时间,然后再以3个圆环表示时分秒. >_<:TAO_CLOCK.h class CMyA ...
- OpenWrt资料汇总
上周末折腾了一下OpenWrt,打算把Facebook的网络模拟工具部署到上面,最终以失败告终.上github看,发现已经有人给作者提了issue,作者表示部署在OpenWrt上会很有用,但确实在Op ...
- 3-MSP430引脚中断
为了写一篇文章做铺垫--提醒着自己,,,,,, 这两天一直在寻找 #pragma vector = PORT1_VECTOR __interrupt void P1_Interrupt()//P1口中 ...
- Windows环境下32位汇编语言程序设计(典藏版)
Windows环境下32位汇编语言程序设计(典藏版)(含CD光盘1张)(年,经典再现!) 罗云彬 著 ISBN 978-7-121-20759-4 2013年7月出版 定价:99.00元 756页 1 ...
- hibernate(二)一级缓存和三种状态解析
序言 前一篇文章知道了什么是hibernate,并且创建了第一个hibernate工程,今天就来先谈谈hibernate的一级缓存和它的三种状态,先要对着两个有一个深刻的了解,才能对后面我要讲解的一对 ...
- 如何处理Win7连接vpn时报错789的问题
[转]VPN错误提示: vpn连接出错789:L2TP连接尝试失败,因为安全层在初始化与远程计算机的协商时遇 (2014-08-11 15:09:10)转载▼标签: it xp连接VPN错误提示: v ...
- C++Builder及VC的库相互调用
coff2omf vc.lib bc.lib implib -f xxx.lib xxx.dll dll文件为VC编译的动态库lib文件为你需要转换的c++ builder 使用的静态库. 这也是 ...
- android: 多线程编程基础
9.1 服务是什么 服务(Service)是 Android 中实现程序后台运行的解决方案,它非常适合用于去执行那 些不需要和用户交互而且还要求长期运行的任务.服务的运行不依赖于任何用户界面,即使 ...