我创建一个Android应用程序,需要一个屏幕截图并保存在App图像文件夹的时候,这是我用它来创建文件夹并保存截图中的代码:崩溃创建图像文件夹
String root = Environment.getExternalStorageDirectory().toString();
File myDir = new File(root + "/Porte3D");
myDir.mkdirs();
Random generator = new Random();
int n = 10000;
n = generator.nextInt(n);
// Write your image name here
String fname = "Image-"+ n +".jpg";
File file = new File (myDir, fname);
if (file.exists()) file.delete();
try {
FileOutputStream out = new FileOutputStream(file);
bitmap.compress(Bitmap.CompressFormat.JPEG, 90, out);
out.flush();
out.close();
} catch (Exception e) {
e.printStackTrace();
}
sendBroadcast(new Intent(Intent.ACTION_MEDIA_MOUNTED, Uri.parse("file://"+ Environment.getExternalStorageDirectory())));
我有2台设备上测试这一点,三星Galaxy S2和摩托G,对S2的文件夹被创建和图像被正确地存储,但Moto G的,下面的错误崩溃:
10-27 09:09:41.422: A/libc(12069): Fatal signal 6 (SIGABRT) at 0x00002f25 (code=-6), thread 12435 (Thread-62263)
有谁知道如何解决这个问题,以便在每个设备上工作?
你必须确保ExternalStorage可使用它 – 2014-10-27 08:16:16
这不是错误之前,该ExternalStorage可以用我的Moto G的 – Signo 2014-10-27 08:24:52
一件事sendBroadca st(new Intent(Intent.ACTION_MEDIA_MOUNTED,Uri.parse(“file://”+ Environment.getExternalStorageDirectory()))); 这是弃用从KitKat,虽然它不是你崩溃的原因,我刚刚出题,粘贴年完整的崩溃日志 – 2014-10-27 08:27:00