2010-01-08 22 views
11

Bir oynatma listesi oynatmaya çalışıyorum MediaStore sağlayıcısını kullanarak. Bununla birlikte, bir oynatma listesini çalmayı denediğimde hiçbir şey olmuyor. MediaPlayer bir çalma listesi (m3u dosyası) çalabilir mi? Oynatılacak ilk parçayı ayarlamanız mı gerekiyor? Her hacim akışı döndüMediaPlayer ile çalma listesini çalma

 Uri uri = MediaStore.Audio.Playlists.EXTERNAL_CONTENT_URI; 
    if(uri == null) { 
     Log.e("Uri = null"); 
    } 
    String[] projection = new String[] { MediaStore.Audio.Playlists._ID, MediaStore.Audio.Playlists.NAME, MediaStore.Audio.Playlists.DATA }; 
    Cursor c = managedQuery(uri, projection, null, null, null); 
    if(c == null) { 
     Toast.makeText(getApplicationContext(), R.string.alarm_tone_picker_error, Toast.LENGTH_LONG).show(); 
     return; 
    } 
    if(!c.moveToFirst()) { 
     c.close(); 
     Toast.makeText(getApplicationContext(), R.string.alarm_tone_picker_no_music, Toast.LENGTH_LONG).show(); 
     return; 
    } 
    c.moveToFirst(); 
    try { 
     MediaPlayer player = new MediaPlayer(); 
     player.setDataSource(c.getString(2)); 
     player.start(); 
    } catch(Exception e) { 
     e.printStackTrace(); 
    } 

:

Bu onCreate() yönteminde benim test kodudur.

Teşekkür sen,

Kaloer

+0

Lütfen burada bulduğunuz çözümü gönderin, böylece avantajlarından yararlanabilirsiniz. – MBH

cevap

4

Ben medya oynatıcı bir çalma listesi oynayabilir sanmıyorum. Sanırım sadece bir parça çalacak. Çalma listesindeki parçaları takip etmeli ve bunları medya oynatıcısına iletmelisiniz. Müzik çalar için android kaynak kodunu ve nasıl işlediğini kontrol etmenize yardımcı olabilir.

+3

Evet, öğrendim. Tüm parça URI'larını bir Listeye koydum ve tek parça halinde çaldım. Bir parça bittiğinde, listede bir sonraki oynamaya başladım. – Kaloer