当前位置:  首页  >  PHP资讯  >  业界资讯

Android实现二维码扫描并登陆网页

这篇文章主要介绍了Android实现二维码扫描并登陆网页的相关资料,需要的朋友可以参考下

之前写过一个二维码扫描demo,用的Zxing的框架,点击下载,后续扫描二维码中出现一些问题,比如解决压缩图片,调整扫描窗口大小等等。后续单位要求做扫描登录实现,发现难点就是怎么知道你扫描的是这台电脑,后台必须获取到(后台技术的问题)然后把这个参数给我,再传递到后台,后台判断登录即可。这样自己扫描后直接传递个参数就可以实现登录了。

效果如下:

大概代码实现:扫描跳转:

 //扫描登录a case R.id.tv_more_qr: if (PventQuickClick.isFastDoubleClick()) { break; } DialogUtils.showCommonPopupWindow(context); MyApplication.checkLogin(context, new APPCallback() { @Override public void appCallback(String userid) { // TODO Auto-generated method stub DialogUtils.dismissCommonPopupWindow(); Intent openCameraIntent = new Intent(context,CaptureActivity.class);//Zing框架的类 startActivityForResult(openCameraIntent,0); } }); break;

然后扫描后会返回扫描的结果在onActivityResult

 @Override public void onActivityResult(int requestCode, int resultCode, Intent data) { super.onActivityResult(requestCode, resultCode, data); if (resultCode == getActivity().RESULT_OK) { Bundle bundle = data.getExtras(); String qrResult = bundle.getString(result); LogUtils.log_e(qrResult, qrResult); int scan= qrResult.indexOf(+); //对切取字符串判断 //登录 if(scan>0){ String starts = qrResult.substring(0, scan); String ends = qrResult.substring(scan+1, qrResult.length()); LogUtils.log_e(starts, starts+.......+ends); if(ends.equals(QrLogin)){ Intent intent = new Intent(context,QrLogin.class);//跳转到确认登录界面 intent.putExtra(scanResult, starts); startActivity(intent); } }else if(StringUtils.getUrl(qrResult)){//是html的链接直接跳转浏览器,比如apk下载等等 Intent intent =new Intent(); intent.setAction(android.intent.action.VIEW); Uri content_url =Uri.parse(qrResult); intent.setData(content_url); startActivity(intent); }else if(!StringUtils.getUrl(qrResult)){ Toast.makeText(getActivity(), 客官,您扫的找不到呀!!, 0).show(); } } }

然后跳转到确认登录界面:

点击判断传参:

 @Override protected void baseOnClick(View v) { switch (v.getId()) { case R.id.tv_qr_login: // Toast.makeText(QrLogin.this, 登录, 0).show(); DialogUtils.showCommonPopupWindow(QrLogin.this); LinkedHashMap get_checkqrcodelogin = new LinkedHashMap(); get_checkqrcodelogin.put(key, MyApplication.getUserState(loginkey));// android 固定为1 get_checkqrcodelogin.put(sessionid, sessionid);// android 固定为1 HttpManager.GetCheckQrCodeLogin(get_checkqrcodelogin, new NetCallBack() { @Override public void callback(String result) { DialogUtils.dismissCommonPopupWindow(); LogUtils.log_e(GetCheckQrCodeLogin, result); final CheckQrCodeLogin checkqrcode = JsonUtils.getBeanFromJson( result, CheckQrCodeLogin.class); if(checkqrcode.code.equals(1)){ Toast.makeText(QrLogin.this, 登录成功, 0).show(); finish(); } } }); break;

以上所述是小编给大家介绍的Android实现二维码扫描并登陆网页的相关知识,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对网站的支持!

内容推荐:免费高清PNG素材下载
吐了个 "CAO" !
扫码关注 PHP1 官方微信号
PHP1.CN | 中国最专业的PHP中文社区 | PNG素材下载 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved PHP1.CN 第一PHP社区 版权所有 京ICP备19059560号-4