簡體   English   中英

ContentResolver.insert返回null

[英]ContentResolver.insert returns null

從活動內部將聲音設置為鈴聲/通知時,我有時會遇到問題:

ContentValues values = new ContentValues();
values.put(MediaStore.MediaColumns.DATA, source);
values.put(MediaStore.MediaColumns.TITLE, "abc");
values.put(MediaStore.MediaColumns.SIZE, new File(source).length());
values.put(MediaStore.MediaColumns.MIME_TYPE, mime);
values.put(MediaStore.Audio.Media.ARTIST, "xyz");
values.put(MediaStore.Audio.Media.IS_RINGTONE, true);
values.put(MediaStore.Audio.Media.IS_NOTIFICATION, true);

final Uri curi = MediaStore.Audio.Media.getContentUriForPath(source);
Uri uri = getContentResolver().insert(curi, values);

大多數時間uri類似於“content:// media / external / audio / media / 23”,但有時它是null。 我不知道問題出在哪里,音頻文件還可以(它們播放正常)顯然插入方法不會拋出任何異常。 我查看了文檔,但沒有關於返回null的方法。 可能是什么問題呢?

內容提供商尚不支持遠程異常。 當你得到返回的null Uri時,我會查看logcat。 我懷疑媒體提供商會拋出某種異常。

23,24應該是媒體的音量上下。 uri應該是一樣的。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM