Ошибка при разборе локального файла: ‘E:androidappsrcmainAndroidManifest.xml» Пожалуйста, убедитесь, что манифест Android является действительным XML-документом, и повторите попытку

#flutter #google-maps #dart #android-manifest #fluttermap

Вопрос:

мое приложение отлично работает. но когда я добавляю некоторые разрешения на использование Интернета и карты и ключ api для карты Google, это приводит к ошибке. я попытался очистить флаттер, запустить флаттер, но все равно получил ту же ошибку. Я не понимаю, что я делаю не так в файле манифеста. пожалуйста, кто-нибудь, помогите мне.

Вот код моего файла манифеста:

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

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

<application
    android:label="food_order"
    android:icon="@mipmap/ic_launcher"
    
    <activity
        android:name=".MainActivity"
        android:launchMode="singleTop"
        android:theme="@style/LaunchTheme"
        android:configChanges="orientation|keyboardHidden|keyboard|screenSize|smallestScreenSize|locale|layoutDirection|fontScale|screenLayout|density|uiMode"
        android:hardwareAccelerated="true"
        android:windowSoftInputMode="adjustResize">
       
        <meta-data
          android:name="io.flutter.embedding.android.NormalTheme"
          android:resource="@style/NormalTheme"
          />
       
        <meta-data
          android:name="io.flutter.embedding.android.SplashScreenDrawable"
          android:resource="@drawable/launch_background"
          />
        <intent-filter>
            <action android:name="android.intent.action.MAIN"/>
            <category android:name="android.intent.category.LAUNCHER"/>
        </intent-filter>
    </activity>
    
    <meta-data android:name="com.google.android.geo.API_KEY"
               android:value="AIzaSyCn************ratM"/>  
  
    <meta-data
        android:name="flutterEmbedding"
        android:value="2" />
</application>
</manifest>
 

Комментарии:

1. Я не вижу закрывающего тега для манифеста ( </манифест> ) в конце. Без этого XML недействителен. Пожалуйста, проверьте это, обновите вопрос, если вы просто неправильно скопировали его в SO.

2. извините, я просто скопировал, вставил неправильно

3. Нет проблем, я опубликовал ответ ниже, надеюсь, теперь он должен сработать для вас.

4. для меня это была какая-то дополнительная скобка, которую я обводил вокруг мета-тега

Ответ №1:

Вы пропали > без вести после android:icon="@mipmap/ic_launcher" , так что все должно быть так:

 <application
    android:label="food_order"
    android:icon="@mipmap/ic_launcher">

<activity...
 

Ваша среда разработки должна была дать вам подсказки по этому поводу, например, так
Подсказка IDE

Если вы не используете IDE, я настоятельно рекомендую вам начать использовать ее :).