2011-09-27 96 views
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例外,我不知道會我給什麼權限短信備份。有人告訴我?提前致謝。

+1

大聲笑!您正在使用的權限是什麼? –

+1

您應該查看您的例外日誌,它會顯示您缺少的權限。 – Egor

+0

同樣在未來,它是真正有幫助的,如果你從LogCat發佈Stacktrace – slayton

回答

3

你需要,因爲

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

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

我不知道你能永遠訪問:/data/data/com.android.providers.telephony/databases/mmssms.db

+1

順便說一下,爲什麼你要製作這個目錄。它沒有被使用。 – slayton

+0

@slayton你是對的!我不知道嘿嘿 –

+0

@Sherif:那麼,哪一個被使用?我已經給了這個許可。 – Praveenkumar

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

你必須添加此權限,因爲你正試圖w禮儀文件到SDcard。希望這有助於

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

您還需要閱讀收件箱郵件的權限。

希望它會幫助你