Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/121.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios 云工具包订阅在试飞构建中无法与生产环境配合使用_Ios_Push Notification_Cloudkit - Fatal编程技术网

Ios 云工具包订阅在试飞构建中无法与生产环境配合使用

Ios 云工具包订阅在试飞构建中无法与生产环境配合使用,ios,push-notification,cloudkit,Ios,Push Notification,Cloudkit,开发环境下的云工具包订阅推送通知工作正常,但当我尝试使用test flight处理生产环境时,通过TestFlight build,云工具包订阅无法处理生产环境。一旦应用程序发布到Appstore,订阅就开始工作了尽管这个答案已经很晚了,我还是发布了,以防其他人仍能在这里找到他们的方式。我遇到了同样的问题。CloudKit订阅通知在开发环境中运行良好,当我通过TestFlight分发应用程序时,它似乎完全停止了 经过一些调试,我发现application:didReceiveEmotentifi

开发环境下的云工具包订阅推送通知工作正常,但当我尝试使用test flight处理生产环境时,通过TestFlight build,云工具包订阅无法处理生产环境。一旦应用程序发布到Appstore,订阅就开始工作了

尽管这个答案已经很晚了,我还是发布了,以防其他人仍能在这里找到他们的方式。我遇到了同样的问题。CloudKit订阅通知在开发环境中运行良好,当我通过TestFlight分发应用程序时,它似乎完全停止了

经过一些调试,我发现application:didReceiveEmotentification实际上按预期启动。问题是,我已将serverChangeToken缓存在用户默认值中。该serverChangeToken是开发环境的变更标记。当我通过TestFlight切换到prod时,该令牌不再有效。。。从Prod的角度来看,这是未来的发展方向。因此,我对该更改标记的FetchNotificationChanges操作没有发现比该标记更新的结果

由于该应用程序仍在开发中,因此对我来说,修复方法是检查我所处的环境,并在用户默认设置中保存单独的Dev和Prod change令牌


我的场景只会影响开发设备;任何直接从应用商店安装的用户都只能看到Prod版本的更改令牌。

Thunk,如何通过编程检查您所处的环境?我添加了一个带有一个字符串值的记录,在相应的环境中设置为development或production。