2014-12-01 77 views
0

林保存鈴聲與此代碼可以在Android設置:保存值Android設置

Uri uri = MediaStore.Audio.Media.getContentUriForPath(outPath); 
    Uri newUri = getContentResolver().insert(uri, values); 

這段代碼保存在:

content://media/INTERNAL/audio/media/[FILE NAME] 

我想知道,爲什麼這個保存在內部?我的文件實際上在SD卡上!我不明白爲什麼!

+1

你有<使用許可權的android:NAME = 「android.permission.WRITE_EXTERNAL_STORAGE」/>在應用清單? – Rahin 2014-12-01 18:36:47

+0

outPath的類型和價值是什麼?什麼是價值的類型和價值?你正在保存在Android設置?那應該是什麼? – greenapps 2014-12-01 18:44:34

+0

@RahinJegarajaratnam:是的,我有這個permision – Fcoder 2014-12-01 18:45:25

回答

0

如果您的文件路徑不是從Environment.getExternalStorageDirectory().getPath()返回的相同值開始,那麼該模式將默認爲INTERNAL_CONTENT_URI。確保您的outPath從適當的路徑開始。

來源[MediaStore.Audio.Media]:

public static Uri getContentUriForPath(String path) { 
    return (path.startsWith(Environment.getExternalStorageDirectory().getPath()) ? 
      EXTERNAL_CONTENT_URI : INTERNAL_CONTENT_URI); 
}