gpt4 book ai didi

android - Google Play 广告系列衡量 - NullPointerException

转载 作者:行者123 更新时间:2023-11-30 03:32:15 25 4
gpt4 key购买 nike

我正在尝试通过此处的此链接实现 GA Activity 衡量 https://developers.google.com/analytics/devguides/collection/android/v2/campaigns#campaign-params

所以,我已经完成了所有的事情,但是它在我的代码中给出了 NullpointerException

// Get the intent that started this Activity.
Intent installIntent = this.getIntent();
Uri Installuri = installIntent.getData();

EasyTracker.getInstance().setContext(this);
if (installIntent != null) {
EasyTracker.getTracker().setCampaign(Installuri.getPath()); //line 82
}

这就是代码,应该执行一般跟踪。没什么特别的。然而,在上面提到的第 82 行,它抛出 NullPointerException。这是日志:

06-23 19:54:54.864: E/AndroidRuntime(13773):    at android.os.Looper.loop(Looper.java:137)
06-23 19:54:54.864: E/AndroidRuntime(13773): at android.app.ActivityThread.main(ActivityThread.java:4441)
06-23 19:54:54.864: E/AndroidRuntime(13773): at java.lang.reflect.Method.invokeNative(Native Method)
06-23 19:54:54.864: E/AndroidRuntime(13773): at java.lang.reflect.Method.invoke(Method.java:511)
06-23 19:54:54.864: E/AndroidRuntime(13773): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:784)
06-23 19:54:54.864: E/AndroidRuntime(13773): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:551)
06-23 19:54:54.864: E/AndroidRuntime(13773): at dalvik.system.NativeStart.main(Native Method)
06-23 19:54:54.864: E/AndroidRuntime(13773): Caused by: java.lang.NullPointerException
06-23 19:54:54.864: E/AndroidRuntime(13773): at uk.co.futurelite.elite.drum.machine.Main.onCreate(Main.java:82)
06-23 19:54:54.864: E/AndroidRuntime(13773): at android.app.Activity.performCreate(Activity.java:4465)
06-23 19:54:54.864: E/AndroidRuntime(13773): at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1049)
06-23 19:54:54.864: E/AndroidRuntime(13773): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1931)
06-23 19:54:54.864: E/AndroidRuntime(13773): ... 11 more

所以,如果它不是 null,我会用 IF 语句检查它,例如:

if (installIntent != null) {

那么,它抛出 NullPointerException 会发生什么?当它通过 IF 语句时。

附言。我确实完成了它直到最后,虽然可能我必须将一些东西传递给 broadcastReceiver,但我可以在 logcat 中看到它成功接收了 Activity ,如下所示:

06-23 19:54:56.544: W/GAV2(13773): Thread[GAThread,5,main]: Service unavailable (code=1), will retry.
06-23 19:54:56.824: I/GAV2(13773): Thread[GAThread,5,main]: Campaign found: utm_source%3Dxdebugx%26utm_medium%3Dbutton

但应用程序本身崩溃并且无法启动。

最佳答案

在尝试调用 .getPath() 之前,您需要检查 URI 是否不为空。在你提到的文档中,它是这样写的:

if (intent.getData() != null) {
EasyTracker.getTracker().setCampaign(uri.getPath());
}

在您的代码 fragment 中使用样式,它应该如下所示:

// Get the intent that started this Activity.
Intent installIntent = this.getIntent();
Uri Installuri = installIntent.getData();

EasyTracker.getInstance().setContext(this);
if (Installuri != null) {
EasyTracker.getTracker().setCampaign(Installuri.getPath()); //line 82
}

关于android - Google Play 广告系列衡量 - NullPointerException,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17262081/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com