写了个程序。这个程序需要开机后自动启动。按照网上的也结合书上的写好程序后。出现了一下问题:1.关掉程序,用“重启”按钮重启手机。手机启动后,程序可以自动启动。
2.关掉程序,先把手机关机。然后再开机。程序就不能自动启动了。
3.开着程序的情况下,不管是“重启”还是关机再开机,程序都可以自动启动。就是那个2,不知道为什么不能自动启动呢?关于自动启动的部分,大概代码如下。MyReceriver.javapublic class MyReceriver extends BroadcastReceiver {
  @Override
  public void onReceive(Context context, Intent intent) {
    Intent intent1 = new Intent(context,MyService.class);
    context.startService(intent1);
  }}
AndroidManifest.xml<receiver android:name=".MyReceriver">
<intent-filter>
<action android:name="android.intent.action.BOOT_COMPLETED" />
<category android:name="android.intent.category.home"/>
</intent-filter>
</receiver>

解决方案 »

  1.   

    看不出来什么,你可以打一些LOG信息看下,关程序后再开机,关程序后再重启有啥区别啊,慢慢分析呗
    帮帮忙吧
      

  2.   

    把android.intent.action.BOOT_COMPLETED放到代码里试试,我在Phone里做过改动,好像除了Manifest中外,还有代码中也要有的public void onReceive(Context context, Intent intent) {
            mContext = context;
                if(intent.getAction().equals( Intent.ACTION_BOOT_COMPLETED )){    
                   Log.d("11", "boot is start------------------------>start  modem.service");
                   Intent i=new Intent(context, modem.class);
                   context.startService(i);
            }