欢乐狗 发表于 2025-3-8 10:34:51

uniapp开发App,集成极光推送,安卓和IOS,APP上架AppStore、小米、华为、

uniapp开发App,集成极光推送,安卓和IOS,APP上架AppStore、小米、华为、光彩、OPPO、VIVO,而且设置所有厂商离线推送

1、使用Hbuilder-选择vue2-进行App的实际开发(技术选型和开发模板自行选择)
2、app运行方式
(1)Hbuilder内置浏览器运行(Hbuilder自带功能)
(2)Hbuilder谷歌浏览器运行(Hbuilder自带功能)
(3)真机测试,需连接安卓设备或者IOS设备
![在这里插入图片描述](https://i-blog.csdnimg.cn/direct/f8c9b830f0734551b922c8282ef12948.png)
备注:
         (1) 真机测试,真机必须开启开发者模式,以及USB调试,不同品牌设备,打开位置不同,自行设置
         (2) 真机测试一般选择使用标准基座运行,也可以使用自定义基座运行,如果使用自定义基座运行,需要通过发布选择打自定义调试基座,如果是打包功能,不管是自定义基座还是正式打包,安卓需要安卓证书和密钥,IOS也是需要描述证书和P12文件,以及证书密钥,IOS区分测试和正式,这些证书我们后面会详细说明。
      (3)这真机测试必选有可选的设备,方可进行调试,如果没有设备,需要排查设备的调试功能是否打开,排查连接:(https://uniapp.dcloud.net.cn/tutorial/run/run-app-faq.html)![在这里插入图片描述](https://i-blog.csdnimg.cn/direct/7d550890f5b04907884365e91368708e.png)
3、Hbuilder开发App的基本设置
https://i-blog.csdnimg.cn/direct/66713c989816459d805498251e2a508f.png
备注:1、appId,在Hbuilder新建项目时间回自动天生,不要容易修改
2、应用名称:自己的app的名称
3、应用版本号,后面根据这个版本号,举行升级
4、Hbuilder开发App的打包(重点)
(1) 安卓打包设置
上面安卓的包名、别名、安卓证书,密钥密码,都是必要自行申请的
安卓包名天生:https://blog.csdn.net/weixin_48193914/article/details/144281822
这内里包括了搭建jdk情况,一样平常有后端同事的,直接找利用文章中毗连,让后端同事按照你的需求天生安卓包名,别名,密码,证书,固然内里另有一些在各个手机厂商开发者平台,新建应用时间利用的参数。
https://i-blog.csdnimg.cn/direct/8fa6ca539e7348a0abf5472eb01f95d2.png
(2) IOS打包设置
a、打包区分开发和正式
详细资料毗连1:https://ask.dcloud.net.cn/article/152
详细资料毗连2:https://blog.csdn.net/qq_39196447/article/details/136877424
b、推送P12证书天生(推送证书一样平常只做设置利用,后续ios 的app推送必须利用这个证书),也区分开发和正式,但是开发也可以利用正式,所以,一样平常只做一个试用开发和天生的就行了、详细资料毗连2的最后面就有关于推送证书的获取方式,请详细阅读
4、App集成极光推送
(1) 在线设置
uniapp集成极光推送云插件,必要在极光推送网站,注册,集体方案,详见链接
https://blog.csdn.net/2301_78542842/article/details/144729012
此方案实现后,只能实现app在线消息的推送,在线消息的推送,是极光推送的,只有app在打开,而且在利用的时间能够收到消息的推送,如果app,关闭,大概进程杀掉后,就必要利用各个厂商的离线推送通道
(2) 离线推送
a、首先必要去各个厂商通道申请应用,拿到应用的必要信息
https://docs.jiguang.cn/jpush/client/Android/android_3rd_param
文章中涉及了所有厂商的主要参数的获取和账号的注册,终极这些厂商的应用信息,都必要再极光的推送设置中设置
b、各个厂商申请的应用信息,也必要再设置到Hbuilder的原生插件设置中
https://i-blog.csdnimg.cn/direct/5f67540715d349bfbf4bed423c94a568.png
https://i-blog.csdnimg.cn/direct/27596c782e7547e6b33108fa55aeeab7.png
有些参数,是在参数前面加了前缀一定留意,我在做的时间就把前缀疏忽了,导致排查了,好久的问题,
https://i-blog.csdnimg.cn/direct/c319292d69a94b05a85384bc533e988f.png
5、App商家
(1) IOS上架,他着实相对简单,利用Hbilder,打包生产情况的包,然后利用MAC电脑,利用transpoter将ipa文件上传到appStore,然后再app developer开发者,发布,填写,必要信息,等待审核信息,如有审核不通过的,按照提示举行修改即可。
(2) 各个国内安卓厂商商家
大致的一些商家的要求,我大概罗列下
1、初次打包app,必须以弹框方式,告知用户隐私保护和服务,让用户选择(Hbuilder,提供设置,设置即可)
https://i-blog.csdnimg.cn/direct/0b94c663af064f0c925082703377093a.png
   2、如果调用定位、拍照、文件等权限信息,需进行双告知方式,(因为vivo,必须是双告知方式,就是1、告知调用的用户,自行撰写 2、默认的手机调用权限的提示(在调用后会自行调用),这种方式,需要单独的代码逻辑实现)
   上告知方式:
   此处,我是state的方式实现,我把代码贴下面,涉及了其中四个权限,可以自行拓展,如果弄state,自行研究,不就行细说
   ![在这里插入图片描述](https://i-blog.csdnimg.cn/direct/bbd781acc254490693c60f40e8d3a378.png)
permissionToast.js内容如下
const state = {
        dialogView: null,
        permissionListener: null,
        list: [{
                        name: "CAMERA",
                        title: "相机权限申请说明:",
                        content: "便于您使用该功能拍摄照片进行工单处理,允许或拒绝均不会获取任何隐私信息。",
                },
                {
                        name: "READ_EXTERNAL_STORAGE",
                        title: "相册权限说明:",
                        content: "便于您使用该功能上传您的照片/图片进行工单的新建或处理,允许或拒绝均不会获取任何隐私信息。",
                },
                {
                        name: "ACCESS_FINE_LOCATION",
                        title: "位置权限申请说明:",
                        content: "便于您使用该功能方便你快速建立电站或是能够进行电站位置的路线导航,允许或拒绝均不会获取任何隐私信息。",
                },
      {
            name: "CALL_PHONE",
            title: "拨打电话权限说明:",
                        content: "便于您使用该功能拨打业主电话,允许或拒绝均不会获取任何隐私信息。",
      }
        ]
}
const actions = {
        //清除弹框
        asyncClearDialogView({
                commit
        }) {
                commit('clearDialogView')
        },
        //权限获取
        //监听权限申请
        async requstPermission({
                state,
                dispatch,
                commit
        }, permissionID) {
                return new Promise((resolve, reject) => {
                        try {
                                console.log('
页: [1]
查看完整版本: uniapp开发App,集成极光推送,安卓和IOS,APP上架AppStore、小米、华为、