Android實現(xiàn)二維碼掃描并登陸網頁
之前寫過一個二維碼掃描demo,用的Zxing的框架,點擊下載,后續(xù)掃描二維碼中出現(xiàn)一些問題,比如解決壓縮圖片,調整掃描窗口大小等等。后續(xù)單位要求做掃描登錄實現(xiàn),發(fā)現(xiàn)難點就是怎么知道你掃描的是這臺電腦,后臺必須獲取到(后臺技術的問題)然后把這個參數(shù)給我,再傳遞到后臺,后臺判斷登錄即可。這樣自己掃描后直接傳遞個參數(shù)就可以實現(xiàn)登錄了。
效果如下:

大概代碼實現(xiàn):掃描跳轉:
//掃描登錄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實現(xiàn)二維碼掃描并登陸網頁的相關知識,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對腳本之家網站的支持!
- Android實現(xiàn)二維碼掃描和生成的簡單方法
- Android開發(fā)框架之自定義ZXing二維碼掃描界面并解決取景框拉伸問題
- Android基于google Zxing實現(xiàn)各類二維碼掃描效果
- Android平臺生成二維碼并實現(xiàn)掃描 & 識別功能
- Android基于zxing的二維碼(網格)掃描 仿支付寶網格掃描
- Android利用ZXing掃描二維碼的實例代碼解析
- Android 基于google Zxing實現(xiàn)二維碼、條形碼掃描,仿微信二維碼掃描效果(推薦)
- Android實現(xiàn)基于ZXing快速集成二維碼掃描功能
- Android中二維碼的生成方法(普通二維碼、中心Logo 二維碼、及掃描解析二維碼)
- Android-Zxing實現(xiàn)二維碼的掃描與生成
- Android中的二維碼生成與掃描功能
- Android開發(fā)實現(xiàn)模仿360二維碼掃描功能實例詳解
相關文章
詳解Android Material設計中陰影效果的實現(xiàn)方法
這篇文章主要介紹了Android Material設計中陰影效果的實現(xiàn)方法,包括自定義陰影的輪廓和裁剪等,需要的朋友可以參考下2016-04-04
SurfaceView播放視頻發(fā)送彈幕并實現(xiàn)滾動歌詞
這篇文章主要為大家詳細介紹了SurfaceView播放視頻發(fā)送彈幕并實現(xiàn)滾動歌詞,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下2019-11-11
Android使用ViewBinding的詳細步驟(Kotlin簡易版)
最近這段時間在學習Kotlin,突然發(fā)現(xiàn)谷歌已經把kotlin-android-extensions插件廢棄,目前推薦使用ViewBinding來進行替代,接下來通過本文給大家分享Android使用ViewBinding的詳細步驟,感興趣的朋友一起學習吧2021-05-05
Android設置TextView顯示指定個數(shù)字符,超過部分顯示...(省略號)的方法
這篇文章主要介紹了Android設置TextView顯示指定個數(shù)字符,超過部分顯示...(省略號)的方法,涉及Android TextView屬性設置的相關技巧,需要的朋友可以參考下2016-02-02

