Android Bluemix 移至 cflinuxfs2 堆栈后,移动优先应用程序停止工作

Android mobile first app stopped working after Bluemix moved to cflinuxfs2 stack

我有一个基于 bluemix BMS 服务的 bluelist 应用程序的 android 应用程序。昨天当堆栈移动到 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)

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

我建议保存推送值: push = MFPPush.getInstance() 在class.

中初始化或注册后(你觉得哪个更合适)

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