我一直在开发必须捕获所有输入短信的应用程序。为此,我使用扩展BroadcastReceiver类的SmsReceiver类,它可以工作,但我需要应用程序在自动重启后才能工作。为此,我使用第二个BroadcastReceiver RebootingReceiver,它也扩展了BroadcastReceiver,但我不知道如何再次注册SmsReceiver。请尝试使用此代码,但它不起作用:
public class RebootingReceiver extends BroadcastReceiver{
@Override
public void onReceive(Context context, Intent intent) {
// TODO Auto-generated method stub
IntentFilter filter=new IntentFilter();
filter.addAction("android.provider.Telephony.SMS_RECEIVED");
context.registerReceiver(new SmsReceiver(), filter);
}
}
我在哪里犯了错误?
答案 0 :(得分:1)
在清单文件中添加
<receiver android:name=".RebootingReceiver">
<intent-filter >
<action android:name="android.provider.Telephony.SMS_RECEIVED" />
</intent-filter>
</receiver>
答案 1 :(得分:0)
您必须注册接收器才能重新启动。检查this link