2012-11-17 103 views
0

我正在編寫純粹依賴於android內容提供商(MediaStore)的音樂播放器。問題是,內容提供商並不總是拿起設備上的所有音樂,尤其是當人們有奇怪的配置/自定義ROM等。同時使用內容提供商和文件文件搜索

我確信有關於此的信息,但我不知道不知道它叫什麼或搜索什麼。基本上我希望設備使用內容提供商,但也要在後臺搜索媒體文件,然後將它們與內容提供商進行比較,並將它們添加到我的適配器(如果它們不在內容提供商中)。

是否有任何開源代碼可以用於音樂或圖像或其他任何內容?我想看一些例子。

回答

0

Android有一個媒體掃描器,可以觸發重新掃描。這應該添加丟失的文件到MediaStore。該simples的aproach被髮送廣播象下面這樣:

public static void triggerMediaScanner(Context context) { 
    Uri data = Uri.fromFile(Environment.getExternalStorageDirectory()); 
    Intent intent = new Intent(Intent.ACTION_MEDIA_SCANNER_SCAN_FILE); 
    intent.setData(data); 
    context.sendBroadcast(intent); 
} 
+0

感謝您的答覆,但我談論的文件的mediaScanner不拿起.. –

+0

採取一些算法,可以列出文件,加載列表在'AsyncTask'或者一個自定義的'Loader'中,例如把所有的數據放在一個'ArrayList'中,並且向組合的數據提供一個'ArrayAdapter'。 – zapl