android让软件自启动,求助 40C

<application
    android:allowBackup="true"

    android:label="@string/app_name"
    android:supportsRtl="true" >
    <activity android:name="com.zmf.feiying.unityandroidlibrary.MainActivity" >
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />

            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>

        <meta-data
            android:name="unityplayer.UnityActivity"
            android:value="true" />
    </activity>

    <receiver
        android:name="com.zmf.feiying.unityandroidlibrary.StartBootComplete"
        android:enabled="true"
        android:exported="true"
        android:permission="android.permission.RECEIVE_BOOT_COMPLETED">
        <intent-filter android:priority="1000" >
            <action android:name="android.intent.action.BOOT_COMPLETED" />
            <category android:name="android.intent.category.HOME" />
        </intent-filter>
    </receiver>
</application>





private final String ACTION_BOOT = "android.intent.action.BOOT_COMPLETED";

@Override
public void onReceive (Context context, Intent intent) {

    if (ACTION_BOOT.equals(intent.getAction())) {
        Intent intentMainActivity = new Intent(context, MainActivity.class);
        intentMainActivity.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
        context.startActivity(intentMainActivity);
    }
}

}
代码都写好了,就是放在手机上不好用,我手机是华为 android9.0的

3个回答

华为EMUI会默认管理APP自启动,先在手机管家->启动管理里把你的APP由自动管理改为手动,并把允许自启动开启,再试试

AndroidManifest中增加权限声明,然后receiver中加log输出,再查看logcat的输出,看看是哪里的问题。
debug就是多处排查嘛

缺少权限吧 , 而且自己写一个静态注册广播接收器试试

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

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问