Ошибка: атрибут «пакет» в теге <manifest>не является допустимым именем пакета Android - PullRequest
0 голосов
/ 09 апреля 2019

Я пытаюсь написать приложение для Android, которое когда-то собиралось.Теперь, каждый раз, когда я строю, я получаю следующую ошибку:

Caused by: com.android.builder.internal.aapt.v2.Aapt2Exception: Android resource linking failed
C:\Users\Jay\AndroidStudioProjects\DndTools-App\app\build\intermediates\merged_manifests\debug\AndroidManifest.xml:2: AAPT: 
error: attribute 'package' in <manifest> tag is not a valid Android package name: 'dndtools'.

Я изначально начал с учебника по android-kotlin в качестве основы, так как я хотел ознакомиться с kotlin и android, если это возможноСоответствующий.Кроме того, «Объединенный манифест» содержит package = dndtools вместо com.dndtools.android.dndtools в списке, также не уверен, если это уместно.

AndroidManifest.xml

<?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.dndtools.android.dndtools">

  <application
    android:allowBackup="true"
    android:icon="@mipmap/ic_launcher"
    android:label="@string/app_name" //dndtools
...

build.gradle

apply plugin: 'com.android.application'

apply plugin: 'kotlin-android'

apply plugin: 'kotlin-android-extensions'
def androidSupportVersion = '28.0.0'

android {
    compileSdkVersion 28
    buildToolsVersion "28.0.3"
    defaultConfig {
        applicationId "dndtools"
        minSdkVersion 21
        targetSdkVersion 28
...

Я искал в Интернете, и другие, у которых была эта ошибка, обычно имели подчеркивание в начале или в конце их applicationId (это не так), поэтому я действительно в растерянности

1 Ответ

1 голос
/ 10 апреля 2019

Измените applicationId "dndtools" на applicationId "com.dndtools.android.dndtools".

applicationId в вашем файле build.gradle - это то, что используется в качестве реального пакета, поэтому вы также можете увидеть его в объединенном manfiest.Обновите его так, чтобы он соответствовал тому, который есть у вас в Android Manfiest, и он должен нормально работать.

Что касается того, почему это неверный пакет - для его установки на Android должна быть хотя бы одна точка.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...