簡體   English   中英

如何獲得默認鈴聲uri

[英]How can I get default ringtone uri

我需要具有默認鈴聲的URI。

我可以使用此代碼獲取默認鈴聲

            Uri uri = RingtoneManager.getDefaultUri(RingtoneManager.TYPE_RINGTONE);
            Ringtone rt = RingtoneManager.getRingtone(context,uri);

在rt(鈴聲)中,我可以在屏幕截圖中看到mUri,但它不是公共財產,所以我不能擁有它。

我怎么有那個財產?

注意:RingtoneManager.java中有一個getUri,但它是隱藏的。

/** {@hide} */
public Uri getUri() {
    return mUri;
}

屏幕截圖

public void RingtonesList() {
  RingtoneManager manager = new RingtoneManager(this);
  manager.setType(RingtoneManager.TYPE_RINGTONE);
  Cursor cursor = manager.getCursor();
  while (cursor.moveToNext()) {
    String title = cursor.getString(RingtoneManager.TITLE_COLUMN_INDEX);
    String uri = cursor.getString(RingtoneManager.URI_COLUMN_INDEX);
    // Do something with the title and the URI of ringtone
Log.d("URI",""+uri);
  }
}

Also give permission

<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.READ_INTERNAL_STORAGE" />
Uri defaultRingtoneUri = RingtoneManager.getActualDefaultRingtoneUri(getActivity().getApplicationContext(), RingtoneManager.TYPE_RINGTONE);
Ringtone defaultRingtone = RingtoneManager.getRingtone(getActivity(), defaultRingtoneUri);

希望這對您有用! :)

暫無
暫無

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

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