問題タブ [ios-bluetooth]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
4 に答える
2108 参照

ios6 - BluetoothManager で正しくアクセサリに接続するには?

「setting->bluetooth」で設定を行わずに、アプリケーションでアクセサリを接続しようとしています。

このリンクの手順に従いました: http://www.pocketmagic.net/2012/07/bluetooth-and-ios-use-bluetooth-in-your-iphone-apps/#.UTKqLKVvdhaアクセサリに接続しようとすると、「エラー 305 で失敗しました」というメッセージが表示されます。

これが私のステップのリストです:

  1. BluetoothManagerサービスのハンドラーとインスタンスを取得します。

    /li>
  2. 通知、Bluetooth 無線の変更 (オン/オフ)、および新しいデバイスの検出を登録します。

    ここで、アプリケーションはアクセサリを検出できます

    /li>
  3. BluetoothDeviceのような方法でアクセサリに接続します[btdev connect]。ここで私はメッセージを受け取ります

    "デバイス "accessory" F0:B4:79:0B:68:45 のサービス 0x00001000 への接続がエラー 305 で失敗しました".

のような他の方法を試しましたが[acceptSSP][connectWithServices]役に立ちませんでした。最初にペアリングする必要がありますか? もしそうなら、どうすればいいですか?

0 投票する
1 に答える
184 参照

ios - iOS デバイスから Android デバイスを検索して視覚化する

ピア ツー ピア通信に新しい ios7 API を使用する方法を学びましたが、iOS デバイス間でのみ正常に動作します。だから、これは私の目標ではありません!近くのデバイス (ios または android) を検出する ios アプリを作成し、デバイスの名前と一意のキー (ios7 で廃止されていることがわかっている mac アドレス) のみを視覚化する必要があります。繰り返します デバイス間の通信はしたくない 近くのデバイスだけを見たい.... iosの問題の前にアプローチしたいので、android sdkに渡します。

何か案が?....

0 投票する
1 に答える
4029 参照

ios - IOS で BluetoothManager プライベート フレームワークをインポートする

IOS 7 に BluetoothManager Private Framework をインポートする必要があります。近くの Bluetooth デバイスをスキャン/検出して一覧表示するテスト アプリを作成する必要があります。SO iOS 6 - BluetoothManager framework - "NSObject" not found errorに記載されている次のリンクを参照しましたが、BluetoothManager.framework フォルダーをインポートできません。実際、Xcode でバイナリ オプションを使用してリンク ライブラリに移動すると、BluetoothManager.framework がまったく表示されません。IOS7 で試す必要がある別のことはありますか?

0 投票する
2 に答える
1517 参照

ios - iOSで利用可能なBluetoothデバイスのリストを取得する

iOSで利用可能なBluetoothデバイスのMACアドレスのリストを取得する方法はありますか? Bluetooth MACアドレスを使用して近くにいる人を見つけるプログラムに取り組んでいます。

0 投票する
1 に答える
1558 参照

ios - iOSのBluetoothキーボードで再生ボタンが押されたことを検出するにはどうすればよいですか

iPadに接続されたBluetoothキーボードで音楽の再生/一時停止ボタンが押されたことを検出したい。キーボードは「ACTECK FT-850」。

このメソッドを使用して、他のボタンを検出しています。

それは完全に機能しますが、KeyCommandWithInput「再生/一時停止」音楽ボタンを検出するためにどの文字oコマンドを入力したのかわかりません...私はすでにこれも試しています:

しかしremoteControlReceivedWithEvent、ボタンを押しても呼び出されません。

私を助けてください。

0 投票する
0 に答える
88 参照

ios7 - 状態の復元によって復元された後、BLE ペリフェラルに再接続するのにかかる時間

State Restoration を使用して周辺機器に再接続した人はいますか? もしそうなら、再接続するのにどれくらいの時間がかかったと思いますか?

いつからタイミングを開始するかを判断するのは簡単ではないため、これは少し難しい質問です。

これは、接続要求が発行された周辺機器の範囲内に iDevice が入ったときである必要があります。

0 投票する
0 に答える
1343 参照

ios - CBCentralManager デリゲート メソッド didDiscoverPeripheral: 呼び出されませんでした

メイン キューのCBCenteralManagerinを初期化します。viewdidload初めて更新状態メソッドが呼び出され、Bluetooth デバイスのスキャンが開始されますが、didDiscoverPeripheral:デリゲート メソッドは呼び出されません。

コードは次のとおりです。

0 投票する
1 に答える
844 参照

ios - ペリフェラルの特性へのサブスクライブ

特定の特性に対するペリフェラルからの戻り値に問題があります。私がやっていることは、2つの特徴的なタイプ(通知と指示)があります。これらの特性を使用してサブスクライブしますperipheral.SetNotify(true,characteristic);が、問題はデバイスが値を返さないことです。特性メソッドの更新値で値をリッスンしています。

0 投票する
1 に答える
10041 参照

bluetooth - パブリッシュされた GATT プロファイルのない BLE デバイスからのデータの解釈

サードパーティとして、GATT プロファイル仕様が公開されていない Bluetooth Low Energy デバイスからのデータを正しく解釈する実行可能な方法はありますか?

BLE デバイスは、体重、BMI、体脂肪、水分補給レベルをサポートする体重計です。私の理解では、たとえば血圧デバイスや心拍数モニター ( https://developer.bluetooth.org/gatt/profiles/Pages/ProfilesHome.aspx ) のように、体重計に採用された GATT プロファイルはありません。

次のツールを使用します。

  • iPod (iOS 6.1.3) と各種 BLE ユーティリティ アプリ (Ti BLE Multitool、LightBlue、および BLE Utility)
  • Android (4.3) タブレット (Dell Venue 8 3830) と nRF マスター コントロール パネル、および Xamarin で開発されたカスタム ソリューション

体重計で利用可能な GATT サービスをスキャン、検索、接続、読み取ることができます。上記のツールはすべて、同じサービス情報を提供してくれます。スケールで検出された 5 つのサービスがあります。

  • 汎用アクセス (0x1800)
  • 汎用属性 (0x1801)
  • デバイス情報 (0x180A)
  • バッテリーサービス (0x180F)
  • カスタム 128 ビット UUID を持つ不明なサービス

上記のツールはすべて、バッテリー情報やデバイス名の取得など、既知のサービスから読み取ることができます。私の推測では、カスタム UUID を持つ不明なサービスは、スケール データを提供するサービスです。

このサービスには、カスタム UUID に関する 5 つの不明な特性があります。

  • 特性 1 は読み取り/書き込み
  • 特性 2 が読み取られる
  • 特性 3 は読み取り/書き込み
  • 特徴4はNotify
  • 特性 5 が読み取られる

上で指定したツールを使用して特性 1、2、および 3 から読み取ると、それぞれが独自の値を返しますが、その値は決して変わりません。たとえば、特性 1 を読み取ると、常に 20 オクテット 0x01-0x05-0x06-0x07-0x08 と 15 0x00 オクテットの値が返されます。特性 1 の後続の読み取りでは、常にその値が返されます。特性 2 読み取りは、常に 20 オクテット 0x02 および 19 オクテット 0x00 オクテットの値を返します。等々。

特性 5 を読み取ると、値が返されないか、より一般的には Android でペアリング リクエストが発行されるようです。一般的なペアリング コード (0000 や 1234 など) は有効ではありません。

特性 4 は、実際にスケール データを送信しているように見えます。上記のツールを使用して通知を有効にすると、アプリケーションは 13 オクテットを取得します。例えば:

  • FF-16-09-00-03-04-01-00-83-6F-F4-18-0F
  • FF-16-09-00-03-04-01-00-3E-88-F4-18-E3
  • FF-16-09-00-03-04-01-00-C8-89-F4-18-6E

明らかに、これらの値はすべて同じオクテットのセットで始まります。ただし、主な問題は、これらのオクテットが何を表しているのか、実際にそうである場合、体重/bmi/水分補給/体脂肪値にどのように変換されるのかということです.

このスケールは、Ti CC2541 チップ ( http://www.ti.com/product/cc2541 ) を使用して構築されています。

Ti の SmartRF Protocol Packet Sniffer と CC2540 USB 評価モジュール キットを併用すると、iPhone 5S (iOS 7.1) と体重計の間を行き来するパケットをキャプチャできます。これにより、いくつかの追加の洞察が得られましたが、ほとんどの場合、他のツールを使用して既に観察したことを示していますが、それは低レベルではあります. パケット スニファーによって提供される追加情報は、依然として同じ疑問につながります: 体重計が送信しているこれらのオクテットのセットは何を表し、どのように体重/bmi/etc に変換されるのでしょうか? Bluetooth コア仕様のドキュメントを利用して、標準機能のオクテットが何を意味するのかを理解するのに役立ちましたが、実際のスケール データを理解するのには役立ちません。

私は Bluetooth の開発に非常に慣れていないため、この演習は基本的にテクノロジの短期集中コースになりました。どんな助けでも大歓迎です。

ありがとう。

0 投票する
1 に答える
203 参照

ios - Roximity iBeacon で「エラー: ビーコンのレンジングを開始できませんでした」というエラーが表示される

Roximity からいくつかの iBeacon デバイスを購入し、それらをセットアップして、送信された通知を受信するサンプル アプリケーションを作成しようとしています。また、 https://github.com/roximity/ROXIMITYSDKStarterKit-iOSにある Github のサンプル アプリケーションを使用してテストしました。

アプリを実行すると、次のログ メッセージだけが表示されます。

2014-04-28 08:49:15.817 RoximityMyApp[5172:60b] ROXIMITY SDK バージョン: 1.1.51 2014-04-28 08:49:16.726 RoximityMyApp[5172:60b] エラー: ビーコンの測距を開始できませんでした 2014-04- 28 08:49:16.814 RoximityMyApp[5172:60b] エラー: ビーコンのレンジングを開始できませんでした 2014-04-28 08:49:16.827 RoximityMyApp[5172:60b] エラー: ビーコンのレンジングを開始できませんでした 2014-04-28 08:49 :16.830 RoximityMyApp[5172:60b] エラー: ビーコンの測距を開始できませんでした