• 微信WeixinJSBridge API


    复制代码
      1 <!DOCTYPE html>
      2 <html>
      3  <head>
      4   <title>微信WeixinJSBridge API</title> 
      5   <meta charset="utf-8" /> 
      6   <script type="text/javascript">
      7 (function(){
      8 var a=document.getElementsByTagName("html")[0];
      9 window.Session={appDomain:a.getAttribute("data-app-domain")||"",staticDomain:a.getAttribute("data-static-domain")||""}
     10 })();
     11  
     12 window.registNS=function(fullNS,isIgnorSelf){
     13 var reg=/^[_$a-z]+[_$a-z0-9]*/i;var nsArray=fullNS.split(".");
     14 var sEval="";
     15 var sNS="";
     16 var n=isIgnorSelf?nsArray.length-1:nsArray.length;
     17 for(var i=0;i<n;i++){
     18     if(!reg.test(nsArray[i])){throw new Error("Invalid namespace:"+nsArray[i]+"");
     19     return
     20     }
     21     if(i!=0){sNS+="."}
     22     sNS+=nsArray[i];
     23     sEval+="if(typeof("+sNS+")=='undefined') "+sNS+"=new Object();
     24     else "+sNS+";"
     25 }
     26 if(sEval!=""){
     27 return eval(sEval)
     28 }
     29 return{}
     30  
     31 };
     32  
     33 </script> 
     34  </head> 
     35  <body>
     36   <section class="mod-page-body"> 
     37    <div class="mod-page-main wordwrap clearfix"> 
     38     <div class="mod-pageheader"></div> 
     39     <div class="mod-pagecontent"> 
     40      <div class="mod-weixinjsapi"> 
     41       <div class="x-desc">
     42        微信客户端自带的Js Api:WeixinJSBridge
     43       </div> 
     44       <div id="WeixinJsApi"> 
     45        <input type="button" id="imagePreview" value="图片预览" /> 
     46        <input type="button" id="profile" value="查看profile" /> 
     47        <a href="weixin://profile/gh_412d74fbb474">企业微信小助手</a> 
     48        <input type="button" id="shareWeibo" value="分享微博" /> 
     49        <input type="button" id="shareFB" value="分享facebook" /> 
     50        <input type="button" id="addContact" value="添加联系人" /> 
     51        <input type="button" id="scanQRCode" value="扫描二维码" /> 
     52        <input type="button" id="jumpToBizProfile" value="跳转到指定公众账号页面" /> 
     53        <input type="button" id="toggleMenuBtn" value="隐藏右上角按钮" /> 
     54        <input type="button" id="toggleToolbar" value="隐藏底部导航栏" /> 
     55        <input type="button" id="getNetType" value="获取网络状态" /> 
     56        <input type="button" id="closeWindow" value="关闭" /> 
     57        <input type="button" id="getBrandWCPayRequest" value="发起公众号微信支付" /> 
     58        <input type="button" id="setPageState" value="设置页面状态" /> 
     59        <input type="button" id="sendEmail" value="发邮件" /> 
     60        <input type="button" id="openSpecificView" value="微信团队打开webView,跳到指定页面" /> 
     61        <input type="button" id="getCanIAPPay" value="getCanIAPPay" /> 
     62        <input type="button" id="getBrandIAPPayRequest" value="发起公众号IAP支付" /> 
     63        <input type="button" id="openUrlByExtBrowser" value="用safari打开指定链接" /> 
     64        <input type="button" id="openProductView" value="跳转微信商品页" /> 
     65        <input type="button" id="openLocation" value="查看地理位置" /> 
     66        <input type="button" id="timelineCheckIn" value="朋友圈签到" /> 
     67        <input type="button" id="getBrandWCPayCreateCreditCardRequest" value="开通微信信用卡" /> 
     68        <input type="button" id="geoLocation" value="获取地理位置" /> 
     69        <input type="button" id="getInstallState" value="获取某app是否安装" /> 
     70        <input type="button" id="editAddress" value="公众号编辑收货地址" /> 
     71        <input type="button" id="getLatestAddress" value="公众号获取最近的收货地址" /> 
     72        <input type="button" id="launch3rdApp" value="启动第三方APP" /> 
     73        <input type="button" id="jumpWCMall" value="跳转微信商品购买界面" /> 
     74        <input type="button" id="addEmoticon" value="添加表情" /> 
     75        <input type="button" id="cancelAddEmoticon" value="取消下载某表情" /> 
     76        <input type="button" id="hasEmoticon" value="查询是否存在某表情" /> 
     77       </div> 
     78      </div> 
     79     </div> 
     80    </div> 
     81   </section> 
     82   <script>
     83 function onBridgeReady() {
     84     WeixinJSBridge.on('menu:share:appmessage', function(argv) 
     85     {
     86         WeixinJSBridge.invoke('sendAppMessage',{
     87                     "link":"http://m.exmail.qq.com/",
     88                     "desc":"desc",
     89                     "title":"title for WeiXinJsBridge"
     90         }, function(res) {
     91             WeixinJSBridge.log(res.err_msg);
     92         });
     93     });
     94     WeixinJSBridge.on('menu:share:timeline', function(argv) 
     95     {
     96     WeixinJSBridge.invoke("shareTimeline",{
     97         "link":"http://m.exmail.qq.com",
     98         "img_url":"http://rescdn.qqmail.com/bizmail/zh_CN/htmledition/images/bizmail/v3/logo1ca3fe.png",
     99         "img_width":"172",
    100         "img_height":"40",
    101         "desc":"i am description",
    102         "title":"just test from WeixinJsBridge"
    103         },
    104         function(e){
    105         alert(e.err_msg);
    106         })
    107     });
    108 }
    109  
    110 if (typeof WeixinJSBridge === "undefined"){
    111     if (document.addEventListener){
    112         document.addEventListener('WeixinJSBridgeReady', onBridgeReady, false);
    113     }
    114 }else{
    115     onBridgeReady();
    116 }
    117  
    118     var menuHidden=!1,toolbarHidden=!1,netType={"network_type:wifi":"wifi网络","network_type:edge":"非wifi,包含3G/2G","network_type:fail":"网络断开连接","network_type:wwan":"2g或者3g"};
    119     document.addEventListener("WeixinJSBridgeReady",function(){
    120             document.getElementById("imagePreview").addEventListener(
    121             "click",function(){
    122                                 WeixinJSBridge.invoke("imagePreview",{
    123                 "urls":[
    124                 "http://rescdn.qqmail.com/bizmail/zh_CN/htmledition/images/bizmail/v3/logo1ca3fe.png",
    125                 "http://rescdn.qqmail.com/bizmail/zh_CN/htmledition/images/bizmail/v3/icons_features1ca3fe.png",
    126                 "http://rescdn.qqmail.com/bizmail/zh_CN/htmledition/images/bizmail/v3/icons_workStyle1ca3fe.png"
    127                 ],
    128                 "current":"http://rescdn.qqmail.com/bizmail/zh_CN/htmledition/images/bizmail/v3/icons_features1ca3fe.png"
    129                 })
    130                         },!1),
    131         document.getElementById("profile").addEventListener(
    132             "click",function(){
    133                 alert("profile clicked");
    134                 WeixinJSBridge.invoke("profile",{
    135                     "username":"gh_412d74fbb474",
    136                     "nickname":"企业微信小助手"    
    137                 })
    138             },!1),
    139         document.getElementById("shareWeibo").addEventListener(
    140             "click",function(){
    141                 WeixinJSBridge.invoke("shareWeibo",{
    142                     "type":"link",
    143                     "link":"http://m.exmail.qq.com"
    144                 },
    145                 function(e){
    146                     alert(e.err_msg);
    147                 })
    148             },!1),
    149         document.getElementById("shareFB").addEventListener(
    150             "click",function(){
    151                 WeixinJSBridge.invoke("shareFB",{
    152                     "link":"http://m.exmail.qq.com"
    153                 })
    154             },!1),
    155         document.getElementById("scanQRCode").addEventListener(
    156             "click",function(){
    157                 WeixinJSBridge.invoke("scanQRCode",{
    158                 })
    159             },!1),
    160         document.getElementById("addEmoticon").addEventListener(
    161             "click",function(){
    162                 WeixinJSBridge.invoke("addEmoticon",{
    163                     "url":"http://rescdn.qqmail.com/bizmail/zh_CN/htmledition/images/bizmail/v3/icons_features1ca3fe.png",
    164                     "thumb_url":"http://rescdn.qqmail.com/bizmail/zh_CN/htmledition/images/bizmail/v3/logo1ca3fe.png"
    165  
    166                 },
    167                 function(e){
    168                                         alert(e.err_msg);
    169                                 })
    170             },!1),
    171         document.getElementById("cancelAddEmoticon").addEventListener(
    172             "click",function(){
    173                 WeixinJSBridge.invoke("cancelAddEmoticon",{
    174                     "url":"http://rescdn.qqmail.com/bizmail/zh_CN/htmledition/images/bizmail/v3/icons_features1ca3fe.png"
    175  
    176                 },
    177                 function(e){
    178                                         alert(e.err_msg);
    179                                 })
    180             },!1),
    181         document.getElementById("hasEmoticon").addEventListener(
    182             "click",function(){
    183                 WeixinJSBridge.invoke("hasEmoticon",{
    184                     "url":"http://rescdn.qqmail.com/bizmail/zh_CN/htmledition/images/bizmail/v3/icons_features1ca3fe.png"
    185  
    186                 },
    187                 function(e){
    188                                         alert(e.err_msg);
    189                                 })
    190             },!1),
    191         document.getElementById("addContact").addEventListener(
    192             "click",function(){
    193                 WeixinJSBridge.invoke("addContact",{
    194                     "webtype":"1",
    195                     "username":"gh_412d74fbb474"
    196                 },
    197                 function(e){
    198                     alert(e.err_msg);
    199                 })
    200             },!1),
    201         document.getElementById("jumpToBizProfile").addEventListener(
    202             "click",function(){
    203                 WeixinJSBridge.invoke("jumpToBizProfile",{
    204                     "tousername":"gh_2248a2ade13e"
    205                 },
    206                 function(e){
    207                     alert(e.err_msg);
    208                 })
    209             },!1),
    210         document.getElementById("toggleMenuBtn").addEventListener(
    211             "click",function(){
    212                 menuHidden?
    213                 (WeixinJSBridge.call("showOptionMenu"),menuHidden=!1,this.value="隐藏右上角按钮")
    214                 :
    215                 (WeixinJSBridge.call("hideOptionMenu"),menuHidden=!0,this.value="显示右上角按钮")
    216             },!1),
    217         document.getElementById("toggleToolbar").addEventListener(
    218             "click",function(){
    219                 toolbarHidden?
    220                 (WeixinJSBridge.call("showToolbar"),toolbarHidden=!1,this.value="隐藏底部导航栏")
    221                 :
    222                 (WeixinJSBridge.call("hideToolbar"),toolbarHidden=!0,this.value="显示底部导航栏")
    223             },!1),
    224         document.getElementById("getNetType").addEventListener(
    225             "click",function(){
    226                 WeixinJSBridge.invoke("getNetworkType",{},
    227                     function(e){
    228                         alert(netType[e.err_msg])
    229                     })
    230             },!1),
    231          document.getElementById("closeWindow").addEventListener(
    232                         "click",function(){
    233                                 WeixinJSBridge.invoke("closeWindow",{},function(e){})
    234                         },!1),
    235         document.getElementById("getBrandWCPayRequest").addEventListener(
    236             "click",function(){
    237             WeixinJSBridge.invoke("getBrandWCPayRequest",{
    238                 "appId" : "wxf8b4f85f3a794e77", //公众号名称,由商户传入
    239                 "timeStamp" : "189026618", //时间戳 这里随意使用了一个值
    240                 "nonceStr" : "adssdasssd13d", //随机串
    241                 "package" :
    242                 "body=xxx&fee_type=1&input_charset=GBK&notify_url=http&out_trade_no=16642817866003386000&partner=1900000109&return_url=http&spbill_create_ip=127.0.0.1&total_fee=1&sign=273B7EEEE642A8E41F27213D8517E0E4", //扩展字段,由商户传入
    243                 "signType" : "SHA1", //微信签名方式:sha1
    244                 "paySign" : "b737015b5b1eabe5db580945a07eac08c7bb55f8" //微信签名
    245                 },
    246                 function(e){
    247                     alert(e.err_msg)
    248                 })
    249             },!1),
    250         document.getElementById("setPageState").addEventListener(
    251             "click",function(){
    252             WeixinJSBridge.invoke("setPageState",{
    253                 "state" : "1"
    254                 })
    255             },!1),
    256  
    257         document.getElementById("sendEmail").addEventListener(
    258             "click",function(){
    259             WeixinJSBridge.invoke("sendEmail",{
    260                 "title" : "title!",
    261                 "content" : "i am an Email!", //时间戳 这里随意使用了一个值
    262                 },
    263                 function(e){
    264         //          alert(e.err_msg)
    265                 })
    266             },!1),
    267         document.getElementById("openSpecificView").addEventListener(
    268             "click",function(){
    269             WeixinJSBridge.invoke("openSpecificView",{
    270                 "specificview" : "contacts"
    271                 },
    272                 function(e){
    273                     alert(e.err_msg)
    274                 })
    275             },!1),
    276         document.getElementById("getCanIAPPay").addEventListener(
    277             "click",function(){
    278             WeixinJSBridge.invoke("getCanIAPPay",{  },
    279                 function(e){
    280                     alert(e.err_msg)
    281                 })
    282             },!1),
    283         document.getElementById("getBrandIAPPayRequest").addEventListener(
    284             "click",function(){
    285             WeixinJSBridge.invoke("getBrandIAPPayRequest",{
    286                 "appId" : "wxf8b4f85f3a794e77", //公众号名称,由商户传入
    287                 "timeStamp" : "189026618", //时间戳 这里随意使用了一个值
    288                 "nonceStr" : "adssdasssd13d", //随机串
    289                 "package" : "bankType=CITIC_CREDIT&bankName=%e4%b8%ad%e4%bf%a1%e9%93%b6%e8%a1%8c&sign=CF8922F49431FFE8A1834D0B32B25CE3",
    290                 //扩展字段,由商户传入
    291                 "signType" : "SHA1", //微信签名方式:sha1
    292                 "paySign" : "1e6f13f78ca0ec43fbb80899087f77568af66987" //微信签名
    293                 },
    294                 function(e){
    295                     alert(e.err_msg)
    296                 })
    297             },!1),
    298         document.getElementById("openLocation").addEventListener(
    299             "click",function(){
    300             WeixinJSBridge.invoke("openProductView",{   
    301                 "latitude" : 23.113, //纬度
    302                 "longitude" : 113.23, //经度
    303                 "name" : "TIT创意园", //POI名称
    304                 "address" : "广州市海珠区新港中路397号", //地址
    305                 "scale" : 14, //地图缩放级别
    306                 "infoUrl" : "http://weixin.qq.com/", //查看位置界面底部的超链接                
    307                 },
    308                 function(e){
    309                     alert(e.err_msg)
    310                 })
    311             },!1),
    312         document.getElementById("timelineCheckIn").addEventListener(
    313             "click",function(){
    314             WeixinJSBridge.invoke("timelineCheckIn",{   
    315                 "img_url": "http://mmsns.qpic.cn/mmsns/RLllkTm3DUdV24xbZnKicx9jJWxXI0Bq84zzbtibGuRyk/0", // 分享到朋友圈的缩略图
    316                 "img_width": "640", // 图片的长度
    317                 "img_height": "640", // 图片高度
    318                 "link": "http://news.qq.com/zt2012/cxkyym/index.htm", // 连接地址
    319                 "desc": "这个是描述啊啊", // 描述
    320                 "title": "朝鲜称中国渔船越界捕捞", // 分享标题
    321                 "latitude" : 23.113, //纬度
    322                 "longitude" : 113.23, //经度
    323                 "poiId" : "dianping_2331037", //商户id
    324                 "poiName" : "TIT创意园", //POI名称
    325                 "poiAddress" : "广州市海珠区新港中路397号", //地址
    326                 "poiScale" : 14, //地图缩放级别
    327                 "poiInfoUrl" : "http://weixin.qq.com/" //查看位置界面底部的超链接
    328                 },
    329                 function(e){
    330                     alert(e.err_msg)
    331                 })
    332             },!1),
    333         document.getElementById("geoLocation").addEventListener(
    334             "click",function(){
    335             WeixinJSBridge.invoke("geoLocation",{   
    336                 },
    337                 function(e){
    338                     alert(e.err_msg)
    339                 })
    340             },!1),
    341         document.getElementById("getBrandWCPayCreateCreditCardRequest").addEventListener(
    342             "click",function(){
    343             WeixinJSBridge.invoke("getBrandWCPayCreateCreditCardRequest",{  
    344                 "appId" : "wxf8b4f85f3a794e77", //公众号名称,由商户传入
    345                 "timeStamp" : "189026618", //时间戳 这里随意使用了一个值
    346                 "nonceStr" : "adssdasssd13d", //随机串
    347                 "package" : "bankType=CITIC_CREDIT&bankName=%e4%b8%ad%e4%bf%a1%e9%93%b6%e8%a1%8c&sign= CF8922F49431FFE8A1834D0B32B25CE3",
    348                 //扩展字段,由商户传入
    349                 "signType" : "SHA1", //微信签名方式:sha1
    350                 "paySign" : "1e6f13f78ca0ec43fbb80899087f77568af66987" //微信签名
    351                 },
    352                 function(e){
    353                     alert(e.err_msg)
    354                 })
    355             },!1),
    356         document.getElementById("getInstallState").addEventListener(
    357             "click",function(){
    358             WeixinJSBridge.invoke("getInstallState",{   
    359                     "packageUrl":"teamcircle://"
    360                 },
    361                 function(e){
    362                     alert(e.err_msg)
    363                 })
    364             },!1),
    365         document.getElementById("openProductView").addEventListener(
    366             "click",function(){
    367             WeixinJSBridge.invoke("openProductView",{   
    368                     "productInfo":"json"
    369                 },
    370                 function(e){
    371                     alert(e.err_msg)
    372                 })
    373             },!1),
    374         document.getElementById("getLatestAddress").addEventListener(
    375                 "click",function(){
    376                 WeixinJSBridge.invoke("getLatestAddress",{  
    377                     "appId" : "wxf8b4f85f3a794e77", //公众号名称,由商户传入
    378                     "timeStamp" : "189026618", //时间戳 这里随意使用了一个值
    379                     "nonceStr" : "adssdasssd13d", //随机串
    380                     "signType" : "SHA1", //微信签名方式:sha1
    381                     "addrSign" : "b737015b5b1eabe5db580945a07eac08c7bb55f8", //微信签名
    382                     "scope"    : "snsapi"
    383                 },
    384                 function(e){
    385                     alert(e.err_msg)
    386                 })
    387             },!1),
    388         document.getElementById("editAddress").addEventListener(
    389                 "click",function(){
    390                 WeixinJSBridge.invoke("editAddress",{   
    391                     "appId" : "wxf8b4f85f3a794e77", //公众号名称,由商户传入
    392                     "timeStamp" : "189026618", //时间戳 这里随意使用了一个值
    393                     "nonceStr" : "adssdasssd13d", //随机串
    394                     "signType" : "SHA1", //微信签名方式:sha1
    395                     "addrSign" : "b737015b5b1eabe5db580945a07eac08c7bb55f8", //微信签名
    396                     "scope"    : "snsapi"
    397                 },
    398                 function(e){
    399                     alert(e.err_msg)
    400                 })
    401             },!1),
    402         document.getElementById("launch3rdApp").addEventListener(
    403                 "click",function(){
    404                 WeixinJSBridge.invoke("launch3rdApp",{  
    405                     "appId" : "wx5823bf96d3bd56c7", //公众号名称,由商户传入
    406                 },
    407                 function(e){
    408                     alert(e.err_msg)
    409                 })
    410             },!1),
    411         document.getElementById("jumpWCMall").addEventListener(
    412                 "click",function(){
    413                 WeixinJSBridge.invoke("jumpWCMall",{    
    414                     "appId" : "wx5823bf96d3bd56c7", //公众号名称,由商户传入
    415                     "funcId":"1000"
    416                 },
    417                 function(e){
    418                     alert(e.err_msg)
    419                 })
    420             },!1),
    421         document.getElementById("openUrlByExtBrowser").addEventListener(
    422             "click",function(){
    423             WeixinJSBridge.invoke("openUrlByExtBrowser",{
    424                 "url" : "http://m.exmail.qq.com"
    425                 },
    426                 function(e){
    427                     alert(e.err_msg)
    428                 })
    429             },!1)
    430         }
    431     );
    432 </script> 
    433  </body>
    434 </html>
    复制代码
  • 相关阅读:
    socket套接字 struct模块
    网络编程 OSI七层协议
    内置方法 eval | exec 元类 单例
    选课系统
    iOS清理缓存 2016-04-19
    iOS 蓝牙 技术
    iOS人脸识别
    iOS 指纹识别
    极光推送的初步配置及其使用
    iOS 加急审核
  • 原文地址:https://www.cnblogs.com/Alex80/p/4259655.html
Copyright © 2020-2023  润新知