2012-05-19 6 views
0

Я разрабатываю приложение, которое должно захватывать все входящие sms. Для этого я использую класс SmsReceiver, который расширяет класс BroadcastReceiver, и он работает, но мне нужно, чтобы приложение могло работать после перезагрузки автоматически. Для этого я использую второй BroadcastReceiver RebootingReceiver, который также расширяет BroadcastReceiver, но я не знаю, как я могу снова зарегистрировать SmsReceiver. Пожалуйста, я пытаюсь использовать этот код, но он не работает:Как зарегистрировать BroadcastReceiver для улавливателя sms?

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); 
    } 
} 

Где я совершил ошибку?

ответ

1

добавить это в вашем файле манифеста

<receiver android:name=".RebootingReceiver"> 
    <intent-filter >    
      <action android:name="android.provider.Telephony.SMS_RECEIVED" /> 
    </intent-filter> 
</receiver> 
+0

Нет, в этом случае RebootingReceiver поймает все новые sms, но мне нужно, чтобы RebootingReceiver регистрировал только SmsReceiver после перезагрузки – user1166635

Смежные вопросы