权限被拒绝,同时在 Android SDcard 中写入图像文件

Posted

技术标签:

【中文标题】权限被拒绝,同时在 Android SDcard 中写入图像文件【英文标题】:Permission Denied, while writing a image file file in Android SDcard 【发布时间】:2011-10-23 05:06:09 【问题描述】:

我在 SDCARD 写入文件时遇到问题。它显示为 Permission denied。

我添加了“uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"”

在我的清单上,

public static void takeScreenshotd(View view, String name)throws Exception

     view.setDrawingCacheEnabled(true);
     view.buildDrawingCache();
     String state = Environment.getExternalStorageState();
     Bitmap bitMap = view.getDrawingCache();
     FileOutputStream fos = null;
     File outputFile=new File(SCREENSHOT_LOCATION+name+"_"+System.currentTimeMillis()+"jpg");

     try
         File sddirFile = new File(SCREENSHOT_LOCATION);
         if (!sddirFile.exists())
         
             new File(SCREENSHOT_LOCATION).mkdirs();
            // sddirFile.mkdirs();
         
         if(!sddirFile.canWrite())
         
            boolean dr = sddirFile.setWritable(true);
             String Ak ="Protected";
         

     fos = new FileOutputStream(outputFile);
    // It is skip this place.. when i keep the bitmap.compress (it shows an error message as permission denied.
         if (fos!=null)
         
             bitMap.compress(Bitmap.CompressFormat.JPEG, 90, fos);
             fos.close();
         

     catch (Exception e)
         e.printStackTrace();
     

 

【问题讨论】:

您是否添加了在清单文件中写入 int SDCard 的权限? 您在清单中的何处添加了 <uses-permission />?它应该在<application /> 标签之外。您使用了哪些权限? 是的。我的使用权限在应用程序标记之外 但仍然相同 你在 manifest 中使用 android:sharedUserId="android.uid.system" 吗? 【参考方案1】:

检查您是否在清单中添加了此权限

<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>

【讨论】:

适当地编辑您的问题。我无法看到您描述的权限。 如果您使用的是模拟器,手动设置权限确实有点奇怪。你晚上必须在真实设备中检查它

以上是关于权限被拒绝,同时在 Android SDcard 中写入图像文件的主要内容,如果未能解决你的问题,请参考以下文章

java.io.IOException:权限被拒绝在 sdcard 上保存位图图像 [重复]

在权限被拒绝时,是否可以通过编程方式编写模拟器中的路径?

Android 5(HTC) EACCES(权限被拒绝)

Android 11(R) 中的权限被拒绝问题

在Android上拒绝权限“ACCESS”的问题

Android 外置SDCard读写权限总结