android - Android App仅在Android 6上崩溃

标签 android android-studio crash

我已经创建了一个小应用程序,但是此崩溃仅在Android 6在第一个 Activity 抽屉中由android studio创建的以下代码行上崩溃:

setContentView(R.layout.activity_home);

错误:
 java.lang.RuntimeException: Unable to start activity ComponentInfo{com.application/com.application.Home}: android.view.InflateException: Binary XML file line #16: Binary XML file line #16: Error inflating class android.support.design.widget.NavigationView

详细错误:
 Caused by: android.view.InflateException: Binary XML file line #16: Binary XML file line #16: Error inflating class android.support.design.widget.NavigationView
        at android.view.LayoutInflater.inflate(LayoutInflater.java:539)

此应用仅在此设备/ android 6上崩溃,而android 7和8没问题,代码在以下任何方面都是正确的:
<application
        android:allowBackup="true"
        android:icon="@drawable/logo"
        android:label="@string/app_name"
        android:roundIcon="@drawable/logo"
        android:supportsRtl="true"
        android:hardwareAccelerated="true"
        android:theme="@style/AppTheme">
        <activity
            android:name=".Home"
            android:keepScreenOn="true"
            android:label="@string/app_name"
            android:screenOrientation="portrait"
            android:theme="@style/AppTheme.NoActionBar">

和xml相同的完美代码:
<?xml version="1.0" encoding="utf-8"?>
<android.support.design.widget.CoordinatorLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:id="@+id/main_content"
    android:layout_height="match_parent"
    tools:context=".Home">

    <android.support.design.widget.AppBarLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:theme="@style/AppTheme.AppBarOverlay">

        <android.support.v7.widget.Toolbar
            android:id="@+id/toolbar"
            android:layout_width="match_parent"
            android:layout_height="?attr/actionBarSize"
            android:background="?attr/colorPrimary"
            app:popupTheme="@style/AppTheme.PopupOverlay" />

    </android.support.design.widget.AppBarLayout>

    <include layout="@layout/content_home" />

</android.support.design.widget.CoordinatorLayout>

建立:
apply plugin: 'com.android.application'

android {
    compileSdkVersion 27
    defaultConfig {
        applicationId "com.myapp"
        minSdkVersion 21
        targetSdkVersion 27
        versionCode 1
        versionName "1.0"
        testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
    }
    buildTypes {
        release {
            debuggable false
            minifyEnabled true
            useProguard true
            shrinkResources true
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
        debug {
            debuggable true               
        }
    }
    compileOptions {
        targetCompatibility 1.8
        sourceCompatibility 1.8
    }
}

dependencies {
    implementation fileTree(dir: 'libs', include: ['*.jar'])
    implementation 'com.android.support:appcompat-v7:27.1.1'
    implementation 'com.android.support:support-v4:27.1.1'
    implementation 'com.android.support:design:27.1.1'
    implementation 'com.android.support:cardview-v7:27.1.1'
    implementation 'com.android.support.constraint:constraint-layout:1.1.2'
    implementation 'com.google.firebase:firebase-messaging:17.0.0'
    implementation 'com.google.firebase:firebase-core:16.0.0'
    implementation 'com.afollestad.material-dialogs:core:0.9.6.0'
    implementation 'com.journeyapps:zxing-android-embedded:3.6.0'
    implementation 'com.google.zxing:core:3.3.2'
    //implementation 'io.github.tonnyl:whatsnew:+'
    implementation 'com.github.GrenderG:Toasty:1.2.5'
    implementation 'com.shawnlin:number-picker:2.4.6'
    implementation "com.tonyodev.fetch2:fetch2:2.1.0-RC3"
    testImplementation 'junit:junit:4.12'
    androidTestImplementation 'com.android.support.test:runner:1.0.2'
    androidTestImplementation 'com.android.support.test.espresso:espresso-core:3.0.2'
}

apply plugin: 'com.google.gms.google-services'

最佳答案

您遇到此问题的原因是,您仅在drawable-v24中拥有资源,并且正在尝试在v23(Android M)中引用它们。将它们移动到drawable文件夹或drawable-v23(如果较低版本中不需要这些资源)

关于android - Android App仅在Android 6上崩溃,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50978527/

相关文章:

objective-c - 访问应由JSON创建的NSDictionary中的 key 时崩溃

visual-studio-2010 - 如何防止 Visual Studio 2010 在使用大型解决方案时崩溃?

android - 在定义之前请求自定义 android 权限

安卓工作室 : device not recongonized?

android - 从适用于 Android 的 sqlite 数据库中存储和检索 blob

Android Studio 不会按字典顺序重新排列导入

android - 插件 Android 支持异常 "Icon cannot be found in"

image - 当cached_network_image或Image.Network填充数据时,Flutter应用程序崩溃很多,仅显示与设备的连接丢失

java - 如何访问:app class from library?

Android 架构组件、android 绑定(bind)和 LiveData