当前位置: 首页 > 知识库问答 >
问题:

如何获得PendingIntent.GetActivity的结果

刘焱
2023-03-14

我正在使用一个挂起的意图来启动一个闹钟(使用AlarmManager)。我需要不同的结果代码启动的活动,基于两个按钮中的哪一个放在它的用户点击(Snooze或取消)。我怎么得到这个结果?不幸的是,在关闭活动上启动finish()方法之后,没有在父活动中启动onActivityResult()方法。在Android文档中,它指出

共有1个答案

公孙志
2023-03-14

PendingIntents被设计成可以从其他应用程序启动,也就是说,不清楚谁应该接收结果。这就是为什么startActivityForResult()对于PendingIntert没有意义的原因。我的建议是当你完成之前发起的活动时发送一条广播消息

@Override
public void onFinish() {
    super.onFinish();
    Intent intent = new Intent(YOUR_CUSTOM_ACTION);
    // Put data to intent
    sendBroadcast(intent);
}

并在其他活动中使用broadcastreceiver接收结果:

public class ActivityResultReceiver extends BroadcastReceiver{

    @Override
    public void onReceive(Context context, Intent intent) {
        // Retrieve data from intent
    }

}
 类似资料:
  • 问题内容: 我一直在尝试发送HttpPost请求并获取响应,但是即使我能够建立连接,我仍然无法获得如何获取由请求-响应返回的字符串消息。 对不起,我听起来很幼稚,因为我是Java新手。请帮我。 问题答案: 尝试在您的响应中使用:

  • 问题内容: 我正在使用Protractor(v 1.3.1)为Angular 1.2.26应用程序运行E2E测试。 但是有时候,测试还可以,有时候却不行。似乎有时检查是在更新显示之前完成的(或类似“同步”的问题)。我尝试了很多选择: 添加说明, 使用禁用效果 添加说明 没有成功。 与量角器进行可靠的E2E测试的最佳实践是什么? JM。 问题答案: 每当我有类似的问题,我使用的是与“预期的条件”(在

  • 问题内容: 我正在使用CTest(CMake的一部分)进行自动化测试。 如何在Jenkins仪表板中获得CTest结果?或者,换句话说,如何使CTest以类似JUnit的XML输出? 问题答案: 在Jenkins中,在CMake部分(可能是通过CMake插件完成)之后,添加以下批处理脚本,或适应Linux上的构建: 是CMake插件中的构建目录 是我所有测试所在的子目录 使CTest输出为XML(

  • 问题内容: 以下是用于从共享点检索信息的控制器。我可以看到调试显示条目具有需要在视图中呈现的属性值。我如何从结果承诺中获得那个价值? 我试图将其放入柜台,但没有显示。任何帮助,将不胜感激。 问题答案: 不要使用jQuery ,而要使用$ http服务: 然后从返回的promise中提取数据: $ http服务返回的promise已与AngularJS框架集成。只有在AngularJS执行上下文中应

  • 我需要获取数据库中的所有记录作为数组使用在教义中,我的查询是这样的 即使将水合模式设置为,我也会将结果作为对象 我犯了什么错误?

  • 我有麻烦得到地理定位坐标从一个promise函数返回。我使用下面的代码从这里:如何geolocation.get货币位置返回值? 我试过: 有人能给我解释一下从promise中获得价值的正确方法是什么吗?谢啦