Если вы только что перешли на экспорт своего проекта Android с помощью Gradleсистемы сборки Android, которая автоматизирует несколько процессов сборки. Эта автоматизация означает, что вероятность возникновения многих распространенных ошибок сборки снижается. Подробнее
Смотрите в Словарь вместо старой системы, вы можете столкнуться с ошибками сборки, особенно если вы используете дополнительные библиотеки Android или добавили собственный файл AndroidManifest.xml.
Android Gradle подключаемый модульНабор кода, созданный вне Unity, который создает функциональные возможности в Unity. В Unity можно использовать два типа подключаемых модулей: управляемые подключаемые модули (управляемые сборки .NET, созданные с помощью таких инструментов, как Visual Studio) и собственные подключаемые модули (библиотеки собственного кода для конкретной платформы). Подробнее
См. в Словарь гораздо более требователен, чем старый ADTТип проекта Android, который больше не поддерживается Google и считается устаревшим. Подробнее
См. в системе Словарь/Ant. Он не принимает
все, что он считает ошибкой, будь то повторяющиеся символы, ссылки на ресурсы, которые не
существует или проект библиотеки, который устанавливает тот же атрибут, что и основное приложение.
В большинстве случаев для устранения проблемы необходимо отредактировать файл AndroidManifest.xml; либо основной один или один из библиотеки, которую использует ваш проект.
В нетривиальном проекте или если в проекте есть проблемы, не описанные в разделе по устранению неполадок. ниже экспортируйте проект как проект Gradle (из Настройки сборки) и выполните сборку из командной строки. Сборка из командной строки дает более подробные сообщения об ошибках и ускоряет применение изменений.
Особые проблемы
Resource not found
Файл AndroidManifest.xml, либо основной, либо в библиотеке, ссылается на несуществующий ресурс. Часто это значок приложения или строка метки, устанавливаемая библиотекой. Это может произойти, если вы скопировали свой основной манифест в проект библиотеки, не удаляя эти ссылки.
Удалите атрибут из одного из манифестов приложений Android — обычно из библиотеки.
MinSDK в манифесте
Атрибут android:minSdkVersion
указан в файле AndroidManifest.xml
. Это может быть основной файл манифеста или файл в одном из каталогов, которые Unity рассматривает как библиотеки Android. Плагины .aar не должны вызывать эту проблему.
Решение состоит в том, чтобы удалить элемент uses-sdk android:minSdkVersion
из основного манифеста и/или манифестов в каталогах библиотек. Вместо этого следует указать минимальную версию SDK в файле build.gradle
. Если у вас нет собственного шаблона Gradle, Unity сделает это автоматически. Если у вас есть собственный шаблон Gradle, убедитесь, что minSDK указан в разделе defaultConfig
шаблона.
Повторяющиеся файлы в APK
У вас есть имя файла collisionСтолкновение происходит, когда физический движок обнаруживает, что коллайдеры двух игровых объектов соприкасаются или перекрываются. , когда хотя бы один имеет компонент Rigidbody и находится в движении. Подробнее
Посмотрите в Словарь между вашим основным приложением и проектом библиотеки или между двумя
библиотечные проекты. Имейте в виду, что все файлы копируются в один и тот же формат APKAndroid Package, выводимый Unity. APK автоматически развертывается на вашем устройстве, когда вы выбираете «Файл» > «Сборка и запуск». Подробнее
См. в пакете Словарь.
Вам нужно удалить один из файлов.
Colliding package names
Библиотека не может использовать тот же пакет Java, что и основное приложение, или любую другую библиотеку.
Обычно следует изменить имя пакета библиотеки на другое. Если библиотека содержит много кода, может быть проще изменить имя основного пакета (в настройках Player).
Colliding attributes
Библиотека не может свободно переопределять атрибуты из основного файла AndroidManifest.xml
. Часто эта ошибка возникает из-за того, что библиотека устанавливает значок приложения или строку метки, как и в случае с проблемой Ресурс не найден выше.
Либо удалите атрибут из библиотеки, либо добавьте атрибут tools:replace в свой Тег application, чтобы указать, как следует разрешать конфликт слияния.