react-native获取设备信息组件react-native-device-info

转载链接:http://www.ncloud.hk/%E6%8A%80%E6%9C%AF%E5%88%86%E4%BA%AB/react-native-acquisition-device-information-component-react-native-device-info/

一、组件说明:

该组件同时适配Android和IOS平台。

二、组件介绍

1.首先需要安装组件:npm install react-native-device-info --save

2.IOS初始化:打开Xcode――>右击Libraries――>选择文件到当前项目,进入到node_modules/react-native-device-info――>添加.xcodeproj文件

2.1.在Xcode中点击你的工程名字――>Build Phases――>Link Binary With Libraries――>点击 '+'号按钮,添加libRNDeviceInfo.a文件(如下图所示)

bedded-image" src="http://img.jb51.cc/vcimg/static/loading.png" alt="" style="border:0px;vertical-align:middle;" src="http://co.ncloud.hk:8090/download/attachments/8946989/photos1.png?version=1&modificationDate=1459410605113&api=v2">

2.2.添加环境变量:$(SRCROOT)/../react-native/React and $(SRCROOT)/../../React 并且修改 recursive

2.3.好了,下面就是基本的用法

importDeviceInfofrom'react-native-device-info'
console.log("DeviceUniqueID",DeviceInfo.getUniqueID());//e.g.FCDBD8EF-62FC-4ECB-B2F5-92C9E79AC7F9
//*notethisisIDFVoniOSsoitwillchangeifallappsfromthecurrentappsvendorhavebeenprevIoUslyuninstalled

console.log("DeviceManufacturer",DeviceInfo.getManufacturer());//e.g.Apple

console.log("DeviceModel",DeviceInfo.getModel());//e.g.iPhone6

console.log("deviceid",DeviceInfo.getdeviceid());//e.g.iPhone7,2/ortheboardonAndroide.g.goldfish

console.log("DeviceName",DeviceInfo.getSystemName());//e.g.iPhoneOS

console.log("DeviceVersion",DeviceInfo.getSystemVersion());//e.g.9.0

console.log("BundleId",DeviceInfo.getBundleId());//e.g.com.learnium.mobile

console.log("BuildNumber",DeviceInfo.getBuildNumber());//e.g.89

console.log("AppVersion",DeviceInfo.getVersion());//e.g.1.1.0

console.log("AppVersion(Readable)",DeviceInfo.getReadabLeversion());//e.g.1.1.0.89

console.log("DeviceName",DeviceInfo.getDeviceName());//e.g.Becca'siPhone6

console.log("UserAgent",DeviceInfo.getUserAgent());//e.g.Dalvik/2.1.0(Linux;U;Android5.1;GoogleNexus4-5.1.0-API22-768x1280Build/LMY47D)

console.log("DeviceLocale",DeviceInfo.getDeviceLocale());//e.gen-US

console.log("DeviceCountry",DeviceInfo.getDeviceCountry());//e.gUS

3.Android的安装:

3.1首先需要修改下Gradle文件

在你的根目录下运行:react-native link react-native-device-info

3.2在MainActivity.java文件中进行注册模块(react-native的版本需要>0.18)

importcom.learnium.RNDeviceInfo.RNDeviceInfo;//<---import

publicclassMainActivityextendsReactActivity{
......

/**
*Alistofpackagesusedbytheapp.Iftheappusesadditionalviews
*ormodulesbesidesthedefaultones,addmorepackageshere.
*/
@Override
protectedList<ReactPackage>getPackages(){
returnArrays.<ReactPackage>asList(
newRNDeviceInfo(),//<------addhere
newMainReactPackage());
}
}

3.3如果你需要在安卓上获取设备的名字,需要修改AndroidManifest.xml配置文件,来获取权限。

...
<uses-permissionandroid:name="android.permission.BLUetoOTH"/>

3.4用法同IOS。

翻译链接:https://github.com/rebeccahughes/react-native-device-info

相关文章

react 中的高阶组件主要是对于 hooks 之前的类组件来说的,如...
我们上一节了解了组件的更新机制,但是只是停留在表层上,例...
我们上一节了解了 react 的虚拟 dom 的格式,如何把虚拟 dom...
react 本身提供了克隆组件的方法,但是平时开发中可能很少使...
mobx 是一个简单可扩展的状态管理库,中文官网链接。小编在接...
我们在平常的开发中不可避免的会有很多列表渲染逻辑,在 pc ...