【问题标题】:notification intent putextra method通知意图 putextra 方法
【发布时间】:2015-03-10 08:51:18
【问题描述】:

我正在开发下载管理器。为了每秒管理一次通知,它依次调用两个方法,通过 getbroadcast 构建通知。 updateActiveNotification(downloads) 然后 updateCompletedNotification(downloads) 。第一种方法检查我的下载列表并构建一个适当的通知,该通知应该显示下载进度(它每秒构建一次通知,因此它看起来像正在进行的通知!),第二种方法检查已完成的下载并构建他们的通知。现在的问题是,我在这两种方法中通过 putExtra 为正在进行的下载和已完成的下载设置数据,但是当我在接收器中获取意图时,我无法从已完成的下载意图和实际数据中获取 putExtra 数据钥匙来自第一种方法。 我一头雾水! .这是两种不同的方法,它们对不同的通知产生不同的意图。这怎么可能。 谁能帮帮我?!
这是示例代码:

第一种方法:

Intent intent = new Intent(action);
Intent.setclass(receiver class)
intent.putExtra("someName1", boolean);
context.getbroadcast(intent);

第二种方法:

Intent intent = new Intent(action);
Intent.setclass(receiver class)
intent.putExtra("someName2", boolean);
context.getbroadcast(intent);

现在接收器上:

Bundle mybundle = intent.getExtras();
    if(mybundle != null) {
        for (String key : mybundle.keySet()) {
            //Object value = mybundle.get(key);
            Log.d("ALA-Dev", key);
        }
    }

对于两种意图(来自第一种方法或第二种方法),它都会打印 someName2 作为键,这意味着它根本没有获得第二个数据!

【问题讨论】:

    标签: android notifications


    【解决方案1】:

    没有代码示例很难给出合格的答案。如果您提供了这样的额外内容:

    Intent intent = new Intent(context, SomeActivity.class);
    intent.putExtra("someName", someString);
    context.startActivity(intent);
    

    然后你可以使用类似这样的东西取回数据:

    Intent intent = getIntent();
    String yourExtra = intent.getStringExtra("someName");
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-06-02
      • 1970-01-01
      • 2013-08-05
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多