В конце ваш build.gradle должен выглядеть примерно так:

даю игру на buildbox. Я экспортирую проект, но не могу запустить игру на Android Studio. Моя проблема в том, что я не могу запустить приложение или создать файл apk.

кто-то может помочь мне, пожалуйста.

Ошибка

Ошибка: не удалось выполнить задачу ': app: transformClassesWithMultidexlistForDebug'. java.io.IOException: Невозможно записать [C: \ Users \ youne \ Desktop \ android2 \ app \ build \ middleates \ multi-dex \ debug \ componentClasses.jar] (Невозможно прочитать [C: \ Users \ youne .gradle \ caches \ transforms-1 \ files-1.1 \ support-core-ui-25.2.0.aar \ 9adfc8649fc899fbc5e371e8bc1c399a \ jars \ classes.jar (;;;;;; **. class)] (повторяющаяся запись zip [ classes.jar: Android / поддержка / v4 / вид / ViewPager $ 2.class]))

Я использую

Android Studio 3.0

Версия Java: Java (TM) SE Runtime Environment (сборка 1.8.0_73-b02).

Версия Gradle: com.android.tools.build:gradle:4.1

И у меня есть Multidex включен

В моем приложении файл build.gradle:

android {
  compileSdkVersion 27
  buildToolsVersion '27.0.1'

  defaultConfig {
    applicationId "com.drh.bird"
    minSdkVersion 14
    targetSdkVersion 23
    aaptOptions.cruncherEnabled = false
    aaptOptions.useNewCruncher = false
    compileOptions.encoding = 'ISO-8859-1'
    multiDexEnabled = true

    ndk {
      moduleName "player_shared"
    }
  }
  android {
    useLibrary 'org.apache.http.legacy'
  }
  sourceSets {
    main {
      jni.srcDirs = []
    }
  }

  buildTypes {}
  android {
    defaultConfig {
      multiDexEnabled true
    }
  }
  compileOptions {
    sourceCompatibility JavaVersion.VERSION_1_7
    targetCompatibility JavaVersion.VERSION_1_7
  }

  buildTypes {
    release {
      minifyEnabled false
      proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.txt'
    }
  }
}

dependencies {
  compile 'com.android.support:multidex:1.0.1'
  compile 'com.google.android.gms:play-services:+'
  compile files('libs/dagger-1.2.2.jar')
  compile files('libs/javax.inject-1.jar')
  compile files('libs/nineoldandroids-2.4.0.jar')
  compile files('libs/support-v4-19.0.1.jar')
}

Ответы на вопрос(3)

что ваша библиотека поддержки конфликтует. Вы всегда должны использовать один и тот же код версии дляcompileSdkVersion, buildToolsVersion, targetSdkVersion, а такжеsupport library.

Вы не должны использовать файл JAR с

compile files('libs/support-v4-19.0.1.jar')

Вместо этого вам нужно использовать вспомогательную библиотеку, соответствующую вашемуcompileSdkVersion нравится:

implementation 'com.android.support:support-v4:27.1.0'

Вам также необходимо использовать точную версию игрового сервиса и убедиться, что вы используете конкретный индивидуальный API. Не так:

compile 'com.google.android.gms:play-services:+'

Но как то так:

// if you're using only ads
implementation 'com.google.android.gms:play-services-ads:12.0.0'

это сделает ваш метод маленьким, а затем вы можете удалить мультидекс.

В конце ваш build.gradle должен выглядеть примерно так:

android {
  compileSdkVersion 27
  buildToolsVersion '27.0.1'

  defaultConfig {
    applicationId "com.drh.bird"
    minSdkVersion 14
    targetSdkVersion 27
    aaptOptions.cruncherEnabled = false
    aaptOptions.useNewCruncher = false
    compileOptions.encoding = 'ISO-8859-1'
    //multiDexEnabled = true

    ndk {
      moduleName "player_shared"
    }
  }
  android {
    useLibrary 'org.apache.http.legacy'
  }
  sourceSets {
    main {
      jni.srcDirs = []
    }
  }

  buildTypes {}
  android {
    defaultConfig {
      //multiDexEnabled true
    }
  }
  compileOptions {
    sourceCompatibility JavaVersion.VERSION_1_7
    targetCompatibility JavaVersion.VERSION_1_7
  }

  buildTypes {
    release {
      minifyEnabled false
      proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.txt'
    }
  }
}

dependencies {
  //compile 'com.android.support:multidex:1.0.1'
  implementation 'com.google.android.gms:play-services:play-services-ads:12.0.0'
  implementation 'com.android.support:support-v4:27.1.0'

  compile files('libs/dagger-1.2.2.jar')
  compile files('libs/javax.inject-1.jar')
  compile files('libs/nineoldandroids-2.4.0.jar')
  //compile files('libs/support-v4-19.0.1.jar')
}

compile files('libs/support-v4-19.0.1.jar') с участиемcompileSdkVersion 27, Но библиотека поддержки должна иметь основную версию, равнуюcompileSdkVersion

использованиеimplementation "com.android.support:support-v4:27.0.1" вместо этого

Кроме того, никогда не используйте+ в зависимости версии. Вы можете получить некоторые проблемы, когда зависимость обновилась

 resizemyimg.com28 дек. 2017 г., 13:14
Ты спас мой день!
implementation 'com.android.support:appcompat-v7:27.1.0'
 implementation 'com.android.support:design:27.1.0'
    implementation 'com.android.support:support-v4:27.1.0'
 implementation 'com.android.support:recyclerview-v7:27.1.0'

как указано выше, и удалите дубликаты

Ваш ответ на вопрос