android - phonegap android 检查设备是否有闪存

标签 android cordova android-package-managers flashlight

我用 phonegap 3.0 为 android 创建了一个应用程序,我想检查设备是否有闪光灯,但我对 getPackageManager() 方法有问题,

这是 java 文件的一部分,我在设备上编译没有错误,但插件不起作用:

    ...
    import android.content.Context;
    import android.content.pm.PackageManager;

    public class Torch extends CordovaPlugin {


      Camera camera;
      Camera.Parameters Parameters;
      boolean hasFlash;
      Context my_service;

    /*  Constructor */
        public Torch() {  }

        public boolean execute(String action, JSONArray args, CallbackContext callbackContext) throws JSONException {

            if (action.equals("shine")) {
                    hasFlash = my_service.getPackageManager().hasSystemFeature(PackageManager.FEATURE_CAMERA_FLASH);
                    if (!hasFlash) {  callbackContext.error("no torch found");  } 
                    else { this.shine(args.getBoolean(0));

        } ...

我也尝试了 eclipse 中的代码,只有在没有 Context my_service 实例的情况下它才能工作。

hasFlash = getApplicationContext().getPackageManager()
                .hasSystemFeature(PackageManager.FEATURE_CAMERA_FLASH);

        if (!hasFlash) { ...

最佳答案

试试这个

    boolean hasFlash = this.cordova.getActivity().getPackageManager()
                .hasSystemFeature(PackageManager.FEATURE_CAMERA_FLASH);

关于android - phonegap android 检查设备是否有闪存,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19222213/

相关文章:

android - Android中检查相机是否可以使用与Intent上的resolveActivity

android - 在 Android 中显示已安装的应用程序时出现重复

android - 获取其他应用程序图标 uri?

javascript - Phonegap - iOS - 谷歌地图 "Sorry no imagery here"

android - 在 Activity 之间传递 id 或整个对象?

android - 使用 Eclipse 和 Phonegap/Cordova 3 进行开发

android - 如何在 Cordova 的飞溅 Activity 中添加背景音乐?

android - 无需用户交互即可在我的 apk 中下载 Apk

android - 包含一个新的布局,在 CoordinatorLayout 中不能正常工作?

javascript - 在 Android 上长按时禁用上下文菜单