繁体   English   中英

Android 6.0.1 应用程序开机后自动启动

[英]Android 6.0.1 application auto start after boot

我想在设备启动后立即启动我的MainActivity 我尝试了多种解决方案,但没有一个有效。 目前,我有这个。

AndroidManifest.xml

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

<receiver android:name="installer.common.InstallerBroadcastReceiver">
    <intent-filter>
        <action android:name="android.intent.action.BOOT_COMPLETED" />
        <action android:name="android.intent.action.QUICKBOOT_POWERON" />
    </intent-filter>
</receiver>

安装程序广播接收器.kt

class InstallerBroadcastReceiver : BroadcastReceiver() {
    override fun onReceive(context: Context, intent: Intent) {
        val i = Intent(context, MainActivity::class.java)
        i.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK)
        i.putExtra("test", 1)
        context.startActivity(i)
    }
}

MainActivity.kt

override fun onCreate(savedInstanceState: Bundle?) {
    super.onCreate(savedInstanceState)
    setContentView(R.layout.main)
    if (intent.hasExtra("test")) {
        someMethodHere()
    }
}

关于什么可能是错误的任何建议?

尝试拆分您的intent-filter

    <intent-filter>
        <action android:name="android.intent.action.QUICKBOOT_POWERON" />
    </intent-filter>
    <intent-filter>
        <action android:name="android.intent.action.BOOT_COMPLETED" />
    </intent-filter>

似乎设备(zkteco)有问题,我收到此错误I/BackgroundManagerService: prevent from boot complete broadcast: com.mypackagename

在我尝试过的其他设备上,它正在工作。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM