我是前端js,需要通过OC向安卓和ios传4个参数,他们做分享功能,然后返回我是不是分享成功了。请问应该怎样实现呢,最好没有兼容问题,现在安卓和ios版本都这么新了。我现在用的这种方式似乎不够安全。<html><header> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta http-equiv="X-UA-Compatible" content="ie=edge"> <title>Document</title> <script type="text/javascript"> function showAlert(message) { alert(message); } function loadURL(url) { var iFrame; iFrame = document.createElement("iframe"); iFrame.setAttribute("src", url); iFrame.setAttribute("style", "display:none;"); iFrame.setAttribute("height", "0px"); iFrame.setAttribute("width", "0px"); iFrame.setAttribute("frameborder", "0"); document.body.appendChild(iFrame); iFrame.parentNode.removeChild(iFrame); iFrame = null; } function firstClick() { loadURL("firstClick://shareClick?title=分享的标题&content=分享的内容&url=链接地址&imageUrl=图片地址"); } </script></header><body> <button type="button" onclick="firstClick()">Click Me!</button></body></html>
2 回答
30秒到达战场
TA贡献1828条经验 获得超6个赞
不需要 iFrame 直接使用location.href进行跳转你们协商的协议即可。
app端他们会拦截你得跳转,来进行相应。
你们这个协议还缺一个回调函数,告诉他们调用哪个函数 传什么参数。
判断终端,来区分是wap还是webview
例子 :
function callback(result) {
console.log(result);// 这里你最好是把结果输出到html上 alert 需要app端开相应才会弹窗
}
location.href = "firstClick://shareClick?title=分享的标题&content=分享的内容&url=链接地址&imageUrl=图片地址&cb=callback";
app端拦截到之后他们,会调用你这个callback 并传入参数
app端 分享操作完成之后,调你得用callback ( 这些你需要告诉他们,不管分享成功与失败你都要调用这个函数 通知我)
这些东西都是你们协商来定,或者你来定告诉他这些参数是做什么用的即可
添加回答
举报
0/150
提交
取消