2011-10-29 6 views
1

私はAndroid開発の初心者です。私はAndroidデバイス上のセンサーのリストを表示するアプリケーションを作成したいと思います。Androidデバイスのセンサーリストを表示

私はこれを見つけようとしましたが、成功しませんでした。

あなたは私を助けてくれますか?ここで

はこれを行う方法のソリューションです:

/////////////// List of Sensors ////////////////////////////// 
listeCapteurs = (ListView) findViewById(R.id.ListView01); 

SensorManager sensorManager= 
(SensorManager)getSystemService(Context.SENSOR_SERVICE); 
List<Sensor> listSensor= 
sensorManager.getSensorList(Sensor.TYPE_ALL); 

List<String> listSensorType = new ArrayList<String>(); 

for(int i=0; i<listSensor.size(); i++) 
{ 
listSensorType.add(listSensor.get(listSensor.size()-1-i).getName()); 
} 
+0

は[ 'SensorManager.getSensorListを見てください() '](http://developer.android.com/reference/android/hardware/SensorManager.html#getSensorList(int))を参照してください。 –

+1

何を試しましたか? – Kev

+0

問題は、SensorManager.getSensorList()でリストを取得する方法を知っていますが、デバイス上でこのリストを表示する方法がわかりません。私はxmlファイルを変更する必要があると思うが、どういうことか分からないと思う。 –

答えて

14

は、このコードを試してみてください。

SensorManager mgr = (SensorManager) getSystemService(SENSOR_SERVICE); 
List<Sensor> sensors = mgr.getSensorList(Sensor.TYPE_ALL); 
for (Sensor sensor : sensors) { 
    Log.d("Sensors", "" + sensor.getName()); 
} 

私の出力は次のとおりです。

10-28 21:34:03.224: D/Sensors(27760): BMA150 3-axis Accelerometer 
10-28 21:34:03.224: D/Sensors(27760): AK8973 3-axis Magnetic field sensor 
10-28 21:34:03.224: D/Sensors(27760): AK8973 Orientation sensor 
10-28 21:34:03.224: D/Sensors(27760): CM3602 Proximity sensor 
10-28 21:34:03.224: D/Sensors(27760): CM3602 Light sensor 
10-28 21:34:03.224: D/Sensors(27760): Gravity Sensor 
10-28 21:34:03.224: D/Sensors(27760): Linear Acceleration Sensor 
10-28 21:34:03.224: D/Sensors(27760): Rotation Vector Sensor 
+0

Craigyさん、ありがとう、コードはうまくいくようですが、画面が何もないのでウィットhthe xmlファイルを助けてください。 ありがとうございます。 –

+0

あなたの質問に答えて、あなたのXML問題に関する新しい質問を投稿すれば、この回答に合格とマークしてください – Craigy

+0

ありがとう、新しい質問に新しい質問を投稿します。ここ –

関連する問題