Windows対応
イヤッッホォォォオオォオウ
Bluetooth LE plugin for Xamarin & MAUI がWindowsに対応してた~
nugetでver3.00をみんな早速ゲットだ。
ちなみにこちらはAndroid版のサンプルアプリ
↑これよこれ
これをまってたのよ
みんな大好きBluetooth。そのBLEのXamarinとMAUIのプラグインがWIndowsに対応してたよ
しかも2日前
全然気付かなかったよ
早速試してみました
うごいたよー
これだ
ワンオペなんだよこっちは
変わったところ
とは言えWindowsなどに対応するためや色々拡張されていて肝心のRead,Writeの戻り値が変わってる
ReadAsync
まず一箇所目がReadAsync()関数
var bytes = await characteristic.ReadAsync()
とやっていたらbytesはbyte[]だったのだが・・・
戻り値がTask<(byte[] data, int resultCode)> に変わったので
緊急的に
var bytes = await characteristic.ReadAsync(); // ★ver 2.13から変わった
var bytesdate = bytes.data; //データの取得
なんて、無理やり変えてしまったけど、受信結果も取れるようになったのだけど
resultCodeがbleに規定されたコードが帰って来るみたいで、そのコードが何処にあるのかよくわからない・・・
WriteAsync
もう一箇所変わったのがWriteAsync()関数。
これまた戻り値が変わっている
Task<bool>がTask<int>に変わっているだけなんだけど0が送信成功。それ以外はBLE deviceから戻ってきたエラコードとなってるけど、失敗の時何が返ってくるんだろうねぇ
まあackの代わりなんだろう
ソース
.NET MAUIのソース
そんなわけでまあとりあえず動く版のソースをgithubにアップロードしました
↑こちらがMAUIのソース。AndroidとWindows11で動作確認。
当たり前だけど、Windowsで動作させるときは、ble内蔵のPCじゃないと動作しないです。
ノートPCだと最近は大抵内蔵だけど、デスクトップPCだとBluetoothのドングルが必要です。
まあアマゾンやヨドバシで1000-1500円位で買えるのでそれ使えば動きました。
ESP32のソース
そしてこちらがデバイス側のソース。俺も大好きESP32で作ってます。
↑18番ピンのON/OFFを切り替えると画面上の表示がほんのちょっと変わります。
まあソース見れば大体わかると思うけど、ble pluginのページからソースをダウンロードして中身を確認した方がいいです。
とりあえず以前作ったBLEのテスト用のソースが変わったのところしか確認してないけど、結構変わっているっぽいので。
前回のソース
おしまい
コメント
コメントを投稿