如何判断应用程序是由于 Titanium 中的推送通知而打开还是恢复?

2024-01-03

在 Titanium 中,如何根据推送到达时应用程序是否打开来以不同方式处理推送?

当收到推送通知并且我的应用程序正在运行时,我想弹出一条消息,将用户带到通知引用的项目。如果应用程序关闭,并且用户点击推送通知并导致应用程序打开,我想将用户直接带到该项目而不弹出窗口。

Titanium 的 registerForPushNotifications 似乎只有一个回调,“callback”,当推送到达时,无论应用程序的状态如何,都会调用该回调。根据收到推送通知时如何判断我的 iPhone 应用程序是否正在运行? https://stackoverflow.com/questions/1998196/how-do-i-tell-if-my-iphone-app-is-running-when-a-push-notification-is-received您可以在 Objective C 中使用 didReceiveRemoteNotification 和 didFinishLaunchingWithOptions,但 Titanium 似乎没有提供对这些的单独访问。


如果用户收到通知,“回调”函数将在“恢复”后立即触发。

所以我会按照以下方式处理你的情况:

有一个变量来跟踪应用程序是否暂停(运行时 var is_paused = false; )。 is_paused 将在 Ti.App“暂停”事件时切换为 true,并在 Ti.App“恢复”事件时切换回 false 状态并超时(1 秒即可)。

然后,您可以通过检查 is_paused var 是 true 还是 false 来在回调函数中拥有不同的功能:

//in notification callback
if(is_paused){ 
   //user is coming from background (do your thing automatically)
}else{
  //user is in app (display the alert)
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何判断应用程序是由于 Titanium 中的推送通知而打开还是恢复? 的相关文章

  • AngularJS 更改一个控制器中的模型值会触发其他控制器中的模型更新

    EDIT 好吧 我更新了示例以避免循环问题 所以回到原来的问题 它仍然会重新计算 B 模型对象 在这个例子中 http jsfiddle net qn2Wa http jsfiddle net qn2Wa div div div div
  • 使用 jQuery 更改 CSS 类属性

    有没有办法使用 jQuery 更改 CSS 类的属性 而不是元素属性 这是一个实际的例子 我有一个 div 类red red background red 我想转班级red背景属性 而不是具有类的元素red分配的背景 如果我用 jQuery
  • 页面完全加载后如何执行函数?

    当页面完全加载时 我需要执行一些 JavaScript 代码 这包括图像之类的东西 我知道你可以检查 DOM 是否准备好 但我不知道这是否与页面完全加载时相同 这就是所谓的load 它是在 DOM Ready 出现之前就出现的 而 DOM
  • 在单个 mongodb 查询中查找并计数

    我的文档看起来像这样 id ObjectId 572c4bffd073dd581edae045 name What s New in PHP 7 description PHP 7 is the first new major versio
  • SQL 按计数排序

    如果我有一个表和这样的数据 ID Name Group 1 Apple A 2 Boy A 3 Cat B 4 Dog C 5 Elep C 6 Fish C 我希望根据 Group 的总和从小到大进行排序 例如 A 2条记录 B 1条记录
  • Visual Studio 2010 调试器不会在断点处停止?

    我在计算机 Windows 7 64 位 上使用 Visual Studio 2010 时遇到问题 我正在为 Outlook 做一个 C 插件 我可以将其添加到 Outlook 上 尝试一下 但无法调试它 因为调试器不会在断点处停止 我在谷
  • 保存来自 TrueDepth 相机的深度图像

    我正在尝试保存 iPhone X TrueDepth 相机的深度图像 使用AVCam照片滤镜 https developer apple com library content samplecode AVCamPhotoFilter Lis
  • 安装 Windows 服务时的凭据

    我正在尝试使用 VisualStudio Net 部署项目安装 C Windows 服务项目 要运行部署项目 我右键单击并从上下文菜单中选择 安装 安装向导将运行并最终提示我出现 设置服务登录 对话框 要求输入用户名和密码 当我从命令行使用
  • Class()、new Class 和 new Class() 之间的区别

    两者有什么区别Class and new Class new Class 我做了一个测试 后者似乎更快 http jsperf com object initilzation http jsperf com object initilzat
  • 无论如何要抓取重定向的链接吗?

    无论如何 我可以让 python 单击一个链接 例如 bit ly 链接 然后抓取生成的链接吗 当我抓取某个页面时 我唯一可以抓取的链接是重定向的链接 它重定向到的位置就是我需要的信息所在的位置 重定向有 3 种类型 HTTP 作为响应标头
  • 如何从 ruby​​ 中的字符串名称创建类实例?

    我有一个类的名称 我想创建该类的一个实例 以便我可以循环该类的架构中存在的每个 Rails 属性 我该怎么做呢 我的名称是我想要检查的类的字符串 我想我需要实例化一个类实例 以便我可以 循环遍历它的属性并打印它们 在 Rails 中你可以这
  • Highcharts - 使用选定的饼图切片获得 3D 效果

    在 highcharts 中 我试图使当用户选择或将鼠标悬停在饼图的切片上时 该切片会产生沿 z 轴 朝向用户 上升的效果 我试图通过 css 设置阴影过滤器并使切片的边框更宽 填充颜色相同 来实现此目的 然而 我面临的问题是切片仍然可以位
  • Apache Camel POJO Bean 处理器单例还是原型?

    我使用 Camel 的 spring DSL 来构建路由 并使用 POJO bean 作为处理器 最初 我这样做
  • Scrapy - 使用 TwistedScheduler 时出现 ReactorAlreadyInstalledError

    我有以下 Python 代码来启动 APScheduler TwistedScheduler cronjob 来启动蜘蛛 使用一只蜘蛛不是问题 而且效果很好 然而 使用两个蜘蛛会导致错误 twisted internet error Rea
  • 在 Xcode 6 中定位 iOS 7.1 或 7.0 时,应用程序中出现黑条

    重现步骤 使用Xcode6创建一个新项目 单视图模板 仅限iPhone Objective C 导航到项目设置并将部署目标从 8 0 更改为 7 1 在安装了 7 1 的 iPhone5 S 或 iPhone5 s 7 1 模拟器中运行应用
  • 使用 Moq 测试接受委托的方法

    我的代码正在使用一个实现这样的接口的组件 public interface IFoo void DoSomething string p1 void DoSomething string p1 Action
  • jqGrid过滤

    我想在我的中实现过滤jqGrid http www trirand com jqgridwiki doku php id start in my Spring框架MVC http en wikipedia org wiki Spring F
  • 什么时候应该使用双精度而不是十进制?

    我可以说出使用的三个优点double or float 代替decimal 使用更少的内存 速度更快 因为处理器本身支持浮点数学运算 可以表示更大范围的数字 但这些优点似乎只适用于计算密集型操作 例如建模软件中的操作 当然 当需要精度时 例
  • 最简单的 Ajax 照片库

    我不认为 最简单 是主观的 寻找一个可托管的照片库 除了显示图像并提供 下一张图像 和 上一张图像 之外什么也不做 但所有这些都无需重新加载页面 显然预缓存也很好 PHP Python Ruby 或 JS 如果你想要简单的 也许是这样的 d
  • RecyclerView 未显示列表中的所有项目

    我在用RecyclerView在我的应用程序中 每次我打开屏幕时 我只能看到一项 但当我调试时 它每次都会出现onBindViewHolder method 这是我的适配器 Override public ViewHolder onCrea

随机推荐

  • 使用“scale_x_log10”时,如何将“geom_text”准确映射到“geom_bin2d”?

    关于如何标记计数的一个很好的答案geom bin2d 可以在这里找到 使用 R 获取热图中 bin 的计数 https stackoverflow com questions 28771018 getting counts on bins
  • 什么是全球交易?

    JSR 907 JTA 1 2定义 全局事务 术语 UserTransaction begin 方法启动一个全球交易和 将事务与调用线程关联起来 这意味着什么 是最外面的事务还是什么 基本上 本地事务和全局事务之间的区别在于资源限制 全局事
  • MVC 区域不渲染 _Layout

    我有 NET CORE 2 2 的 MVC 项目我在项目中添加了区域 它在本地计算机中可以正常工作 当应用程序成功发布时 我使用 Azure Devops 设置 CI CD 管道 我注意到我的区域渲染不正确 下面的内容来自 azure 网站
  • 如何在 Excel 中使用 VBA 创建和填充 ActiveX 组合框。

    我在尝试在 Excel 的 vba 中创建并填充 ActiveX 组合框时遇到问题 下面的代码在作为两个单独的宏运行时有效 但是当我尝试将两者放在一起时 会创建一个空的组合框 谁能告诉我这是为什么以及如何克服这个问题 提前致谢 杰威 Sub
  • Nvidia NPP nppiFilter 在与 2d 内核卷积时产生垃圾

    Nvidia 性能基元 NPP http developer nvidia com cuda nvidia performance primitives提供了nppiFilter用于将用户提供的图像与用户提供的内核进行卷积的函数 对于一维卷
  • 在 Debian Squeeze 上升级 phpmyadmin(和其他软件包)

    我刚刚使用 Debian Squeeze 最新稳定版本 6 0 4 设置了一个新的虚拟机 我想要一个网络服务器 所以我安装了常用的 apache php5 mysql phpmyadmin 等 一切都很顺利 一切正常 我的问题是关于升级包的
  • 在列表中查找元素的Scheme 函数是什么?

    我有一个元素列表 a b c 我想查找其中是否有 真或假 x 例如 其中 x 可以是 a 或 d 有为此的内置函数吗 如果您需要使用内置等价运算符之一进行比较 您可以使用memq memv or member http www scheme
  • AngularJS:自定义迭代/数据转换和分组...当简单的 ng-repeat 无法解决问题时

    还是这个问题Angular js 更复杂的条件循环 https stackoverflow com q 15943193 301596但我觉得这个问题的答案是正确的 所以我接受了 因此 让我比在原来的问题中更详细地阐述 我正在努力得到这个
  • 如何意图进入特定的选项卡片段?

    有两个活动 MainActivity 和 LoginActivity 我也有一个Fragment 名称是TabFragment 带有TabLayout 它的父级是MainActivity 我如何从我的登录活动中意图进入特定的 TabFrag
  • 如何在 Excel 中将 DocumentProperty 添加到 CustomDocumentProperties?

    我正在尝试将 DocumentProperty 添加到 CustomDocumentProperties 集合中 代码如下 Sub testcustdocprop Dim docprops As DocumentProperties Dim
  • 在管道中使用 PowerShell 任务 Sysprep Azure VM

    我的 dotNET 应用程序是通过构建管道构建的 使用 Windows 托管代理 在随后的发布管道中 我配置了一个 16GB Win2016 VM 启用 RDP HTTP HTTPS WinRM 和 SSH 我将在其中配置手动 RDP 此处
  • 我应该如何绑定到 Ember 视图中的窗口函数?

    我有一个 mixin 它会在页面调整大小时自动重新计算并设置 div 的高度 它可以工作 但在我看来 绑定到 jQuery 事件并在每次调用时手动触发 Ember 事件似乎很愚蠢 有没有办法直接在 Ember 中绑定到窗口事件 我有一个简化
  • 将 Facebook Graph API 日期转换为 UNIX 时间戳

    如何将 Facebook Graph API 日期转换为 UNIX 时间戳 Facebook 最近添加了一项功能 其中日期 时间将以 Unix 时间戳格式返回 只需添加date format U查询参数以结束您的图形调用 例如 https
  • 回形针、多个附件和验证

    有人有 Rails 3 的多个附件在多部分表单上进行验证的示例吗 我一直在努力让它永远工作 并且找到了我能找到的每一篇博客文章和消息 但没有一个涵盖这种情况 并且文档根本 没有帮助 第一个问题是大多数示例都使用 new record 在视图
  • Django 对分页结果进行排序

    我正在使用 CBV 在 Django 2 中创建一个列表视图 分页正在工作 但是我现在正在尝试向我的分页添加排序 这种排序将起作用 当用户选择一列时 它将附加一个 GET 查询字符串 然后当我渲染视图时 我将按 QueryResult 进行
  • 添加新对象到 json-server; AngularJS

    我有一个 Angular 应用程序 应该与 json server 一起使用来检索数据并添加新数据 用户反馈 所以我有 json 数据库和一些数组 其中之一是 feedbacks 目前是空的 在 PUT 方法上我得到 PUT feedbac
  • 您可以在 Eclipse 中保存选项卡组以便稍后打开它们吗?

    我所从事的一个项目中有几个不同的流程 我不断在代码编辑器中打开和关闭该特定进程的选项卡 java 文件 每个进程几乎总是使用相同的 java 文件 我想知道是否可以将打开的文件保存为工作集的一部分 以便我可以选择我想要的工作集并打开我需要使
  • 使用 xquery 将所有元素的特定属性连接在一起

    如何使用 SQL XQuery 将所有元素的特定属性连接在一起 我有一个这样的表 InvoiceId Details 1001
  • Raspberry Pi 上的自托管 SignalR 可以工作吗?

    我想在 Raspberry Pi 上托管一个基于 C mono signalR 的网页 这可能吗 我设法编写了一个客户端 服务器 客户端解决方案 其中 signalR 集线器托管在运行 IIS 8 的 PC 上 pi 上的控制台应用程序使用
  • 如何判断应用程序是由于 Titanium 中的推送通知而打开还是恢复?

    在 Titanium 中 如何根据推送到达时应用程序是否打开来以不同方式处理推送 当收到推送通知并且我的应用程序正在运行时 我想弹出一条消息 将用户带到通知引用的项目 如果应用程序关闭 并且用户点击推送通知并导致应用程序打开 我想将用户直接