現在、Android フォンを持っていません。しかし、私のアプリケーションでは、加速度計の値を使用する必要があります。シミュレートされた環境でこれを行うにはどうすればよいですか?
5 に答える
Android エミュレーター自体はサポートしていませんが、OpenIntents のSensorSimulatorがその穴を埋めています。zip ファイルをダウンロードして解凍し、スタンドアロンの jar ファイルを開始します。
$ java -jar bin/sensorsimulator.jar
次に、SDK に付属の adb ツールを使用して、エミュレーターに SensorSimulatorSettings をインストールします。
$ adb -s <emulator device> install bin/SensorSimulatorSettings.apk
( adb devicesを実行して、エミュレーターのデバイス名を見つけます)。最後に、エミュレーターでインストール済みの SensorSimulatorSettings アプリを実行し、IP アドレス10.0.2.2を入力します(SensorSimulator アプリケーションが示唆する内容にかかわらず)。これは開発ホストのループバック デバイスのエイリアスであるため、常に有効である必要があります。
エミュレータの最新バージョンでは、加速度計やその他のセンサー シミュレーションのサポートが有効になっています。次のことができますtelnet localhost 5554
。
127.0.0.1 を試しています...
localhost に接続しました。
エスケープ文字は「^]」です。
Android コンソール: コマンドのリストについては「help」と入力してください
OKセンサー
を使用すると、エミュレーターセンサーを要求できます利用可能なサブコマンド:
status すべてのセンサーとそのステータスを一覧表示します。
get センサー値を取得
set センサー値を設定KO: サブコマンドがありません
センサーステータス
アクセラレーション: 有効。
磁場:有効。
方向: 有効。
温度: 有効。
近接: 有効。
わかった
揺れを正確にシミュレートする方法はわかりません。次の 2 つのコマンドを次々とすばやく送信してみてください。
sensor set acceleration 0:0:0
sensor set acceleration 99:99:99
また、SensorSimulator を機能させようとしていましたが、最終的に機能するようになったと思います。
上記の手順: "...java -jar bin/sensorsimulator.jar
次に、SDK に付属の adb ツールを使用してエミュレータに SensorSimulatorSettings をインストールします。 $ adb -s install bin/SensorSimulatorSettings.apk
...最後に、エミュレーターでインストール済みの SensorSimulatorSettings アプリを実行し、IP アドレス 10.0.2.2 を入力します...」
良いスタートですが、もっとやる必要がありました。
SensorSimulator を使用するには、アプリケーションを変更する必要があるようです。http://code.google.com/p/openintents/wiki/SensorSimulatorにアクセスして、「アプリケーションで SensorSimulator を使用する方法」セクションまでスクロールします。
それでもコンパイル中にいくつかのエラーが発生したので、次のページを参照してください: Android エミュレーターのヴィンテージ温度計コンポーネント + SensorSimulator - android.hardware.Sensor、SensorEvent、および SensorEventListener への参照を削除する必要がありました。
そして、connectSimulator の呼び出しで失敗していました。どうやら、マニフェスト ファイルでインターネットを使用する許可をアプリケーションに与える必要があったようです。
その後、SensorSimulator を使用して携帯電話を仮想的に回転させることができ、対応するセンサーの読み取り値をアプリケーションで取得できます。
ターゲット 10 のエミュレータは加速度計をサポートしていませんが、ターゲット 15 ではサポートしています。ターゲット 10 でそれを行う方法があるかどうかはわかりません。したがって、アプリケーションをテストするには、ターゲット 15 のプロジェクトと AVD を作成します。
Genymotion アプリケーションを使用することをお勧めします。これは、加速度計のテスト用の完全なツールを統合し、より高速なエミュレーターを使用します: Genymotion