Re: [問題] 藉由BlueZ使用藍芽 傳pattern 至Androi …

看板C_and_CPP (C/C++)作者 (魚子醬)時間15年前 (2010/12/10 19:19), 編輯推噓1(100)
留言1則, 1人參與, 最新討論串1/1
※ 引述《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
文章代碼(AID): #1D0WopDZ (C_and_CPP)
文章代碼(AID): #1D0WopDZ (C_and_CPP)