写一个程序,我把它设置成了开机自启动,可是每次开机自启动都报错,但是手动启动这个程序能正常运行,上网查了下大概是AndroidManifest.xml里的问题,可是改来改去也改不对,求大神赐教啊<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.android.setMyApn" android:versionCode="1"
android:versionName="1.0">
<uses-sdk android:minSdkVersion="8" /> <application android:icon="@drawable/icon" android:label="@string/app_name">
<activity android:name="com.android.setMyApn2.SetMyApnActivity" android:label="@string/app_name">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<receiver android:name="com.android.setMyApn2.ApnBroadcastReceiver">
<intent-filter>
<action android:name="android.intent.action.BOOT_COMPLETED" />
<category android:name="android.intent.category.HOME" />
</intent-filter>
</receiver>
</application>
<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED"></uses-permission>
<uses-permission android:name="android.permission.WRITE_APN_SETTINGS"></uses-permission>
    <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION"></uses-permission>
    <uses-permission android:name="android.permission.ACCESS_WIFI_STATE"></uses-permission>
    <uses-permission android:name="android.permission.CHANGE_NETWORK_STATE"></uses-permission>
    <uses-permission android:name="android.permission.CHANGE_WIFI_STATE"></uses-permission>
    <uses-permission android:name="android.permission.INTERNAL_SYSTEM_WINDOW"></uses-permission>
    <uses-permission android:name="android.permission.INTERNET"></uses-permission>
    <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
</manifest>

解决方案 »

  1.   

    报错?报什么错啊!开机自动启动,我觉得用service可以了。
      

  2.   

    把<receiver android:name="com.android.setMyApn2.ApnBroadcastReceiver">换成<receiver android:name=".ApnBroadcastReceiver">
      

  3.   

    application stopped unexpected
      

  4.   

    package="com.android.setMyApn" 这里是这个包名而后面的Activity和Receiver又是:com.android.setMyApn2,最好一致手动启动,说明你的程序没有问题,开机自启动,无非是你的Receiver收到BOOT_COMPLETED事件后,拉起你的Activity了,这个过程可以跟踪下,可能是注册BOOT_COMPLETED事件失败,或者是拉起Activity失败