【问题标题】:Window already focused, ignoring focus gain of: com.android.internal.view窗口已经聚焦,忽略焦点增益:com.android.internal.view
【发布时间】:2011-09-07 17:43:33
【问题描述】:

很遗憾,我无法在其他 StackOverflow 帖子中找到解决此问题的方法,因此对于重新发布此问题,我提前道歉。本质上,我有一个创建通知的 AppWidget。我希望用户单击通知以启动活动。 AppWidget 和 Activity 在同一个 APK 中。

以下代码全部在 AppWidget 中。点击 Notification 会广播一个 AppWidget 接收到的自定义 Intent。

问题在于 Activity 似乎没有启动,即使 logcat 表明自定义 Intent 确实已被广播。唯一的线索是帖子标题中重申的 logcat 消息。

@Override
public void onReceive(Context context, Intent intent) {
    if (intent.getAction().equals(Constants.BROWSER_INTENT)) {
        launchActivity(context, R.layout.appwidget, R.id.launch_button, Activity.class);
    }
    super.onReceive(context, intent);
}


private void displayNotification(Context context, String ticker, String title, String msg) {
    Intent intent = new Intent(context, ThisWidget.class);
    intent.setAction(Constants.BROWSER_INTENT); 
    PendingIntent pending = PendingIntent.getActivity(context, 0, intent, 0);

    NotificationManager notificationManager = (NotificationManager)context.getSystemService(Context.NOTIFICATION_SERVICE);
    Notification notification = new Notification(R.drawable.icon, ticker, System.currentTimeMillis());

    notification.setLatestEventInfo(context, title, msg, pending);
    notificationManager.notify(1, notification);
}

一些注意事项:

  • 按下按钮执行 launchActivity() 工作(它启动 活动)
  • launchActivity 使用 Intent.FLAG_ACTIVITY_NEW_TASK 作为 Android 生命周期文档推荐

有没有人在从 Notification press 启动 Activity 时解决了这个问题?

【问题讨论】:

    标签: android android-widget android-intent android-notifications


    【解决方案1】:

    呃,数字,我在发布后几分钟就回答了我自己的问题。我想我通过使用 Intent 操作使实现过于复杂。我改变了这些行:

       Intent intent = new Intent(context, ThisWidget.class);
       intent.setAction(Constants.BROWSER_INTENT); 
       PendingIntent pending = PendingIntent.getActivity(context, 0, intent, 0);
    

    到这里:

       Intent intent = new Intent(context, Activity.class);
       PendingIntent pending = PendingIntent.getActivity(context, 0, intent, 0);
    

    它成功了。

    对虚假帖子感到抱歉。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多