J'ai récemment essayé de mettre mon projet Xamarin Forms " CoManga " sur App Center et de faire des compilations automatiques .
Cependant, je reçois ce message d'erreur et les builds échouent.
Erreur [BT: 0.8.0]: au plus un élément avec un espace de noms '' était attendu, mais 4 ont été trouvés. [/Users/vsts/agent/2.155.1/work/1/s/src/comic_dl/comic_dl.Android/comic_dl.Android.csproj]
Je ne sais pas quel est le problème, car je peux très bien générer un fichier APK à partir de VS manuellement. Aucune erreur de ce genre ne se produit là-bas.
Voici le fichier AndroidManifest: AndroidManifest.xml
Quelqu'un peut-il nous expliquer pourquoi cela peut se produire?
4 Réponses :
L'erreur est due au fait que vous avez 4 balises application
dans les fichiers manifestes.
Essayez quelque chose comme ça
<?xml version="1.0" encoding="utf-8"?> <manifest xmlns:android="http://schemas.android.com/apk/res/android" android:versionCode="1" android:versionName="1.0" package="com.xonshiz.CoManga" android:installLocation="auto"> <meta-data android:name="com.google.android.gms.version" android:value="@integer/google_play_services_version" /> <uses-sdk android:minSdkVersion="21" android:targetSdkVersion="28" /> <application android:label="CoManga" android:icon="@drawable/logo"> <activity android:name="com.google.android.gms.ads.AdActivity" android:configChanges="keyboard|keyboardHidden|orientation|screenLayout|uiMode|screenSize|smallestScreenSize" android:theme="@android:style/Theme.Translucent" /> <meta-data android:name="com.google.android.gms.ads.AD_MANAGER_APP" android:value="true" /> <meta-data android:name="com.google.android.gms.ads.APPLICATION_ID" android:value="ca-app-pub-8359860011604747~6496691983" /> </application> <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" /> <uses-permission android:name="android.permission.READ_INPUT_STATE" /> <uses-permission android:name="android.permission.PERSISTENT_ACTIVITY" /> <uses-permission android:name="android.permission.WRITE_APN_SETTINGS" /> <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" /> <uses-permission android:name="android.permission.INTERNET" /> <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" /> </manifest>
Cela a résolu le problème. Merci beaucoup!
Dans votre fichier manifeste, vous avez défini la balise d'application quatre fois, mais en général, une application n'a qu'une seule application dans le manifeste. Essayez de remplacer le code ci-dessous par votre manifeste
<?xml version="1.0" encoding="utf-8"?> <manifest xmlns:android="http://schemas.android.com/apk/res/android" android:versionCode="1" android:versionName="1.0" package="com.xonshiz.CoManga" android:installLocation="auto"> <meta-data android:name="com.google.android.gms.version" android:value="@integer/google_play_services_version" /> <uses-sdk android:minSdkVersion="21" android:targetSdkVersion="28" /> <application android:label="CoManga" android:icon="@drawable/logo"> <activity android:name="com.google.android.gms.ads.AdActivity" android:configChanges="keyboard|keyboardHidden|orientation|screenLayout|uiMode|screenSize|smallestScreenSize" android:theme="@android:style/Theme.Translucent" /> <meta-data android:name="com.google.android.gms.ads.AD_MANAGER_APP" android:value="true" /> <meta-data android:name="com.google.android.gms.ads.APPLICATION_ID" android:value="ca-app-pub-8359860011604747~6496691983" /> </application> <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" /> <uses-permission android:name="android.permission.READ_INPUT_STATE" /> <uses-permission android:name="android.permission.PERSISTENT_ACTIVITY" /> <uses-permission android:name="android.permission.WRITE_APN_SETTINGS" /> <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" /> <uses-permission android:name="android.permission.INTERNET" /> <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" /> </manifest>
Vous obtenez cette erreur car vous avez déclaré 4 application dans le fichier manifeste. Veuillez essayer avec le code ci-dessous:
<?xml version="1.0" encoding="utf-8"?> <manifest xmlns:android="http://schemas.android.com/apk/res/android" android:versionCode="1" android:versionName="1.0" package="com.xonshiz.CoManga" android:installLocation="auto"> <meta-data android:name="com.google.android.gms.version" android:value="@integer/google_play_services_version"/> <meta-data android:name="com.google.android.gms.ads.APPLICATION_ID" android:value="ca-app-pub-8359860011604747~6496691983"/> <meta-data android:name="com.google.android.gms.ads.AD_MANAGER_APP" android:value="true"/> <uses-sdk android:minSdkVersion="21" android:targetSdkVersion="28"/> <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"/> <uses-permission android:name="android.permission.READ_INPUT_STATE"/> <uses-permission android:name="android.permission.PERSISTENT_ACTIVITY"/> <uses-permission android:name="android.permission.WRITE_APN_SETTINGS"/> <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/> <uses-permission android:name="android.permission.INTERNET"/> <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/> <application android:label="CoManga" android:icon="@drawable/logo"> <activity android:name="com.google.android.gms.ads.AdActivity" android:configChanges="keyboard|keyboardHidden|orientation|screenLayout|uiMode|screenSize|smallestScreenSize" android:theme="@android:style/Theme.Translucent"/> </application> </manifest>
Si vous utilisez android:requestLegacyExternalStorage
Veuillez ajouter la propriété targetApi
.
<application android:requestLegacyExternalStorage="true" tools:targetApi="q" />