直接看代码:
import android.app.*; import android.content.Intent; import android.media.RingtoneManager; import android.net.Uri; import android.os.*; import android.util.*; import android.view.View; import android.view.View.OnClickListener; import android.widget.Button; public class MainActivity extends Activity { private Uri myUri = null; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); Button myButton = (Button) findViewById(R.id.myButton); myButton.setOnClickListener(new OnClickListener() { @Override public void onClick(View arg0) { // TODO Auto-generated method stub Intent intent = new Intent(); intent.setAction(RingtoneManager.ACTION_RINGTONE_PICKER); // Allow user to pick 'Default' //intent.putExtra(RingtoneManager.EXTRA_RINGTONE_SHOW_DEFAULT, true); intent.putExtra(RingtoneManager.EXTRA_RINGTONE_TITLE,"设置通知铃声"); // Show only ringtones intent.putExtra(RingtoneManager.EXTRA_RINGTONE_TYPE, RingtoneManager.TYPE_RINGTONE); // Don't show 'Silent' intent.putExtra(RingtoneManager.EXTRA_RINGTONE_SHOW_SILENT, false); //Uri ringtoneUri = RingtoneManager.getDefaultUri(RingtoneManager.TYPE_RINGTONE); // Put checkmark next to the current ringtone for this contact if(myUri != null) { intent.putExtra(RingtoneManager.EXTRA_RINGTONE_EXISTING_URI, myUri); //intent.putExtra(RingtoneManager.EXTRA_RINGTONE_PICKED_URI, myUri); } // Launch! startActivityForResult(intent, 0); } }); } @Override public void onActivityResult(int requestCode, int resultCode, Intent data) { try { myUri = data.getParcelableExtra(RingtoneManager.EXTRA_RINGTONE_PICKED_URI); Log.i("pickedUri", myUri.toString() + ""); } catch (Exception e) { e.printStackTrace(); } } }