PendingIntent不起作用

时间:2014-12-23 17:14:18

标签: android android-pendingintent

我有一项服务,会显示通知。通知正确显示,但是当我点击nofitification时没有任何反应。它应该在我的应用程序中打开一个活动。这是我的代码:

public class ServiceCheckExpensesRecurring extends Service{

        @Override
        public int onStartCommand(Intent intent, int flags, int startId) {
            int mNotificationId = 001;
            Intent myIntent = new Intent(this, MenuDashboard.class);
            myIntent.setAction(Intent.ACTION_VIEW);
            myIntent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP | Intent.FLAG_ACTIVITY_NEW_TASK);
            PendingIntent pIntent = PendingIntent.getActivity(getBaseContext(), 0, myIntent, PendingIntent.FLAG_UPDATE_CURRENT);
            NotificationCompat.Builder n  = new NotificationCompat.Builder(this)
                    .setContentTitle("New mail from " + "test@gmail.com")
                    .setContentText("Subject")
                    .setSmallIcon(R.drawable.common_signin_btn_icon_light)
                    .setContentIntent(pIntent)
                    .setAutoCancel(true);

            NotificationManager notificationManager =
                    (NotificationManager) getSystemService(NOTIFICATION_SERVICE);

            notificationManager.notify(mNotificationId, n.build());
            return Service.START_NOT_STICKY;
        }
    }

仅供参考,MenuDashboard是一个片段(如果它有帮助)。我正在使用我的sony experia mini和ICS

1 个答案:

答案 0 :(得分:3)

意图可以启动活动(或服务),但不能启动碎片。

如果MenuDashboard是片段,那么它将无效。

您应该使用Activity,并将Fragment嵌入其中。