2016-06-19 12 views
1

「デモ」のようにユーザからSMSを受信しながらカスタムリングを設定したいのですが、シングルユーザ向けにカスタムリングを設定できますか?私はこれをしようとしていますが、これは私が連絡先の着信音を設定するために使用するものであるシングルユーザのカスタムSMS着信音を設定する

final Uri lookupUri = Uri.withAppendedPath(ContactsContract.PhoneLookup.CONTENT_FILTER_URI, "9801205808"); 
    final String[] projection = new String[]{ 
      ContactsContract.Contacts._ID, ContactsContract.Contacts.LOOKUP_KEY 
    }; 
    final Cursor data = getContentResolver().query(lookupUri, projection, null, null, null); 
    data.moveToFirst(); 
    try { 
     final long contactId = data.getLong(0); 
     final String lookupKey = data.getString(1); 
     final Uri contactUri = ContactsContract.Contacts.getLookupUri(contactId, lookupKey); 
     if (contactUri == null) { 
      return; 
     } 
     final String storage = Environment.getExternalStorageDirectory().getPath(); 
     final File file = new File(storage + "/AudioRecorder", "hello.mp4"); 
     final String value = Uri.fromFile(file).toString(); 

     final ContentValues values = new ContentValues(1); 
     values.put(ContactsContract.Contacts.CUSTOM_RINGTONE, value); 
     getContentResolver().update(contactUri, values, null, null); 
    } finally { 
     data.close(); 
    } 

答えて

0

を私の要件を達成することはできません。

Cursor c =...; // query contact cursor 
    int dataIndex = c.getColumnIndexOrThrow(Contacts._ID); 
    String contactId = c.getString(dataIndex); 
    Uri uri = Uri.withAppendedPath(Contacts.CONTENT_URI, contactId); 

    ContentValues values = new ContentValues(); 
    values.put(Contacts.CUSTOM_RINGTONE, mRingtoneUri.toString()); 
    getContentResolver().update(uri, values, null, null); 
+0

uは詳細に、機能のコードを投稿できますか? –

関連する問題