最近做的一个小App中的一个功能, 把ImageView中的图片保存为一个 jpg文件。
如果设备上有SDCard,图片会被保存到SD卡上,如果没有则保存在设备的存储空间中。
这里主要包含了两个要点,一是 Android文件保存时文件夹的创建;二是 ImageView中图片提取并保存为图片。
感觉今后还会用到,这里总结一下以后方便查找。
程序运行界面:
使用类的说明
关于Android 的文件系统
android 文件存储可以分两部分 一个是设备的flash,一个是SDCard。感觉android 对APP对文件的访问权限控制的比较严。
一个App比较肯定的可以自由访问(读 写 创建 删除文件 或文件夹 )的位置有2个,其他的位置就未必了,有的可能可以读,但无法写入或创建文件夹。
(1) SDCard
在卸载了App后,相关的文件还在,不会被删除。
(2) /data/data/[your_project]/ 在设备自带的RAM上。app的权限各自独立,即每个app 默认只能读写自己文件夹下的文件, your_project: 是app的包的名字。
在卸载了App后,相关的文件可能会被删除,但没有尝试过。
但操作sdcard需要权限,我们必须在AndroidManifest.xml中进行配置
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"></uses-permission>
打开/关闭sdcard的权限
<uses-permission android:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS"></uses-permission>
Android_Manifest.xml
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.example.imageviewsave2bitmap"
android:versionCode="1"
android:versionName="1.0" >
<uses-sdk
android:minSdkVersion="8"
android:targetSdkVersion="17" />
<application
android:allowBackup="true"
android:icon="@drawable/ic_launcher"
android:label="@string/app_name"
android:theme="@style/AppTheme" >
<activity
android:name="com.example.imageviewsave2bitmap.MainActivity"
android:label="@string/app_name" >
<intent-filter>
<action android:nam