未找到 Android 启动完成活动

问题描述

我正在尝试编写一个在设备启动时启动的服务。

java.lang.RuntimeException: Unable to start receiver packagename.BootReciever: android.content.ActivityNotFoundException: Unable to find explicit activity class {packagename/packagename.MainActivity$Companion}; have you declared this activity in your AndroidManifest.xml?

在我的清单中

<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="packagename">

    <uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
    <uses-permission android:name="android.permission.INTERNET"/>
    <uses-permission android:name="android.permission.INJECT_EVENTS" />
    <uses-permission android:name="android.permission.FOREGROUND_SERVICE" />
    <uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" />

    <application
        android:allowBackup="false"
        android:icon="@mipmap/ic_launcher"
        android:label="@string/app_name"
        android:roundIcon="@mipmap/ic_launcher_round"
        android:supportsRtl="true"
        android:theme="@style/Theme.AppCompat.Translucent"
        android:fullBackupContent="@xml/backup_descriptor">
        <activity android:name="packagename.MainActivity">
            <intent-filter>
                <action android:name="android.intent.action.MAIN"/>
                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
        <service android:name="packagename.RemoteService">
            <intent-filter>
                <action android:name="android.net.wifi.WIFI_STATE_CHANGED" />
            </intent-filter>
        </service>

        <receiver android:name="packagename.BootReciever"
            android:enabled="true"
            android:exported="true">
            <intent-filter android:directBootAware="true">
                <action android:name="android.intent.action.BOOT_COMPLETED" />
                <action android:name="android.intent.action.LOCKED_BOOT_COMPLETED" />
                <action android:name="android.intent.action.QUICKBOOT_POWERON" />
                <action android:name="android.intent.action.REBOOT"/>
            </intent-filter>

        </receiver>

    </application>

</manifest>

当我打开应用程序时,它运行良好,但是我想在启动完成后启动应用程序。我将它推入系统/应用程序,然后它就崩溃了。

    override fun onReceive(p0: Context?,p1: Intent?) {
        if(p1?.action.equals("android.intent.action.BOOT_COMPLETED")){
            Log.e("Ahmet ","START PLSSSSSSSSSSSSS")
            val startIntent = Intent(p0,MainActivity.javaClass)
            startIntent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK)
            p0?.startActivity(startIntent)
        }
    }
}

主活动

class MainActivity : Activity() {


    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        appContext = applicationContext
        ServiceModul.startServices(this)
        finish()
    }

    companion object {
        lateinit var appContext: Context
    }


}

我签署了应用程序,它有权限,但是在启动时,它找不到 MainActivity。我检查包名称 3-4 次。我该怎么办?

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)