2013-04-29 27 views
0

我正在开发一个小型的android应用程序,我希望在设备启动完成后启动一些服务。为什么我的Android启动接收器不工作?

这是我用来尝试完成此操作的代码,但它没有收到启动完成事件,所以它不工作。

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

<receiver android:name="MyScheduleReceiver" > 
     <intent-filter> 
      <action android:name="android.intent.action.BOOT_COMPLETED" /> 
     </intent-filter> 
    </receiver> 

//my schedule receiver 
public class MyScheduleReceiver extends BroadcastReceiver { 

    @Override 
    public void onReceive(Context context, Intent intent) 
    { 
     if("android.intent.action.BOOT_COMPLETED".equals(intent.getAction())) 
     { 
     Log.i("*************************TEST", "Service loaded at start"); 
     Toast.makeText(context, "device started", Toast.LENGTH_SHORT).show(); 
     } 
    } 
} 

MyScheduleReceiver永远不会被触发;难道我做错了什么?

+0

这可能重复之前错过任何一个点:http://stackoverflow.com/questions/2784441/trying-to-start-a-service-on-boot-on-android – 2013-04-29 08:47:16

+0

尝试在清单中的“MyScheduleReceiver”之前添加包路径。像 2013-04-29 08:49:37

回答

2

您MyScheduleReceiver

<receiver android:name=".MyScheduleReceiver" > 
    <intent-filter> 
     <action android:name="android.intent.action.BOOT_COMPLETED" /> 
    </intent-filter> 
</receiver>