iOS
Send Push Notifications
在iOS客户端中使用Objective-C发送推送通知
10 分
在objective c中从客户端发送推送通知 介绍 本节解释了如何通过您的ios客户端使用back4app发送推送通知。 这就是它的样子 随时,您都可以访问我们这个教程构建的完整项目,链接在我们的 https //github com/templates back4app/ios install sdk 先决条件 要完成此快速入门,您需要: https //developer apple com/xcode/ 在 back4app 创建的应用程序。 请遵循 https //www back4app com/docs/get started/new parse app 以了解如何在 back4app 上创建 parse 应用程序。 一个连接到 back4app 的 ios 应用程序。 注意: 请遵循 https //www back4app com/docs/ios/parse swift sdk 以创建一个连接到 back4app 的 xcode 项目。 一个通过 https //www back4app com/docs/ios/push notifications/best ios push notification service 设置的 ios 应用程序。 一台运行 ios 10 或更高版本的 ios 设备,iphone 或 ipad。 一个付费的 apple 开发者账户。 接下来,我们将假设您已完成所有步骤的 https //www back4app com/docs/ios/push notifications/best ios push notification service , 即使您使用的是我们在 https //github com/mpc20001/ios objc push cloud code 中提供的此教程构建的 ios 项目。 1 启用客户端推送 访问 https //www back4app com/ 登录,找到你的应用并点击服务器设置。 找到“核心设置”块并点击 设置 设置 。 “核心设置”块看起来是这样的 3\ 向下滚动到页面底部并点击 编辑详细信息 编辑详细信息 按钮,如下所示 4\ 您将看到一个名为 允许客户端推送通知 允许客户端推送通知 的复选框,在编辑页面的末尾,勾选该框并点击 保存 保存 按钮,如下所示: 2 订阅您的设备到新闻频道 假设您已经完成了 https //www back4app com/docs/ios/push notifications/best ios push notification service , 您将想要修改该教程中完成的项目或从我们的 https //github com/back4app/ios objc push 首先,您将向您的安装对象添加一个频道。您将通过更改 createinstallationonparse createinstallationonparse 方法来做到这一点,在您的 appdelegate 文件中。打开您项目的 appdelegate m appdelegate m 文件并添加以下代码行 ‘ \[currentinstallation setobject @\[@”news1”] forkey @”channels”]; ’ 这将设置安装对象的频道数组以包含一个名为 新闻 新闻 的频道。 https //github com/mpc20001/ios objc push client/blob/master/addingparsesdkobjc/appdelegate m#l52 l63 \ (void)application (uiapplication )application didregisterforremotenotificationswithdevicetoken (nsdata )devicetoken { // 将 devicetoken 存储在当前安装中并保存到 parse pfinstallation currentinstallation = \[pfinstallation currentinstallation]; \[currentinstallation setdevicetokenfromdata\ devicetoken]; \[currentinstallation setobject @\[@"news"] forkey @"channels"]; \[currentinstallation saveinbackgroundwithblock ^(bool succeeded, nserror error) { if (!error) { nslog(@"安装已保存!!!"); }else{ nslog(@"安装保存失败 %@",error debugdescription); } }]; } 这将允许您通过云代码向所有订阅名为 news news 的频道发送消息 确保您的版本 didregisterforremotenotificationswithdevicetoken didregisterforremotenotificationswithdevicetoken 与下面的代码相同。 2\ 接下来,我们将向您的应用程序代理添加一个方法,以便在每次应用程序启动时向 news news 频道发送推送。打开您项目的 appdelegate m appdelegate m 文件和下面的方法,并确保每次应用程序启动时都调用此方法,方法是从 didfinishlaunchingwithoptions didfinishlaunchingwithoptions 调用它。 appdelegate swif \ (bool)application (uiapplication )application didfinishlaunchingwithoptions (nsdictionary )launchoptions { // 应用启动后的自定义点。 \[parse initializewithconfiguration \[parseclientconfiguration configurationwithblock ^(id\<parsemutableclientconfiguration> configuration) { configuration applicationid = @"7ez7z1dfvgffaxfi8pjhybottgqeu89escclbbvn"; configuration clientkey = @"fyso7depic39lmwjlvuglmtkdlwslvomsszgksqq"; configuration server = @"https //parseapi back4app com/"; }]]; \[self registerforremotenotifications]; \[self sendpushonlaunch]; return yes; } \ (void)sendpushonlaunch { pfpush push = \[\[pfpush alloc] init]; \[push setchannel @"news"]; \[push setmessage @"来自设备的推送"]; \[push sendpushinbackground]; } 3 测试您是否可以通过客户端向自己发送定向推送通知 在模拟器中打开您的应用程序,同时保持您的物理设备关闭并锁定屏幕。 当应用在模拟器上打开时,您应该能在设备的锁屏上看到推送通知。 最后的想法 您应该对如何从客户端发送推送有一个清晰的理解。 您可以将其与pfquery结合,以根据某种属性(如年龄、位置或对象id)来定位用户。 请记住,如果启用了客户端推送,它 可能会被利用 并且 无法关闭而不限制所有客户端推送 。建议您勾选来自云代码的推送, 但知道这一点仍然是好的。 完成了! 在这个阶段,您可以通过back4app使用客户端推送发送推送通知!