【问题标题】:The method setDefaultPushCallback(Context, Class<? extends Activity>) from the type PushService is deprecated不推荐使用 PushService 类型的方法 setDefaultPushCallback(Context, Class<? extends Activity>)
【发布时间】:2014-10-31 14:28:28
【问题描述】:

我一直面临的整个问题是这行代码

PushService.setDefaultPushCallback(this, MainActivity.class);

在导入 PushService 时,不推荐使用 setDefaultPushCallback|()。为什么会这样。我收到通知,但点击应用程序正在崩溃。应用未运行时也无法接收。

【问题讨论】:

  • 我现在有同样的问题仪式。我正在阅读它,我会回复你。讨厌人们在没有否定理由的情况下投反对票。

标签: parse-platform push


【解决方案1】:

我找到了解决方案,而且非常简单。
我发现了同样的问题 https://stackoverflow.com/a/26180181/3904085

" 花了几个小时后。找到了解决方案:实现您的接收器并扩展 ParsePushBroadcastReceiver 类。

Receiver.java

public class Receiver extends ParsePushBroadcastReceiver {

    @Override
    public void onPushOpen(Context context, Intent intent) {
        Log.e("Push", "Clicked");
        Intent i = new Intent(context, HomeActivity.class);
        i.putExtras(intent.getExtras());
        i.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
        context.startActivity(i);
    }
}

在清单中使用它,(而不是使用 ParsePushBroadcastReceiver)

项目清单代码:

<receiver
    android:name="your.package.name.Receiver"
    android:exported="false" >
    <intent-filter>
        <action android:name="com.parse.push.intent.RECEIVE" />
        <action android:name="com.parse.push.intent.DELETE" />
        <action android:name="com.parse.push.intent.OPEN" />
    </intent-filter>
</receiver>

" 感谢@Ahmad Raza

【讨论】:

    【解决方案2】:

    来自 onPushOpen() 上的 Parse 文档:

    当用户打开推送通知时调用。将分析信息发送回 Parse,表明应用程序已从此推送通知中打开。默认情况下,这将导航到 ParsePushBroadcastReceiver.getActivity(Context, Intent) 返回的 Activity。如果推送包含“uri”参数,则会触发 Intent 以查看该 URI,并使用 ParsePushBroadcastReceiver.getActivity(android.content.Context, android.content.Intent) 在后台堆栈中返回的 Activity。

    因此,如果您像这样覆盖 onPushOpen(),则不会发送任何分析。

    这是我的代码:

    public class Receiver extends ParsePushBroadcastReceiver {
    
        @Override
        protected Class<? extends Activity> getActivity(Context context, Intent intent) {
            return HomeActivity.class;
        }
    }
    

    您需要像上面的帖子一样注册接收器。

    使用 Parse 1.10.3 测试

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-06-14
      • 2019-02-07
      • 2018-08-26
      • 2014-04-27
      • 1970-01-01
      • 2023-03-02
      相关资源
      最近更新 更多