【问题标题】:How can I get a sensor's name?如何获取传感器的名称?
【发布时间】:2011-11-14 11:24:17
【问题描述】:

我想以编程方式获取Sensor 的名称。说出环境光传感器的名称。

我怎样才能得到它的名字?

【问题讨论】:

  • 这个问题是一个文档问题。它旨在记录 Sensor 类的一个鲜为人知的特性。
  • 好问题,但我认为应该更准确,因为这里的人们误解了它。查看答案。
  • 我怎样才能比说出环境光传感器的名称更具体。
  • 实际上,您似乎在举一个例子。 :)

标签: android sensors


【解决方案1】:

使用传感器管理器查询(所有或certain types of) 个可用传感器。然后使用Sensor.getName() 获取单个传感器的名称。

SensorManager sm = (SensorManager) getSystemService(SENSOR_SERVICE);
List<Sensor> list = sm.getSensorList(Sensor.TYPE_ALL);

for(Sensor s : list) {
    Log.d("SENSORS", s.getName());
}

上面 sn-p 的示例输出:

11-14 12:26:47.549: D/SENSORS(911): BMA150 3-axis Accelerometer
11-14 12:26:47.559: D/SENSORS(911): AK8973 3-axis Magnetic field sensor
11-14 12:26:47.559: D/SENSORS(911): AK8973 Orientation sensor
11-14 12:26:47.559: D/SENSORS(911): CM3602 Proximity sensor
11-14 12:26:47.559: D/SENSORS(911): CM3602 Light sensor
11-14 12:26:47.559: D/SENSORS(911): Gravity Sensor
11-14 12:26:47.559: D/SENSORS(911): Linear Acceleration Sensor
11-14 12:26:47.559: D/SENSORS(911): Rotation Vector Sensor

【讨论】:

  • 感谢您的努力。但是,我并没有要求提供完整的传感器列表,而是要求提供特定传感器的名称。正如我对这个问题的评论所述,这个问题是一个自我记录的问题。
  • 好吧,这里没有包含getDefaultSensor()。赞成你的答案。另外,当我发布时,我不知道这是一个自我文档问题。我会说在问题中写一个简短的句子来强调这一点,并在您将来完成时将其编辑出来。这种方式对每个人来说都是显而易见的。我会保留这个,因为示例输出仍然相关,而且人们可能会在这两个问题上使用 google。
【解决方案2】:

首先您必须获得SensorManager 的实例,然后从管理器那里获得所需的服务实例。

String sm = Context.SENSOR_SERVICE;
SensorManager sensorManager = (SensorManager) getSystemService(sm);

/*
 * We get the light sensor in this example.
 */
Sensor someSensor = sensorManager.getDefaultSensor(Sensor.TYPE_LIGHT);

/*
 * Always perform a null check on sensors since your device
 * may not have that sensor.
 */
if (null != someSensor) {
    String sensorName = someSensor.getName();
}

您可以使用 Sensor 的 getName() 方法获取名称。

【讨论】:

    【解决方案3】:

    使用getSensorList(Sensor.TYPE_ALL),您可以获得设备内的所有传感器。

    SensorManager sensorManager
        = (SensorManager)getSystemService(Context.SENSOR_SERVICE);
    sensorManager.getSensorList(Sensor.TYPE_ALL);
    

    【讨论】:

      猜你喜欢
      • 2013-10-13
      • 1970-01-01
      • 1970-01-01
      • 2012-09-21
      • 1970-01-01
      • 1970-01-01
      • 2018-04-22
      • 2011-09-20
      • 1970-01-01
      相关资源
      最近更新 更多