0

我正在使用这个进行短信备份

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我不知道我会给予什么许可一样。有人告诉我吗?提前致谢。

4

3 回答 3

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

于 2011-09-27T14:30:18.940 回答
1
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />

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

于 2011-09-27T14:33:03.397 回答
0
<uses-permission android:name="android.permission.READ_SMS"></uses-permission>

您还需要阅读收件箱消息的权限。

希望对你有帮助

于 2012-02-10T12:33:39.270 回答