使用 Ionic (1.3) 推送通知?

Posted

技术标签:

【中文标题】使用 Ionic (1.3) 推送通知?【英文标题】:Push notifications with Ionic (1.3)? 【发布时间】:2016-09-15 04:00:42 【问题描述】:

我正在尝试使用 Ionic 设置推送通知,主要遵循官方文档:https://docs.ionic.io/services/push/。

但是我不确定在哪里调用某些代码,例如$ionicPush.register()。有没有人遇到过对此有帮助的最新/最新教程?我遇到的教程使用了不推荐使用的代码,例如离子添加。

【问题讨论】:

你在使用离子用户吗? 【参考方案1】:

如果您也使用 Ionic User,这里是我使用的流程。这些是各种功能

    $scope.signupForm=;//user object
    $scope.beginSignUp=function()
     //sign up 

      var details = 
        'email': $scope.signupForm.email,
        'password': $scope.signupForm.pass,
        'details':
          'name':$scope.signupForm.dn,
          'image':$scope.signupForm.dp
        
       

      Ionic.Auth.signup(details).then(signupSuccess, function(err)

      );
    

    $scope.signupSuccess=function()

        console.log("ionic sign up sucess, now login the user");
        var authProvider = 'basic';
        var authSettings =  'remember': true ;
        var loginDetails = 
          'email': $scope.signupForm.email,
          'password': $scope.signupForm.pass
        ;

        Ionic.Auth.login(authProvider, authSettings, loginDetails)
        .then(authSuccess, function(err)


        );
    

    function authSuccess()

        console.log("Ionic Login Success ");
        var ionic_user = Ionic.User.current();
        ionic_user.details.name =$scope.signupForm.dn;
        ionic_user.details.image = $scope.signupForm.dp;
        ionic_user.save();


        registerPush();


        $ionicHistory.nextViewOptions(
              disableBack: true
        );

        $state.go('home', , reload: true);
    

function registerPush()
   console.log("Calling Register Push");
   $ionicPush.init(
    "debug": true,
    "onNotification": function(notification) 
      var payload = notification.payload;
      console.log(notification, payload);
    ,
    "onRegister": function(data) 
      console.log(data.token);
      Ionic.User.current();
      $ionicPush.saveToken(data.token);
      //unregister after checking

    ,
    "pluginConfig": 
      "ios": 
        "badge": true,
        "sound": true
      ,
      "android": 
         "iconColor": "#FA2B2E",
         "senderID": "GCM Project No.",
         "icon":"notification"
        
     
  );
  $ionicPush.register();

使用模型 signupForm 来存储用户的电子邮件、密码等,并在单击按钮时调用 beginSignUp()。或者如果是登录调用signupSuccess()

【讨论】:

谢谢!我会试一试。您使用的是哪个版本的 Ionic? Cordova CLI:6.2.0 Ionic Framework 版本:1.3.0 Ionic CLI 版本:1.7.16 Ionic App Lib 版本:0.7.3 操作系统:节点版本:v5.9.1

以上是关于使用 Ionic (1.3) 推送通知?的主要内容,如果未能解决你的问题,请参考以下文章

Ionic 2 推送通知操作按钮点击回调使用打字稿

在接收推送通知时获取数据 - ionic3

使用 Ionic 3 和 Amazon Pinpoint 推送通知

Ionic 2:点击推送通知

在 Ionic 中发送推送通知

Ionic 2:处理点击推送通知