应用程序关闭时的Swift2推送
Posted
技术标签:
【中文标题】应用程序关闭时的Swift2推送【英文标题】:Swift2 push when app is closed 【发布时间】:2015-10-23 12:28:37 【问题描述】:我想每 15 分钟发出一次请求。然后我想向用户发送推送通知。
我使用这个代码。
func application(application: UIApplication, didFinishLaunchingWithOptions launchOptions: [NSObject: AnyObject]?) -> Bool
// Override point for customization after application launch.
// push
application.registerUserNotificationSettings(UIUserNotificationSettings(forTypes: [UIUserNotificationType.Sound, UIUserNotificationType.Alert, UIUserNotificationType.Badge],categories:nil))
// background fetch
let settings = UIUserNotificationSettings(forTypes: [UIUserNotificationType.Sound, UIUserNotificationType.Alert, UIUserNotificationType.Badge], categories: nil)
UIApplication.sharedApplication().registerUserNotificationSettings(settings)
UIApplication.sharedApplication().setMinimumBackgroundFetchInterval(UIApplicationBackgroundFetchIntervalMinimum)
return true
func application(application: UIApplication, performFetchWithCompletionHandler completionHandler: (UIBackgroundFetchResult) -> Void)
print("Complete");
completionHandler(UIBackgroundFetchResult.NewData)
getData();
func getData() -> Void
let p = PushService()
p.Push("Changed")
它工作正常,但只有一次。 当我通过任务管理器关闭这个应用程序时,没有推送。 因此,即使用户关闭了我的应用程序,我如何每 15 分钟发送一次推送通知。 (如 WhatsApp 或其他信使)
我使用本地推送。
【问题讨论】:
您是否尝试过使用 Parse 进行推送通知处理?您可以使用 Parse Cloud Code 使用 Parse 自动推送通知(直到您想要的任何分钟、小时、天)。我建议...更容易。 parse.com/apps/quickstart#cloud_code/windows @nhgrif 谢谢。所以就不能处理我想要的情况了? @rinyfo 所以我可以每 x 分钟发送一次推送通知,然后用我关闭的应用程序接收它们? 是的。对于更新、提醒、您希望用户采取的操作,无论您选择什么。但是,您需要用 javascript 编写 Cloud Core 代码。如果您有兴趣,我可以向您发送一些我为计时器准备的云代码的要点。 @LaMiy。 @rinyfo4 这太好了。谢谢! 【参考方案1】:正如我自己和其他人所提到的,我不建议在应用程序中进行此操作。相反,您应该使用 Parse.com Cloud Code 来管理和设置推送通知: https://parse.com/apps/quickstart#cloud_code/window
此链接显示如何使用您的终端设置 Cloud Code。您也可以使用 Parse 自动化推送通知。 Parse 有相对较好的文档,可以帮助您入门。
这是 Parse 上的推送通知主页:https://parse.com/products/push
这里是推送通知的解析文档,它将引导您为推送通知注册您的应用程序:https://parse.com/docs/ios/guide#push-notifications 转到文档中的“发送推送”。这就是 Parse 将帮助您在 Parse 上使用 Cloud Code 设置推送通知的地方。
设置完成后,转到您的项目,然后“核心”并单击工作,您将看到此屏幕(注意,这是我的项目,我正在删除帖子。您可以随意命名):
将此链接用于您的推送通知 javascript 代码作为教程:How to send Push Notifications with Parse.com Cloudcode 这是一个很好的示例。在 Parse 上,正如我在上面发布的图片所示,您可以具体说明何时希望将推送通知推送给用户。
希望对你有帮助
【讨论】:
谢谢。我需要苹果开发者帐户吗?本地推送在没有开发者帐户的情况下工作,但在没有证书的情况下似乎无法工作。 是的。无论您想采用哪种方式(解析与否),您都需要首先使用 Apple 设置推送通知。在文档中 Parse 解释了如何做到这一点。 (Ps,如果有帮助,你也可以选择接受这个问题:)) 所以不支付苹果开发者会员费就不能发送远程推送? -.- 即使我只想将应用程序放在自己的设备上? 很遗憾没有...这是因为 Apple 要求在您提交 App Store 以供审核之前,使用您的 Apple 开发者帐户制作证书/注册应用程序。肯定会建议您注册一个帐户,特别是如果您想通过 crashalytics/TestFlight 等向朋友发送测试。 好的,谢谢。 100 美元的开发者许可对于一个只玩过 iOS 应用程序的学生来说有点太多了。以上是关于应用程序关闭时的Swift2推送的主要内容,如果未能解决你的问题,请参考以下文章