您的位置:首页 > 移动开发 > Android开发

保存图片到本项目data/data下,实现简易照片隐藏功能

2017-04-19 18:22 961 查看
       现在项目有个照片加密功能,需要从系统中取出所有照片,通过加密使系统相册以及其他应用无法读取到我加密的图片,具体实现是使用了支持AES加密解密的
CipherInputStream
CipherOutputStream
借助这两个Stream可以实现将加密的图片文件读取成解密后的Bitmap实现。

      言归正传,这篇文章并不是要介绍具体怎么实现加密,而是通过IOS应用内所独有的专属文件夹产生联想,android本身也有每个应用专属的存储地址,data/data大家一定都很熟悉。直接上代码

File file = new File(Environment.getExternalStorageDirectory().getAbsolutePath()+"/DCIM/gif/move.JPG");  //原文件
FileOutputStream out = mContext.openFileOutput("testmove.jpg", mContext.MODE_PRIVATE);//导入到data/data下的新文件
结合上述方法加上java IO流写入,可以将源文件导入到你的包名下data/data/目录下,然后删除原文件,你就会发现,所有应用都无法读到你的图片,然后通过

FileInputStream input = mContext.openFileInput("testmove.jpg");	//读取data/data/ 下的文件

读取data/data/里你所保存的文件,即可读出你应用“独有”照片,当然卸载应用时,包名下的所有文件都会被系统删除,所以并不建议通过这个方法永久保存文件。只是通过这个方法举一反三,系统数据库中包括 图片,视频,音频都可通过这个方法让你的app“独有”。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  android 文件加密
相关文章推荐