Nefarious Pomegranate Magnate

    @freedom_sky/cordova-plugin-aliyunpush

    1.1.1 • Public • Published

    cordova-plugin-aliyunpush

    Install

    • 通过 Cordova Plugins 安装,要求 Cordova CLI 5.0+:

    cordova plugin add @freedom_sky/cordova-plugin-aliyunpush

    
    ## 注意事项
    * 安卓默认通道名“-1”,安卓8以上推送时需要指定通道才能收到
    * ios阿里云插件版本1.9.9
    * 目前只集成了华为、小米通道
    * 安卓9以上需要动态获取READ_PHONE_STATE权限
    
    ### Android Preferences
    
    ```xml
    <edit-config file="app/src/main/AndroidManifest.xml" mode="merge" target="/manifest/application" xmlns:android="http://schemas.android.com/apk/res/android">
              <application android:name="com.alipush.PushApplication" />
    </edit-config>
    <config-file parent="/manifest/application" target="app/src/main/AndroidManifest.xml" xmlns:android="http://schemas.android.com/apk/res/android">
              <meta-data android:name="AliyunAppKey" android:value="value=XXXXXX" />
              <meta-data android:name="AliyunAppSecret" android:value="value=XXXXXX" />
              <meta-data android:name="XiaoMiAppId" android:value="value=XXXX" />
              <meta-data android:name="XiaoMiAppKey" android:value="value=XXXX" />
              <meta-data  android:name="com.huawei.hms.client.appid" android:value="appid=XXXXX" />
              <activity android:name="com.alipush.PopupPushActivity" android:exported="true" android:theme="@android:style/Theme.Translucent.NoTitleBar" />
              <receiver android:name="com.alipush.PushMessageReceiver" android:exported="false">
                  <intent-filter>
                      <action android:name="com.alibaba.push2.action.NOTIFICATION_OPENED" />
                  </intent-filter>
                  <intent-filter>
                      <action android:name="com.alibaba.push2.action.NOTIFICATION_REMOVED" />
                  </intent-filter>
                  <intent-filter>
                      <action android:name="com.alibaba.sdk.android.push.RECEIVE" />
                  </intent-filter>
              </receiver>
    </config-file>
    

    IOS Preferences

    <!-- 需要先将阿里云下载得到的AliyunEmasServices-Info.plist文件放置在resources/ios/plist/目录下 -->
    <resource-file src="resources/ios/plist/AliyunEmasServices-Info.plist" />

    Usage

    API

        /**
         * 获取设备唯一标识deviceId,deviceId为阿里云移动推送过程中对设备的唯一标识(并不是设备UUID/UDID)
         * @param  {Function} successCallback 成功回调
         * @param  {Function} errorCallback   失败回调
         * @return {void}  
         */
        getRegisterId: function(successCallback, errorCallback)
    
        /**
         * 阿里云推送绑定账号名
         * @param  {string} account         账号
         * @param  {Function} successCallback 成功回调
         * @param  {Function} errorCallback   失败回调
         * @return {void} 
         */
        bindAccount: function(account, successCallback, errorCallback)
    
        /**
         * 阿里云推送解除账号名,退出或切换账号时调用
         * @param  {Function} successCallback 成功回调
         * @param  {Function} errorCallback   失败回调
         * @return {void} 
         */
        unbindAccount: function(successCallback, errorCallback)
    
        /**
         * 阿里云推送绑定标签
         * @param  {string[]} tags            标签列表
         * @param  {Function} successCallback 成功回调
         * @param  {Function} errorCallback   失败回调
         * @return {void}  
         */
        bindTags: function(tags, successCallback, errorCallback) 
    
        /**
         * 阿里云推送解除绑定标签
         * @param  {string[]} tags            标签列表
         * @param  {Function} successCallback 成功回调
         * @param  {Function} errorCallback   失败回调
         * @return {void}               
         */
        unbindTags: function(tags, successCallback, errorCallback)
    
        /**
         * 阿里云推送解除绑定标签
         * @param  {Function} successCallback 成功回调
         * @param  {Function} errorCallback   失败回调
         * @return {void}           
         */
        listTags: function(successCallback, errorCallback) 
    
        /**
          * 没有权限时,请求开通通知权限,其他路过
          * @param  string msg  请求权限的描述信息
          * @param {} successCallback 
          * @param {*} errorCallback 
          */
        requireNotifyPermission:function(msg,successCallback, errorCallback)
        
        /**
        * 阿里云推送消息透传回调
        * @param  {Function} successCallback 成功回调
        */
        onMessage:function(sucessCallback) ;
    
        # sucessCallback:调用成功回调方法,注意没有失败的回调,返回值结构如下:
        #json: {
          type:string 消息类型,
          title:string '阿里云推送',
          content:string '推送的内容',
          extra:string | Object<k,v> 外健,
          url:路由(后台发送推送时,在ExtParameters参数里写入url如{url:'demoapp://...'})
        }
    
        #消息类型
        {
          message:透传消息,
          notification:通知接收,
          notificationOpened:通知点击,
          notificationReceived:通知到达,
          notificationRemoved:通知移除,
          notificationClickedWithNoAction:通知到达,
          notificationReceivedInApp:通知到达打开 app
        }
    
    

    Keywords

    none

    Install

    npm i @freedom_sky/cordova-plugin-aliyunpush

    DownloadsWeekly Downloads

    5

    Version

    1.1.1

    License

    ISC

    Unpacked Size

    46.1 MB

    Total Files

    72

    Last publish

    Collaborators

    • freedom_sky