首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >仅从Android 7.0 (Nougat)开始支持默认接口方法

仅从Android 7.0 (Nougat)开始支持默认接口方法
EN

Stack Overflow用户
提问于 2018-03-27 20:16:38
回答 9查看 129.3K关注 0票数 317

我升级到Android Studio 3.1,得到以下错误:

只支持Android N开头的工具默认接口方法(--

-api 24):void android.arch.lifecycle.DefaultLifecycleObserver.onCreate(android.arch.lifecycle.LifecycleOwner) Message{kind=ERROR,text=Default接口方法仅Android N开头(--min-api 24):void android.arch.lifecycle.DefaultLifecycleObserver.onCreate(android.arch.lifecycle.LifecycleOwner),sources=Unknown源文件,工具name=Optional.of(D8)}

下面是我的Gradle配置:

代码语言:javascript
复制
compileSdkVersion 27
//buildToolsVersion '27.0.3'
defaultConfig {
    minSdkVersion 16
    targetSdkVersion 27
     multiDexEnabled true
     //...
   }

正如你所看到的,我的目标是27,这已经领先于它所抱怨的24。我到底应该怎么做才能解决这个问题呢?如果我改用1.8 Java,我是不是会错过很多客户?为什么我在升级Android Studio之前没有收到这个错误?

我不知道这是否与我最近添加的LifecycleObserver类有关。它是在Kotlin中的,现在我将其更改为Java,但在清理项目后仍然得到相同的错误:

代码语言:javascript
复制
public class LifeCycleAwareObserver implements LifecycleObserver {

    @OnLifecycleEvent(Lifecycle.Event.ON_STOP)
    public void  onAppBackgrounded() {
        AnalyticsUtils.trackStartSession(true);
    }

    @OnLifecycleEvent(Lifecycle.Event.ON_START)
    public void onAppForegrounded() {
        AnalyticsUtils.trackStartSession(false);
    }
}

我如何才能跟踪错误的来源,以便修复它?

以下是我的版本依赖关系:

代码语言:javascript
复制
project.ext {

        firebase_version = '12.0.0'

        supportlib_version = '27.0.2'

        room_version = '1.0.0'

        espresso_version = '3.0.1'

        archLifecycleVersion = '1.1.1'
    }
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/49512629

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档