android環境傳感器

環境傳感器

Android平臺提供瞭4個傳感器,用於檢測不同的外部環境。我們可以使用這些傳感器檢測周圍。例如,可以檢測周圍空氣的濕度、光線、空氣的壓強和溫度。這4個傳感器都是基於硬件的傳感器。除瞭光線傳感器外,其他3個傳感器在普通的Android設備中很少見。所以如果使用環境傳感器,最好運行時對當前Android設備所支持的傳感器是否檢測。

大多數動作傳感器和位置傳感器都返回多個值,而所有的環境傳感器都隻返回一個值(SensorEvent.values[0])。例如溫度傳感器返回攝氏度(°C)、壓力傳感器返回壓強值(hPa)。還有就是環境傳感器返回的值很少收到雜音的幹擾,而動作和位置傳感器經常需要消除雜音的影響。例如,加速度傳感器要消除重力對其回傳值的影響。

TYPE_AMBIENT_TEMPERATURE :event.values[0] °C

TYPE_LIGHT:event.values[0] lx

TYPE_PRESSURE:event.values[0] hPa

TYPE_RELATIVE_HUMIDITY :event.values[0] RH(%)

 

// 最強的光線強度(估計隻有沙漠地帶才能達到這個值)
public static final float LIGHT_SUNLIGHT_MAX = 120000.0f;
// 萬裡無雲時陽光直射的強度
public static final float LIGHT_SUNLIGHT = 110000.0f;
// 有陽光,但被雲彩抵消瞭部分光線時的強度
public static final float LIGHT_SHADE = 20000.0f;
// 多雲時的光線強度
public static final float LIGHT_OVERCAST = 10000.0f;
// 太陽剛剛升起時(日出)的光線強度
public static final float LIGHT_SUNRISE = 400.0f;
// 在陰雨天,沒有太陽時的光線強度
public static final float LIGHT_CLOUDY = 100.0f;
// 夜晚有月亮時的光線強度
public static final float LIGHT_FULLMOON = 0.25f;
// 夜晚沒有月亮時的光線強度(當然,也不能有路燈,就是漆黑一片)
public static final float LIGHT_NO_MOON = 0.001f;

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *