开发准备

注册成为开发者

在开发应用前需要在华为开发者联盟网站上注册成为开发者并完成实名认证,具体方法请参见帐号注册认证

创建应用

  1. 登录AppGallery Connect网站,完成创建项目操作。点击“我的项目”,在项目列表中找到您的项目,顶部导航栏选择应用处,点击“添加应用”。

  2. 填写iOS应用的相关信息。

    • 选择平台:选择“iOS”。
    • 软件包ID:您iOS应用的Bundle ID。
    • 应用名称:iOS应用在AppGallery Connect显示的名称,最大64个字符。
    • App Store ID:您App Store Connect中的Apple ID。

设置数据处理位置

您使用推送服务前需要设置默认数据处理位置。当前支持选择的区域有中国、德国、俄罗斯和新加坡。如果设置的数据处理位置与您的服务器位置不一致,或者设置的数据处理位置与应用所服务的用户所在地不一致,都会导致推送消息下发时延增加。

推送服务将在您设置的默认数据处理位置存放和处理数据。“默认数据处理位置”适用于项目下所有的应用,若您需要修改默认数据处理位置,请先关闭推送服务后再修改默认数据处理位置,并且原默认数据处理位置下您的数据将在6个月后自动清除且无法恢复,请谨慎修改“默认数据处理位置”

说明

为了减少下发消息在全球各大区之间跳转导致的时延,建议按照您的应用所服务的用户所在地来设置对应的数据处理位置。例如:如果您是拉美的开发者,您所服务的用户大部分在拉美,建议将您的数据处理位置设置在新加坡;如果您是中国的开发者,但是您所服务的用户大部分在欧洲,建议将您的数据处理位置设置在德国。详情请参见如何选择数据处理位置

准备iOS推送消息凭证

生成APNs身份验证密钥

如果您有现成的密钥,可以直接使用该密钥,不必生成新的密钥。

创建身份验证密钥过程如下:

  1. 打开Apple会员中心,登录您的开发者帐号,进入“Certificates, Identifierss & Profiles”页面。

  2. 在侧边栏打开“Keys”,点击按钮“(+)”进行添加。

  3. 创建密钥,输入“Key Name”并且勾选APNs选项,点击“Continue”,再点击“Register”

  4. 保存密钥ID“Key ID”,并且点击“Download”下载密钥。

  5. 回到开发者首页,点击会员资格详细信息,记录下您的团队ID。密钥ID、密钥和团队ID在iOS应用推送配置时需要使用。

生成APNs证书

  1. 打开Apple会员中心,登录您的开发者帐号,进入“Certificates, Identifierss & Profiles”页面。

  2. 在侧边栏选择“Certificates”,点击按钮“(+)”进行添加。

  3. 勾选“Services”下面的选项“Apple Push Notification service SSL (Sandbox & Production)”,点击右上角的“Continue”

  4. 选择推送消息的“App ID”,点击“Continue”,再点击“Download”完成证书的下载。

  5. 请参见Apple生成证书指导生成证书请求文件并保存在您自己的存储位置。在浏览器点击“Choose File”选择刚才生成的证书请求文件(拓展名为.certSigningRequest)生成APNs证书。
  6. 点击“Download”下载证书,证书文件的扩展名为.cer。在钥匙串中安装这个证书。
  7. 这个证书会出现在“钥匙串访问”中的“我的证书”类别中,导出p12文件。

配置iOS推送代理权益

  1. 登录AppGallery Connect网站,点击“我的项目”,在项目列表中找到您的项目,通过增长 > 推送服务 > 配置导航到“配置”页签,选择您的iOS应用。点击“开通”

    说明

    该页面可以获取您的iOS应用Client ID。

  2. 上传“APNs身份验证密钥”、密钥ID和团队ID。APNs身份验证密钥生成操作详情请参见生成APNs身份验证密钥

  3. 上传“APNs证书”,可以上传多个证书。证书生成操作详情请参见生成APNs证书
    说明

    如果您生成的证书为“Sandbox & Production”,建议您将其同时上传至开发版和正式版证书。

集成HMS Core SDK

在Xcode开发环境中添加配置文件

  1. 登录AppGallery Connect网站,点击“我的项目”,在项目列表中找到您的项目,顶部栏选择您的iOS应用,左侧导航栏选择“项目设置 > 常规”,下载“agconnect-services.plist”文件。

    说明

    在下载“agconnect-services.plist”文件前,请确保已经推送服务的开通,详情请参见开通服务

  2. 将下载好的“agconnect-services.plist”文件拷贝到您Xcode项目的应用级根目录下。

Cocoapods方式集成SDK(推荐使用)

  1. 打开命令行窗口,导航至Xcode项目路径。创建Podfile文件,如果已经存在,可跳过本步骤。
    cd project-directory
    pod init
  2. 编辑Podfile文件,将推送服务SDK添加到PodPodfile文件中。
    pod 'HmsPushSDK'

    添加完毕后如下图所示:

  3. 安装pod。
    pod install
  4. 打开您项目根目录下的“.xcworkspace”文件,在“General”页签,点击“+”号添加对framework库的依赖“libc++.tbd”

    说明

    如果上述步骤集成不成功,您还需要添加“libz.tbd”“libapple_nghttp2.tbd”

手动方式集成SDK

  1. 请依次下载下表中的SDK包,下载完成后依次解压缩。
  2. 右键您的工程名,点击“Add Files to ...”,将所有framework库导入到您的工作空间。

    说明

    待导入的framework库必须和工作空间在相同的磁盘空间里,如果不在,您可以勾选“Copy items if needed”和“Create groups”,将待导入的framework库工程文件复制到工作空间。

  3. 在“General”页签,点击“+”号添加对framework库的依赖。

    说明

    SDK提供的framework库是静态库,添加依赖时注意选择“Do not Embed”方式。

  4. 在“Build Phases”页签,点击“+”号将下表资源库添加到“Copy Bundle Resources”中。

    资源文件

    资源文件所在库

    AGCResources.bundle

    HmsPushSdk

    PushGrsSettings.bundle

    HmsPushSdk

  5. 在目标的构建设置中,在“Build Settings”页签,向“Other Linker Flags”中添加“-ObjC”链接器标志。

搜索
请输入您想要搜索的关键词