У меня точно такая же проблема, как описано here.Прикрепить изображение к контакту
Я пытаюсь использовать это Намерение: android.provider.ContactsContract.Intents.ATTACH_IMAGE
Starts an Activity that lets the user pick a contact to attach an image to.
Sounds подходит ко мне, но, к сожалению, приводит к ActivityNotFoundException
.
Код:
import android.provider.ContactsContract;
...
try {
Intent myIntent = new Intent();
myIntent.setAction(ContactsContract.Intents.ATTACH_IMAGE);
myIntent.setData(imageUri);
startActivity(myIntent);
} catch (ActivityNotFoundException anfe) {
Log.e("ImageContact",
"Firing Intent to set image as contact failed.", anfe);
showToast(this, "Firing Intent to set image as contact failed.");
}
Я не могу найти ошибку в коде выше. imageUri
является правильным для следующего кода работает отлично:
Код:
try {
Intent myIntent = new Intent();
myIntent.setAction(Intent.ACTION_ATTACH_DATA);
myIntent.setData(imageUri);
startActivity(myIntent);
} catch (ActivityNotFoundException anfe) {
Log.e("ImageContact",
"Firing Intent to set image as contact failed.", anfe);
showToast(this, "Firing Intent to set image as contact failed.");
}
Как уже упоминалось в связи это приводит к другому меню, прежде чем попасть к контактам. Это приемлемо, но не идеально.
Кажется, что отлично работает с 1,6, 2,1, 2,2 - 2,0,1, похоже, ошибка связана с тем, что контактное изображение нельзя установить вручную из изображения галереи. – App8ite
Thx для вашего ответа. Вы идете обходным путем, считывая идентификаторы контактов и прикрепляя изображение напрямую или все еще используете намерение «android.provider.ContactsContract.Intents.ATTACH_IMAGE»? Читая страницу содержания-поставщика, мне кажется, мне нужно будет создать собственный список контактов, чтобы получить идентификаторы, а затем позволить пользователю выбрать один, а затем перезаписать его/ее изображение. Или я чего-то не понимаю? – Redfox
Я использую Intent (Intent.ACTION_ATTACH_DATA), дает мне два намеренных действия для установки значка контакта и обоев, которые я использовал. Извините, не может помочь вам с проблемой ID контактов. – App8ite