コールログを取得する方法

過去のメモから引っ張りだしてきた第3弾
コールログを取得する方法
Query作ってDBアクセスする。Xperia X10の頃の情報なので今ならもっと便利なAPIあるかも?

// Prepare select data columns
String projection = new String {
	BaseColumns._ID,
	CallLog.Calls.NUMBER,
	CallLog.Calls.DATE,
	CallLog.Calls.TYPE,
	CallLog.Calls.DURATION,
	CallLog.Calls.CACHED_NAME,
	CallLog.Calls.CACHED_NUMBER_LABEL,
	CallLog.Calls.CACHED_NUMBER_TYPE
};

// Create cursor for querying SQL database
Cursor c = managedQuery(
	CallLog.Calls.CONTENT_URI,
	projection,
	null,
	null,
	CallLog.Calls.DEFAULT_SORT_ORDER );

	int iColumnIndex = c.getColumnIndex(CallLog.Calls.CACHED_NAME);
	c.moveToFirst();
	String strName = c.getString(iColumnIndex);
	Log.v(TAG, "strName = " + strName);

	iColumnIndex = c.getColumnIndex(CallLog.Calls.NUMBER);
	c.moveToFirst();
	String strNumber = c.getString(iColumnIndex);
	Log.v(TAG, "strNumber = " + strNumber);