Ответ 1
Эта проблема строго связана с Instant Run. Обходной путь: отключите его внутри File
→ Settings/Preferences
. Это, по крайней мере, позволит вам запустить приложение в Canary версии AS.
Я обновил Android Studio до последней версии canary, и теперь я не могу запустить свое приложение.
Каждый раз, когда я пытаюсь построить проект, я получаю следующую ошибку:
Error:F:\...\**app_name**\app\build\intermediates\instant-run-support\debug\slice_0\AndroidManifest.xml:2 attribute 'android:versionCode' not found
Я попытался вручную открыть файл, и атрибут явно там:
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="****"
android:versionCode="1"
android:versionName="1.0"
split="lib_slice_0_apk">
</manifest>
Я попытался очистить проект, сделать недействительным кеш, перезапустить андроид-студию, но ничего не помогло.
Это мой файл build.gradle (app)
:
apply plugin: 'com.android.application'
apply plugin: 'kotlin-android'
android {
compileSdkVersion 25
buildToolsVersion "25.0.3"
defaultConfig {
applicationId "****"
minSdkVersion 16
targetSdkVersion 25
versionCode 1
versionName "1.0"
testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
}
dependencies {
compile fileTree(include: ['*.jar'], dir: 'libs')
androidTestCompile('com.android.support.test.espresso:espresso-core:2.2.2', {
exclude group: 'com.android.support', module: 'support-annotations'
})
compile "org.jetbrains.kotlin:kotlin-stdlib-jre7:$kotlin_version"
compile 'com.android.support:appcompat-v7:25.3.1'
testCompile 'junit:junit:4.12'
compile 'com.android.support.constraint:constraint-layout:1.0.2'
compile 'com.android.support:design:25.3.1'
compile 'com.android.support:cardview-v7:25.3.1'
compile 'com.squareup.picasso:picasso:2.5.2'
}
Эта проблема строго связана с Instant Run. Обходной путь: отключите его внутри File
→ Settings/Preferences
. Это, по крайней мере, позволит вам запустить приложение в Canary версии AS.
Эта ошибка решена с тех пор, как Android Studio 3.0 Canary 6, просто обновите студию Android и все компоненты SDK и перезапустите Android Studio.
Протестировано:
Сборка # AI-171.4163606, построенная 7 июля 2017 года JRE: 1.8.0_152-release-884-b01 amd64 JVM: 64-разрядная виртуальная машина OpenJDK от JetBrains s.r.o Windows 10 10.0
Просто недействительность кэшей выполнила эту работу для меня.
Файл > Недействительные кеши и перезагрузка
Не нужно отключать Instant Run или вручную удалять любые папки сборки.
Что сработало для меня, это комбинация того, что сказал robin и SamboyCoding.
Затем я смог запустить приложение для тестирования без проблем.
То, что сработало для меня, было в моей папке проекта и удалении папки "build", чтобы заставить gradle перекомпилировать все. Я также удалил папку "gradle", но мне пришлось воссоздать ее вручную, потому что AS не сделал этого, но я не думаю, что это было исправлено.
У меня было то же самое. Я попытался либо перестроить проект, либо немного изменить конструкцию gradle (например, изменить имя versionName) и синхронизацию, тогда в основном проблема временно исчезла.
Что касается 6/9/2017 Android Studio 3.0 Canary 3, ошибка все еще существует. Попробовав все упомянутые способы исправить это, тот, который работает, - это:
В случае ошибки - предлагая отправить отчет в Google через Справкa > Сообщить о немедленном запуске выпуска.., также создайте отчет об ошибках в группах. Не забудьте связать эту страницу StackOverlow - возможно, так Google быстро устранит эту неприятную ошибку.
Самый быстрый обходной путь, который работает для меня в Android Studio 3.0 Canary 2, заключается в добавлении атрибутов versionCode
и versionName
, и когда возникает ошибка, я просто изменяю его на любое другое значение (например, 1.0
до 1.1
и обратно). Тогда приложение начнет нормально.
<?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.XXX"
android:versionCode="1"
android:versionName="1.0">
У меня такая же проблема. Поэтому я попробовал стабильную версию 2.3.1 студии Android. Тогда возникает вопрос, хочу ли я использовать SDK для Android Studios, я выбираю это.
Попробуйте запустить приложение, появляется ошибка Gradle, требующая минимального Android Studio 3.0.
Я снова запускаю Android Studio 3.0 C2, вопрос о SDK снова появляется, но затем компиляция приложения и ошибка версии Code исчезла.
Очистить и перестроить проект и перезапустите студию Android. Он будет работать.
После очистки и повторного включения я отключил мгновенный запуск и снова включил его, и ошибка исчезла.
Обновить студию Android до Canary 3. Они решили проблему
Каждый раз, когда я получаю следующую ошибку:
Error:D:\StudioProjects\yoda\app\build\intermediates\instant-run-support\debug\slice_0\AndroidManifest.xml:2 attribute 'android:versionCode' not found
Я хочу удалить папку D:\StudioProjects\yoda\app\build
, а затем выберите Build\Rebuild Project, и все будет в порядке.
Для меня было достаточно удалить папку .gradle в корневую папку проекта
откройте файл манифеста и закройте его. если все еще не работает: перестроить, открыть файл манифеста и закрыть его, → RUN