java - 特征检测

标签 java android

我不确定是否有 Android 方法可以做到这一点,或者这是否只是一个一般的 Java 问题。特征检测机制的最佳设计是什么?我希望能够询问运行时环境是否支持功能 foo(这也可能在编译时确定,所以不仅仅是运行时的东西)。

更新

我正在考虑使用以下(天真?)方法:

public enum Feautures {
    GPS, DockToKeyboard;

    public boolean isSupported() {
        //switch statement
    }
}

最佳答案

PackageManager pm = getPackageManager();
List<ResolveInfo> activities = pm.queryIntentActivities(new Intent(
            RecognizerIntent.ACTION_RECOGNIZE_SPEECH), 0);
if (activities.size()>0); // then you have SPEECH RECOGNIZER.

final LocationManager manager = (LocationManager) getSystemService(Context.LOCATION_SERVICE);

if (manager.isProviderEnabled(LocationManager.GPS_PROVIDER)); // then you have GPS.

关于java - 特征检测,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5985380/

相关文章:

java - 当您需要创建一个指向变量的指针时,为什么指针可以节省内存?

android - 搜索 View onQueryTextChange 问题

android - 'MvvmCross.HotTuna.CrossCore' 已经为 'MvvmCross.HotTuna.Binding' 定义了依赖项

android - 至少一次在不打开应用程序的情况下接收到 Android 应用程序的短信

java - 可以使用哪些扩展/插件/提供程序机制来使我的 Web 应用程序可扩展?

java - 我可以创建一个类来用 Java 存储 Android 应用程序中的所有字符串,而不是使用 Context 和 getString 吗?

android - 使用 setCurrentItem 打开幻灯片时,Viewpager2 过渡卡住了一半

javascript - Android webView 支持 svg 渲染

java 泛型用于两种以上类型

java - 翻译这个 Eratosthenes 筛法的 java 实现?