android - Setzt einen benutzerdefinierten Klingelton auf eine bestimmte Kontaktnummer

Ich versuche, eine Android-App zu entwickeln. Ich muss einer bestimmten Kontaktnummer einen Klingelton zuweisen, ohne dem Benutzer den Zugriff auf die Kontaktliste zu gestatten.

Hier ist der Code zum Zuweisen eines Klingeltons an alle Kontakte:

File k = new File("/sdcard/AudioRecorder", "hello.mp4");

   // Uri i = data.getData(); //getDATA
    //String s = i.getPath(); //getPath
   // File k = new File(s); //set File from path

//if(s!=null){  //(file.exists

    ContentValues values = new ContentValues();
       values.put(MediaStore.MediaColumns.DATA, k.getAbsolutePath());
       values.put(MediaStore.MediaColumns.TITLE, "ring");
       values.put(MediaStore.MediaColumns.MIME_TYPE, "audio/mp4");
       values.put(MediaStore.MediaColumns.SIZE, k.length());
       values.put(MediaStore.Audio.Media.ARTIST, R.string.app_name);
       values.put(MediaStore.Audio.Media.IS_RINGTONE, true);
       values.put(MediaStore.Audio.Media.IS_NOTIFICATION, true);
       values.put(MediaStore.Audio.Media.IS_ALARM, true);
       values.put(MediaStore.Audio.Media.IS_MUSIC, false);

       Uri uri = MediaStore.Audio.Media.getContentUriForPath(k.getAbsolutePath());
       getContentResolver().delete(uri, MediaStore.MediaColumns.DATA + "=\"" + k.getAbsolutePath() + "\"", null);
    Uri newUri = getContentResolver().insert(uri, values);
try {
           RingtoneManager.setActualDefaultRingtoneUri(MainActivity.this, RingtoneManager.TYPE_RINGTONE, newUri);
       } catch (Throwable t) {

       }   

Wie kann ich dies für einen bestimmten Kontakt tun?

Antworten auf die Frage(1)

Ihre Antwort auf die Frage