나는 내가 모든 전화가
BTW 단 몇 초 전에 로그인 이미 경우에도
내 커서는 항상 null를 돌려 걸려 오는 전화 후 CallLog 컨텐츠 제공자에게 질의를하게 걸려 오는 전화
를 감지하는 리스너 아래에 있습니다 내가 걸려 오는 전화 후 첫 번째 행마다 나의 커서를 할 수 있도록하려는
이클립스에서 프로젝트를 실행하기 전에 내 통화 기록을 삭제하지만, 그것은 단지
커서가 null을 반환하는 이유는 무엇입니까?
// Listener to detect incoming calls.
private class CallStateListener extends PhoneStateListener {
@Override
public void onCallStateChanged(int state, String incomingNumber) {
if (previousState == TelephonyManager.CALL_STATE_RINGING
&& state == TelephonyManager.CALL_STATE_IDLE) {
cursor = context.getContentResolver().query(
CallLog.Calls.CONTENT_URI, projection, null, null,
Calls.DEFAULT_SORT_ORDER);
Log.i("SIZE OF CURSOR", String.valueOf(cursor.getCount()));
if (cursor.moveToFirst()) {
}// end if
}// end if
Log.i("onCallStateChanged",
String.format("State changed to %d", state));
previousState = state;
}// end onCallStateChanged()
}// end CallStateListener class
Cursor cursor;
private String[] projection = new String[] { Calls.TYPE, Calls.NUMBER };
사용자가받는 모든 수신 전화. 통화에 응답하든 부재 중 전화를 건든 수신 전화가 올 때마다 CallLog 컨텐트 프로 바이더에 쿼리를합니다. – Marss