Я хочу, чтобы мое приложение предложило пользователю создать новый контакт через стандартный интерфейс контактов на Android. Затем я хочу получить информацию от вновь созданного контакта.Добавить контактное намерение не возвращает данные onActivityResult под ICS
Мой код основан на «Добавление нового контакта» с сайта this.
Intent intent = new Intent(Intent.ACTION_INSERT);
intent.setType(Contacts.CONTENT_TYPE);
intent.putExtra(ContactsContract.Intents.Insert.PHONE, number);
startActivityForResult(intent, PICK_CONTACT);
, а затем
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
Intent intent = new Intent(this, Foo.class);
Uri uri = data.getData(); //I get nullpointer here on ICS
intent.putExtra("contact", ContactAccessor.getInstance().loadContact(this, uri));
startActivity(intent);
finish();
}
Этот код прекрасно работает на Android 2.2 и 2.3. Он запускает приложение для контактов и позволяет пользователю вводить такие данные, как имя и адрес электронной почты, и когда они будут сделаны, и нажмите «ОК» или «сохранить» или «что угодно», он вернется в мое приложение, и я могу прочитать материал, который они ввели. На Android 4.0 (ICS), однако, он не возвращается в мое приложение, когда пользователь закончил создание контакта. И когда я выхожу из вида контакта (через кнопку «Назад»), он не содержит никаких намерений с контактной информацией.
Какое намерение следует использовать для получения такого же поведения в ICS?
У меня такая же проблема :( –
http://stackoverflow.com/questions/9551821/android-4-0-3-and-finish-activity Я имею подобный вопрос. – user1247617
мой проблема заключается в том, что если я открываю другое действие и возвращусь к родительской активности onActivityResult(), но когда я попытаюсь захватить изображение, используя намерение onActivityResult(), которое вызывается до того, как я захватил или отменил событие камеры, и эта проблема возникает в android 4.03 (тестирование на htc me) –