精华内容
下载资源
问答
  • h5调用qq客户端

    2018-03-16 16:58:00
    这是第一种: <a href="tencent://message/?uin=1014167202&Site=在线QQ&Menu=yes"> <img border="0" src="http://wpa.qq.com/pa?p=2:351218741:41" ></a> ...

    这是第一种:

     <a href="tencent://message/?uin=1014167202&Site=在线QQ&Menu=yes"> <img border="0" src="http://wpa.qq.com/pa?p=2:351218741:41"  ></a>  
    http://wpa.qq.com/msgrd?v=3&uin=1014167202&site=qq&menu=yes

     

    转载于:https://www.cnblogs.com/love314159/p/8583385.html

    展开全文
  • callapp-lib是一个H5唤起APP的解决方案,能够满足大部分唤起客户端的场景,也可以扩展出扩展口,帮你实现一些定制化的功能。 如果您想了解一些启发端的原理知识,或者阅读下面的文档有不理解的名词,可以访问博客。 ...
  • 本文档主要介绍H5页面如何解析客户端传来的用户登录信息。以及如何根据解析后的用户登录信息来要求用户登录或者绑定手机号码的操作。 客户端传递用户信息方式 客户端目前会在打开第三方页面的时候,在url地址...

    原网址:http://open.12580.com/goMenuUrl.chtml?a=5644 

    借鉴学习下:(以下是正文)

    文档说明

    本文档主要介绍H5页面如何解析客户端传来的用户登录信息。以及如何根据解析后的用户登录信息来要求用户登录或者绑定手机号码的操作。

    客户端传递用户信息方式

    客户端目前会在打开第三方页面的时候,在url地址里面拼接上toekn字符串:

    http://m.12580.com/wap5/indexr.do?v=12580client&url=live!l.do&cityid=320500&lon=&lat=&token=A5899B55B7E013640A18F91919FB876F64222CC613FB70C10A18F91919FB876F064DF4EC0
    34CF1FA

    token的值由tokenString+“”+”imei”+”imsi”组成字符串,des加密构成。密钥是guaguaka


    如:原字符串“1451889165036.10167.11337,000000000000000,310260000000000”====》

    加密后:

    923E47B72E0EB77FA3A53E4961E665994B9BB289E1938F65EFA896F0166415090A18F91919FB876F64222CC613FB70C10A18F91919FB876F0
    64DF4EC034CF1FA

    用户信息解析

    接入方,从url地址拿到数据后,解密后得到token对应的值



    1.如果token值为空或者为0。则用户肯定没有登陆。此时调用客户端的登陆(发送伪协议27)

    2.token不为空也不为0去调用接口解析token   

    解析接口地址:

    http://hi.12580.com:8080/client_new/v1/user/getUserByToken

    此处需要在Http的请求头里面加入3个参数

    请求头参数列表

    参数

    类型

    是否必须

    示例值

    备注

    clientName

    String

    THIRD_PARTY

    用于区分渠道。

    version

    String

    yoger

    固定值,用于区分接入方。由宽连侧分配。必传

    kw

    String

    20150924095353#d5b2fbcb3e4d45c4c99ffc3df3d4f65f

    用于加密。必传


    注:kw的获取

    public staticString getVerifyString() {

                      String ctime =CTime.getTime(14);

                      return ctime

                                       +"#"

                                       +getMD5(Constants.STORE_FLAG + ctime.substring(0, 8)

                                                         +Constants.STORE_VERSION + ctime.substring(8, 14));

             }

    cTime就是当前的时间,yyyymmddhhmmss如20160104164823

    STORE_FLAG ="12580777";

    STORE_VERSION ="1.0";

    md5加密。拼接成字符串。

    这个字符串作为kw的值

    body传参列表


    参数

    类型

    是否必须

    示例值

    备注

    token

    String

    1442988958938.18703.10769

    客户端传递过
    来的toen值


    请求报文示例:

    {"token":"1442988958938.18703.10769"}

    需要对body进行加密传输

    1.加密方法:

    jsonStr = {"token":"1442988958938.18703.10769"}

    Hex.encodeHexString(Base64.encode(jsonStr))

    即先用base64,再用hex,解码相反。


    服务器返回的数据也是加密数据,需要解密解码之后才可看到

    String result = new String(Base64.decode(Hex.decodeHex(baos.toString().toCharArray())))

    返回的报文示例

    ①已登录且有手机号:

    {"ALLOW_COIN":true,"AREA_CODE":"320500","BOSS_SET":"钻石用户","EMAIL":"469490335@qq.com","FUSION_FLAG":"0","GRADE_NAME":"LV2","GRICE":"195","IS_MALL_VIP":false,"MALL_U_ID":"151495211",
    "OPERATOR_CODE":"JSYD","REG_TIME":"20140129092126","SCORE":"195","SID":"949BDF7731BDC5A0224553A61A50128B","TERMINAL_ID"
    :"13776063474"
    ,"USER_ID":"051231512141","USER_LEVEL":"360001","USER_NAME":"ssssssssssss","USER_PHOTO"
    :"http://mall.12580life.com/userphoto/151495211/zBzb/20150601111043_zBzb.jpg","U_ID":"10099441","flag":"00-00","isLogin":
    true
    ,"msg":"操作成功"}

    判断方式mallUId和TERMINAL_ID都不为空

     

    ②已登录且是互联网账号没有绑定手机号:

    {"ALLOW_COIN":true,"AREA_CODE":"320100","EMAIL":"ymm5@163.com","FUSION_FLAG":"0","IS_MALL_VIP":false,"MALL_U_ID":"174873271"
    ,"REG_TIME":"20150629104551","SID":"8CA1B34D96172E873256CACF5ACB90F1","U_ID":"19264333","flag":"00-00","isLogin":true,
    "msg":"操作成功"}

    判断方式mallUId不为空但TERMINAL_ID为空

     

    ③token失效:

    {"ALLOW_COIN":true,"IS_MALL_VIP":false,"flag":"10-07","isLogin":false,"msg":"token无效"}
    判断方式mallUId和TERMINAL_ID都为空

    H5页面的处理

    H5页面需要提供javascript:ios_page_loadtokenString
    这个js方法。客户端在登陆成功之后,会把toke加密:
     
    DesUtils desUtils = new DesUtils( "guaguaka" );
    String tokenString = desUtils.encrypt(TOKEN + "," + IMEI + "," + IMSI);
     

    通过ios_page_load这个js方法把用户的信息传递给H5页面。

    展开全文
  • h5 客户端调用摄像头扫描二维码

    千次阅读 2018-04-13 16:50:36
     // 扩展API加载完毕后调用onPlusReady回调函数  document.addEventListener( "plusready", onPlusReady, false ); // 扩展API加载完毕,现在可以正常调用扩展API function onPlusReady() { ...
    <!doctype html>   
    
    <html>   
       <head>   
        <meta charset="UTF-8">   
        <title></title>   
        <meta name="viewport" content="width=device-width,initial-scale=1,minimum-scale=1,maximum-scale=1,user-scalable=no" />   
        <script src="../js/mui.min.js"></script>   
        <link rel="stylesheet" type="text/css" href="../css/whole.css"/>
        <link rel="stylesheet" type="text/css" href="../css/yetouyangshi.css"/>
        <style type="text/css">   
            #bcid{   
                width: 100%;   
                height: 100%;   
                position: absolute;   
                background: #000000;   
            }   
        </style>   
       </head>   
      <body>   
    <div id="yetou"> 
    <p id="fanhui" οnclick="mui.back()"><img style="margin-top: 0.3rem;" src="../img/zuo.png"/></p>
    <h3 id="tit">扫码确认登录</h3>
    <span id="tongbu"> 
    <!--完成-->
    </span>
    </div>
        <div id="bcid">      
        </div>   
        <script type="text/javascript">   
         
        var height = window.innerHeight + 'px';//获取页面实际高度   
        var width = window.innerWidth + 'px';   
        document.getElementById("bcid").style.height= height;   
        document.getElementById("bcid").style.width= width;   
           // 扩展API加载完毕后调用onPlusReady回调函数 
    document.addEventListener( "plusready", onPlusReady, false );
    // 扩展API加载完毕,现在可以正常调用扩展API
    function onPlusReady() {
    startRecognize()
    }
    var scan = null;
    function onmarked( type, result ) {
    var text = '未知: ';
    switch(type){
    case plus.barcode.QR:
    text = 'QR: '; //二维码为QR
    break;
    case plus.barcode.EAN13:
    text = 'EAN13: ';
    break;
    case plus.barcode.EAN8:
    text = 'EAN8: ';
    break;
    }
    //alert( text+result );
    //扫码成功跳转确认登录页面 
    mui.openWindow({
    url : "querendenglu.html"
    })
    }
    function startRecognize() {
    scan = new plus.barcode.Barcode('bcid');
    scan.onmarked = onmarked; 
    }    
            </script>   
        </body>   
    </html> 
     
    展开全文
  • 关于H5客户端之间的联调,基本的通过JS Bridge交互就不提了,这里要提的是最近刚踩的一个坑。最初的代码是这样:在最初和IOS联调时就没有问题,一切顺利,调用appClient里面的getDeviceInfo方法,顺利的把回调传给...

    关于H5与客户端之间的联调,基本的通过JS Bridge交互就不提了,这里要提的是最近刚踩的一个坑。

    最初的代码是这样:


    在最初和IOS联调时就没有问题,一切顺利,调用appClient里面的getDeviceInfo方法,顺利的把回调传给了IOS端,IOS也顺利的将我要的数据通过回调回传给了我,但是在与安卓联调时,我这边一直进不了安卓方法的断点,花了几个小时,最终将回调函数声明的位置换了一下就成功的完成了交互,如下:


    当初我以为,都是挂载在window下的方法,声明的先后应该不会影响,但是现实给了我沉重的一巴掌,如果方法声明在调用的后面,IOS端还是可以正常运行的,但是在安卓端就无法正常的获取到要传递给安卓端的回调方法,所以以后为了避免类似的问题,凡是与客户端联调,如果有回调,都将回调方法的声明放在调用的前面,以免再次踩到类似的坑。

    可能描述的比较简单,有什么不准确的地方敬请指出。

    展开全文
  • 第一次接触图表这种东西,最开始呢说的是对用MPAndroid,各种图表,什么条形图、折线图、饼图、散点图、组合图等等,组长说,好好写这个图表以后项目会用到,然而给我项目的时候,公司规定统一echart,那个心理真...
  • 最近一直在折腾邮件的h5应用,为了保证在pc,ios,android端都可以使用,所以使用H5页面的方式嵌入app的webview中。 页面 UI大概是这样的 Jquery tagsinput下载:http://xoxco.com/projects/code/tagsinput/ ...
  • H5客户端联调

    2017-04-11 08:40:00
    进行H5移动端开发时,我们可以使用谷歌浏览器的设备工具栏进行,此方法实时方便快速,但这也是有限的,当我们需要在特定机型特定系统或者在webview中调试时,这种方法就显得很吃力了。 安卓: 一、与安卓手机...
  • 今天碰到一个问题,就是app客户端内嵌了H5的活动页,调接口一直有问题,但是在浏览器打开没问题,客户端又没法调式,只能跟后端沟通,让查看接口日志看报错情况,后端反馈是token没传,但是在页面绑定的链接和token...
  • H5客户端的方法

    2019-02-26 16:30:00
    转载于:https://www.cnblogs.com/Airoocle/p/10438233.html
  • H5客户端(IOS、安卓)交互

    千次阅读 2019-04-17 15:00:10
    //客户端已经注册好一个名为“ObjC Echo”的方法,H5直接进行调用(方法名也为“ObjC Echo”)就行,调用的时候可以传客户端需要的参数 bridge.callHandler('ObjC Echo', {'key':'value'}, function ...
  • 我们系统一开始只有一个pc端使用,随着业务的扩展,需要添加APP,H5客户端。此刻,我们我们内部就如何重新对我们自己的系统架构进行了梳理,最终确立了以下两种方案: 1、PC,APP,H5客户端还是访问原来的一个...
  • 最近也是在自己的公司...我们系统一开始只有一个pc端使用,随着业务的扩展,需要添加APP,H5客户端。此刻,我们我们内部就如何重新对我们自己的系统架构进行了梳理,最终确立了以下两种方案: 1、PC,APP,H5等客...
  • 昨天我司产品经理找到我和APP的开发工程师,希望我们解决一个问题:在APP端点击专题活动中的商品,打开的页面是H5页面,而不是客户端的原生页面。产品经理希望打开原生页面,以让用户获得更好的体验。见下图,左图是...
  • 目前Android微信客户端不支持pushState的H5新特性,所以使用pushState来实现web app的页面会导致签名失败,此问题会在Android6.2中修复)。 wx.config({ debug: true, // 开启调试模式,调用的所有api的返回值会在...
  • h5调用微信api

    千次阅读 2019-12-11 16:02:39
    h5注册公众号jssdk,使用微信方法h5注册公众号jssdk,使用微信方法 h5注册公众号jssdk,使用微信方法 ... 然后进行验证,通过wx.config接口 ... debug: true, // 开启调试模式,调用的所有api的返回值会在客户端...
  • 使用electron开发一个h5客户端应用创建http服务模拟后端接口mock 在上一篇《electron快速开始》里讲述了如何快速的开始一个electron的应用程序,既然electron是可以直接使用node环境编写程序的,那么我们就可以有...
  • webview中js调用客户端

    2019-01-19 21:32:47
    2019-01-19目录 ...需要安卓中针对webview提供接口供js调用 js代码 &amp;amp;amp;amp;amp;lt;script&amp;amp;amp;amp;amp;gt; window.android.doString() &amp;amp;amp;amp;amp;lt;/script&a
  • 如:车险、停车收费、电警、汽车后市场等等,随着行业应用的增多,不同平台都需要用到,服务器端车牌识别服务提供WebService、Rest Service、Http等多种接口方式 ,可在APP端、PC客户端、web端、微信H5端等均可发送...
  • 由于对象映射,所以调用test对象等于调用Android映射的对象 test.hello( " js调用了原生app暴漏出来jsbridge中的hello方法 " ); } script > body > html > 总结 约定协议(native拦截http协议...
  • h5页面在微博客户端中呼起摄像头扫描二维码并且解析;原生浏览器或者微信客户端呼起系统拍照或者上传图片按钮,拍照二维码或者上传二维码并且解析
  • 这个是用Html5的fieldapi做的,客户端比例缩放,批量上传图片。减少服务器压力,客户端通过base64预览。并且支持直接调用手机相册摄像头 注意:代码里面做了判断,如果是pc端使用flash压缩,如果移动端使用H5进行缩放
  • Android H5调用WebView选文件

    千次阅读 2019-07-31 17:15:44
    Android H5调用WebView选文件 H5页面可以通过< input type=‘file’ accept=‘image/*’/>来调用WebView的方法,进行图片选择,这里调用的方法在WebChromeClient中,不同版本系统需要做兼容 系统版本 ...
  • 大家知道,客户端的域名或IP地址是固定不变的,而客户端的ip地址一般是随机变换的。所以客户端可以直接通过域名向服务器发送请求消息,而服务器无法主动主动向客户端发送消息,只能通过客户端的回调来给客户端信息。...
  • H5调用APP的方法

    2020-11-20 11:00:06
    使用场景 原生APP内嵌入HTML5页面,在HTML5页面调用原生APP的方法(如登录、分享等)。 关键代码 if(window.webkit && window.webkit.messageHandlers &... window.webkit.message... // 调用IOS登录
  • H5调用本地相册/相机上传图片

    千次阅读 2019-07-22 16:53:17
    调用即可,ios是可以的实现的,不需要自己处理,除非客户端压缩图片,但是Android中需要自己处理,比较坑,本文记录H5调用本地图片或者相机的实现过程以及遇到的问题。 先看效果图 H5 H5主要是通过input标签来...
  • H5 调用企业微信API

    千次阅读 2020-12-08 22:35:39
    H5 调用企业微信API前言一、环境二、使用步骤1.js引用2.config接口注入权限验证配置3.生成access_token4.生成jsapi_ticket5.生成noncestr 随机字符串 (len随机字符串上度)(方法是复制过来的)5.生成timestamp...
  • H5 客户端 埋点

    2019-02-22 19:16:00
    转载于:https://www.cnblogs.com/Airoocle/p/10420153.html
  • <input type="file" accept="image/*"> //调用图片或者相机都ok <input type="file" accept="image/*" capture=“camera>//只调用相机
  • h5调用app端的方法

    千次阅读 2019-01-07 17:43:45
    if(window.android!=null&amp;&amp;typeof(window.android)!="undefined"){ window.android.pageBack(); } pageBack是移动端定义的方法

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 18,700
精华内容 7,480
关键字:

h5调用客户端