我想知道Android設備是否實際具有定位傳感器。 我懷疑有改變方向並不是所有的Android手機屏幕的變化(比如QWERTY鍵盤手機)Android:定位:瞭解設備是否支持定位更改
我已經通過文件了,發現一個布爾值法「canDetectOrientation()」 here 但我沒有發現任何的提及描述。任何人都可以告訴我,如果這是 方法來確定設備是否支持方向更改。
在此先感謝。
我想知道Android設備是否實際具有定位傳感器。 我懷疑有改變方向並不是所有的Android手機屏幕的變化(比如QWERTY鍵盤手機)Android:定位:瞭解設備是否支持定位更改
我已經通過文件了,發現一個布爾值法「canDetectOrientation()」 here 但我沒有發現任何的提及描述。任何人都可以告訴我,如果這是 方法來確定設備是否支持方向更改。
在此先感謝。
如果我們通過Type.All
getSensorList
功能,那麼我們將得到所有可用傳感器的列表。
然後我們可以遍歷一個列表並獲取所有傳感器的傳感器類型,如果我們發現傳感器類型方向(整數值是3),那麼我們可以得出結論,該設備具有該傳感器。
下面是相同的代碼片段。
boolean OrientationSensorFound=false;
SensorManager mSensorManager;
Sensor mSensor;
mSensorManager = (SensorManager)getSystemService(SENSOR_SERVICE);
List<Sensor> mSensorList = mSensorManager.getSensorList(Sensor.TYPE_ALL);
for(int i=0;i<mSensorList.size();i++){
// 3 is value for Orientation sensor
if(Sensor.TYPE_ORIENTATION==mSensorList.get(i).getType()){
OrientationSensorFound=true;
break;
}
}
Log.i("Sensor Found", "Orientation found : "+OrientationSensorFound);
非常感謝您的時間,我沒有去'Sensor.TYPE_ORIENTATION',因爲文檔中提到'這個常數在API級別8中被棄用。'並建議我們改爲使用'SensorManager.getOrientation()'。 –
您是否同意傳感器類型值每次必須是3? – rajpara
是的,現在明白了你的觀點。非常感謝,我應該做這個工作,試着讓你知道 –
在[傳感器](http://developer.android.com/reference/android/hardware/Sensor.html)&[的SensorManager](http://goo.gl/u4lVQ) – rajpara
外表出@ rajpara:看着傳感器和傳感器管理器,我可以找到的所有方向細節等都找不到,無法找到任何有助於發現手機是否有方向傳感器的東西。 –