2016-08-03 8 views
1

Androidビーコンライブラリを使用してEddystoneビーコンを検出するためのAndroidアプリケーションがあります。私は、最適なバックグラウンドスキャン速度とフォアグラウンドスキャン速度を見つけるためにアプリケーションによって引き起こされるバッテリ消費をテストしたいと思います。設定>アプリケーション> MyBeaconDetectorAppで、Bluetoothを1時間以上オンにした後、バッテリー使用率が0%になります。私はアプリケーションがバックグラウンドにあると思うので、それは0%です。ただし、Bluetoothスキャンによるバッテリ消費量を確認するにはどうすればよいですか。 BackgroundBetweenScanPeriodを1分に設定しました。Bluetoothスキャンによるバッテリー消費量の確認方法

おかげ

答えて

2

それが直接バッテリーの消費を測定することは困難であるが、ここで私が使用テクニックです:

  1. は内で実行されるインストールされたアプリの限られた数の試験装置を使用して、背景。工場出荷時のリセット後の在庫Nexusデバイスが理想的です。

  2. 充電100%にバッテリー

  3. は、機内モードにデバイスを入れて、上のBluetoothを置きます。あなたのアプリは、それがバックグラウンドで実行を開始

  4. をインストールします。画面の電源を切り、デバイスのUSBコネクタを外します。

  5. は、開始時刻に注意してください。

  6. はアプリが理想的には少なくとも1つのビーコンの存在下で、少なくとも8時間のために、バックグラウンドで実行してみましょう。

  7. バッテリレベルを測定します。 100%からのデルタが排出率である。この番号と終了時刻に注意してください。

  8. あなたのバッテリーはお使いの携帯電話モデルのために持っているどのように多くの外国特例検索します。排水の%をmAHで掛け、試験時間で除算します。これは、アプリケーションの実行時に電話機が使用するmA数を示します。

次に、アプリをアンインストールして、上記の手順を繰り返します。これにより、のデバイスのベースラインバッテリがなくなり、アプリが実行されなくなります。最後に

、あなたのアプリがあなたのアプリケーションで使用される追加のmAHを測定するために実行しているとのmAHからのmAHベースラインを引きます。

最後の注意:あなたは本当に(デフォルトはバッテリーを節約するために5分ごとです)、バックグラウンドで毎分をスキャンする場合、私は、これは重要な追加電池の消耗を引き起こす可能性が期待されます。上記の手順を使用してテストすることで、確実に確認できます。私はあなたの結果を聞いてみたい!

+0

私はこれを間違いなく試みます。私は、これを達成するためにオンラインサービス、おそらくAWS Device Farmを使用する予定でした。しかし、私はテストセンターでビーコンを紹介するように頼むことはできません。近くのビーコンを持っていないとバッテリーの消費に影響すると思いますか? –

+1

はい、ビーコンを近くに置かないと2通りの方法で影響を受けます:(1)Android 5+でのテストでは、ビーコンがまったくなくてもバッテリーの放電を最小限に抑えるためにハードウェアフィルタを使用しますが、定期的にスキャンするのではなく、 (2)ビーコンが周りにあるとき、パケットから識別子を解析するには、CPUの量はわずかではありますが、それほど重要ではありません。 – davidgyoung

関連する問題