2014-01-20 5 views
2
if (Build.VERSION.SDK_INT > 18) { 
// I have no idea what to do... :( 



} else { // It works good under api level 18 
    Uri DefaultRingtoneUri = RingtoneManager.getActualDefaultRingtoneUri(this, RingtoneManager.TYPE_RINGTONE); 

if (DefaultRingtoneUri != null) { 
    Cursor c = getContentResolver().query(DefaultRingtoneUri, null, null, null, null); 
    c.moveToFirst(); 
    BellName = c.getString(c.getColumnIndex(MediaStore.MediaColumns.TITLE)); 
    mediaURI = String.valueOf(DefaultRingtoneUri); 
} 
} 

기본 벨소리 URI는 어떻게 얻을 수 있습니까?4.4 kitkat에서 벨소리 URI를 얻는 방법

기타 코드는 4.3 이하 버전에서 잘 작동합니다.

답변

2

이것은 기본 사운드를 재생하는 데 사용됩니다.

Uri notification = RingtoneManager.getDefaultUri(RingtoneManager.TYPE_NOTIFICATION); 
Ringtone r = RingtoneManager.getRingtone(getApplicationContext(), notification); 
r.play(); 

자세한 내용은 How to play ringtone/alarm sound in Android을 참조하십시오.

+0

사용 권한 문제 일뿐입니다. 나는 READ_EXTERNAL_STORAGE – user3136241

+0

이 4.3 및 그 아래에서 허가없이 작동한다는 것이 허락 된 것을주었습니다. –

관련 문제