開發電腦利用手機代替QRCODE掃描器的應用場景

這個解決方案是讓電腦沒有買qrcode掃描器時,可以讓手機代替掃描器把QRCODE掃進電腦,利用wifi連接,先前是想用藍芽連接,但沒有很順利。

https://github.com/s1059005/Send-QR-message-via-wifi

專案概述

  • 專案名稱: Wifi QR Scanner
  • 背景: 隨著行動裝置的普及,QR 碼掃描應用廣泛應用於支付、登錄和數據傳輸。本專案旨在開發一個使用 Flutter 框架的應用,結合Wifi技術,將掃描的 QR 碼數據傳輸至桌機端,實現跨設備交互。
  • 目的: 提供一個簡單易用的工具,允許用戶透過手機掃描 QR 碼,並將數據無線傳輸至桌機,模擬鍵盤輸入。

專案目標

  • 開發一個支援 Android 的 Flutter 應用,整合 QR 碼掃描和Wifi通信功能。
  • 實現與桌機端 Python 程式的無縫連接,傳輸掃描數據。
  • 確保應用在實體手機上穩定運行,兼容舊型號設備(如 ASUS Z00LD)。
  • 提供用戶友好的介面,包含設備列表和掃描結果顯示。

需求分析

功能需求

  • QR 碼掃描:使用手機相機掃描 QR 碼,提取文本數據。
  • Wifi連接:透過Wifi議連接桌機,傳輸掃描數據。
  • 數據傳輸:將 QR 碼內容發送到桌機,模擬鍵盤輸入。
  • 設備管理:顯示可用的藍牙設備列表,支援設備選擇和連接。

非功能需求

  • 性能:應用應在低端設備上流暢運行,響應時間少於 2 秒。
  • 兼容性:支援 Android 4.4(API 19)及以上版本。
  • 安全性:確保藍牙通信數據不被未授權設備攔截(使用標準 UUID)。
  • 易用性:提供直觀的 UI,支援初學者操作。

硬體與軟體需求

  • 開發環境:
    • 作業系統: Windows 10/11
    • Flutter SDK: 最新版本(2025年5月)
    • Android Studio: 用於 Android 模擬器和 SDK 管理
    • JDK: OpenJDK 17(或 Android Studio 內建)
  • 目標設備: Android 手機(例如 ASUS Z00LD),支援藍牙 4.0 及以上
  • 桌機端: Windows 電腦,安裝 Python 3.x 及 PyBluez

技術選項

開發框架

  • Flutter: 跨平台框架,支援 Android 開發,結合 Dart 語言。
  • 插件:
    • bluetooth_classic: ^0.0.3: 提供藍牙經典通信功能。
    • qr_code_scanner: ^1.0.1: 實現 QR 碼掃描。

建構工具

  • Gradle: 使用 Groovy DSL 配置 Android 建構。
  • Android SDK: 支援 API 19-30。

桌機端實現

  • Python: 使用 PyBluez 實現藍牙伺服器,結合 PyAutoGUI 模擬鍵盤輸入。

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *