私は数日にわたりグーグルで多くのことを行いましたが、この問題を解決できませんでした。私はを呼び出すことによって、ユーザがImageView
または他のビュー要素をクリックしたときにクイック連絡先ダイアログを表示するアプリケーションとウィジェットを作成しています。android:showquickcontact()はfroyo上でうまく動作しますが、eclairではActivityNotFound例外がスローされません
01-02:17:51:28.869:何らかの理由で、私はエクレアにしようとするたびに、私は次のようなエラースローを得るERROR/AndroidRuntime(657): java.lang.RuntimeException:できません起動します活性 ComponentInfo {com.sx.favwidget/com.sx.favwidget.PopupActivity} android.content.ActivityNotFoundException:全く活性が テント{行為= com.android.contacts.action.QUICK_CONTACT DAT =コンテンツを処理するために見つかりませんでした。 //com.android.contacts/contacts/lookup/0n4D29415739 flg = 0x14200000(追加内容あり)
(私はlogcatの残りの部分を残しましたが、あなたがそれを必要とするならば戻すことができます)
私はFroyoで全く同じコードを試してみてください。私は、Froyoユーザーのみをターゲットにしたアプリケーションを望んでいません。2.1を最小OSレベルとしています。 QuickContactsを表示するのに苦労しているStack Overflow上の他の人々が見つかりました。
私はQuickContactBadgeを使うことができましたが、それはEclairでは動作しますが、私はAppWidgetでQuickContactBadgeを使用できません。代わりにこれを行いました。私はAndroidのソースコードを掘り、関連するXMLファイルとレイアウトを作成するためのコードを見つけましたが、すべてのプライベートAPI呼び出しを伴う大きな頭痛のため、簡単にはコンパイルできません。
ここに私のコードです。それは簡単です。
grid.setOnItemClickListener(new OnItemClickListener() {
public void onItemClick(AdapterView<?> parent, View v, int position, long id) {
String name = ((TextView)v.findViewById(R.id.grid_item_label)).getText().toString();
Cursor sc = getContentResolver().query(Contacts.CONTENT_URI, new String[] {Contacts.LOOKUP_KEY, Contacts._ID}, Contacts.DISPLAY_NAME + "= ?", new String[] {name}, null);
sc.moveToFirst();
String lookup_key = sc.getString(sc.getColumnIndex(Contacts.LOOKUP_KEY));
Uri uri = Uri.withAppendedPath(ContactsContract.Contacts.CONTENT_LOOKUP_URI, lookup_key);
QuickContact.showQuickContact(getApplicationContext(), v, uri, QuickContact.MODE_SMALL, null);
}
}
それはフローズンヨーグルト、ないエクレアで動作することだけでとても奇妙だが、APIの呼び出しは、Android 2.0以降がありました。誰も私をここで助けることができますか?
ありがとうございます!
同じエラーが表示される: – Premier