当前位置: 首页 > 知识库问答 >
问题:

当应用程序未运行时,应用程序在解析推送通知时崩溃

弘烨烁
2023-03-14

当我打开我的android应用程序并测试解析推送通知时,它工作了。但是当我把我的应用程序从多任务中杀死并再次测试时,应用程序崩溃了。

protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        Parse.initialize(MainActivity.this, "cMm2mJvkRlIButQ0wM4lfj5veFxrQYUKw8P4mdM4", "bOplHPHvWb9IRzv2EbQnylWFgyveTsDYEspV2qs0");
        ParseAnalytics.trackAppOpenedInBackground(getIntent());
        ParsePush.subscribeInBackground("", new SaveCallback() {
            @Override
            public void done(ParseException e) {
                if (e == null) {
                    Log.d("com.parse.push", "successfully subscribed to the broadcast channel.");
                } else {
                    Log.e("com.parse.push", "failed to subscribe for push", e);
                }
            }
        });
}

错误日志

08-18 21:16:21.694 244 06-24406/?E/AndroidRuntime:致命异常:main process:com.myatminsoe.mKeyboard,PID:24406 java.lang.runtimeException:无法创建服务com.parse.pushService:java.lang.nullpointerException:试图在Android.app.activityThread.handlecreateService(ActivityThread.java:2771)和Android.app.activityThread.Access$1800(ActivityThread.java:151)和:1386)在Android.os.handler.dispatchMessage(handler.java:102)在Android.os.looper.loop(looper.java:135)在Android.app.activitythread.main(activitythread.java:5254)在java.lang.reflect.method.invoke(原生方法)在java.lang.reflect.method.invoke(method.java:372)在com.android.internal.os.zygoteinit$methodandargscaller.run.NullPointerException:attempt在com.parse.pushservice.oncreate(pushservice.java:238)在Android.app.activitythread.handlecreateService(activitythread.java:2761)                   在Android.app.activitythread.access$1800(activitythread.java:151)       在Android.app.activitythread$H.handleMessage(activitythread.java:1386)         · · · 在Android.os.handler.dispatchmessage(handler.java:102) · · · · · · · · · 在Android.os.looper.loop(looper.java:135) · · · · · · · 在Android.app.activitythread.main(activitythread.java:5254) · · · · · · · · 在java.lang.reflect.Method.invoke(原生方法)             在java.lang.reflect.Method.invoke(Method.java:372),          在com.android.internal.os.zygoteinit$methodandargscaller.run(zygoteinit.java:903),         在com.android.internal.os.zygoteinit.main(zygoteinit.java:698)

共有1个答案

汪鸿志
2023-03-14

在Application onCreate中进行解析初始化,并确保在主线程中调用它。

Parse.initialize(new Parse.Configuration.Builder(getApplicationContext()).applicationId(
                    ...).build());
 类似资料:
  • 我正在尝试在windows Phone7.5中实现推送通知 更新: 我知道通道活动时间长达30天,当我只使用模拟器时是否相同? 应用程序应与通道相关联,以便接收通知,即使在应用程序未运行时,如果通知通道处于活动状态,则应用程序也将接收toast

  • 我想用Xamarin格式的C#创建一个基于文本的Android游戏。 在故事中,我想设置角色任务,这需要一些时间,例如“我去挖这个洞,完成后给你打电话。” 如何将通知设置为在设置的时间之后显示?例如,上述声明可能需要10分钟,然后用户收到继续游戏的通知? 我一周前才开始做C#,所以如果这是noobish,或者已经被问到了,我道歉。我到处都找过,但有几种类型的通知,当我试图理解它时,似乎我在读法语。

  • 我目前正在开发Android(Cordova)应用程序,我正在使用Oneignal推送通知。首先,如果我关闭应用程序,推送通知不会被传递,所以我不得不添加一个Cordova插件来保持我的应用程序在后台运行: 我在deviceready之后的代码: 谢了。

  • 当应用程序完全关闭时,如何以编程方式发送通知? 示例:用户关闭应用程序,也在Android Taskmanager中,然后等待。应用程序应在X秒后或应用程序检查更新时发送通知。 我试图使用这些代码示例,但是: 应用程序关闭时推送通知-活动太多/无法工作 我如何让我的应用程序在关闭时发送通知很多信息,但我不知道如何处理 当android应用程序关闭时,如何发送本地通知?-很多信息,但我不知道如何处理

  • 我看了很多问题和答案为同一问题。 我现在知道的是 当应用程序是后台应用程序时,不会调用“DidReceiveEmotonification” DidReceiveEmotentification只在应用程序位于前台时调用,或者当用户点击应用程序位于后台的通知时调用 应用程序:didFinishLaunchingWithOptions:在用户点击通知打开应用程序(如果应用程序被终止)时调用 我的情况