推送接收器每次都打开一个新的应用程序

时间:2015-08-21 13:59:27

标签: android android-activity push-notification

我正在使用以下内容接收来自parse.com的推送

import android.content.Context;
import android.content.Intent;
import com.parse.ParsePushBroadcastReceiver;
import org.json.JSONException;
import org.json.JSONObject;

public class PushNotificationReceiver extends ParsePushBroadcastReceiver {

    private String pushUrl;

    @Override
    public void onPushOpen(Context context, Intent intent) {

        JSONObject json = null;
        try {
            json = new JSONObject(intent.getExtras().getString("com.parse.Data"));
            pushUrl = json.getString("url").toString();

        } catch (JSONException e) {
            e.printStackTrace();
        }

        Intent i = new Intent(context, MainActivity.class);
        i.putExtra("url", pushUrl);
        i.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
        context.startActivity(i);
    }


}

工作正常。问题是,当我点击通知时,即使应用程序在那时打开,它也会再次打开应用程序。 请指教。

1 个答案:

答案 0 :(得分:0)

好的,我已经解决了。 在menifest中添加了以下内容

android:launchMode="singleTask"

并添加了我的主要活动如下

protected void onNewIntent(Intent intent)
    {
        super.onNewIntent(intent);
        String url = intent.getStringExtra("url");
        mWebView.loadUrl(url);
    }