我正在尝试编写我的第一个Android应用程序。来自winmobile手机,有一个选项来阻止我的传出来电显示,而不是Android。 我已经启动了一个小应用程序,它将为传出呼叫添加* 67问题是它为每个呼叫添加* 67,我不想将此添加到我的联系人列表中的人,这样他们就可以看到我的那就是呼叫。我只想阻止我的来电显示为未知号码
这是迄今为止的所有代码及其在模拟器中的工作,基础知识来自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();
}
}}
有人能指出我在正确的方向吗?我不知道如何检查联系人列表中的拨号号码
答案 0 :(得分:0)
你问的是你想要获取通话记录的详细信息。你可以这样做:
Uri UriCalls = Uri.parse("content://call_log/calls");
Cursor cursor = getContentResolver().query(UriCalls, null, null, null, null);
请参阅此doc以获得更明确的信息。