Android - 启动电话启动活动不起作用

时间:2018-01-09 23:15:18

标签: java android android-intent android-activity broadcastreceiver

我正在尝试向我的程序添加BroadcastReceiver,以便在检测到MainActivity操作时启动我的BOOT_COMPLETED

我已尝试了所有内容herehere,但它拒绝运作。我正在运行Android 5.1.1,API 22.

AndroidManifest.xml

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

<!-- Declaring broadcast receiver for BOOT_COMPLETED event. -->
        <receiver
            android:name=".BootReceiver"
            android:enabled="true"
            android:exported="true"
            android:permission="android.permission.RECEIVE_BOOT_COMPLETED">
            <intent-filter>
                <action android:name="android.intent.action.BOOT_COMPLETED"/>
                <action android:name="android.intent.action.QUICKBOOT_POWERON"/>
                <category android:name="android.intent.category.DEFAULT"/>
            </intent-filter>
        </receiver>

<intent-filter>中,我尝试独立使用BOOT_COMPLETEDQUICKBOOT_POWERON以及结合使用(如图所示),结果没有变化。

BootReceiver.java

public class BootReceiver extends BroadcastReceiver {
    private final static String TAG = BootReceiver.class.getSimpleName();
    @Override
    public void onReceive(Context context, Intent intent) {

        Log.d(TAG, "BootReceiver has been called - attempting to launch MainActivity");

        Intent startMainActivityIntent = new Intent(context, MainActivity.class);
        startMainActivityIntent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
        context.startActivity(startMainActivityIntent);
    }
}
编辑:在重新启动手机之前,我正在从多任务中删除应用程序。如果我启动活动,然后在它运行时重新启动手机,它似乎仍然在重启时。但是,尝试打开它会导致崩溃。

0 个答案:

没有答案