私は、連絡先ピッカー機能をアプリに追加する機能と、アプリからネイティブの連絡先マネージャーに連絡先を追加する機能に取り組んでいます。挿入するために、私は次のように連絡先管理者を立ち上げています:
Intent intent = new Intent(ContactsContract.Intents.Insert.ACTION);
intent.setType(ContactsContract.RawContacts.CONTENT_TYPE);
intent.putExtra(ContactsContract.Intents.Insert.PHONE, mCurrentNumber);
intent.putExtra(ContactsContract.Intents.Insert.PHONE_TYPE, "MyType");
mActivity.startActivityForResult(intent, ADD_CONTACT);
これにより、連絡先マネージャが正常に開き、指定した電話番号が入力されます。ただし、Nexus 7タブレットでは、連絡先マネージャーが戻るとメイン画面に戻り、アプリに応答を送信しません。これは正常に機能し、ICSデバイスで期待どおりに戻りますが、Nexus 7がGoogleのものであるのに対し、ICSデバイスがメーカーのカスタムコンタクトマネージャーを使用しているためかどうかはわかりません。
誰かがこの問題に光を当てることができますか?コンタクトマネージャーの起動方法に問題はありますか?
編集:Nexus7のContactManagerオプションメニューから[Discard]を選択すると、期待どおりにアプリに戻ることも追加する必要があります。問題が発生するのは、「完了」ボタンを選択した場合のみです。[完了]を選択すると、Contact Managerのメインメニューに移動します。その時点で、Contact Managerを終了しようとすると、ユーザーはホーム画面に移動します。