在内存中先读取到一张图片,格式为Bitmap,之后要将其保存到自己游戏安装目录下的某一文件夹中,代码如下(函数的参数为
一Bitmap的数据):
public void save(Bitmap bitmap) {
try {
File file = new File(Environment.getExternalStorageDirectory()
+ "/Android/data/com.XXX.XXX/files");
if (!file.exists()) {
file.mkdirs();
}
File myFaceFile = new File(
Environment.getExternalStorageDirectory()
+ "/Android/data/com.XXX.XXX/files/Name.png");
if (myFaceFile.exists()) {
return;
}
OutputStream stream = new FileOutputStream(myFaceFile);
bitmap.compress(CompressFormat.PNG, 100, stream);
stream.close();
Intent intent = new Intent();
intent.setAction(Intent.ACTION_MEDIA_MOUNTED);
intent.setData(Uri.fromFile(Environment
.getExternalStorageDirectory()));
sendBroadcast(intent);
this.runOnUiThread(new Runnable() {
public void run() {
Toast.makeText(ThisContext, "保存图片成功", Toast.LENGTH_SHORT)
.show();
}
});
UnityPlayer.UnitySendMessage("1PanelOfUserAccount", "ChangeFace",
"Name.png");
} catch (Exception e) {
this.runOnUiThread(new Runnable() {
public void run() {
Toast.makeText(ThisContext, "保存图片失败", Toast.LENGTH_SHORT)
.show();
}
});
e.printStackTrace();
}
try {
File tempFile = null;
tempFile.delete();
} catch (Exception e) {
e.printStackTrace();
}
}