手机重启完成后启动服务

时间:2014-04-30 08:19:32

标签: android broadcastreceiver

我希望在手机重启完成后启动服务。我将安装我的应用程序,但不会启动它。 我使用广播接收器监听 BOOT_COMPLETED 意图继续以下方式。

我的接收者如下......

 public class MyReceiver extends BroadcastReceiver {
   static final String TAG = "MyReceiver"; 
     @Override
       public void onReceive(Context context, Intent intent) {
      // TODO Auto-generated method stub
      Log.d(TAG, "******* OnReceive");
      Log.d(TAG, "Boot Completed Caught");
      context.startService(new Intent(context, MyService.class));
      }
    }

在Manifest中,我添加了以下代码行:

   <uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" />

    <service android:name="MyService"
        android:enabled="true" >
        <intent-filter>
           <action android:name="com.example.logic.MyService" />
        </intent-filter>
    </service>


  <receiver android:name="MyReceiver" android:enabled="true"  android:exported="true">
        <intent-filter>
            <action android:name="android.intent.action.BOOT_COMPLETED" />
        </intent-filter>
    </receiver>

但是一旦启动完成,接收器就不会监听。请记住,我只安装了我的应用程序,但从未启动它。但我的要求是,我不应该在我的设备中安装后启动我的应用程序。任何人都可以帮助我。

我用谷歌搜索了一下,发现因为我没有启动我的应用程序,它处于 停止状态 ,启动完成的意图忽略了我的接收器。以下链接可能有助于您了解我的问题:           http://devmaze.wordpress.com/2011/12/05/activating-applications/

1 个答案:

答案 0 :(得分:0)

服务和MyReceiver必须是完整的包名, 像这样