React Native(五)——获取设备信息react-native-device-info

心酸史:
自从接触rn开始后,越来越多的引入第三方组件而开始的配置文件,让自己一再头疼:
明明是按照官方文档一步一步的配置,为什么别人可以做到的自己却屡屡出错,真是哭笑不得……从微信分享react-native-wechat,极光推送jpush-react-native,再到现在的获取设备信息react-native-device-info,真的是怕了配置文件了(或许大神们一直不会理解像zheng小叶这样菜鸟级手机开发的这般痛苦……个中滋味只有自己深知)但是当别人再问自己相关的配置时,自己还是不能只用“这个我不会,你自己看吧!”的回答敷衍,毕竟要做团结有爱的好同事嘛,况且也要做个好榜样(就像郑小爽一样)。于是,就硬着头皮再上手吧!

正题:
文档地址:https://github.com/rebeccahughes/react-native-device-info
按照文档中的一步步认真修改,基本就是可以正常使用,只是有几点小问题需要特殊处理一下。
若干问题:
1.
配到这里的时候,这里可以跳过;
2.
配置好文件,再将app安装在手机上。(在书上看过,rn项目还是使用真机性价比高些)因此,关掉模拟器连上真机react-native run-android,可是莫名其妙的错误来了,如上图:

这是什么报错???百度,google了好久,看到的是成片成片的英文解释,幸好自己心理足够强大,才从众说纷纭中找到了解决办法:打开SDK Manager,安装上Google Repository,然后再运行react-native run-android,居然就好了(如果再不行的话,打开SDK Manager,装上24版本的(这里看红色的错误信息,缺少哪个版本的Android SDK Tools就安装哪个版本),这样子就肯定好了【亲测有效】)


做完这些事情,将app顺利安装在手机上后,就会看到想要的啦:
相关的API都在文档中:https://github.com/rebeccahughes/react-native-device-info
...
componentWillMount() {
console.log("222222222222222222");
let clientId = DeviceInfo.getUniqueID();
console.log("Device Unique ID", clientId);
console.log("Device Name", DeviceInfo.getSystemName());
}
...

完美~
遇到诸如此类的问题后,就像以前老大帮忙解决问题一样,换个角度多方面思考问题,这样再难的问题总会解决掉。
PS(如果连接模拟器的话, Cannot read property 'uniqueId' of undefined,因此调试rn项目的时候,最好使用真机,这样就会避免发生不可预知的bug):

React Native(五)——获取设备信息react-native-device-info的更多相关文章
- React Native之获取通讯录信息并实现类通讯录列表(ios android)
React Native之获取通讯录信息并实现类通讯录列表(ios android) 一,需求分析 1,获取通讯录信息,筛选出通讯录里有多少好友在使用某个应用. 2,获取通讯录信息,实现类通讯录,可拨 ...
- 小白学phoneGap《构建跨平台APP:phoneGap移动应用实战》连载五(使用PhoneGap获取设备信息)
除了能够将HTML页面打包成可以直接安装运行的APP外,PhoneGap的一个最大优势在于可以通过JavaScript调用设备来访问设备上的硬件信息,从而实现一些原本只有依靠原生SDK才能够达到的目的 ...
- Android 获取设备信息 异常
/**获取设备信息 * @param c * @return */ public static void setDeviceInfo(Context c,RequestParams params){ ...
- 微信小程序 --- 获取设备信息
获取设备信息: wx.getSystemInfo model:手机型号 pixelRatio:设备像素比 windowWidth:窗口宽度 windowHeight:窗口高度 language:语言 ...
- PhoneGap获取设备信息
一. 获取设备信息的方法列表(如果没有或者检测不出来就显示undefined) 1.device.name 设备名称(一些国产机检测不出来) 2.device.model ...
- appium自动化测试框架——封装获取设备信息类
在上一节中,我们已经解决了如何在python中执行cmd,并获取执行结果.下面就小小实战一下,获取设备信息. 一.思路 1.windows上获取设备信息的方法 输入dos命令“adb devices” ...
- 微信小程序把玩(三十八)获取设备信息 API
原文:微信小程序把玩(三十八)获取设备信息 API 获取设备信息这里分为四种, 主要属性: 网络信息wx.getNetWorkType, 系统信息wx.getSystemInfo, 重力感应数据wx. ...
- 测试成长记录:python调adb无法获取设备信息bug记录
背景介绍: 一直在负责公司Android自动化的编写工作,采用的是uiautomator2,需要获取设备id来连接设备,就是 adb devices 问题描述: 之前一直用 subprocess.ch ...
- 设备信息的管理(Device) ---- HTML5+
模块:Device Device模块管理设备信息,用于获取手机设备的相关信息,如IMEI.IMSI.型号.厂商等.通过plus.device获取设备信息管理对象. 应用场景:打电话,铃声提醒,震动提醒 ...
随机推荐
- github开源库(三)
41.android-swipelistview SwipeListView是一个Android List View实现,实现了自定义ListView单元格,可通过滑动来显示扩展面板.开发者可直接登陆 ...
- LEARNING TO NAVIGATE IN COMPLEX ENVIRONMENTS
任务是地图里面导航,让agent从起始点到达指定位置. 用了supervised learning + reinforcement learning + lstm 用supervised learni ...
- MD2关键桢动画3D模型加载.
在看Cg教程中,看到关键桢插值来表示一个动画的物体,例如一个动物拥有站着,奔跑,下跪等动画序列,美工将这些特定的姿态称为一个关键桢.为什么要用关键桢这种来表示了,这个比较容易理解,我们知道我们看的一些 ...
- confluence + 禅道安装教程
都是从网上拿的 1. 搭建confluence BE82-LO81-4O25-THDD AAABMQ0ODAoPeJxtkE1rwzAMhu/+FYadXepkYd3AsDQ2rCwfZUkHO7qp ...
- Linux中的链接文件_软链接和硬链接
一.链接文件介绍 Linux操作系统中的“链接文件”分为硬链接(hard link)和软链接(symbolic link).两种链接的本质区别在于inode.以下是详细介绍: 硬链接:当系统要读取一个 ...
- Spring JDBC对象批量操作
以下示例将演示如何使用spring jdbc中的对象进行批量更新.我们将在单次批次操作中更新student表中的记录. student表的结果如下 - CREATE TABLE student( id ...
- tpshop商品属性表关系
TPshop 里面的商品属性, 首先看看TPshop商品详情中的属性介绍, 纯展示给用户看的. 再来tpshop看看商品列表帅选页面的属性,可以根据属性帅选不同的商品 再来看看tpshop后台属性管理 ...
- 测试webservice的时候,如果出现这个错误:"The test form is only available for requests from the local machine"
测试webservice的时候,如果出现这个错误:"The test form is only available for requests from the local machine&q ...
- sql 查找最后一条记录
1.通过row select * from tablewhere rownum<(select count(*)+1 from table)minusselect * from tablewhe ...
- ASP.NET CheckBoxList 控件实现全选、反选、清除功能 利用js
直接看代码: JS代码如下: <script type="text/javascript" language="javascript"> funct ...