我是 android 编程的初学者,我正在尝试创建将短信记录到文件的应用程序。我遇到“方法 getContentResolver() 对于 SMSObserver 类型未定义”的问题,我不知道为什么......
这是代码:
public class SMSObserver extends ContentObserver
{
SMSLogger smsLogger;
public SMSObserver(SMSLogger smsLogger) {
super(new Handler());
this.smsLogger = smsLogger;
}
@Override
public void onChange(boolean selfChange) {
super.onChange(selfChange);
querySMS();
}
protected void querySMS() {
Uri uriSMS = Uri.parse("content://sms/");
Cursor cur = getContentResolver().query(uriSMS, null, null, null, null);
cur.moveToNext();
String body = cur.getString(cur.getColumnIndex("body"));
String add = cur.getString(cur.getColumnIndex("address"));
String time = cur.getString(cur.getColumnIndex("date"));
String protocol = cur.getString(cur.getColumnIndex("protocol"));
String out = "";
if (protocol == null)
out = "Sending to "+add + ".Time:"+time +" - "+body;
else out = "Receive from "+add + ".Time:"+time +" - "+body;
/*logging action HERE...*/
}
}
和进口:
import android.database.ContentObserver;
import android.os.Handler;
import android.content.ContextWrapper;
import org.json.JSONException;
import org.json.JSONStringer;
import android.content.ContentResolver;
import android.content.Intent;
import android.content.BroadcastReceiver;
import android.database.Cursor;
import android.net.Uri;
import android.content.Context;
import android.os.RemoteException;
import android.provider.ContactsContract;
import android.provider.ContactsContract.CommonDataKinds;
import android.provider.ContactsContract.PhoneLookup;
请帮忙。