Android,使用 parse.com 推送通知,自动启动应用程序
Posted
技术标签:
【中文标题】Android,使用 parse.com 推送通知,自动启动应用程序【英文标题】:Android, Push notification using parse.com, launches the app automatically 【发布时间】:2015-09-06 08:23:43 【问题描述】:我的问题是,当推送来自解析服务时,有时应用程序会自动打开,就好像我点击了通知栏中的通知一样。 也许有人已经面临类似的问题?
这是我的 CustomReseiver:
public class CustomPushReceiver extends ParsePushBroadcastReceiver
private final String TAG = CustomPushReceiver.class.getSimpleName();
private Intent parseIntent;
public CustomPushReceiver()
super();
@Override
protected void onPushReceive(Context context, Intent intent)
super.onPushReceive(context, intent);
if (intent == null)
return;
try
JSONObject json = new JSONObject(intent.getExtras().getString("com.parse.Data"));
Log.e(Constans.LOG_TAG, "Push received: " + json);
parseIntent = intent;
// Toast.makeText(ParseApplication.get(), json.getString("alert"), Toast.LENGTH_SHORT).show();
if(ProfileBriefsFragment.profileBriefsContext instanceof Profile_SideBar_Activity)
((Profile_SideBar_Activity)ProfileBriefsFragment.profileBriefsContext).pushReceived(json);
CurrentUser.getInstance().setHaveNewNotidication(true);
Notification_center_Activity.updateNotifications();
catch (JSONException e)
Log.e(TAG, "Push message json exception: " + e.getMessage());
@Override
protected void onPushDismiss(Context context, Intent intent)
super.onPushDismiss(context, intent);
@Override
public void onPushOpen(Context context, Intent intent)
Intent i = new Intent(context, NewHomeActivity.class);
i.putExtras(intent.getExtras());
i.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
context.startActivity(i);
public interface OnPushReceived
void pushReceived(JSONObject json);
【问题讨论】:
【参考方案1】:试试这个
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.FROYO)
// Initialize Parse
Parse.initialize(this, "your id from parse");
ParseInstallation.getCurrentInstallation().saveInBackground();
Parse.setLogLevel(Parse.LOG_LEVEL_INFO);
PushService.setDefaultPushCallback(this, MainActivity.class, R.drawable.ic_notification);
只有当你点击通知 MainActivity Opened 时才使用 setDefaultPushCallback。
希望有用。
【讨论】:
谢谢,但现在当我点击通知时它不会打开,只有当应用程序在后台打开时才会打开。 好的,我删除了这行“Parse.setLogLevel(Parse.LOG_LEVEL_INFO);”,现在看起来可以正常工作了,我会继续测试,谢谢。以上是关于Android,使用 parse.com 推送通知,自动启动应用程序的主要内容,如果未能解决你的问题,请参考以下文章
未在 android 中使用 parse.com 获取推送通知
Android,使用 parse.com 推送通知,自动启动应用程序
如何在 Android 中禁用多个推送通知图标,我正在使用 Parse.com
android 使用 parse.com api 通过推送通知实现聊天