【问题标题】:Attempt to read from field in AndroidDevMetrics on a null object reference尝试从空对象引用上的 AndroidDevMetrics 中的字段读取
【发布时间】:2019-11-04 06:35:36
【问题描述】:

我正在尝试在我的项目中实现 frogermcs/AndroidDevMetrics 库

这是链接:https://github.com/frogermcs/AndroidDevMetrics

我按照这些步骤将 AndroidDevMetrics 集成到我的项目中。

在 build.gradle 中添加了这些

buildscript {
  repositories {
    jcenter()
  }

  dependencies {
    classpath 'com.frogermcs.androiddevmetrics:androiddevmetrics-plugin:0.7'
  }
}

apply plugin: 'com.android.application'
apply plugin: 'com.frogermcs.androiddevmetrics

然后在你的 Activity 类中:

@Override
public void onCreate() {
    super.onCreate();
    //Use it only in debug builds
    if (BuildConfig.DEBUG) {
        AndroidDevMetrics.initWith(this);
    }
}

为此,当我运行我的项目并来到初始化代码所在的那个活动时。应用程序崩溃并声明:

java.lang.RuntimeException: Unable to start activity ComponentInfo{com.mycompany.project/com.mycompany.project.activities.LoginActivity}: java.lang.NullPointerException: Attempt to read from field 'int com.frogermcs.androiddevmetrics.internal.metrics.ActivityLifecycleMetrics$ActivityLifecycleMetric.state' on a null object reference

这里还有一些来自日志中间的其他日志

原因:java.lang.NullPointerException:尝试从 com.frogermcs.androiddevmetrics.internal.metrics 的空对象引用上的字段“int com.frogermcs.androiddevmetrics.internal.metrics.ActivityLifecycleMetrics$ActivityLifecycleMetric.state”读取.ActivityLifecycleMetrics.logPostOnStart(ActivityLifecycleMetrics.java:88) at com.frogermcs.androiddevmetrics.internal.metrics.ActivityLaunchMetrics.onActivityStarted(ActivityLaunchMetrics.java:43)

请指导我哪里错了。或如何解决此问题以使 AndroidDevMetrics 投入使用。谢谢

Gradle 版本:5.0

Android 插件版本:3.3.0

AndroidDevMetrics 库版本:0.7

【问题讨论】:

    标签: java android metrics code-metrics


    【解决方案1】:

    下面的代码应该在你的应用程序类中

    public class ExampleApplication extends Application {
    
     @Override
     public void onCreate() {
         super.onCreate();
         //Use it only in debug builds
         if (BuildConfig.DEBUG) {
             AndroidDevMetrics.initWith(this);
         }
      }
     }
    

    在你的清单中,请添加以下代码行

    <application
            android:name=".ExampleApplication "
    -----        
    </application>
    

    【讨论】:

    • 谢谢我已经这样做了。但你的答案是正确的。谢谢
    猜你喜欢
    • 2017-07-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-08-06
    • 1970-01-01
    • 1970-01-01
    • 2022-07-03
    相关资源
    最近更新 更多