在Android中启动手机启动活动

Swa*_*yam 3 boot android startup android-activity

我想在手机启动时自动启动我的应用程序。我在清单文件中声明了BroadcastReceiver。

<receiver android:name=".Autostart">  
<intent-filter>  
    <action android:name="android.intent.action.BOOT_COMPLETED" />  
</intent-filter>  
Run Code Online (Sandbox Code Playgroud)

<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" />
Run Code Online (Sandbox Code Playgroud)

我为接收器制作了一个Java文件。

自动启动

public class Autostart extends BroadcastReceiver {
@Override
public void onReceive(Context context, Intent intent) {
    if ("android.intent.action.BOOT_COMPLETED".equals(intent.getAction())) {  

    Intent pushIntent = new Intent(context, MushTouchActivity.class); 
    pushIntent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
    context.startActivity(pushIntent);
    }
}
Run Code Online (Sandbox Code Playgroud)

}

但是,当我打开手机电源时,该应用程序无法启动。谁能告诉我我在这里想念的吗?

Foa*_*Guy 5

尝试这样的if语句:

    if (intent.getAction().equals(Intent.ACTION_BOOT_COMPLETED)){


        Intent i = new Intent(context, MushTouchActivity.class);
        i.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);

        context.startActivity(i);
    }
Run Code Online (Sandbox Code Playgroud)