1

私はiOSデバイス向けの開発にまったく慣れていません。私は長い間 Apple を使用しており、この春に電気工学の理学士号を取得する予定です。私は現在、設計クラスのプロジェクトに取り組んでおり、Bluetooth Low Energy と iOS (5 と 6 の両方) での実装方法についていくつか質問があります。

まず、プロジェクトの背景について少し説明します。建物の在室検知システムを設計しています。建物全体のウォルワーツにBLEモジュールを取り付ける予定です。これらのデバイスは、ユーザーのスマートフォンと通信し、位置情報をバックエンド システムに提供します。私たちは、このシステムがユーザーの操作をほとんど必要としないことを望んでいます。基本的に、彼らはアプリをダウンロードし、BLE を有効にしてから、アプリのことを忘れます。少なくとも最初は。後でアプリにさらに機能を追加する予定です。

少し調べてみたところ、すべての BLE 制御はアプリ経由で行われるようです。私はTI のデモ アプリから構築する予定です。

私の最初の質問は、バックグラウンドが BLE でどのように機能するかについてです。こちらで説明されているように、2 つの異なるバックグラウンド処理方法があることを理解しています。ユーザーの操作を可能な限り最小限に抑えるために、セッション バックグラウンドを使用したいようです。しかし、私の質問は、バックグラウンドは無期限に有効のままですか?

背景に関する質問

  1. イベントまたはセッションのバックグラウンド処理?
  2. バックグラウンドは無期限に有効のままですか?
  3. 電話がリセットされるとどうなりますか? または、復元が完了した場合 (ユーザーがアプリをバックアップしたと仮定)?
  4. 他のアプリで BLE 機能を無効にすることはできますか?

私の次の質問のカテゴリーは、中心的役割と周辺的役割に関するものです。私たちの主な目標は、スマートフォンの電力使用量を制限して、ユーザーが Bluetooth を無効にしないようにすることです。これはどちらのモードでも可能だと思います。

中央または周辺

  • iOS デバイスを他のデバイスよりも優れたものにするメリットはありますか?
  • 定期的に広告を出す iPhone と BLE ウォールウォート デバイスのどちらがよいでしょうか。
4

1 に答える 1

2

質問の最初の部分には答えられません。

しかし、中央または周辺?

BLE属性プロトコル(ATT)と汎用属性プロファイル(GATT)は非対称になるように設計されているため、ペリフェラルデバイスは処理やメモリなどの観点から可能な限りリソースを少なくすることができます。文字通り、ペリフェラルは、ほとんどの場合、ハードウェア値を正しいメモリアドレスに追加するための追加のコーディングを使用して、値を属性化するためのハンドルのルックアップテーブルです。

セントラルデバイスは、ペリフェラルに接続するときに、そのATTデータベースに問い合わせて、どのハンドルがどの属性に関連しているかを調べる必要があります。これには、ペリフェラルデバイスよりもはるかに多くの処理能力と動的メモリが必要です。

したがって、iPhoneを中央デバイスにする必要があります。

言うまでもなく、ユースケースで必要な場合は、ペリフェラルにすることもできません。

于 2012-10-17T09:20:56.680 に答える