通过推送通知启动应用程序时进行调试

2023-11-25

我目前正在开发一个接收推送通知的应用程序。我通过 PHP 页面使这一切 100% 正常工作。我的应用程序可以接收多种不同类型的推送通知。 PHP 处理这个问题并向我的应用程序发送不同的信息包,这些信息包都被很好地接收。

但是,当用户“查看”通知并且我的应用程序启动时,我显然想要采取与用户刚刚手动启动应用程序不同的操作 - 最重要的是,根据推送通知类型采取不同的操作。我已经让这个工作正常......结构上。

我的推送类型之一应该打开一个 UIView,它与多个不同的服务器建立多个连接并来回协商数据。例如,当从主菜单触发时,此 UIView 工作正常 - 但是,当我的推送通知触发此 UIView 出现时,套接字连接未按预期运行。

现在我的问题不是关于套接字,而是关于 - 如何调试这样的问题?据我所知(我相对较新),当应用程序从推送通知启动时,无法将该执行链接到调试器/控制台/等...我在尝试使用调试代码时遇到了非常困难的时间UIAlertViews,因为各个服务器之间有许多来回通信线路。

如果您对我有任何建议,我将不胜感激。


在 Xcode = 4,请参阅下面 delirus 的回答),您现在可以配置 Xcode 在启动应用程序后将调试器附加到应用程序,而不是通过调试器启动应用程序。这使您可以调试根据应用程序的启动状态而变化的内容,例如 URL 方案、粘贴板和推送通知。

  1. 在 Xcode 中,查看“源”栏,在“目标”下方将有“可执行文件”。
  2. 在可执行文件中调出应用程序的检查器。
  3. 单击检查器中的“调试”选项卡。
  4. 取消选中“启动调试器后启动可执行文件”
  5. 勾选“等待下一次启动/推送通知”

现在,当您从 Xcode 单击“调试”而不是启动应用程序时,将显示一个窗口,告诉它正在等待应用程序启动。然后,您可以在手机上正常启动该应用程序,并且 Xcode 会附加到该应用程序上

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

通过推送通知启动应用程序时进行调试 的相关文章

  • 如何使用 UISlider 以及如何将滑块设置为特定值?

    我是第一次使用 UIslider 首先我想知道如果值的范围是 0 到 10 如何获取滑块位置的值 其次 我希望我的滑块设置为 5 个不同的值 如 1 2 3 4 5 slider should not set between the lab
  • 奇怪的 Facebook ID [关闭]

    Closed 这个问题需要细节或清晰度 help closed questions 目前不接受答案 我有两个 Facebook 应用程序 它们都正在开发中 其中一个是很久以前创建的 而另一个则是相当新的 自从我升级到新的 iOS Faceb
  • 如何对 iPad 应用程序进行类转储?

    我正在尝试运行 iPad 应用程序的类转储来探索其架构 我使用 The Unarchiver 提取了 ipa 文件 并从 Payload 文件夹中对 app 文件运行了 class dump 但是 我收到此错误 Generated by c
  • 如何在 Swift 4 中以编程方式将 IBAction 添加到 uibutton?

    如何以编程方式将 IBAction 添加到 uibutton button addTarget self action Selector buttonAction for touchUpInside func buttonAction se
  • 允许用户从 UILabel 选择文本进行复制[重复]

    这个问题在这里已经有答案了 我有一个 UILabel 但如何允许用户选择其文本的一部分 我不希望用户能够编辑文本 也不希望标签 文本字段具有边框 这是不可能的UILabel 你应该使用UITextView为了那个原因 只需使用禁用编辑即可t
  • 当我启动项目时没有 viewcontroller.swift 文件 [重复]

    这个问题在这里已经有答案了 我尝试启动该项目并使用视图控制器 但我没有看到它 仅appdelegate和scenedelegate和contentview 下面的代码应该添加到视图控制器中 但我不知道添加到哪里 它不断给我一条错误消息 指出
  • 应用因广告标识符 (IDFA) 被拒绝

    我的申请因以下原因被拒绝 您和您的应用程序 以及与您有联系的任何第三方 签订广告服务合同 可以使用广告标识符 以及通过使用广告获得的任何信息 标识符 仅用于服务广告的目的 如果一个用户 重置广告标识符 则您同意不合并 直接或间接关联 链接或
  • iOS:保持应用程序在后台运行

    如何让我的应用程序在后台运行 我需要越狱我的 iPhone 才能执行此操作吗 我只需要这个应用程序每隔设定的时间间隔从互联网上检查一些内容 并在需要时发出通知 以供我自己使用 是的 不需要越狱 查看本文档的 实现长时间运行的后台任务 部分A
  • iPhone Core Graphics 子视图的粗虚线

    我有一个UIView在其中我通过覆盖使用 Core Graphics 画了一条线drawRect 该视图还包含一个子视图 该子视图也绘制一条线 然而 虽然两个视图都使用几乎相同的代码 至少出于测试目的 但在它们上绘制的线看起来并不相同 正如
  • 我以前没见过的 CGRect 语法

    我在一些示例代码中看到了下面的语法 但不确定我是否理解它 CGRect imageRect CGRect size baseImage size 这只是初始化的一种简写方式吗CGRect相当于 CGRect imageRect CGRect
  • UINavigationControllerDelegate的didShowViewController方法被调用了两次

    class ViewController UIViewController UINavigationControllerDelegate override func viewDidLoad super viewDidLoad navigat
  • NSPredicate 查询不包含特定字符串

    对这个问题进行了高低查找 但找不到我的答案 我正在查询核心数据以查找不等于指定字符串的所有记录 例如 所有不等于当前会话ID的记录 我已经尝试过这些但无济于事 NSPredicate predicate NSPredicate predic
  • iOS UITableViewCell需要按两次才能调用didSelectRowAtIndexPath

    我有一个 UITableView 有时需要您触摸它两次才能选择一个单元格 更多细节 仅当表格一直向上或一直向下滚动后才需要两次触摸 只需第二次触摸即可呼叫didSelectRowAtIndexPath 当表格以自然的 向上滚动位置 打开时
  • 核心蓝牙在后台进行广告和扫描

    我一直在尝试设置一个应用程序 使设备既扫描外围设备又作为外围设备进行广告 目标是当两个设备通过蓝牙发现彼此靠近时在后台被唤醒 从 Apple 文档来看 您似乎应该能够在后台运行 BLE 启用蓝牙中心和蓝牙外设后台模式 并且当一台设备位于前台
  • 如何改进 iOS 中的 TWTweetComposeViewController 代码?

    我已经实现了以下代码来进行 Twitter 共享 在我的代码中 我尝试测试 iOS 5 如果这不起作用 我会回到使用 ShareKit 的 Twitter 代码进行共享的旧方式 我向同事展示了代码 他建议我的代码可能有缺陷 我需要做两件事
  • 如何修复C风格的for语句?

    什么是正确的修复方法C 风格的 for 语句对于下面发布的代码 目前我正在交战 C 风格的 for 语句已弃用 并将在将来删除 斯威夫特的版本 var ifaddr UnsafeMutablePointer
  • 在 Objective C 中使用下划线作为属性名称前缀 [重复]

    这个问题在这里已经有答案了 我以前避免在变量名中使用下划线 这可能是我大学 Java 时代的遗留下来的 因此 当我在 Objective C 中定义属性时 我自然会这样做 In the header interface Whatever N
  • 找不到导航对象。您的组件是否位于导航器屏幕内?

    在我下面的代码中 当我使用 useNavigation 时 它会给出像我的问题一样的错误 如何使用useNavigation 请任何人都可以解决此错误 错误 找不到导航对象 您的组件是否位于导航器屏幕内 我从这里跟踪了代码https rnf
  • iphone:通过代码获取目标设置中的用户定义变量?

    我的项目有多个目标 每个目标都有自己的目标Class用于设置内容的文件 我想存储它Class目标设置中的名称 Info plist或目标的建筑物设置 这样我就可以根据此设置定义每个目标中需要使用哪个类 根据这个问题 https stacko
  • 在 iOS 中管理和解除多个视图控制器

    我是一名 iPhone 新手程序员 在开发我的第一个游戏 应用程序时 我为自己提出了一个问题 创造了一个问题 我对此进行了研究 并认为我已经看到了答案 但我不明白如何使它们适用于我的应用程序 我有一个游戏 有几个视图控制器 欢迎 玩 高分

随机推荐

  • Android 上最低开销的相机到 CPU 到 GPU 的方法

    我的应用程序需要在 CPU 上对实时相机帧进行一些处理 然后再将它们渲染到 GPU 上 GPU 上还渲染了一些其他内容 这些内容取决于 CPU 处理的结果 因此 保持所有内容同步非常重要 这样我们就不会在 GPU 上渲染帧本身 直到 CPU
  • iOS 7 中的静默推送通知有速率限制吗?

    我看到一个关于静默推送通知限制的参考 静默推送受到速率限制 每小时少量 来自 WWDC 2013 http devstreaming apple com videos wwdc 2013 204xex2xvpdncz9kdb17lmfooh
  • 是否可以使用一个替换函数来替换一个字段中的多个字符串?

    在我的报告中 我需要使用内置替换函数将 a 替换为 b 将 c 替换为 d 当我只使用两个这样的函数时 替换 字段 field1 Value a b 替换 字段 field1 Value c d 我在报告中两次从现场获得文本 是否有可能做到
  • 使用 Google+ 登录时如何注销

    谷歌文档在那里gapi auth signOut 方法在这里 https developers google com web signin sign out 问题是它说你只能在之后调用该方法signinCallback已解雇 据我所知 唯一
  • 不同库中的相同符号和链接顺序

    我有 2 个库 test 1 and test 2 两个库都包含一个全局的外部 C void f 函数 具有不同的实现 只是cout用于测试 我做了以下测试 Test 1动态链接 如果我添加libtest 1 so进而libtest 2 s
  • 无法在 case 语句 bash 中设置变量

    我试图根据一堆输入条件设置一个变量 这是代码的一个小示例 bin bash INSTANCE SIZE case 1 in micro INSTANCE SIZE t1 micro small INSTANCE SIZE m1 small
  • 自动释放与释放

    当我需要一个数组临时使用时 这些有什么区别 1 NSMutableArray stuff NSMutableArray alloc init use the array stuff release 2 NSMutableArray stuf
  • 在 WooCommerce 购物车中获取购物车项目的产品 ID

    cart item woocommerce gt cart gt get cart 我有上面的代码 如果我在 cart item 上运行 print r 我会得到一个多维数组 Array a6292668b36ef412fa3c4102d1
  • Web应用中长时间运行查询问题的解决方案(异步请求)

    这是问题所在 企业 Web 应用程序的用户正在执行导致长 非常长 数据库查询 或其他长处理密集型任务 的任务 问题 请求超时 一段时间后用户可能会遇到请求超时 会话超时 如果未使用会话保持方法 则可能会发生会话超时 Request thre
  • Jest + Material-UI:正确模拟 useMediaQuery

    我正在使用 Material UIuseMediaQuery 我的组件之一中的函数来确定size用于 a 的道具
  • Angular 2 路由参数重新初始化组件 onInit

    我遇到一个问题 当我使用新参数路由到我的组件时 它正在重新初始化 这是我的路线 const appRoutes Routes path component MyNewComponentComponent path tiles compone
  • 关于多个“catch”的问题

    谁能告诉我为什么这个类的输出是 xa 为什么其他异常 RuntimeException和Exception 不会被捕获 public class Tree public static void main String args try th
  • WPF TabItem 内容对齐始终居中

    我试图将一些内容放入 TabItem 中 但无法添加填充 TabItem 空间的容器 我添加的任何内容都会居中显示 我正在使用 WPF Toolkit 中的主题 WhistlerBlue xaml 所以我认为这可能就是导致我出现这个问题的原
  • 为什么从 PHP 5.4 开始永久启用“echo”短标签?

    甚至官方文档曾经告诉我们PHP 短标签 是 坏 然而 从 PHP 5 4 开始 echo种类永久启用 无论short open tag setting 发生了什么变化 即使他们之前仅仅因为是否存在不可预测的性质而被劝阻short open
  • 如何在python(windows平台)中安装xgboost包?

    http xgboost readthedocs org en latest python python intro html 在xgboost的主页 上面的链接 上 写着 要安装 XGBoost 请执行以下步骤 你需要跑make在项目的根
  • 使用 FindMatchingFiles 工作流活动的 MatchPattern 属性

    我正在使用 TFS 2010 Team Build 自定义构建过程模板的默认工作流程 有一个活动叫FindMatchingFiles允许使用中定义的模式搜索特定文件MatchPattern财产 如果我只指定一个文件扩展名 它就会起作用 例子
  • OpenGraph 还是 Schema.org? [关闭]

    Closed 这个问题是基于意见的 目前不接受答案 只是想知道你们是否喜欢遵循以下标记的 OpenGraph 协议 或者 Schema org 协议 div span Kenmore White 17 Mi span div
  • 无法在 Ubuntu 13.04 上使用 RVM 安装 Ruby on Rails

    我正在尝试在我的 Ubuntu 机器上安装 RVM 我已经使用curl来获取RVM 但是一些RVM命令 安装 要求 抛出此apt get错误 There has been error while updating apt get pleas
  • Git-2-SVN 迁移?

    是的 我知道 为什么要从 Git 迁移到 SVN 好吧 我碰巧遇到这样的情况 我需要将一个巨大的 Git 存储库迁移到 Subversion 这是我根据埃德温的评论尝试的一个工作流程 首先创建一个本地SVN仓库 svnadmin creat
  • 通过推送通知启动应用程序时进行调试

    我目前正在开发一个接收推送通知的应用程序 我通过 PHP 页面使这一切 100 正常工作 我的应用程序可以接收多种不同类型的推送通知 PHP 处理这个问题并向我的应用程序发送不同的信息包 这些信息包都被很好地接收 但是 当用户 查看 通知并