1
votes

Au plus un élément avec l'espace de noms «» était attendu, mais 4 ont été trouvés

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?


0 commentaires

4 Réponses :


5
votes

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>


1 commentaires

Cela a résolu le problème. Merci beaucoup!



0
votes

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>


0 commentaires

2
votes

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>


0 commentaires

0
votes

Si vous utilisez android:requestLegacyExternalStorage

Veuillez ajouter la propriété targetApi .

<application android:requestLegacyExternalStorage="true"
        tools:targetApi="q" />


0 commentaires