Настройка Android Studio для Jelly Bean

Я написал немного Hello World программа с использованием Android Studio, Минимальный sdk API - 16. Я установил виртуальное устройство, работающее на API 21, и программа работает нормально. Я также пытался запустить программу на Galaxy S5 с Android 6 Cell, который работает нормально.

Затем я подключил свой телефон (Galaxy S2 с Jelly Bean) и попытался запустить его на телефоне. Однако это только закрыло приложение, и показанная программа закрылась.

Вот журнал, показанный Android Studio

И это файл модуля:app build.gradle:

apply plugin: 'com.android.application'

    android {
        compileSdkVersion 24
        buildToolsVersion "21.1.2"
        defaultConfig {
        applicationId "magu.schwaderina"
        minSdkVersion 16
        targetSdkVersion 24
        versionCode 1
        versionName "1.0"
        testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
        vectorDrawables.useSupportLibrary = true
        }
        buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
        }
    }

    dependencies {
        compile fileTree(dir: 'libs', include: ['*.jar'])
        androidTestCompile('com.android.support.test.espresso:espresso-core:2.2.2', {
        exclude group: 'com.android.support', module: 'support-annotations'
        })
        compile 'com.android.support:appcompat-v7:24.0.0'
        compile 'com.android.support:support-v4:24.0.0'
        compile 'com.android.support:support-vector-drawable:24.0.0'
        testCompile 'junit:junit:4.12'
    }

Весь каталог проекта можно найти здесь. Любая помощь, если я ошибусь, будет принята с благодарностью.

Изменить: я забыл упомянуть, что я использую Android Studio 2.2 Prev 5 на Ubuntu 14.4

2 ответа

Если вы используете v1.5.0 или ниже плагин Gradle, вам нужен следующий код в build.gradle вашего приложения:

android {
  defaultConfig {
    // Stops the Gradle plugin’s automatic rasterization of vectors
    generatedDensities = []
  }
  // Flag to tell aapt to keep the attribute ids around
  aaptOptions {
    additionalParameters "--no-version-vectors"
  }
}

https://medium.com/@chrisbanes/appcompat-v23-2-age-of-the-vectors-91cbafa87c88

Вся информация доступна в вашем журнале, внимательно изучите ее и обнаружите вашу проблему (связанную с Vector Drawable). Вся информация вызывается в журнале (включая номера строк и т. Д.), Поэтому просто следуйте ошибкам, которые объясняют возникшую проблему.

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

java.lang.RuntimeException: Unable to start activity ComponentInfo{magu.schwaderina/magu.schwaderina.Main}: android.content.res.Resources$NotFoundException: File res/drawable/abc_ic_ab_back_material.xml from drawable resource ID #0x7f020013

Тогда, если вы продвинетесь дальше вверх по стеку, вы найдете другие интересные моменты, в том числе:

E/VdcInflateDelegate: Exception while inflating <vector>
                  org.xmlpull.v1.XmlPullParserException: Binary XML file line #17<vector> tag requires viewportWidth > 0
                      at 
Другие вопросы по тегам