Java 呼叫日志和sms的内容提供商不工作
在我的应用程序中,我需要获得每一个callincoming/outgoing/miscall以及消息的信息。因此,在安装应用程序时,我使用了content observer和registered observer。但不知道为什么在注册后,观察者只运行一次并向我提供数据,然后观察者不运行,可能是它被取消注册了。我的问题是,如何在安装了我的应用程序的情况下永久注册observer?observer被注销的原因是什么 这是我的注册代码Java 呼叫日志和sms的内容提供商不工作,java,android,android-contentprovider,Java,Android,Android Contentprovider,在我的应用程序中,我需要获得每一个callincoming/outgoing/miscall以及消息的信息。因此,在安装应用程序时,我使用了content observer和registered observer。但不知道为什么在注册后,观察者只运行一次并向我提供数据,然后观察者不运行,可能是它被取消注册了。我的问题是,如何在安装了我的应用程序的情况下永久注册observer?observer被注销的原因是什么 这是我的注册代码 public static void registerObserv
public static void registerObserver(Context ctx)
{
resolver = ctx.getContentResolver();
handler=new SMSHandler();
call_observer=new CallObserver(handler, ctx);
resolver.registerContentObserver(CallLog.Calls.CONTENT_URI,true,call_observer);
}
以下是通话记录观察者:
public class CallObserver extends ContentObserver {
private Context context;
String contact_id = "", email = "", address = "", name = "";
public static Date date;
public static SimpleDateFormat sdf;
public CallObserver(Handler handler, Context context) {
super(handler);
this.context = context;
}
@Override
public void onChange(boolean selfChange) {
// TODO Auto-generated method stub
Thread thread = new Thread() {
public void run() {
Do_Some_Thing();
}
};
thread.start();
super.onChange(selfChange);
}
private void Do_Some_Thing() {
Log.e("observer running","observer running");
}
}
}
您可以使用SharedPreference将其注册。@KanwaljitSingh谢谢您,先生,但您如何解释呢?我对这种情况不太了解。但是检查这个链接肯定会帮助你。