更新记录

1.0.9(2022-09-23)

更新文档功能描述


平台兼容性

Android Android CPU类型 iOS
适用版本区间:6.0 - 12.0 armeabi-v7a:未测试,arm64-v8a:未测试,x86:未测试 适用版本区间:9 - 15

原生插件通用使用流程:

  1. 购买插件,选择该插件绑定的项目。
  2. 在HBuilderX里找到项目,在manifest的app原生插件配置中勾选模块,如需要填写参数则参考插件作者的文档添加。
  3. 根据插件作者的提供的文档开发代码,在代码中引用插件,调用插件功能。
  4. 打包自定义基座,选择插件,得到自定义基座,然后运行时选择自定义基座,进行log输出测试。
  5. 开发完毕后正式云打包

付费原生插件目前不支持离线打包。
Android 离线打包原生插件另见文档 https://nativesupport.dcloud.net.cn/NativePlugin/offline_package/android
iOS 离线打包原生插件另见文档 https://nativesupport.dcloud.net.cn/NativePlugin/offline_package/ios

注意事项:使用HBuilderX2.7.14以下版本,如果同一插件且同一appid下购买并绑定了多个包名,提交云打包界面提示包名绑定不一致时,需要在HBuilderX项目中manifest.json->“App原生插件配置”->”云端插件“列表中删除该插件重新选择


luanqing-jgpush 极光推送SDK 官方推荐

简介:

本插件集成了极光推送,提供了一些主要的方法来方便操控,简化集成难度已经uniapp端的支持性

API 方法简述 (简单开发者仅调用registerJPush方法即可,如欲深层开发,请查阅附录内容,我们有更多功能,但是您可以不用)

友情提示:下列方法的参数可参考示例代码

名称 说明 默认值 是否必须 平台
registerJPush 注册并初始化 Android/IOS
setMobile 设置手机号 Android/IOS
setAlias 设置别名 Android/IOS
setTags 设置标签 Android/IOS
queryTags 查询标签 Android/IOS
queryAlias 查询别名 Android/IOS
stopPush 停止推送 Android独有
resumePush 恢复推送 Android独有
setPushTime 设置允许推送的时间 Android独有
setSilenceTime 设置静默时间(无震动、声音) Android独有
unregisterJPush 反注册 Android独有

极简模式

App.vue页面(其他页面同理,只需两行代码轻松集成极光推送)
<script>
    const JPush = uni.requireNativePlugin("luanqing-jgpush");

    export default {
        onShow: function() {
            if(JPush){
                JPush.registerJPush((res=>{

                }))
            }
        },
    }
</script>

完整示例代码

<template>
    <view>
        <view class="button" @click="doRegisterJPush">注册极光</view>
        <view class="button" @click="doUnRegisterJPush">反注册极光</view>

        <view class="button" @click="doSetAlias">设置别名</view>
        <view class="button" @click="doQueryAlias">查询别名</view>
        <view class="button" @click="doSetTags">设置标签</view>
        <view class="button" @click="doQueryTags">查询标签</view>

        <view class="button" @click="stopPush">停止推送服务</view>
        <view class="button" @click="resumePush">恢复推送服务</view>

        <view class="button" @click="setPushTime">设置推送时间</view>
        <view class="button" @click="setSilenceTime">设置静默时间</view>

        <view class="button" @click="setMobile">设置手机号</view>

    </view>
</template>

<script>
    const JPush = uni.requireNativePlugin("luanqing-jgpush");

    export default {
        data() {
            return {

            }
        },
        methods: {
            // 注册推送服务(如有业务需求可以设置一个storage值来控制是否执行,如应用场景是关闭推送后,需要用户去手动开启时,直接调用registerJPush会激活之前反注册掉的推送服务
            // 如果无此要求,可以在onReady或App.vue的onShow中调用本方法注册)
            // 本方法是必须调用的,即使不需要监听数据
            doRegisterJPush(){
                // Android + IOS
                // 在此传入回调,用于接收消息
                JPush.registerJPush((res=>{
                    let mesType = res.type;
                    if(mesType === 'log'){
                        console.log("栾青网络科技-极光推送插件:",res.data??{}.info);
                    }else{
                        let data = res.data;
                        if(mesType === 'notice'){
                            console.error("收到通知:",data);
                        }else if(mesType === 'custom'){
                            console.error("收到自定义消息:",data);
                        }else if(mesType === 'notice-open'){
                            console.error("点击了通知:",data);
                        }else if(mesType === 'notice-button-open'){
                            console.error("点击了通知上的按钮:",data);
                        }else if(mesType === 'tags'){
                            console.error("查询标签:",data);
                        }else if(mesType === 'alias'){
                            console.error("查询别名:",data);
                        }
                    }
                }));
            },
            // 解除注册,无法再收到消息除非重新registerJPush或重新安装app
            doUnRegisterJPush(){
                JPush.unregisterJPush();
            },
            // 查询别名(数据在registerJPush的回调函数中返回)
            doQueryAlias(){
                // Android + IOS
                JPush.queryAlias();
            },
            // 查询本机的所有标签(数据在registerJPush的回调函数中返回)
            doQueryTags(){
                // Android + IOS
                JPush.queryTags();
            },
            // 设置别名: 传入alias,后台可根据此别名来指定发送消息(注:此为覆盖模式,非追加)
            doSetAlias(){
                // Android + IOS
                JPush.setAlias({alias:"xushiyong5"});
            },
            // 设置标签: 传入tags,可传多个,后台可根据此别名来指定发送消息(注:此为覆盖模式,非追加)
            doSetTags(){
                // Android + IOS
                JPush.setTags({tags:["xushiyong1","xushiyong2"]});
            },
            // 停止推送 推送服务完全被停止
            stopPush(){
                JPush.stopPush();
            },
            // 恢复推送 
            resumePush(){
                JPush.resumePush();
            },
            // 设置允许推送时间 (二十四小时制)
            setPushTime(){
                // 设置可推送时间为: 周一 ~ 周五  08 - 20 
                JPush.setPushTime({days: [1,2,3,4,5], startHour:8, endHour:20});
            },
            // 设置静默时间 (二十四小时制)
            setSilenceTime(){
                // 00:30  ~  06:30 之间为静默时间,此时间段内收到消息不震动不发声 免打扰
                JPush.setSilenceTime({startHour:0,endHour:6,startMinute:30,endMinute:30});
            },
            // 设置手机号
            setMobile(){
                // Android + IOS
                JPush.setMobile({mobile:'15921627041'});
            }
        }
    }
</script>

<style>
    .button{
        width: calc(100vw);padding-top: 20rpx;padding-bottom: 20rpx;margin-top: 50rpx;text-align: center;
    }
    .button:active{
        background-color: aquamarine;
        color: #E00300;
    }
</style>

上海栾青网络科技有限公司

技术客服 & 定制开发合作

15921627041 (同微信)

1660584265 (QQ)

附录内容 扩展方法说明

友情提示:下列方法的参数可参考示例代码

方法名称 方法说明
registerJPush 注册并初始化 必须调用才能生效推送服务. 可传入callback,用于接收log输出和通知、消息、打开、别名、标签等事件和数据的接收。
unregisterJPush 反注册 调用此接口后,会停用所有 Push SDK 提供的功能。需通过 registerJPush 接口或者重新安装应用才可恢复。
setAlias 设置别名 标签别名类似都是一种通过设置唯一标识,让后台可以通过该标签别名推送消息(达到可以指定群体或个体推送)
setTag 设置标签 标签别名类似都是一种通过设置唯一标识,让后台可以通过该标签别名推送消息(达到可以指定群体或个体推送)
queryTags 查询标签
queryAlias 查询别名
stopPush 停止推送,推送服务完全被停止,1、收不到推送消息 2、极光推送所有的其他 API 调用都无效,需要调用resumePush恢复。
resumePush 恢复推送,恢复推送服务,一切正常。
setPushTime 设置允许推送的时间,默认任何时刻都运行推送,可通过此方法设置允许推送的时间,不在该时间段内收到消息,SDK 的处理是:推送到的通知会被扔掉
setSilenceTime 设置静默时间,用户在收到推送通知时,客户端可能会有震动,响铃等提示,该接口可以设置规避的时段
setMobile 设置手机号:如果App一段时间内无法收到推送的消息(可能断网、禁运、消息延迟等)的用户进行短信通道信息补充,优先极光通道,号码格式为 11 位数字,有无 +86 前缀皆可,频率为 10s 之内最多 3 次。

######## apk和ipa 下载 apk下载 ipa下载

隐私、权限声明

1. 本插件需要申请的系统权限列表:

IOS: 推送通知权限、后台运行 Android: android.permission.ACCESS_NETWORK_STATE、android.permission.INTERNET

2. 本插件采集的数据、发送的服务器地址、以及数据用途说明:

插件使用的 JPush SDK会采集数据,详情可参考https://www.jiguang.cn

3. 本插件是否包含广告,如包含需详细说明广告表达方式、展示频率:

使用中有什么不明白的地方,就向插件作者提问吧~ 我要提问