场景
最近得一个项目中,因为没有原生安卓开发人员,只有选择用webview嵌套网页得方式来打包程序,不知道什么域名总是在微信和QQ里面被报违规,就得很频繁得更新下载得域名,后面下载通过中间页面方式解决了,居安思危,想到了之前做了一个博客还被人DDos攻击, 万一程序里面请求数据得域名无法访问了,那已下载得用户岂不是很尴尬,想来想去,也没有找到好的解决方案,后面在做IM消息推送得时候,得到了灵感,我主动获取网址可能不行,那我可以被动接受啊, 那可以借助第三方推送来实现把域名推送给安卓壳子,反正三方sdk得域名一般有专人维护,大不了交点费用, 壳子收到域名后,重新loadUrl即可。仅凭自己n年前学的安卓基础,想到了极光推送。
极光推送
极光推送注意几点
嵌套webview的坑
webview填坑代码
php服务端推送域名给APP
动态更换域名
在调用php推送以后,在安卓端会有一个方法是
接收到字符串以后,需要转为json, 这里用的GSON转的。
获取域名以后放入缓存中,webview加载url的时候都是从缓存中读取的,没有的话就默认加载我们代码中写死的网址。
放入缓存以后,可以用广播的方式通知webview去更改加载的url 也可以直接退出程序,重新打开程序url就被更新了。
设备注册ID和用户绑定
这一点也是突发奇想来的,最近短信费用不够用了,如果能够使用推送消息的方式替换短信,就需要把设备ID和用户信息进行一个绑定,这时候就需要安卓和webview进行通信了。
这里介绍最简单的一种,直接在安卓代码中获取到设备ID,在加载页面完成以后,直接传到页面上去。
总结
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。