Intereting Posts
Stacked панель вкладок ActionBar, не заполняющая родительскую Панель кнопок Android внизу и просмотр прокрутки с диалоговой темой Передать uri другому действию и преобразовать его в изображение Cordova / Phonegap – Android: значок не обновляется Как расширить AdapterView, чтобы вести себя как LinearLayout, динамически заполняемый адаптером Android, горизонтальный и вертикальный прокрутки для GridLayout Проверка лицензии Google внезапно не срабатывает на устройстве разработки Отображение фрагмента в ответ на ввод пользователя вызывает IllegalStateException Как использовать встроенные значки Android Загрузка изображения с помощью скольжения медленная Realm.io – Как обновить объект? Как увеличить размер текущего сфокусированного объекта при повторном просмотре? Как избежать мигающего изображения при сохранении изображения после поворота анимации? RelativeLayout принимает полноэкранный режим для wrap_content ERROR при компиляции Web RTC

Unity не может объединить ошибку сборки манифеста Android

В моем проекте Unity я импортировал плагины: Android Native Plugin и Chartboost.

Прежде чем импортировать пакет единства Chartboost, я могу успешно создать и запустить на своем устройстве Android. Но после импорта пакета Chartboost я получаю эту ошибку, когда пытаюсь создать и запустить.

Вот ошибка сборки:

Error building Player: CommandInvokationFailure: Unable to merge android manifests. See the Console for more details. /Library/Java/JavaVirtualMachines/jdk1.8.0_40.jdk/Contents/Home/bin/java -Xmx2048M -Dcom.android.sdkmanager.toolsdir="/Users/user/Library/Android/sdk/tools" -Dfile.encoding=UTF8 -jar "/Applications/Unity/Unity.app/Contents/BuildTargetTools/AndroidPlayer/sdktools.jar" - stderr[ Error: [Temp/StagingArea/AndroidManifest-main.xml:8, /Users/user/Documents/Unity Projects/Unity 5.0.0 projects/mygame/Temp/StagingArea/android-libraries/ChartboostSDK/AndroidManifest.xml:11] Trying to merge incompatible /manifest/application/meta-data[@name=com.google.android.gms.version] element: <meta-data @android:name="com.google.android.gms.version" -- @android:value="6587000"> <meta-data @android:name="com.google.android.gms.version" ++ @android:value="@integer/google_play_services_version"> Error: [Temp/StagingArea/AndroidManifest-main.xml:8, /Users/user/Documents/Unity Projects/Unity 5.0.0 projects/mygame/Temp/StagingArea/android-libraries/google-play-services_lib/AndroidManifest.xml:5] Trying to merge incompatible /manifest/application/meta-data[@name=com.google.android.gms.version] element: <meta-data @android:name="com.google.android.gms.version" -- @android:value="6587000"> <meta-data @android:name="com.google.android.gms.version" ++ @android:value="@integer/google_play_services_version"> ] stdout[ ] 

Еще новичок в разработке Android, поэтому я немного потерялся. Я видел некоторые сообщения в Интернете относительно подобной проблемы, и из того, что я понимаю, является то, что всякий раз, когда вы используете несколько плагинов, также есть несколько файлов манифеста, а Unity иногда не может объединить манифесты из-за разных / конфликтующих значений.

Однако я не вижу никаких значений, противоречащих сообщению об ошибке. Как это исправить? Любая помощь приветствуется.

Обновление: с помощью Макс Янькова я могу пройти мимо Unable to merge manifests error « Unable to merge manifests error . Но теперь я получил новую ошибку. Unable to convert classes into dex format

Вот журнал для этой ошибки:

 Error building Player: CommandInvokationFailure: Unable to convert classes into dex format. See the Console for details. /Library/Java/JavaVirtualMachines/jdk1.8.0_40.jdk/Contents/Home/bin/java -Xmx2048M -Dcom.android.sdkmanager.toolsdir="/Users/user/Library/Android/sdk/tools" -Dfile.encoding=UTF8 -jar "/Applications/Unity/Unity.app/Contents/BuildTargetTools/AndroidPlayer/sdktools.jar" - stderr[ UNEXPECTED TOP-LEVEL EXCEPTION: java.lang.IllegalArgumentException: already added: Lcom/google/android/gms/actions/SearchIntents; at com.android.dx.dex.file.ClassDefsSection.add(ClassDefsSection.java:122) at com.android.dx.dex.file.DexFile.add(DexFile.java:161) at com.android.dx.command.dexer.Main.processClass(Main.java:732) at com.android.dx.command.dexer.Main.processFileBytes(Main.java:673) at com.android.dx.command.dexer.Main.access$300(Main.java:83) at com.android.dx.command.dexer.Main$1.processFileBytes(Main.java:602) at com.android.dx.cf.direct.ClassPathOpener.processArchive(ClassPathOpener.java:284) at com.android.dx.cf.direct.ClassPathOpener.processOne(ClassPathOpener.java:166) at com.android.dx.cf.direct.ClassPathOpener.processDirectory(ClassPathOpener.java:229) at com.android.dx.cf.direct.ClassPathOpener.processOne(ClassPathOpener.java:158) at com.android.dx.cf.direct.ClassPathOpener.process(ClassPathOpener.java:144) at com.android.dx.command.dexer.Main.processOne(Main.java:632) at com.android.dx.command.dexer.Main.processAllFiles(Main.java:510) at com.android.dx.command.dexer.Main.runMonoDex(Main.java:280) at com.android.dx.command.dexer.Main.run(Main.java:246) at com.android.dx.command.dexer.Main.main(Main.java:215) at com.android.dx.command.Main.main(Main.java:106) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:497) at SDKMain.main(SDKMain.java:129) 1 error; aborting ] stdout[ processing archive bin/classes.jar... processing com/unity3d/player/a$1.class... processing com/unity3d/player/a$2.class... processing com/unity3d/player/a$a.class... processing com/unity3d/player/a.class... processing com/unity3d/player/b$1.class... processing com/unity3d/player/b$2.class... processing com/unity3d/player/b.class... processing com/unity3d/player/c.class... processing com/unity3d/player/d$1.class... processing com/unity3d/player/d$2.class... processing com/unity3d/player/d.class... processing com/unity3d/player/e.class... processing com/unity3d/player/f.class... processing com/unity3d/player/g.class... processing com/unity3d/player/h.class... processing com/unity3d/player/i.class... processing com/unity3d/player/j$1.class... processing com/unity3d/player/j$2$1$1.class... processing com/unity3d/player/j$2$1.class... processing com/unity3d/player/j$2.class... processing com/unity3d/player/j.class... processing com/unity3d/player/k$1.class... processing com/unity3d/player/k.class... processing com/unity3d/player/l.class... processing com/unity3d/player/m.class... processing com/unity3d/player/n$1.class... processing com/unity3d/player/n.class... processing com/unity3d/player/NativeLoader.class... processing com/unity3d/player/o.class... processing com/unity3d/player/ReflectionHelper$1.class... processing com/unity3d/player/ReflectionHelper$a.class... processing com/unity3d/player/ReflectionHelper.class... processing com/unity3d/player/p.class... processing com/unity3d/player/q$1.class... processing com/unity3d/player/q$2.class... processing com/unity3d/player/q$3.class... processing com/unity3d/player/q.class... processing com/unity3d/player/r.class... processing com/unity3d/player/s.class... processing com/unity3d/player/UnityPlayer$1.class... processing com/unity3d/player/UnityPlayer$2.class... processing com/unity3d/player/UnityPlayer$3.class... processing com/unity3d/player/UnityPlayer$4.class... processing com/unity3d/player/UnityPlayer$5.class... processing com/unity3d/player/UnityPlayer$6.class... processing com/unity3d/player/UnityPlayer$7.class... processing com/unity3d/player/UnityPlayer$8.class... processing com/unity3d/player/UnityPlayer$9.class... processing com/unity3d/player/UnityPlayer$10.class... processing com/unity3d/player/UnityPlayer$11.class... processing com/unity3d/player/UnityPlayer$12$1.class... processing com/unity3d/player/UnityPlayer$12.class... processing com/unity3d/player/UnityPlayer$13.class... processing com/unity3d/player/UnityPlayer$14.class... processing com/unity3d/player/UnityPlayer$15.class... processing com/unity3d/player/UnityPlayer$16.class... processing com/unity3d/player/UnityPlayer$17.class... processing com/unity3d/player/UnityPlayer$18.class... processing com/unity3d/player/UnityPlayer$a.class... processing com/unity3d/player/UnityPlayer$b.class... processing com/unity3d/player/UnityPlayer$c.class... processing com/unity3d/player/UnityPlayer.class... processing com/unity3d/player/UnityPlayerActivity.class... processing com/unity3d/player/UnityPlayerNativeActivity.class... processing com/unity3d/player/UnityPlayerProxyActivity.class... processing com/unity3d/player/t.class... processing com/unity3d/player/u$1.class... processing com/unity3d/player/u.class... processing com/unity3d/player/WWW.class... processing org/fmod/FMODAudioDevice$a.class... processing org/fmod/FMODAudioDevice.class... processing org/fmod/a.class... processing bin/classes/./com/chartboost/sdk/unity/Manifest$permission.class... processing bin/classes/./com/chartboost/sdk/unity/Manifest.class... processing bin/classes/./com/chartboost/sdk/unity/R$attr.class... processing bin/classes/./com/chartboost/sdk/unity/R$bool.class... processing bin/classes/./com/chartboost/sdk/unity/R$color.class... processing bin/classes/./com/chartboost/sdk/unity/R$dimen.class... processing bin/classes/./com/chartboost/sdk/unity/R$drawable.class... processing bin/classes/./com/chartboost/sdk/unity/R$id.class... processing bin/classes/./com/chartboost/sdk/unity/R$integer.class... processing bin/classes/./com/chartboost/sdk/unity/R$layout.class... processing bin/classes/./com/chartboost/sdk/unity/R$raw.class... processing bin/classes/./com/chartboost/sdk/unity/R$string.class... processing bin/classes/./com/chartboost/sdk/unity/R$style.class... processing bin/classes/./com/chartboost/sdk/unity/R$styleable.class... processing bin/classes/./com/chartboost/sdk/unity/R$xml.class... processing bin/classes/./com/chartboost/sdk/unity/R.class... processing bin/classes/./com/facebook/android/Manifest$permission.class... processing bin/classes/./com/facebook/android/Manifest.class... processing bin/classes/./com/facebook/android/R$attr.class... processing bin/classes/./com/facebook/android/R$bool.class... processing bin/classes/./com/facebook/android/R$color.class... processing bin/classes/./com/facebook/android/R$dimen.class... processing bin/classes/./com/facebook/android/R$drawable.class... processing bin/classes/./com/facebook/android/R$id.class... processing bin/classes/./com/facebook/android/R$integer.class... processing bin/classes/./com/facebook/android/R$layout.class... processing bin/classes/./com/facebook/android/R$raw.class... processing bin/classes/./com/facebook/android/R$string.class... processing bin/classes/./com/facebook/android/R$style.class... processing bin/classes/./com/facebook/android/R$styleable.class... processing bin/classes/./com/facebook/android/R$xml.class... processing bin/classes/./com/facebook/android/R.class... processing bin/classes/./com/google/android/gms/Manifest$permission.class... processing bin/classes/./com/google/android/gms/Manifest.class... processing bin/classes/./com/google/android/gms/R$attr.class... processing bin/classes/./com/google/android/gms/R$bool.class... processing bin/classes/./com/google/android/gms/R$color.class... processing bin/classes/./com/google/android/gms/R$dimen.class... processing bin/classes/./com/google/android/gms/R$drawable.class... processing bin/classes/./com/google/android/gms/R$id.class... processing bin/classes/./com/google/android/gms/R$integer.class... processing bin/classes/./com/google/android/gms/R$layout.class... processing bin/classes/./com/google/android/gms/R$raw.class... processing bin/classes/./com/google/android/gms/R$string.class... processing bin/classes/./com/google/android/gms/R$style.class... processing bin/classes/./com/google/android/gms/R$styleable.class... processing bin/classes/./com/google/android/gms/R$xml.class... processing bin/classes/./com/google/android/gms/R.class... processing bin/classes/./com/test/asdf/Manifest$permission.class... processing bin/classes/./com/test/asdf/Manifest.class... processing bin/classes/./com/test/asdf/R$attr.class... processing bin/classes/./com/test/asdf/R$bool.class... processing bin/classes/./com/test/asdf/R$color.class... processing bin/classes/./com/test/asdf/R$dimen.class... processing bin/classes/./com/test/asdf/R$drawable.class... processing bin/classes/./com/test/asdf/R$id.class... processing bin/classes/./com/test/asdf/R$integer.class... processing bin/classes/./com/test/asdf/R$layout.class... processing bin/classes/./com/test/asdf/R$raw.class... processing bin/classes/./com/test/asdf/R$string.class... processing bin/classes/./com/test/asdf/R$style.class... processing bin/classes/./com/test/asdf/R$styleable.class... processing bin/classes/./com/test/asdf/R$xml.class... processing bin/classes/./com/test/asdf/R.class... processing archive plugins/./an_billing.jar... ignored resource META-INF/MANIFEST.MF processing com/android/vending/billing/IInAppBillingService$Stub$Proxy.class... processing com/android/vending/billing/IInAppBillingService$Stub.class... processing com/android/vending/billing/IInAppBillingService.class... processing com/androidnative/billing/core/AN_BillingProxyActivity$1.class... processing com/androidnative/billing/core/AN_BillingProxyActivity.class... processing com/androidnative/billing/core/BillingHelper$1.class... processing com/androidnative/billing/core/BillingHelper$2$1.class... processing com/androidnative/billing/core/BillingHelper$2.class... processing com/androidnative/billing/core/BillingHelper$3$1.class... processing com/androidnative/billing/core/BillingHelper$3$2.class... processing com/androidnative/billing/core/BillingHelper$3.class... processing com/androidnative/billing/core/BillingHelper.class... processing com/androidnative/billing/core/BillingManager$1.class... processing com/androidnative/billing/core/BillingManager$2.class... processing com/androidnative/billing/core/BillingManager$3.class... processing com/androidnative/billing/core/BillingManager.class... processing com/androidnative/billing/core/listeners/AN_PurchaseFinishedListener.class... processing com/androidnative/billing/core/listeners/AN_QueryInventoryFinishedListener.class... processing com/androidnative/billing/interfaces/OnBillingPurchaseFinishedListener.class... processing com/androidnative/billing/interfaces/OnBillingSetupFinishedListener.class... processing com/androidnative/billing/interfaces/OnConsumeFinishedListener.class... processing com/androidnative/billing/interfaces/OnConsumeMultiFinishedListener.class... processing com/androidnative/billing/interfaces/QueryInventoryFinishedListener.class... processing com/androidnative/billing/models/BillingException.class... processing com/androidnative/billing/models/BillingResult.class... processing com/androidnative/billing/models/Inventory.class... processing com/androidnative/billing/models/Purchase.class... processing com/androidnative/billing/models/Security.class... processing com/androidnative/billing/models/SkuDetails.class... processing com/androidnative/billing/util/Base64.class... processing com/androidnative/billing/util/Base64DecoderException.class... processing archive plugins/./an_googleplay.jar... ignored resource META-INF/MANIFEST.MF processing com/androidnative/an_googleplay/BuildConfig.class... processing com/androidnative/an_googleplay/R$attr.class... processing com/androidnative/an_googleplay/R$drawable.class... processing com/androidnative/an_googleplay/R$id.class... processing com/androidnative/an_googleplay/R$layout.class... processing com/androidnative/an_googleplay/R$string.class... processing com/androidnative/an_googleplay/R$style.class... processing com/androidnative/an_googleplay/R.class... processing com/androidnative/gcm/ANCloudMessageService$1.class... processing com/androidnative/gcm/ANCloudMessageService$2.class... processing com/androidnative/gcm/ANCloudMessageService.class... processing com/androidnative/gcm/GcmBroadcastReceiver.class... processing com/androidnative/gcm/GcmIntentService.class... processing com/androidnative/gms/ad/ANMobileAd.class... processing com/androidnative/gms/ad/AdInAppListner.class... processing com/androidnative/gms/ad/BannerAdListner.class... processing com/androidnative/gms/ad/GADBanner.class... processing com/androidnative/gms/ad/InterstitialAdListner.class... processing com/androidnative/gms/analytics/AN_AnalyticsProxy.class... processing com/androidnative/gms/analytics/V4GoogleAnalytics.class... processing com/androidnative/gms/core/GameClientBridge.class... processing com/androidnative/gms/core/GameClientManager$1.class... processing com/androidnative/gms/core/GameClientManager$2.class... processing com/androidnative/gms/core/GameClientManager$3.class... processing com/androidnative/gms/core/GameClientManager$4.class... processing com/androidnative/gms/core/GameClientManager$5.class... processing com/androidnative/gms/core/GameClientManager.class... processing com/androidnative/gms/core/GameInvitationManager.class... processing com/androidnative/gms/core/GooglePlaySupportActivity$1.class... processing com/androidnative/gms/core/GooglePlaySupportActivity.class... processing com/androidnative/gms/core/NewGameHelper.class... processing com/androidnative/gms/listeners/appstate/StateDeleteListener.class... processing com/androidnative/gms/listeners/appstate/StateUpdateListener.class... processing com/androidnative/gms/listeners/appstate/StatesLoadedListener.class... processing com/androidnative/gms/listeners/games/AchievementsLoadListner.class... processing com/androidnative/gms/listeners/games/AchievementsUpdateListner.class... processing com/androidnative/gms/listeners/games/LeaderBoardScoreLoaded.class... processing com/androidnative/gms/listeners/games/LeaderBoardsLoadedListener.class... processing com/androidnative/gms/listeners/games/PlayerResultListner.class... processing com/androidnative/gms/listeners/games/PlayerScoreUpdateListner.class... processing com/androidnative/gms/listeners/games/ScoreSubmitedListner.class... processing com/androidnative/gms/listeners/network/AN_OnInvitationReceivedListener.class... processing com/androidnative/gms/listeners/network/AN_RealTimeMessageReceivedListener.class... processing com/androidnative/gms/listeners/network/AN_RoomStatusUpdateListener.class... processing com/androidnative/gms/listeners/network/AN_RoomUpdateListener.class... processing com/androidnative/gms/listeners/quests/AN_AcceptQuestResultListner.class... processing com/androidnative/gms/listeners/quests/AN_ClaimMilestoneResult.class... processing com/androidnative/gms/listeners/quests/AN_EventsLoadListner.class... processing com/androidnative/gms/listeners/quests/AN_LoadQuestsResult.class... processing com/androidnative/gms/listeners/quests/AN_QuestUpdateListener.class... processing com/androidnative/gms/listeners/requests/AN_LoadRequestsResultListner.class... processing com/androidnative/gms/listeners/requests/AN_UpdateRequestsResultListner.class... processing com/androidnative/gms/listeners/savedgames/DeleteSnapShotListner.class... processing com/androidnative/gms/listeners/savedgames/DeleteSpapShotResultListner.class... processing com/androidnative/gms/listeners/savedgames/LoadSnapshotsResultListner.class... processing com/androidnative/gms/listeners/savedgames/OpenSnapshotListner.class... processing com/androidnative/gms/listeners/savedgames/SnapshotCreateListner.class... processing com/androidnative/gms/listeners/savedgames/SnapshotMetadataChangeListner.class... processing com/androidnative/<message truncated> 

Похоже, что один из плагинов сохраняет значение com.google.android.gms.version в самом AndroidManifest.xml, а другой использует строковый ресурс ; Я полагаю, что есть файл integer.xml где-то в источнике, и когда вы его найдете, в нем будет скрыто значение google_play_services_version . Сама версия com.google.android.gms.version является необходимой версией Google Play Services; Разумно, что это было бы обратно совместимым, поэтому я бы просто выбрал наибольшее количество из этих двух. Проверьте это для деталей (перейдите в «Что-то еще», чтобы просмотреть детали конфигурации).

Для вашего второго вопроса:

Скорее всего, это результат дублирования файлов .jar в вашем проекте.

См. Этот ответ для получения дополнительной информации.

Его очень просто, вам нужно перейти к местоположению: \ Assets \ Plugins \ Android. Найдите все файлы AndroidManifest.xml и обновите версию sdk в соответствии с данной ошибкой.

1 – (Если вы разработчик VR) загрузите «tools_r25.2.3-windows.zip» с « https://developer.android.com/studio/index.html », а затем замените его на папку с инструментами в папке Android Studio! !

2 – Вы должны работать с единством версии 5.5.0! Версия 5.6.x не работает действительно хорошо !!

3 – лучший вариант для gvr-unity-sdk (если вы разработчик VR) – 1.0.3! Чем больше не работает!

4 – (Если вы являетесь разработчиком VR) Щелкните правой кнопкой мыши на «Мой компьютер» и выберите «Свойства» / «Перейдите к« Расширенные настройки системы »/ Нажмите« Переменные среды »/ В« Системные переменные »найдите« Путь », щелкните по нему, затем Нажмите «Изменить». В «значении переменной» добавьте знак с точкой с запятой (;) до конца пути по умолчанию, затем добавьте путь к тому, где u установит папку Android Studio / platform-tools, например, мой путь «G: \ AndroidSDK \ platform-tools». ……

Надеюсь, ваша проблема будет решена !!!