問題タブ [cbcentralmanager]
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.
cbcentralmanager - 中央の役割で実行されている場合、BLE iOS デバイスは GATT サービスを提供できますか?
中心的な役割を果たしている iOS デバイスが (周辺機器のように) サービスを提供できるかどうかは疑問です。
ありがとうございました!ジョー
ios - CBCentralManager、CBServiceデリゲートメソッドはiOS6のバックグラウンドモードで呼び出されますか?
私はAppleコアBluetoothの例を使用しています.周辺機器は1つのiPhoneデバイスでフォアグラウンドで実行されています.1つのデバイスでcbcentralクライアントアプリケーションを実行しています.両方のアプリケーションがフォアグラウンド状態のときにうまくペアリングされています.クライアントcbcentralクライアントをbackground 、ローカル通知について言及したデリゲートメソッドは呼び出されません。通知はバックグラウンドモードでは来ません。NSUrlConnection と同じように、Bluetooth デリゲート メソッドを実行するために NSOperation を使用できますか? 最新の iOS バージョンで動作しますか? 確認しましたが、動作していません。
コード:
ios - 再検出せずに、既に接続されている CBPeripheral に直接書き込む
私のアプリでは、周辺機器の書き込み可能な特性にデータを書き込む必要があります。周辺機器をスキャンし、周辺機器を検出して接続し、サービスを発見し、特性を発見し、最後にターゲット特性に書き込むというプロセスに従うことで、これを行うことができます。
ここまでできたら、気になる CBPheripheral と CBCharacteristic のリファレンスを残しておきます。 さて、次回は、保存した Peripheral と Characteristic に直接書き込んでみようと思います。しかし、Bluetoothの警告を下回っています。Peripheral から切り離されていない場合、Peripheral の特性に直接書き込むことはできませんか?
BTBeaconTest[1421:60b] CoreBluetooth[WARNING] は有効な周辺機器ではありません
PS: 周辺機器から切断しませんでした。
ios - scanForPeripheralsWithServices: 同じ周辺機器で結果を 2 回返す
以下のコードを使用します
周辺機器をスキャンすると、同じ周辺機器で結果が 2 回返されます。返却方法は?ありがとう。
cbcentralmanager - CBCentralManager *manager EXC_BAD_ACCESS with iOS7.0
Xcode V5.0 (5A1413) にアップグレードしたところ、ビルドは成功しましたが、エミュレーターに対してプログラムを実行すると、プロパティ定義でエラーが発生します。
@property (nonatomic, strong) CBCentralManager *manager; --> スレッド 1:EXC_BAD_ACCESS (コード = 2、アドレス = 0x8)
ios - CBCentral マネージャーが周辺機器を検出しない
ルート ビュー コントローラーと 2 つのテーブルビュー コントローラーを持つナビゲーション コントローラーがあります。最初の tableview コントローラーをスタックにプッシュすると、cbcentralmanager が BLE 周辺機器をスキャンし、すべてがうまく機能します。ただし、2 番目の tableview コントローラーをスタックにプッシュしてからポップオフすると (最初の tableview コントローラーに戻る)、cbcentralmanager はスキャンしますが、デバイスは検出されません。最初のテーブルビュー コントローラーのコードを次に示します。tableviewコントローラーが表示されるたびに、viewWillAppearメソッドが期待どおりに呼び出されていますが、スキャンでは何も明らかになりません。
過去に適切なデリゲートを設定することで困惑しましたが、ここですべてのベースをカバーしたと思います。何かご意見は?
ios - ペリフェラルの応答が少し遅れると、セントラルは書き込み要求に対するエラー応答を取得します
BTLE iOS デバイス間の通信に CoreBlueTooth フレームワークを使用していますが、奇妙な動作が見られます。これが私がやっていることです:
- iOS デバイス 1 (周辺機器): 書き込み可能な特性を公開します。
- iOS デバイス 2 (セントラル): 書き込み可能な特性をスキャンし、それにデータを書き込みます。
- iOS デバイス 1 (ペリフェラル): 書き込み要求を受け取ります。データの受信を確認するまでしばらく待ちます。
- iOS デバイス 2 (中央): 以下のデリゲートでコールバックを取得し、前述のエラーを受け取りました。
問題: ここで、API を呼び出して数秒で書き込み要求に応答すると、[iPeripheral respondToRequest:iRequest withResult:iStatus]すべて正常に動作し、Central で成功します。しかし、時間がかかると、ペリフェラルが書き込み要求に応答していなくても、エラー応答が返されます。
これは、数秒で何らかの接続が失われるのか、それとも既知の CB フレームワークの動作なのか、考えはありますか?
Central と Peripheral の両方が iOS 7.0 で実行されています。
ios7 - バックグラウンドおよび/またはロックされたBluetooth中央地域監視(表示なし)
私の質問は: 電話がロックされている (ディスプレイがオンになっていない) 間、またはバックグラウンドにある間、中央から継続的な監視を有効にするにはどうすればよいですか?
まず第一に、私は Christopher Mann @ https://github.com/csmann/iBeaconDemoの厚意により iBeaconDemo を使用しています。このデモを書いた功績は認めませんが、iBeacon と地域監視を理解するために使用しています。これは素晴らしいデモですが、Near 範囲に入ったときにローカル通知を表示するためにバックグラウンド モニタリングを有効にしてほしいと思います。
Capabilities (info.plist) ファイルで bluetooth-central、bluetooth-peripheral、および location を有効にし、.notifyOnDisplay、notifyOnEntry、notifyOnExit を YES に設定したところ、アプリがフォアグラウンドまたはロックされているときに結果が得られることがわかりました画面(電話がロックされているときにホームボタンを押す)を監視できますが、バックグラウンド(電話のロックが解除されている)または電話がロックされている(ディスプレイがオンになっていない)間は監視できません。
これは私の appDelegate の didEnterBackground メソッドです (注: これは別のローカル通知であり、これは毎回正しく機能しますが、領域に入ったときに表示したい通知とは異なります:
バックグラウンドで表示したい通知は次のとおりです。リージョンに入るとポップアップする通知が 1 つだけ必要です (テスト目的でそれぞれに 1 つ入れました)。
最後に、便利な場合に備えて、fireUpdateNotificationsForStatus メソッドを次に示します。
他に役立つことがありましたら、お気軽にお知らせください。お時間をいただきありがとうございます!
ios - Bluetooth 信号 (BLE) で iOS アプリを起動する方法
CoreBluetooth (iBeacon なし) で BLE を使用する場合、デバイスが Bluetooth 信号を受信したときに実行されていないアプリを起動する方法はありますか?
RedBearlab の BLE Shield ( http://redbearlab.com/bleshield/ ) でビーコンをシミュレートしています。
ありがとう、ダン
* 2014 年 3 月 5 日更新 *
Apple は iOS 7.1 でメジャー アップデートを導入したようです。アプリに一致する UUID を検出すると、iOS がアプリを開きます。アプリはインストールするだけで、実行している必要はありません (ウェイクアップ コールに応答するために AppDelegate のロジックが必要です)。