45

現在、Android フォンを持っていません。しかし、私のアプリケーションでは、加速度計の値を使用する必要があります。シミュレートされた環境でこれを行うにはどうすればよいですか?

4

5 に答える 5

38

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 アプリケーションが示唆する内容にかかわらず)。これは開発ホストのループバック デバイスのエイリアスであるため、常に有効である必要があります。

于 2010-10-13T18:20:06.313 に答える
19

エミュレータの最新バージョンでは、加速度計やその他のセンサー シミュレーションのサポートが有効になっています。次のことができます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
于 2013-12-03T21:13:19.577 に答える
6

また、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 を使用して携帯電話を仮想的に回転させることができ、対応するセンサーの読み取り値をアプリケーションで取得できます。

于 2012-06-08T18:19:59.970 に答える
1

ターゲット 10 のエミュレータは加速度計をサポートしていませんが、ターゲット 15 ではサポートしています。ターゲット 10 でそれを行う方法があるかどうかはわかりません。したがって、アプリケーションをテストするには、ターゲット 15 のプロジェクトと AVD を作成します。

于 2012-05-16T06:12:24.200 に答える
0

Genymotion アプリケーションを使用することをお勧めします。これは、加速度計のテスト用の完全なツールを統合し、より高速なエミュレーターを使用します: Genymotion

于 2015-10-02T12:22:22.133 に答える