2011-09-22 3 views
0

첫 번째 Android 앱을 쓰려고합니다. winmobile 전화에서 오는, 내 안의 발신자 ID를 차단하는 옵션이 있습니다. 안드로이드는 그렇지 않습니다. Ive는 발신 전화에 * 67을 추가하기 시작한 작은 응용 프로그램을 가지고 있습니다. 문제는 그것이 모든 통화에 * 67을 추가하는 것입니다. 나는 전화를 걸 수 있음을 알기 위해 전화를 사람들에게 추가하고 싶지 않습니다. 난 그냥 알 수없는 번호전화를 거는 번호가 연락처 목록에 있는지 확인하십시오.

이 지금까지 모든 코드 및 에뮬레이터에서의 작업에 내 발신자 ID를 차단하려는, 기초는 http://androidcookbook.com/Recipe.seam?recipeId=1151에서 온

public class OutgoingCallInterceptor extends BroadcastReceiver { 

@Override 
public void onReceive(Context context, Intent intent) { 

    final String originalNumber = intent.getStringExtra(Intent.EXTRA_PHONE_NUMBER); 

    String myNumber = originalNumber; 
    String msg3 = "Caller Id Already Blocked " + myNumber; 
    String msg4 = "Blocking Caller Id " + myNumber; 

    if(myNumber.contains("*67") == true) 
    { 
       Toast.makeText(context, msg3, Toast.LENGTH_LONG).show(); 
     this.setResultData(originalNumber); 

    } else { 
      Toast.makeText(context, msg4, Toast.LENGTH_LONG).show(); 
     this.setResultData("*67" + originalNumber); 
     final String newNumber = this.getResultData(); 
     String msg = "Caller Id Blocked - Old number " + originalNumber + ", new number " + newNumber; 
     Toast.makeText(context, msg, Toast.LENGTH_LONG).show(); 

    } 

}} 

누군가가 여기에 올바른 방향으로 날 지점 수 ? 연락처 목록에 숫자 메신저 전화를 확인하는 방법 임 확실하지 당신이 요구하는 것은 당신이 전화가 details.You 그렇게 할 수있는 로그 가져 오기 할 것입니다

답변

0

:

Uri UriCalls = Uri.parse("content://call_log/calls"); 
Cursor cursor = getContentResolver().query(UriCalls, null, null, null, null); 

는 이상이 doc 참조 투명성.

+0

당신이 준 링크에서 읽은 내용은 최근 통화 전용입니다. 위의 코드는 최근 다이얼 된 통화를 잘 처리합니다. 연락처 목록에서 번호를 선택하면 * 67이 추가됩니다. 나는 그렇게하기를 원하지 않는다. 그래서 내가 무엇을하려고하는 지 전화 번호가 내 연락처 목록에 있는지 확인하는 것입니다. * 67 번을 – frustrated

+0

에 추가하지 마십시오. 연락처에서 연락처 목록을 가져오고 다음을 시도해보십시오. http : //lovingandroid.blogspot.com /2011/08/contacts.html –

+0

아니요, 전화를 걸고있는 전화 번호가 전화를 거는 것처럼 목록에서 선택하지 않고 연락처 목록에 있는지 확인하는 것입니다. – frustrated

관련 문제