it-swarm.com.ru

Тип программы уже присутствует: Android.support.constraint.BuildConfig

build.gradle (Модуль: приложение)

apply plugin: 'com.Android.application'

Android {
    compileSdkVersion 'Android-P'
    buildToolsVersion '27.0.3'
    defaultConfig {
        multiDexEnabled true
        applicationId "tk.megh.myapplication"
        minSdkVersion 'P'
        targetSdkVersion 'P'
        versionCode 1
        versionName "1.0"
        testInstrumentationRunner "Android.support.test.runner.AndroidJUnitRunner"
    }
    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-Android.txt'), 'proguard-rules.pro'
        }
    }
    dexOptions {
        preDexLibraries = false
    }
}



dependencies {
    implementation 'com.Android.support:multidex:1.0.1'
    implementation fileTree(dir: 'libs', include: ['*.jar'])
    implementation 'com.Android.support.constraint:constraint-layout:1.1.0'
    implementation 'androidx.constraintlayout:constraintlayout:1.1.0'
    androidTestImplementation('com.Android.support.test.espresso:espresso-core:3.0.2', {
        exclude group: 'com.Android.support', module: 'support-annotations'
    })
    implementation 'com.Android.support:appcompat-v7:+'
    testImplementation 'junit:junit:4.12'

}

Ну, я думаю, я знаю, что вызывает ошибку, если вы посмотрите на зависимости, есть два избыточных пакета с разными именами 

com.Android.support.constraint: макет ограничений: 1.1.0 androidx.constraintlayout: макет ограничений: 1.1.0

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

если я удалю 

implementation 'com.Android.support.constraint:constraint-layout:1.1.0'

я получаю эту ошибку при отладке:

    Java.lang.RuntimeException: Unable to start activity 
ComponentInfo{tk.megh.myapplication/tk.megh.myapplication.MainActivity}: 
Android.view.InflateException: Binary XML file line #2: Binary XML file 
line #2: Error inflating class Android.support.constraint.ConstraintLayout

и если я удалю 

implementation 'androidx.constraintlayout:constraintlayout:1.1.0'

я получаю следующую ошибку при отладке:

 Java.lang.RuntimeException: Unable to start activity 
ComponentInfo{tk.megh.myapplication/tk.megh.myapplication.DisplayMessageActivity}: 
Android.view.InflateException: Binary XML file line #2: Binary XML file line #2: 
Error inflating class androidx.constraintlayout.widget.ConstraintLayout

Дополнительные детали:

импорт MainActivity.Java:

import Android.content.Intent;
import Android.os.Bundle;
import Android.support.v7.app.AppCompatActivity;
import Android.view.View;
import Android.widget.EditText;

импорт DisplayMessageActivity.Java:

import Android.content.Intent;
import Android.os.Bundle;
import Android.support.v7.app.AppCompatActivity;
import Android.widget.TextView;   

Заранее спасибо.

10
Meghashyam Bhandary

Ошибки указывают на то, что вы используете ConstraintLayout в файлах макета xml.

Сохраните только одну версию библиотеки и убедитесь, что вы используете ConstraintLayout этой версии в ваших xmls.

Итак, если вы сохраняете androidx, проверьте файлы макета и убедитесь, что вы используете androidx.constraintlayout.ConstraintLayout и не Android.support.constraint.ConstraintLayout.

31
Ridcully

Будьте осторожны, чтобы не ссылаться на com.Android.support.constraint:constraint-layout и androidx.constraintlayout:constraintlayout одновременно. Установите один (предпочтительно androidx), удалите другой и убедитесь, что имена пакетов также совпадают в файлах макета. Это решило проблему для меня.

1
Baptiste Candellier

У меня также была та же проблема ... Я использовал две разные версии для библиотеки Android.Arch.core. Так что исправление этих версий помогло мне. Попробуйте использовать одну версию во всем приложении. Надеюсь, это кому-нибудь поможет.

Спасибо

0
Anu Bhalla