最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

android實現(xiàn)掃碼槍功能

 更新時間:2021年09月29日 08:28:21   作者:cuncaojin  
這篇文章主要為大家詳細介紹了android實現(xiàn)掃碼槍功能,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下

掃碼槍掃碼效果等同于鍵盤錄入,會回調(diào)dispatchKeyEvent鍵盤按下事件。

開發(fā)環(huán)境:有線掃碼槍,支持二維碼

代碼

1. 接收數(shù)據(jù)

 /**
     * 掃碼槍掃碼處理
     */
    @Override
    public boolean dispatchKeyEvent(KeyEvent event) {
        if (event.getAction() == KeyEvent.ACTION_DOWN) {
            int keyCode = event.getKeyCode();
            char aChar = (char) event.getUnicodeChar();
            if (aChar != 0) {
                mStringBufferResult.append(aChar);
            }
            mHandler.removeCallbacks(mScanningFishedRunnable);
            //若為回車鍵,直接返回
            if (keyCode == KeyEvent.KEYCODE_ENTER) {
                mHandler.post(mScanningFishedRunnable);
            } else {
                //延遲post,若500ms內(nèi),有其他事件
                mHandler.postDelayed(mScanningFishedRunnable, 500L);
            }
            return true;
        }
        return super.dispatchKeyEvent(event);
    }

2. 處理數(shù)據(jù)

 /**
 * 二維碼信息對象
 */
   private QRCode qrCodeBean;
   /**
   * 二維碼信息原始數(shù)據(jù)容器
   */
   private StringBuilder mStringBufferResult = new StringBuilder();
   private Handler mHandler = new Handler();
   
   private Runnable mScanningFishedRunnable = new Runnable() {
        @Override
        public void run() {
            scanOk = false;
            String qrcode = mStringBufferResult.toString();
            if (!TextUtils.isEmpty(qrcode)) {
                // 掃碼確定參數(shù)
                Gson gson = new Gson();
                try {
                    qrCodeBean = gson.fromJson(qrcode, QRCode.class);
                    // 你的代碼...
                    // 如果要支持中文,數(shù)據(jù)用可以URLEncoder/URLDecoder編解碼
                } catch (JsonSyntaxException e) {
                    // 解析失敗...
                } catch (UnsupportedEncodingException e) {
                    // 解碼失敗...
                } finally {
                    mStringBufferResult.setLength(0);
                }
            }
        }
    };

參考:Android設(shè)備藍牙連接掃描槍獲取掃描內(nèi)容

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

最新評論

温宿县| 阿城市| 博乐市| 昆明市| 章丘市| 灵山县| 和平区| 阿合奇县| 寻甸| 富源县| 三门县| 扶风县| 剑河县| 江陵县| 越西县| 龙南县| 堆龙德庆县| 东源县| 偏关县| 汝南县| 荆门市| 丰都县| 开化县| 会理县| 漯河市| 彭阳县| 赞皇县| 滁州市| 汾西县| 内江市| 景谷| 玛曲县| 罗甸县| 大石桥市| 崇文区| 富裕县| 巴南区| 霍州市| 上饶市| 本溪| 林州市|