У меня точно такая же проблема, как описано здесь .
Я пытаюсь использовать это намерение:
android.provider.ContactsContract.Intents.ATTACH_IMAGE
Starts an Activity that lets the user pick a contact to attach an image to.
Звучит подходящим для меня, но, к сожалению, приводит к 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.");
}
Как упомянуто в ссылке, это приводит к появлению другого меню перед переходом к контактам. Это приемлемо, но не идеально.