Le nouveau format de publication d'applications, le Android App Bundle, est un moyen amélioré de regrouper votre application. Le Android App Bundle vous permet de fournir plus facilement une expérience formidable dans une application plus petite, permettant une grande variété d'appareils Android disponibles aujourd'hui. Vous n'avez pas besoin de refactoriser votre code pour commencer à bénéficier d'une application plus petite.
Je reçois cette erreur en essayant de créer mon application Android Bundle:
Le fichier 'root/AndroidManifest.xml' utilise le fichier réservé ou le nom de répertoire 'AndroidManifest.xml'.
La génération d'APK fonctionne très bien .
Voici la structure de mon fichier de projet:
Et voici mon AndroidManifest.xml, situé sous {ProjectName}/app/src/main
:
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:Android="http://schemas.Android.com/apk/res/Android"
xmlns:tools="http://schemas.Android.com/tools"
package="com.XXXX.XXXX"
Android:installLocation="auto">
<uses-permission Android:name="Android.permission.INTERNET" />
<uses-permission Android:name="Android.permission.WAKE_LOCK" />
<uses-permission Android:name="Android.permission.ACCESS_COARSE_LOCATION"/>
<!-- These permissions are strongly recommended and will result in higher performance -->
<uses-permission Android:name="Android.permission.READ_EXTERNAL_STORAGE" />
<uses-permission Android:name="Android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission Android:name="Android.permission.ACCESS_NETWORK_STATE" />
<uses-permission Android:name="Android.permission.VIBRATE" />
<application
Android:name="com.app.webview.Application"
Android:allowBackup="true"
Android:icon="@mipmap/ic_launcher"
Android:label="@string/app_name"
Android:supportsRtl="true"
Android:theme="@style/AppTheme"
Android:hardwareAccelerated="true">
<activity
Android:name="com.app.webview.MainActivity"
Android:configChanges="keyboardHidden|orientation|screenSize"
Android:label="@string/app_name"
Android:launchMode="singleTask">
<intent-filter>
<action Android:name="Android.intent.action.MAIN" />
<category Android:name="Android.intent.category.LAUNCHER" />
</intent-filter>
<!-- Universal APP Link -->
<intent-filter>
<action Android:name="Android.intent.action.VIEW" />
<category Android:name="Android.intent.category.DEFAULT" />
<category Android:name="Android.intent.category.BROWSABLE" />
<data Android:scheme="http" />
<data Android:scheme="https" />
<data Android:Host="@string/app_Host" />
</intent-filter>
</activity>
<!-- Push -->
<!-- Services that handles incoming message -->
<service
Android:name="com.app.webview.Providers.FCM.FcmListenerService">
<intent-filter>
<action Android:name="com.google.firebase.MESSAGING_EVENT" />
</intent-filter>
</service>
<!-- Called if InstanceID token is updated -->
<!-- This may occur if the security of the previous token had been compromised -->
<service
Android:name="com.app.webview.Providers.FCM.FcmInstanceIDListenerService"
Android:exported="true">
<intent-filter>
<action Android:name="com.google.firebase.INSTANCE_ID_EVENT" />
</intent-filter>
</service>
<!-- Facebook Config -->
<meta-data
Android:name="com.facebook.sdk.ApplicationId"
Android:value="@string/id_facebook" />
<activity
Android:name="com.facebook.FacebookActivity"
Android:configChanges="keyboard|keyboardHidden|screenLayout|screenSize|orientation"
Android:label="@string/app_name"
Android:theme="@Android:style/Theme.Translucent.NoTitleBar"
tools:replace="Android:theme" />
<provider
Android:name="com.facebook.FacebookContentProvider"
Android:authorities="@string/facebook_provider"
Android:exported="true"
tools:replace="Android:authorities" />
<!-- Fabric -->
<meta-data
Android:name="io.fabric.ApiKey"
Android:value="XXXX" />
</application>
</manifest>
Depuis le 31 octobre, Facebook a publié la version 5.1 du SDK Audience Network. En utilisant
implémentation 'com.facebook.Android:audience-network-sdk:5.1.0'
résolu le problème pour moi.
Dans mon cas, mon erreur a été causée par
com.facebook.Android:audience-network-sdk
Je rétrograde uniquement audience-network-sdk de 5.0.0 à 4.99.3 et tout commence à bien fonctionner. J'espère que cela vous aidera.
Mise à jour: comme l'a dit Sebastian, vous pouvez maintenant mettre à jour audience-network-sdk de 5.0.0 à 5.1.0.
Une solution beaucoup plus simple jusqu'à ce que Facebook corrige le SDK serait d'ajouter ceci aux options de packaging dans le bloc Android {} du build.gradle de votre application:
Android {
packagingOptions {
exclude 'AndroidManifest.xml' //This fixes a bug in FAN 5.0.1
}
}
Je ne peux que confirmer que cela fonctionne lors de la création d'un bundle d'applications, je ne connais pas un APK normal.
Si je lis bien l'arborescence des fichiers, vous avez votre AndroidManifest.xml
fichier dans le dossier res
, ce qui explique pourquoi vous voyez l'erreur. Essayez de mettre le fichier dans {ProjectName}/app/src/main
et reconstruisez le projet.
J'ai rencontré le même bug. J'ai dû changer quelques choses avant d'obtenir une version fonctionnelle. Pour moi, c'était:
J'espère que ceci vous aide.