Tôi đã nâng cấp lên android studio 3.1 và tôi gặp phải lỗi sau:
Default interface methods are only supported starting with Android N (--min-api 24): void android.arch.lifecycle.DefaultLifecycleObserver.onCreate(android.arch.lifecycle.LifecycleOwner)
Message{kind=ERROR, text=Default interface methods are only supported starting with Android N (--min-api 24): void android.arch.lifecycle.DefaultLifecycleObserver.onCreate(android.arch.lifecycle.LifecycleOwner), sources=[Unknown source file], tool name=Optional.of(D8)}
đây là cấu hình gradle của tôi:
compileSdkVersion 27
//buildToolsVersion '27.0.3'
defaultConfig {
minSdkVersion 16
targetSdkVersion 27
multiDexEnabled true
//...
}
Như bạn có thể thấy, tôi đang nhắm mục tiêu 27 đã đi trước 24 mà nó phàn nàn. Chính xác thì tôi nên làm gì để khắc phục điều này? Nếu tôi đổi thành 1.8 java, tôi sẽ không thiếu nhiều khách hàng chứ? Tại sao tôi không nhận được lỗi này trước khi tôi nâng cấp studio android?
Tôi không biết đây có phải là về lớp LifecyclObserver mà tôi đã đặt gần đây không, nó ở kotlin và bây giờ tôi đã đổi nó thành java nhưng vẫn gặp lỗi tương tự sau khi làm sạch dự án:
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);
}
}
Làm thế nào để theo dõi lỗi đến từ đâu để tôi có thể sửa nó?
đây là phụ thuộc phiên bản của tôi:
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'
}
targetSdkVersion
. "Chính xác thì tôi nên làm gì để khắc phục điều này?" - thử biên dịch với khả năng tương thích Java 8 được kích hoạt . "nếu tôi đổi thành 1.8 java, tôi sẽ không thiếu nhiều khách hàng chứ?" - không dành cho các phương thức giao diện mặc định mà thông báo lỗi đang phàn nàn. "Tại sao tôi không nhận được lỗi này trước khi tôi nâng cấp studio android." - có lẽ là một phụ thuộc ngầm (ví dụ: ràng buộc dữ liệu).