Android HTC Hero не сообщает правильное сообщение FeatureInfo
У меня странная проблема с моим HTC Hero 2.1
Модель =HERO200
Производитель = HTC
APILevel = 7
Он не сообщает, что у него есть аппаратный микрофон. Вот мой код для проверки возможностей.
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
Context context = this;
PackageManager pm = context.getPackageManager();
FeatureInfo[] foo = pm.getSystemAvailableFeatures();
for (FeatureInfo bar : foo) {
if (bar.name != null) {
System.out.println(bar.toString());
if (bar.name.equalsIgnoreCase("android.hardware.microphone"))
System.out.println("Booyah!");
}
}
}
Он сообщает об этих функциях:
android.hardware.camera
android.hardware.wifi
android.hardware.location.network
android.hardware.bluetooth
android.hardware.sensor.light
android.hardware.location
android.hardware.location.gps
android.hardware.camera.autofocus
android.hardware.touchscreen.multitouch
android.hardware.touchscreen
android.hardware.sensor.accelerometer
android.hardware.sensor.compass
Некоторые из них API уровня 8, такие как компас и GPS, а другие 7-го уровня. Есть ли другой способ поиска функций? Что-то еще, что я могу использовать, кроме getSystemAvailableFeatures()? Может быть, системный вызов более низкого уровня? Почему мой телефон не сообщает, что у него аппаратный микрофон? Помогите пожалуйста:) Спасибо!
1 ответ
Я думаю, если этот телефон настроен для Android API уровня 7... тогда я просто не могу установить требование, которое было разработано для API уровня 8 (как микрофон).
Это правильный способ запрашивать функции телефона от Android.
Так что... это отстой... да ладно. Но все же странно, что этот телефон сообщает о некоторых функциях API уровня 8, но вы не должны на это полагаться.