public class SetImg {
private static final int REQUEST_EXTERNAL_STORAGE = 1;
private static String[] PERMISSIONS_STORAGE = {
Manifest.permission.READ_EXTERNAL_STORAGE,
Manifest.permission.WRITE_EXTERNAL_STORAGE
};
public static void saveBitmap(View v, Context context) {
int permission = ActivityCompat.checkSelfPermission(context, Manifest.permission.WRITE_EXTERNAL_STORAGE);
if (permission != PackageManager.PERMISSION_GRANTED) {
// We don't have permission so prompt the user
ActivityCompat.requestPermissions(
(Activity) context,
PERMISSIONS_STORAGE,
REQUEST_EXTERNAL_STORAGE
);
}
String storePath = Environment.getExternalStorageDirectory().getAbsolutePath() + File.separator + "同业宝图片";
File appDir = new File(storePath);
if (!appDir.exists()) {
appDir.mkdir();
}
String fileName = System.currentTimeMillis() + ".jpg";
File file = new File(appDir, fileName);
Bitmap bm = Bitmap.createBitmap(v.getWidth(), v.getHeight(),
Bitmap.Config.ARGB_8888);
Canvas canvas = new Canvas(bm);
v.draw(canvas);
String TAG = "TIKTOK";
Log.e(TAG, "保存图片");
/* String storePath = Environment.getExternalStorageDirectory().getAbsolutePath() + File.separator + "同业宝名片";*/
/* File f = new File(storePath, fileName);*/
try {
FileOutputStream out = new FileOutputStream(file);
bm.compress(Bitmap.CompressFormat.PNG, 90, out);
out.flush();
out.close();
Log.i(TAG, "已经保存");
} catch (FileNotFoundException e) {
// TODO Auto-generated catch block
Log.e(TAG, "保存文件失败");
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
Log.e(TAG, "保存失败");
e.printStackTrace();
}
}
}
网友评论