直接复制就行
只能在真机运行
权限:
权限:
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" /> <uses-permission android:name="android.permission.CAMERA"></uses-permission>
保存按钮监听里面:
//保存按钮
btn_save.setOnClickListener(
new
View.OnClickListener() {
@Override
public void
onClick
(View v) {
Toast.
makeText
(
context
,
"保存"
,
Toast.
LENGTH_SHORT
).show()
;
InputStream is =
context
.getResources().openRawResource(
ilist
.get(
position
%
ilist
.size()))
;
Bitmap mBitmap = BitmapFactory.
decodeStream
(is)
;
File file =
new
File(
"/sdcard/DCIM/camera"
)
;
///stystm/DCIM/camera
String str=file.getPath()
;
//调用保存相册的方法
saveFile
(mBitmap
,
"c.jpg"
,
str
,
context
)
;
dialog
.dismiss()
;
}
})
;
//把图片保存在相册中
public static void
saveFile
(Bitmap bm
,
String fileName
,
String path
,
Context context) {
try
{
String subForder =
SAVE_REAL_PATH
+ path
;
File foder =
new
File(subForder)
;
if
(!foder.exists()) {
foder.mkdirs()
;
}
File myCaptureFile =
new
File(subForder
,
fileName)
;
if
(!myCaptureFile.exists()) {
myCaptureFile.createNewFile()
;
}
BufferedOutputStream bos =
new
BufferedOutputStream(
new
FileOutputStream(myCaptureFile))
;
boolean
compress = bm.compress(Bitmap.CompressFormat.
JPEG
,
80
,
bos)
;
System.
out
.println(
"compress = "
+ compress)
;
bos.flush()
;
bos.close()
;
//发送广播更新相册
Intent intent =
new
Intent(Intent.
ACTION_MEDIA_SCANNER_SCAN_FILE
)
;
Uri uri = Uri.
fromFile
(myCaptureFile)
;
intent.setData(uri)
;
context.sendBroadcast(intent)
;
}
catch
(IOException e) {
e.printStackTrace()
;
}
}