【问题标题】:Fatal exception: java.lang.NoSuchMethodError: No static method isDeviceProtectedStorage致命异常:java.lang.NoSuchMethodError:没有静态方法 isDeviceProtectedStorage
【发布时间】:2017-04-27 09:10:26
【问题描述】:

在使用cordova-plugin-firebase时,我遇到了以下错误:

04-27 16:59:35.745  6859  6859 E AndroidRuntime: FATAL EXCEPTION: main
04-27 16:59:35.745  6859  6859 E AndroidRuntime: Process: com.XXXXXXXXXX.XXXXXXXXXXX, PID: 6859
04-27 16:59:35.745  6859  6859 E AndroidRuntime: java.lang.NoSuchMethodError: No static method isDeviceProtectedStorage(Landroid/content/Context;)Z in class Landroid/support/v4/content/ContextCompat; or its super classes (declaration of 'android.support.v4.content.ContextCompat' appears in /data/app/com.XXXXXXXXXX.XXXXXXXXXXX-1/base.apk)
04-27 16:59:35.745  6859  6859 E AndroidRuntime:    at com.google.firebase.FirebaseApp.zza(Unknown Source)
04-27 16:59:35.745  6859  6859 E AndroidRuntime:    at com.google.firebase.FirebaseApp.initializeApp(Unknown Source)
04-27 16:59:35.745  6859  6859 E AndroidRuntime:    at com.google.firebase.FirebaseApp.initializeApp(Unknown Source)
04-27 16:59:35.745  6859  6859 E AndroidRuntime:    at com.google.firebase.FirebaseApp.initializeApp(Unknown Source)
04-27 16:59:35.745  6859  6859 E AndroidRuntime:    at com.google.firebase.provider.FirebaseInitProvider.onCreate(Unknown Source)
04-27 16:59:35.745  6859  6859 E AndroidRuntime:    at android.content.ContentProvider.attachInfo(ContentProvider.java:1751)
04-27 16:59:35.745  6859  6859 E AndroidRuntime:    at android.content.ContentProvider.attachInfo(ContentProvider.java:1726)
04-27 16:59:35.745  6859  6859 E AndroidRuntime:    at com.google.firebase.provider.FirebaseInitProvider.attachInfo(Unknown Source)
04-27 16:59:35.745  6859  6859 E AndroidRuntime:    at android.app.ActivityThread.installProvider(ActivityThread.java:5855)
04-27 16:59:35.745  6859  6859 E AndroidRuntime:    at android.app.ActivityThread.installContentProviders(ActivityThread.java:5447)
04-27 16:59:35.745  6859  6859 E AndroidRuntime:    at android.app.ActivityThread.handleBindApplication(ActivityThread.java:5386)
04-27 16:59:35.745  6859  6859 E AndroidRuntime:    at android.app.ActivityThread.-wrap2(ActivityThread.java)
04-27 16:59:35.745  6859  6859 E AndroidRuntime:    at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1546)
04-27 16:59:35.745  6859  6859 E AndroidRuntime:    at android.os.Handler.dispatchMessage(Handler.java:102)
04-27 16:59:35.745  6859  6859 E AndroidRuntime:    at android.os.Looper.loop(Looper.java:154)
04-27 16:59:35.745  6859  6859 E AndroidRuntime:    at android.app.ActivityThread.main(ActivityThread.java:6121)
04-27 16:59:35.745  6859  6859 E AndroidRuntime:    at java.lang.reflect.Method.invoke(Native Method)
04-27 16:59:35.745  6859  6859 E AndroidRuntime:    at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:889)
04-27 16:59:35.745  6859  6859 E AndroidRuntime:    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:779)
04-27 16:59:35.749   975  1021 W ActivityManager:   Force finishing activity com.XXXXXXXXXX.XXXXXXXXXXX/.MainActivity
04-27 16:59:35.779  2358  6582 I PBSessionCacheImpl: Deleted sessionId[10372086956677829] from persistence.
04-27 16:59:35.795  2358  2358 W SearchService: Abort, client detached.
04-27 16:59:35.798  2358  2358 E WorkerRegistryImpl: getWorker() is called after WorkerRegistry disposal.
04-27 16:59:35.798  2358  2358 E WorkerRegistryImpl: getWorker() is called after WorkerRegistry disposal.

一开始我以为是因为android.support.v4.content.ContextCompat中的isDeviceProtectedStorage是API 24以后才添加的。但即使使用搭载 Android 7 的较新设备,也会出现相同的消息。

为什么找不到方法?是因为我没有安装一些库吗?

【问题讨论】:

标签: android cordova


【解决方案1】:

根据 Android 开发人员文档,isDeviceProtectedStorage 是在 24.0.0 中添加的。如果您正在运行低于此 API 版本的应用程序,请检查它

if (Build.VERSION.SDK_INT >= 24){
    //TODO: Do your stuff here.
}

https://developer.android.com/reference/android/support/v4/content/ContextCompat.html#isDeviceProtectedStorage(android.content.Context)

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2017-01-10
    • 2019-08-21
    • 2020-07-13
    • 2018-09-21
    • 2018-05-20
    • 2016-12-27
    • 1970-01-01
    相关资源
    最近更新 更多