活动不是从状态栏通知开始的

时间:2012-05-08 01:22:22

标签: android notifications android-pendingintent

我发现了很多有关此问题的Stack Overflow帖子,但他们都使用现已弃用的Notification方法,而不是使用Notification.Builder类。

我正在成功创建状态栏通知,但点击后没有任何反应。 LogCat中的警告显示:

Window already focused, ignoring focus gain of: com.android.internal.view.IInputMethodClient$Stub$Proxy@412d6df0

以下是我用于构建通知的代码:

public class LunchNotificationBuilder {

private Notification notification;
public LunchNotificationBuilder(Lunch lunch, Context context) {
    Builder builder = new Builder(context);
    Calendar reminderTime = (Calendar)lunch.getReminderTime().clone();
    builder.setWhen(reminderTime.getTimeInMillis());
    builder.setTicker("Reminder for " + lunch.getTitle());
    builder.setContentTitle("LunchBunch Notification");
    builder.setContentText("Upcoming lunch at " + lunch.getTitle());
    builder.setSmallIcon(R.drawable.ic_launcher);
    Intent intent = new Intent(context, InviteDetails.class);
    intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
    builder.setContentIntent(PendingIntent.getActivity(context, 0, intent, PendingIntent.FLAG_ONE_SHOT));
    this.notification = builder.getNotification();
}

public Notification getNotification() {
    return this.notification;
}

}

午餐课只是我创建的数据结构,不用担心。

传入的Context是Application.getApplicationContext()。

我正在设置文档建议的Intent.FLAG_ACTIVITY_NEW_TASK标志,而PendingIntent具有PendingIntent.FLAG_ONE_SHOT标志。

另一个注意事项:当我在代码中的其他地方显式调用startActivity时,我正在尝试启动的活动(InviteDetails)工作正常。有关此PendingIntent业务的信息无效。

1 个答案:

答案 0 :(得分:0)

原来我不知道如何使用Android。我点击了顶部的状态栏,而不是向下拖动以在点击之前查看完整通知。我的代码工作正常。卫生署!