Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/ruby/25.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 如何在按下通知时运行函数?_Android_Android Intent - Fatal编程技术网

Android 如何在按下通知时运行函数?

Android 如何在按下通知时运行函数?,android,android-intent,Android,Android Intent,我有一个创建通知的简单函数。按下通知时,用户将被重定向到给定的url: // makes an immediate notification public void makeNotification(int icon, String title, String description, String url, CharSequence tickerText) { long when = System.currentTimeMillis(); Not

我有一个创建通知的简单函数。按下通知时,用户将被重定向到给定的url:

// makes an immediate notification
public void makeNotification(int icon, String title, String description,
        String url, CharSequence tickerText) {
        long when = System.currentTimeMillis();
        Notification notification = new Notification(icon, tickerText, when);

        CharSequence contentTitle = title;
        CharSequence contentText = description;

        Intent notificationIntent = new Intent(Intent.ACTION_VIEW);
        notificationIntent.setData(Uri.parse(url));

        PendingIntent contentIntent = PendingIntent.getActivity(this, 0,
                notificationIntent, 0);
        notification.setLatestEventInfo(this, contentTitle, contentText,
                contentIntent);

        // make each notification unique
        mNM.notify(currentNotificationId, notification);
        currentNotificationId++;
}
每当按下通知时,我想运行一个函数(跟踪通知点击的次数)。我将如何做到这一点


我可以创建一些中间活动(运行函数,然后将用户转发到url),将其传递到PendingEvent而不是Intent.ACTION_视图中,但是有更简单的方法吗

不要执行PendingEvent.getActivity(),而是执行PendingEvent.getBroadcast(),并将广播接收器与应用程序一起写入。现在,当用户触摸通知时,您的广播接收器将被激活(将url作为意图数据传递)

在broadcast Receive()的内部,执行逻辑并像现在一样启动浏览器活动