Flutter AndroidManifest.xml 错误:找不到包标识符或启动活动

问题描述 投票:0回答:1

我正在开发 Android 的 Flutter 项目,遇到与 AndroidManifest.xml 文件相关的错误。当尝试运行我的项目时,我收到以下错误消息:

package identifier or launch activity not found. Please check /Users/[user]/AndroidStudioProjects/[project]/android/app/src/main/AndroidManifest.xml for errors.
No application found for TargetPlatform.android_arm64.
Is your project missing an android/app/src/main/AndroidManifest.xml? Consider running "flutter create ." to create one.

我检查了我的 AndroidManifest.xml,它似乎是正确的。即使确保包名称和目标平台设置正确后,错误仍然存在。

有人可以提供如何解决此问题的指导吗?可能导致此错误的原因是什么?我应该采取哪些步骤来排除故障并修复它?

AndroidManifest.xml:

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

    <uses-permission android:name="android.permission.INTERNET" />
    <uses-permission
        android:name="android.permission.WRITE_EXTERNAL_STORAGE"
        android:maxSdkVersion="32"
        tools:ignore="ScopedStorage" />
    <uses-permission
        android:name="android.permission.READ_EXTERNAL_STORAGE"
        android:maxSdkVersion="32" />

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

    <uses-permission android:name="android.permission.USE_BIOMETRIC" />
    <uses-permission android:name="com.google.android.gms.permission.AD_ID" />

    <application
        android:name="androidx.multidex.MultiDexApplication"
        android:allowBackup="false"
        android:fullBackupContent="false"
        android:icon="@mipmap/ic_launcher"
        android:label="@string/app_name"
        android:manageSpaceActivity=".MainActivity"
        android:requestLegacyExternalStorage="true"
        android:usesCleartextTraffic="true"
        tools:replace="android:label"
        tools:targetApi="34">

        <meta-data
            android:name="com.google.android.gms.ads.APPLICATION_ID"
            android:value="ca-app-pub-7518009535578646~8800834968"/>

        <activity
            android:name=".MainActivity"
            android:theme="@style/LaunchTheme" />

        <activity-alias
            android:name="OneLauncherAlias"
            android:enabled="true"
            android:exported="true"
            android:icon="@mipmap/ic_launcher"
            android:label="@string/app_name"
            android:targetActivity=".MainActivity"
            android:theme="@style/LaunchTheme">
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />
                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity-alias>

        <activity-alias
            android:name="TwoLauncherAlias"
            android:enabled="false"
            android:exported="true"
            android:icon="@mipmap/calculator"
            android:label="@string/app_name_fake"
            android:targetActivity=".MainActivity"
            android:theme="@style/LaunchTheme">
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />
                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity-alias>
        <!-- Don't delete the meta-data below.
             This is used by the Flutter tool to generate GeneratedPluginRegistrant.java -->
        <meta-data
            android:name="flutterEmbedding"
            android:value="2" />
    </application>
</manifest>

附加信息:

Flutter 版本:

3.13.5
和 Dart 版本:
3.1.2

android flutter dart error-handling manifest
1个回答
0
投票

试试这个。

  1. 从两个

    intent-filter
    中删除
    activity-alias
    ,然后将
    intent-filter
    添加到
    activity
    中。

  2. 也在活动中设置

    android:exported="true"

    <activity
        android:name=".MainActivity"
        android:theme="@style/LaunchTheme" 
        android:exported="true"
        >
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />
            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>
    </activity>
    
    <activity-alias
        android:name="OneLauncherAlias"
        android:enabled="true"
        android:exported="true"
        android:icon="@mipmap/ic_launcher"
        android:label="@string/app_name"
        android:targetActivity=".MainActivity"
        android:theme="@style/LaunchTheme" />
    
    <activity-alias
        android:name="TwoLauncherAlias"
        android:enabled="false"
        android:exported="true"
        android:icon="@mipmap/calculator"
        android:label="@string/app_name_fake"
        android:targetActivity=".MainActivity"
        android:theme="@style/LaunchTheme" />
    
© www.soinside.com 2019 - 2024. All rights reserved.