适用于iOS的离子推送通知

时间:2016-09-27 14:14:17

标签: android ios ionic-framework push-notification

我正在使用Notifications功能进行Ionic项目,它适用于Android,但对于iOS,我遇到了很多问题。我阅读并完成了Ionic指南中实施推送通知的所有步骤:https://docs.ionic.io/services/push/

总结: 我为我的应用创建了云通知客户端,我添加了像这样的离子云:

npm install@ionic/cloud --save

并将文件添加到我的index.html 我定义了Promise安装:

npm install bluebird --save

我配置了我的应用程序:

angular.module('starter', ['ionic', 'ionic.cloud', 'starter.controllers', 'starter.services'])

.config(function($ionicCloudProvider) {
  $ionicCloudProvider.init({
    "core": {
      "app_id": "APP_ID"
    }
  });
}) 

然后要将通知配置到iOS,我执行了与本指南相同的操作:https://docs.ionic.io/services/profiles/#android-gcm-project--api-key

  1. 注册应用ID
  2. 设备注册
  3. 使用钥匙串创建登录请求。
  4. 我创建了iOS App Certificate&供应资料
  5. 转换.cer中的.cer
  6. 我完成了应用的配置文件
  7. 我去了Ionic Cloud Dashboard并将.p12和.mobileprovision上传到我的个人资料
  8. 创建我的应用的iOS推送证书
  9. 然后我将此证书上传到Ionic Cloud Dashboard。
  10. 最后,我在我的应用程序中进行了设置,并在真实设备,Android和iOS中构建和运行。问题是在Android中它可以很好地工作,但在iOS中我完全保存了令牌,但是当我从Ionic Cloud Dashboard发送通知时没有任何内容。

    任何帮助?

    万分感谢!

2 个答案:

答案 0 :(得分:0)

我可能很晚才回答你的问题。答案如下......

  1. 将您的离子更新为版本v2及更高版本,使用命令" $ npm install ionic cordova"为此。
  2. 然后仔细关注此http://nishanthkabra.com/ionic2push.html 你可以很容易地实现它。
  3. 我还建议使用离子.io使用java或php代码发送推送通知,因为它们非常容易定制。

答案 1 :(得分:0)

首先在项目下安装以下插件

cordova插件添加https://github.com/phonegap/phonegap-plugin-push

您还需要一个.pem文件和密码,您可以点按此链接进行生成:Generate .pem file Used to setup Apple PUSH Notification

从此处下载以下代码:https://drive.google.com/open?id=0B_-b-DfCLwKdREkwZFdYVEhYWXM

然后在你的app.js中合并代码,然后在iphone中运行你的应用程序并检查控制台设备是否有令牌,如果显示设备令牌,则转到下一步。

然后,您可以在用户登录或注册时将设备令牌存储在数据库中。

然后输入[.pem]文件位置并在[db.class.php]

中传递短语

然后在[sendIphonenotification.php]文件中输入设备令牌

然后执行[sendIphonenotification.php]文件并检查你的iPhone,你会收到通知。