【问题标题】:How to check in `react-native` that android device supports flashlight?如何检查android设备支持手电筒的`react-native`?
【发布时间】:2020-03-02 14:37:12
【问题描述】:

我的react-native 应用程序中有一个手电筒图标。如果移动设备不支持手电筒或没有手电筒,我想隐藏它。

在原生android中我们有这个解决方案:

[https://stackoverflow.com/a/19599365/6644676][1]

【问题讨论】:

    标签: android react-native flashlight


    【解决方案1】:

    使用这个 npm 包。

    https://www.npmjs.com/package/react-native-torch

    如果设备没有torch,那么下面的代码会抛出异常并执行catch块,这样你就可以知道设备是否有torch

    try {
       await Torch.switchState(newTorchState);
       this.setState({ isTorchOn: newTorchState });
    } 
    catch (e) {
      ToastAndroid.show(
        'We seem to have an issue accessing your torch',
        ToastAndroid.SHORT
      );
    }
    

    【讨论】:

    • 感谢您的回答。但这似乎是一种解决方法。不是一个合适的解决方案。
    • 那么我相信你需要在你的 react native 项目中使用 android 原生代码创建一个原生模块并将其访问到 react native 组件中,参考:facebook.github.io/react-native/docs/native-modules-android
    • @AngadTiwari @AngadTiwari 可以用react-native-torch来判断手电筒是否开着吗?
    猜你喜欢
    • 1970-01-01
    • 2017-03-19
    • 1970-01-01
    • 2022-01-01
    • 2021-05-05
    • 1970-01-01
    • 2023-03-26
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多