使用Urban Airship的iOS推送通知设置

推送通知允许将对客户有用的信息从服务器传送到用户的屏幕,无论该屏幕是在智能手机,平板电脑,计算机还是可穿戴设备上。 在与客户互动方面,使用推送通知有很多好处。 但是,有必要以使客户保持联系而不是烦恼的方式使用推送通知。 在跟踪用户,构建地理围栏等方面,构建我们自己的推送通知服务非常复杂,并且还需要大量时间和精力。 特别是当我们没有对推送通知的后端支持时,我们需要研究市场上已经可用的推送通知服务。 Urban Airship是顶级推送通知服务提供商之一。 它提供了很多选项,包括推送通知,应用程序消息传递,消息中心等。

好吧,让我们看看如何使用Urban Airship将推送通知发送到我们的应用程序。

如何在仪表板中创建城市飞艇项目

步骤1:注册/登录

根据您的要求选择一个计划,并注册Urban Airship帐户。 如果满足您的要求,您也可以从免费的入门计划开始。 如果您已经注册了该帐户,请登录该帐户。

步骤2:新专案

单击新建项目按钮 在右上角。

输入项目名称,图标(可选),类型(实时/测试)和行业类型。

单击创建项目。

步骤3:为您的应用程序设置推送服务

我们需要为我们的应用程序进行APNS设置。 这意味着我们必须获取启用了推送通知服务的证书。

步骤4:专案设定

  • 在仪表板中单击您的项目
  • 单击频道指南,然后选择要从该项目向其发送推送通知的平台以及所有平台。
  • 单击选择文件,然后选择在步骤3中生成的证书请注意,对于开发项目,我们应该上载开发证书,对于生产项目,我们应该上载生产证书。
  • 单击保存证书。

步骤1:安装Urbal飞艇SDK

我们可以使用CocoaPods,Carthage或手动安装Urban Airship SDK。

使用 CocoaPods

确定已安装可可豆荚后,将“ UrbanAirship-iOS-SDK”添加到豆荚文件中,然后运行“ pod install”命令。

  use_frameworks! 
目标“您的应用名称”
pod'UrbanAirship-iOS-SDK'
结束

使用 迦太基

安装迦太基。 在包含.xcodeproj.xcworkspace目录中创建一个.xcworkspace

  github“ urbanairship / ios-library” 

手动安装市区飞艇框架

  • 下载最新版本的Urban Airship iOS SDK。
  • AirshipKit.xcodeproj拖放到Xcode中项目结构的最下面
  • AirshipKit.framework文件添加到应用程序目标的“ 常规”选项卡中的“ 嵌入式二进制文件”部分。

步骤2:在Xcode中启用推送通知功能

  • 在项目->功能中启用推送通知
  • 要在应用程序处于后台时接收通知,请在“ 功能”选项卡中启用“ 后台”模式 ,然后在“ 后台”模式下选中“ 远程通知

步骤3:城市飞艇配置

  • 在您的项目下,创建一个名为AirshipConfig的plist文件
  • plist应包含下图所示的键。
  • 要获取应用密钥和应用秘密,请访问Urban Airship仪表板,您需要选择项目 -> 设置标签 -> API和集成 。 但是在Urban Airship仪表板中创建项目后,您将看不到“ 设置”选项卡。 为了获得“设置”选项卡,您有两个选项,可以单击位于仪表板右侧的“ 跳过快速入门” ,也可以单击“ 发送测试通知”,然后单击“是”复选框,然后单击“概述”按钮。 但是,如果我们遵循后者,则将无法收到消息,因为我们尚未在plist中添加应用程序密钥和应用程序密钥。 因此,我们可以选择第一种避免混淆的方法。
  • 步骤4:设置代码以接收推送通知。

导航到AppDelegate文件。 将以下提到的方法添加到didFinishLaunchingWithOptions方法中。

  func application(_ application:UIApplication,didFinishLaunchingWithOptions launchOptions:[UIApplication.LaunchOptionsKey:Any]?)->布尔{ 
  //应用程序启动后进行自定义的替代点。 
  UAirship.takeOff() 
  UAirship.push()?. userPushNotificationsEnabled = true 
  UAirship.push()?. defaultPresentationOptions = [.alert,.badge,.sound] 
 返回真 
  } 
  • 调用Urban Airship的takeOff方法来初始化Urban Airship的共享实例。 此方法将使用AirshipConfig plist中的值。 确保在 线程中调用此方法。 如果此方法在后台线程中运行,则将抛出UAirshipTakeOffMainThreadException
  • 通过将值userPushNotificationsEnabled设置为true来启用用户推送通知
  • 配置defaultPresentationOptions属性,以在应用程序的前台状态中收到推送通知时添加警报声音和标志。
  • 请注意,默认情况下,推送通知是静默的。 这意味着只会显示警报,而不会显示声音。 要将声音添加到推送通知中,请在发送推送通知时在Urban Airship仪表板中启用声音选项,如果要通过API发送推送通知,请在推送通知有效负载中添加声音键。

通过上述代码设置,用户只能在推送通知中看到文本内容。 但是,如果他/她可以看到与内容相关的图像或gif,那将是多么酷。 让我们利用iOS 10通知附件的优势将一些媒体附加到推送通知中。

如何将图像,GIF和Vedios添加到推送通知中

步骤1:安装AirshipAppExtensions

使用CocoaPods

 目标“您的扩展名” 
pod'UrbanAirship-iOS-AppExtensions'
结束

使用迦太基

  github“ urbanairship / ios-library” 

手动安装

  • 下载最新版本的Urban Airship iOS SDK。
  • 在项目的构建阶段中,将AirshipAppExtensions添加到“目标依赖项”。
  • 将AirshipAppExtensions.framework添加到项目的“构建阶段”中的“复制文件”阶段。
  • 在扩展程序的构建阶段中与AirshipAppExtensions.framework链接

步骤2:创建“ Notification Service Extension”模板。

  • 在Xcode中,单击文件->目标-> Notification Service Extension->下一步。
  • 添加“产品名称”。 单击完成。
  • 单击新创建的目标文件夹。 在“常规”标签中添加捆绑包标识符和配置文件。 请注意,您不能选择与为主应用程序选择的相同的配置文件,并且此配置文件的捆绑包标识符应以父应用程序的捆绑包标识符为前缀。
  • 打开“ NotificationService”快速类,该类在创建“ Notification Service Extension”时默认创建。 删除所有源代码,并从NotificationService中的UAMediaAttachmentExtension继承此类,然后

如何发送推送通知?

单击右上角的“ 创建”按钮,然后单击“消息”。

步骤1:选择目标对象

点击受众群体标签。 启用要为其发送推送通知的平台。

如果要发送所有用户的推送通知,请选择“ 所有用户”。 如果要向特定用户发送推送通知,请选择“目标特定用户”

步骤2:推送通知内容。

单击内容选项卡。 选择“推送通知”。 您还可以根据需要将推送通知与其他类型的消息结合在一起。

单击继续。

添加要发送给用户的推送通知内容。

如果需要,请启用诸如标题,按钮,摘要,声音等选项。

要添加图像,动画gif,音频或视频,请启用“媒体”选项,并添加要附加在推送通知中的媒体的url(必须为https链接)。

步骤3:设置发送时间以发送推送通知。

根据您要发送推送通知的时间,可以安排时间,或者如果要立即发送推送通知,则可以选择“ 立即发送”按钮。

步骤4:发送消息。

单击查看选项卡。 查看受众,内容,操作和交付时间。 如果一切正常,请继续并单击“ 发送消息”以将推送通知发送给用户。