iOS 电池数据与 React Native



>我正在尝试使用 Swift 和 React 访问当前设备上的电池信息。

我有BatteryManager.swift其中包含

import Foundation
import UIKit
@objc(BatteryManager)
class BatteryManager: NSObject {
@objc(getBatteryLevel)
func getBatteryLevel() -> Float {
return UIDevice.current.batteryLevel;
}
@objc(getBatteryState)
func getBatteryState() -> UIDeviceBatteryState {
return UIDevice.current.batteryState
}
}

我还有一个BatteryManager.m文件

#import <Foundation/Foundation.h>
#import <React/RCTBridgeModule.h>
@interface RCT_EXTERN_MODULE(BatteryManager, NSObject);
RCT_EXTERN_METHOD(getBatteryLevel)
RCT_EXTERN_METHOD(getBatteryState)
@end

我有我的BatteryManager-Bridging-Header.h文件

#import <React/RCTBridgeModule.h>

然后我清理并构建我的项目(不确定是否必要)并重新运行react-native run-ios以便我重新启动我的 React Native 服务器和我的 iOS 模拟器。

然后我通过以下方式导入NativeModules'从 'react-native' 导入 { NativeModules }

;然后我写console.log(NativeModules.BatteryManager)- 我确实看到我的方法getBatteryLevelgetBatteryStatus尽管它们都产生了undefined

我尝试运行控制台.logsetTimeout但继续获得undefined

谁能帮我弄清楚为什么?

你试过用react-native-battery吗?它似乎是一个完成您想要的模块。或者,如果你想尝试调整你的解决方案,你可以从该项目的 GitHub 存储库引用 Swift 逻辑(尽管这对我来说似乎是多余的)。

相关内容

  • 没有找到相关文章

最新更新