2

我有一个基于 bluelist 应用程序的 android 应用程序,用于 bluemix BMS 服务。当堆栈移动到 cflinuxfs2 时,它昨天停止工作。今天我在同一个 bluemix 服务上检查了我的 ios 应用程序,它正在工作。所以我查看了 Android 上的异常,它来自 MFPush,看起来上下文为空。有关抛出 NPE 的代码行,请参见附图。在此处输入图像描述 堆栈跟踪是:java.lang.NullPointerException: Attempt to invoke virtual method 'android.content.Intent android.content.Context.registerReceiver(android.content.BroadcastReceiver, android.content.IntentFilter)' on a null object reference 12-10 16:00:31.240 14482-14482/com.ibm.bluelist E/AndroidRuntime: at com.ibm.mobilefirstplatform.clientsdk.android.push.api.MFPPush.listen(MFPPush.java:232) 12-10 16:00:31.240 14482-14482/com.ibm.bluelist E/AndroidRuntime: at com.ibm.bluelist.GroupsActivity.onResume(GroupsActivity.java:250) 12-10 16:00:31.240 14482-14482/com.ibm.bluelist E/AndroidRuntime: at android.app.Instrumentation.callActivityOnResume(Instrumentation.java:1257) 12-10 16:00:31.240 14482-14482/com.ibm.bluelist E/AndroidRuntime: at android.app.Activity.performResume(Activity.java:6119)

4

1 回答 1

0

当您尝试调用时,MFPPush SDK 可能尚未初始化: push.listen(notificationListener)

我建议保存推送值: push = MFPPush.getInstance() 在类中初始化或注册之后(无论您觉得更合适)。

这样,push在尝试侦听通知侦听器时,您将拥有适当的初始化实例。

于 2015-12-10T20:17:54.487 回答