1.应用需要发布到不同服务器,也即不同的登陆方式,接口地址、文件地址不一致。
解决:需要一台公共服务器,在切换登陆方式的时候在这个公共服务器获取信息,拿到不同登录方式的前缀路径。
在切换后将前缀地址设置为接口地址和前缀地址。
2.app发布到应用商店
2.1.使用uniapp发布安卓并不需要去发应用商店。除非是处于需要厂商推送。也就是unipush里面的离线推送,在线推送是不需要上到不同应用商店的。
处于信息安全考虑,现在的这些应用商店需要的信息比较多。安卓的发布又可以直接通过,程序来进行版本控制下载的方式。
2.2.ios的发布,ios还是需要发布到应用商店的,并且在发布的时候会结合应用的分类、用户的类型,来设置分发的方式。
3.应用发布到微信公众号、钉钉微应用、飞书微应用,方式基本一致。在不同平台的后台账号里,申请应用,发布就类似与正常网页发布,输入启动网址就行。
说白了,直接理解成用微信浏览器、飞书浏览器、钉钉浏览器打开移动端页面。只是在获取权限的方面有所不同,例如获取免登录的用户信息,这部分去各个平台上找jsapi。
这部分代码功能基本都一样,各端浏览器在访问的时候会触发那个方法来获取信息。至于说之前的设备权限获取,建议还是走html5支持,这样只需要只需要https不需要针对不同平台去写代码。
4.移动端的设备权限获取,大致分为两种情况。第一种是打包成应用软件,这种情况下可以用uniapp里面获取设备权限的api,有些则是原生的一些写法,在打包成app的时候也是可以用的。
第二种就是网页版本,微信公众号、钉钉微应用、飞书微应用都是这种,这种情况有的设备权限不支持uniapp的api以及原生api,用html5的方式去处理。最后在不同逻辑的处理位置使用条件编译,不同的运行环境采用不同方式。
5.uniapp的上述两种方式,由于最终运行端不一致,运行在原生环境的目前是不支持一些浏览器对象如:document之类的。在不同端的样式规则也有些不一致,倒也合理毕竟最终渲染的是不太一样的环境,问题不会有太多调整下就好了。
在编译成不同端的时候,需要有不同逻辑去处理,可能目前算是uniapp没有完备的点吧。
6.微信小程序发布,这部分要注意推送只能一次一次推(部分类别可以一直推送),还有一个比较麻烦的是要求包大小要小于2m,可以做分包(目前是支持十个)。
建议把一进应用能直接访问到的页面都放到主包里面,其他的放分包。资源图片可以都压缩下,有专门的缩减图片大小网站,当然最好还是放服务器上。
标签:uniapp,浏览器,项目,不同,发布,应用,一些,推送 From: https://www.cnblogs.com/cxxaichirou/p/17633941.html