Androidの標準の連絡先インターフェイスを使用して、新しい連絡先を作成するようにアプリケーションに要求します。次に、新しく作成した連絡先から情報を読み取ることができるようにしたい。連絡先のインテントを追加しても、ICSの下でonActivityResultのデータが返されない
私のコードは、thisサイトの「Adding A New Contact」に基づいています。
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に細かい動作します。連絡先アプリケーションを起動し、ユーザーに名前や電子メールアドレスなどの情報を入力させ、完了したら「OK」または「保存」または「何でも」をアプリに返し、入力したものを読むことができます。 Android 4.0(ICS)では、連絡先の作成が完了しても、アプリには戻ってこない。私がコンタクトビューを終了するとき(戻るボタンを通して)、コンタクト情報の意図は含まれません。
ICSで同じ動作をするには、どのような意図を使用しますか?
私は同じ問題を抱えている:( –
http://stackoverflow.com/questions/9551821/android-4-0-3-and-finish-activity 私は同様の問題を抱えています。 – user1247617
私問題は、別のアクティビティを開いてonActivityResult()の親アクティビティに戻ったときに動作しますが、カメライベントをキャプチャまたはキャンセルする前に呼び出されたintent onActivityResult()を使用してイメージをキャプチャしようとすると、この問題はアンドロイド4.03 htc me) –