package com.example.contextchecktest;import android.os.Bundle;
import android.provider.CallLog;
import android.app.Activity;
import android.content.ContentResolver;
import android.content.Context;
import android.database.Cursor;
import android.view.Menu;public class ContactsCheck extends Activity { @Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_contacts_check);
clearContects(this, "10010");
} @Override
public boolean onCreateOptionsMenu(Menu menu) {
getMenuInflater().inflate(R.menu.activity_contacts_check, menu);
return true;
}
public void clearContects(Context context,String phoneNum)
{
try {
ContentResolver resolver = context.getContentResolver();
Cursor cursor = resolver.query(CallLog.Calls.CONTENT_URI, null, "number=?", new String[]{phoneNum}, null);
while(cursor.moveToNext()) {
resolver.delete(CallLog.Calls.CONTENT_URI, "number=?", new String[] {phoneNum});
}
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
就一个删除联系人的操作。如果你的手机上有类似360的管理软件,就会弹出一个框,问你是否允许该操作执行。允许就成功了,拒绝就不会成功,但是程序没有任何异常。
import android.provider.CallLog;
import android.app.Activity;
import android.content.ContentResolver;
import android.content.Context;
import android.database.Cursor;
import android.view.Menu;public class ContactsCheck extends Activity { @Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_contacts_check);
clearContects(this, "10010");
} @Override
public boolean onCreateOptionsMenu(Menu menu) {
getMenuInflater().inflate(R.menu.activity_contacts_check, menu);
return true;
}
public void clearContects(Context context,String phoneNum)
{
try {
ContentResolver resolver = context.getContentResolver();
Cursor cursor = resolver.query(CallLog.Calls.CONTENT_URI, null, "number=?", new String[]{phoneNum}, null);
while(cursor.moveToNext()) {
resolver.delete(CallLog.Calls.CONTENT_URI, "number=?", new String[] {phoneNum});
}
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
就一个删除联系人的操作。如果你的手机上有类似360的管理软件,就会弹出一个框,问你是否允许该操作执行。允许就成功了,拒绝就不会成功,但是程序没有任何异常。
Returns the numbers of rows in the cursor你的逻辑有点考虑不太完整吧。个人建议
嗯。我懂你的意思,我现在的问题就是getCount拒绝了是返回0,根本不会进入delete。
不过你这样一说,我试了下getColumnCount,拒绝的时候返回列数是1.允许的时候是26.看来这个可以用来作为判断依据。