Javascript 从本机iOS检索设备信息

Javascript 从本机iOS检索设备信息,javascript,ios,reactjs,react-native,Javascript,Ios,Reactjs,React Native,嘿,我想从iPad上获取设备信息。我尝试过使用,但在我安装pod后,它完全破坏了我的解决方案。我希望能够至少获得设备的名称。我如何在不使用NPM模块的情况下实现这一点,或者是否有人知道一个不需要引入额外依赖项就能工作的模块 谢谢 这可以很容易地使用,不需要库或依赖项 同步版本 在您的JS中: import { NativeModules} from "react-native" const DeviceInfo = NativeModules.DeviceInfo; const device

嘿,我想从iPad上获取设备信息。我尝试过使用,但在我安装pod后,它完全破坏了我的解决方案。我希望能够至少获得设备的名称。我如何在不使用NPM模块的情况下实现这一点,或者是否有人知道一个不需要引入额外依赖项就能工作的模块


谢谢

这可以很容易地使用,不需要库或依赖项

同步版本

在您的JS中:

import { NativeModules} from "react-native"

const DeviceInfo = NativeModules.DeviceInfo;

const deviceName = DeviceInfo.getName();
import { NativeModules} from "react-native"

const DeviceInfo = NativeModules.DeviceInfo;

DeviceInfo.getName().then(deviceName => {
  console.log("Current Device: "+deviceName);
}
在iOS中: RCTDeviceInfo.h

#import <Foundation/Foundation.h>
#import <React/RCTBridgeModule.h>

@interface RCTDeviceInfo : NSObject<RCTBridgeModule>

@end
#import <Foundation/Foundation.h>
#import <React/RCTBridgeModule.h>

@interface RCTDeviceInfo : NSObject<RCTBridgeModule>

@end
异步版本

在您的JS中:

import { NativeModules} from "react-native"

const DeviceInfo = NativeModules.DeviceInfo;

const deviceName = DeviceInfo.getName();
import { NativeModules} from "react-native"

const DeviceInfo = NativeModules.DeviceInfo;

DeviceInfo.getName().then(deviceName => {
  console.log("Current Device: "+deviceName);
}
在iOS中: RCTDeviceInfo.h

#import <Foundation/Foundation.h>
#import <React/RCTBridgeModule.h>

@interface RCTDeviceInfo : NSObject<RCTBridgeModule>

@end
#import <Foundation/Foundation.h>
#import <React/RCTBridgeModule.h>

@interface RCTDeviceInfo : NSObject<RCTBridgeModule>

@end

您需要一个使用本机代码提取设备相关信息的库。谢谢,这很有意义,但当我在应用程序中尝试此操作时,会出现以下错误:chrome不支持在本机模块上调用同步方法。考虑提供其他方法来在调试模式下公开此方法,例如,通过提前曝光常数。“关于如何解决这个问题,你有什么想法吗?如果你也想使用chrome调试器,就不能在本机模块中使用同步方法。”。我将添加另一个不会使调试程序崩溃的异步版本。我在项目或React库源代码中的任何地方都找不到对RCTDataLogger.h的引用。“你上过那门课吗?”@Akinwillams对不起,那是我的错别字。它应该是
#导入“RCTDeviceInfo.h”