我缺少什么许可?

时间:2011-09-27 14:25:55

标签: android sms backup permission-denied

我正在使用此

进行短信备份
public void smsbackup() throws IOException
    {
        InputStream in = new FileInputStream("/data/data/com.android.providers.telephony/databases/mmssms.db");

        File dir = new File("/mnt/sdcard/bcfile");
        dir.mkdirs();

        OutputStream output = new FileOutputStream("/data/data/com.android.app/files/");

        byte[] buffer = new byte[1024];
        int length;
        while ((length = in.read(buffer))>0) 
        {
            output.write(buffer, 0, length);
        }
        output.flush();
        output.close();
        in.close();
    }

它会引发像permission denied这样的异常我不知道我会给予什么许可。有谁告诉我?在此先感谢。

3 个答案:

答案 0 :(得分:3)

你需要

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

因为

File dir = new File("/mnt/sdcard/bcfile");

我想知道您是否可以访问:/data/data/com.android.providers.telephony/databases/mmssms.db

答案 1 :(得分:1)

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

您必须添加此权限,因为您正在尝试将文件写入SD卡。希望这有帮助

答案 2 :(得分:0)

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

您还需要获得阅读收件箱信息的权限。

希望它能帮到你