美文网首页程序员Android技术知识
Android Studio—ButterKnife空指针异常

Android Studio—ButterKnife空指针异常

作者: 莫夜路人 | 来源:发表于2016-11-30 15:22 被阅读0次

    之前一篇写过有关 ButterKnife 插件的使用,当时只是做了插件查找、安装以及在 Activity 中如何使用。在这里先给各位道个歉,因为我也只是做了以上这些步骤,并没有在 demo 中实际使用。今天正好测试一个功能的可行性,在 demo 中实际操作了 ButterKnife ,但是我发现项目编译没有问题,但是在控件赋值时却报了空指针引用的 bug,顿时有点蒙比被欺骗的感觉,难道 ButterKnife 出问题了?可怜的我竟然还发布了它的使用方法。。。

    既然出现了问题,那就只能解决它了,不能辜负了大家的厚爱(请大家原谅我的自恋 o(∩_∩)o 哈哈)。插件的使用方法应该是没有错的,要不然 Studio 编译这一关也不会通过的,看来是另有原因了。

    我的 ButterKnife 版本是 8.4.0,根据版本查找的解决方法是需要在 build.gradle 中引入 android-apt 插件。

    在项目的 build.gradle 中
    项目 gradle 配置
    在 app 的 build.gradle 中
    app gradle 配置

    将 android-apt 配置之后,再次运行就可以了。


    下面还是要来看看出现这个问题的原因。原来是 8 之后版本与以前配置不大一样,可以看一下 github 原文:
    Configure your project-level build.gradle to include the 'Android-apt' plugin:

    buildscript {
        repositories {
            mavenCentral()
        }
        dependencies {
            classpath 'com.neenbedankt.gradle.plugins:android-apt:1.8'
        }
    }
    

    Then, apply the 'android-apt' plugin in your module-level build.gradle
    and add the Butter Knife dependencies:

    apply plugin: 'android-apt'
    
    android {
        ...
    }
    
    dependencies {
        compile 'com.jakewharton:butterknife:8.2.1'
        apt 'com.jakewharton:butterknife-compiler:8.2.1'
    }
    

    坑已铺平,望大家注意跳过!!!

    相关文章

      网友评论

        本文标题:Android Studio—ButterKnife空指针异常

        本文链接:https://www.haomeiwen.com/subject/xdltmttx.html