Androidジャンプベースアプリケーション(連絡先、カレンダー)
Androidシステムでは、基本アプリケーションのオープンインタフェースの多くは、連絡先やカレンダーなどのcontractクラスで調べることができます.
次に、最近使ったものを簡単にいくつか挙げます.原理は同じです.他のシーンは一反三を挙げることができます.
contact_によるid連絡先編集ページへジャンプ
注意:
連絡先テーブルにはidが2つあります:contact_idとraw_contact_id.
contact_idとraw_contact_idは一対のマルチマッピングで混用できませんが、
それぞれに対応するURIとマッチさせて使用する必要があります.そうしないと混乱します.
contact_によるid常用連絡先として追加
既存の情報を使用して新しい連絡先を作成
カレンダーページに移動して新しいイベントを追加
import android.provider.CalendarContract;
import android.provider.ContactsContract;
次に、最近使ったものを簡単にいくつか挙げます.原理は同じです.他のシーンは一反三を挙げることができます.
contact_によるid連絡先編集ページへジャンプ
Uri uri = Uri.withAppendedPath(ContactsContract.Contacts.CONTENT_URI, String.valueOf(contact_id));
Intent intent = new Intent(Intent.ACTION_EDIT);
intent.setData(uri);
startActivityForResult(intent, type);
注意:
連絡先テーブルにはidが2つあります:contact_idとraw_contact_id.
contact_idとraw_contact_idは一対のマルチマッピングで混用できませんが、
それぞれに対応するURIとマッチさせて使用する必要があります.そうしないと混乱します.
contact_によるid常用連絡先として追加
Uri uri = Uri.withAppendedPath(ContactsContract.Contacts.CONTENT_URI, String.valueOf(item.id));
ContentValues values = new ContentValues();
values.put(ContactsContract.Contacts.STARRED, 1);
int i = context.getContentResolver().update(uri, values, null, null);
既存の情報を使用して新しい連絡先を作成
Intent intent = new Intent(Intent.ACTION_INSERT);
intent.setData(ContactsContract.Contacts.CONTENT_URI);
intent.putExtra(ContactsContract.Intents.Insert.PHONE, "18688888888");
context.startActivityForResult(intent, type);
ContactsContract.Intents.InsertクラスにはPHONE以外にもいくつかの一般的なタイプが追加できますカレンダーページに移動して新しいイベントを追加
Intent intent = new Intent(Intent.ACTION_INSERT);
intent.setData(CalendarContract.Events.CONTENT_URI);
intent.putExtra(CalendarContract.Events.TITLE, " ");
context.startActivityForResult(intent, type);
同様,CalendarContractクラスにも内部クラスが多く用いられているが,ここでは一つ一つ列挙しない.