Re: [問題] 藉由BlueZ使用藍芽 傳pattern 至Androi …
※ 引述《chenwu (圈誤)》之銘言:
: 遇到的問題(Question):
: 想請問板上的高手們有沒有使用過BlueZ這個library的經驗
: 小弟因為研究上的需求,要將電腦上的資料丟到Android手機上顯示,
: 想要用的方法是用C將檔案的資料藉由BlueZ的函式和電腦上的藍芽模組 傳到手機端
: 的藍芽裝置,
: 參考的資料是http://people.csail.mit.edu/albert/bluez-intro/c404.html
: 這個連結的教材,
: 這個網頁附的source code已經有電腦對電腦傳資料的範例也就是以下連結
: http://people.csail.mit.edu/albert/bluez-intro/x502.html
: 也確實可以在電腦和電腦間丟值
: 不過再傳Android手機時卻無法連結,
: 我是打算拿Android官方網站的範例來改
: 也就是http://developer.android.com/resources/samples/BluetoothChat/index.html
: 這個範例是需要兩個裝置間先建立連結後,就可以藉由接口來丟資料,
: 不過研究了很久,一直不知道如何將電腦和手機建立連線,
: http://people.csail.mit.edu/albert/bluez-intro/x502.html這裡提到的範例4.2 和4.3
: 只要將client.c 的位置輸入 sever.c端裝置的ID 且先執行sever 再在另一端執行client
: 就可以成功丟值,
: 於是我如法炮製先開手機端上述提到的應用程式,且打開藍芽裝置開啟它為可被偵測
: 再將client.c的位置輸入手機端的ID,想試試看發生什麼事
: 結果是什麼事都不會發生,
: 目前手機和手機之間,可以建立連線,且可以互相傳值且顯示,而且連線是"持續"的
: 但電腦端傳電腦就是只有一瞬間 傳值 顯示,
: 我想做到的是 電腦端和手機端可以持續連結 且手機不斷監聽電腦端傳來的值,
: 不知道有經驗的高手們 有沒有什麼建議或著看到小弟方法上有什麼盲點
: 請不吝賜教
: 開發平台(Platform): (例: VC++, Gcc, OpenGL, Linux, ...)
: Unbuntu GCC
嗨你好,以你文中,你說的手機和手機傳值不知是跟電腦的範例一樣嗎?
就以你的Android 連結來看,其實那是一個非常完整的Bluetooth AP,
它必須實作Chat, Scan, PIN 等等的功能,而你的電腦傳電腦的Clinet-
Server Module,只是它用Bluetooth 底層的RFCOMM這比較Reliable的
Protocol 去implement 一個簡易的Socket Program,而依Android的AP,
勢必要複雜許多,而Android 的PIN機制或Chat Room,也不是你對它的
RFCOMM發封包就可以Show出來的,還是需要看Server 端有沒有相對應的
服務或接收資料的port,能針對你所寫的程式做相對應的回應。
所以你這邊可能需要自己寫個Server程式,去Busy Check 你從Client端
有沒有送資料過來,若有就實作一個Event-driven的Routine去Handle
你送過來的資料。
大概就是這樣吧...
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.114.79.24
推
12/13 11:51, , 1F
12/13 11:51, 1F
C_and_CPP 近期熱門文章
PTT數位生活區 即時熱門文章