点击推送通知打开应用程序

时间:2013-08-15 08:51:38

标签: java android cordova push-notification

创建推送通知的功能是

public void createNotification(Context context, Bundle extras)
{
    NotificationManager mNotificationManager = (NotificationManager) getSystemService(Context.NOTIFICATION_SERVICE);
    String appName = getAppName(this);

    Intent notificationIntent = new Intent(this, PushHandlerActivity.class);
    notificationIntent.addFlags(Intent.FLAG_ACTIVITY_SINGLE_TOP | Intent.FLAG_ACTIVITY_CLEAR_TOP);
    notificationIntent.putExtra("pushBundle", extras);

    PendingIntent contentIntent = PendingIntent.getActivity(this, 0, notificationIntent, PendingIntent.FLAG_UPDATE_CURRENT);        


    NotificationCompat.Builder mBuilder = 
        new NotificationCompat.Builder(context)
            .setSmallIcon(context.getApplicationInfo().icon)
            .setWhen(System.currentTimeMillis())
            .setContentTitle(appName)
            .setTicker(appName)
            .setContentIntent(contentIntent);

    String message = extras.getString("message");
    if (message != null) {
        mBuilder.setContentText(message);
    } else {
        mBuilder.setContentText("<missing message content>");
    }

    String msgcnt = extras.getString("msgcnt");
    if (msgcnt != null) {
        mBuilder.setNumber(Integer.parseInt(msgcnt));
    }

    mNotificationManager.notify((String) appName, NOTIFICATION_ID, mBuilder.build());
    tryPlayRingtone();
}

当我点击它时,它什么也没做。 但是,当点击推送通知时,它必须打开我的应用程序。

项目构建目标ID Google API,基于4.3平台,API级别18。 Androuid支持liblary是13版本。我使用Phonegap和Phonegap PushPlugin

1 个答案:

答案 0 :(得分:0)

问题在于AndroidManifest.xml中的活动。我编辑了主要活动,创建了新的活动,就像在github上的文档一样。