心酸史:

自从接触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的更多相关文章

  1. React Native之获取通讯录信息并实现类通讯录列表(ios android)

    React Native之获取通讯录信息并实现类通讯录列表(ios android) 一,需求分析 1,获取通讯录信息,筛选出通讯录里有多少好友在使用某个应用. 2,获取通讯录信息,实现类通讯录,可拨 ...

  2. 小白学phoneGap《构建跨平台APP:phoneGap移动应用实战》连载五(使用PhoneGap获取设备信息)

    除了能够将HTML页面打包成可以直接安装运行的APP外,PhoneGap的一个最大优势在于可以通过JavaScript调用设备来访问设备上的硬件信息,从而实现一些原本只有依靠原生SDK才能够达到的目的 ...

  3. Android 获取设备信息 异常

    /**获取设备信息 * @param c * @return */ public static void setDeviceInfo(Context c,RequestParams params){ ...

  4. 微信小程序 --- 获取设备信息

    获取设备信息: wx.getSystemInfo model:手机型号 pixelRatio:设备像素比 windowWidth:窗口宽度 windowHeight:窗口高度 language:语言 ...

  5. PhoneGap获取设备信息

    一. 获取设备信息的方法列表(如果没有或者检测不出来就显示undefined) 1.device.name              设备名称(一些国产机检测不出来) 2.device.model   ...

  6. appium自动化测试框架——封装获取设备信息类

    在上一节中,我们已经解决了如何在python中执行cmd,并获取执行结果.下面就小小实战一下,获取设备信息. 一.思路 1.windows上获取设备信息的方法 输入dos命令“adb devices” ...

  7. 微信小程序把玩(三十八)获取设备信息 API

    原文:微信小程序把玩(三十八)获取设备信息 API 获取设备信息这里分为四种, 主要属性: 网络信息wx.getNetWorkType, 系统信息wx.getSystemInfo, 重力感应数据wx. ...

  8. 测试成长记录:python调adb无法获取设备信息bug记录

    背景介绍: 一直在负责公司Android自动化的编写工作,采用的是uiautomator2,需要获取设备id来连接设备,就是 adb devices 问题描述: 之前一直用 subprocess.ch ...

  9. 设备信息的管理(Device) ---- HTML5+

    模块:Device Device模块管理设备信息,用于获取手机设备的相关信息,如IMEI.IMSI.型号.厂商等.通过plus.device获取设备信息管理对象. 应用场景:打电话,铃声提醒,震动提醒 ...

随机推荐

  1. mxnet卷积计算

    #coding:utf-8 ''' 卷积计算 ''' import mxnet as mx from mxnet.gluon import nn from mxnet import ndarray a ...

  2. c 二维数组动态分配和释放

    c动态语言 函数声明的头文件在<stdlib.h>里 使用malloc函数为字符串分配内存 -->记得释放内存 free() #include <stdio.h> #in ...

  3. JAXB解析xml

    废话不多说,直接上代码 核心类: package com.jaxb; import java.io.File; import java.io.FileInputStream; import java. ...

  4. ITSM运营实施案例 - 汽车行业

    M公司是在汽车行业知名TOP企业,在日常运营过程中有如下问题: ******************************************************************** ...

  5. 信噪比——信号加噪相关的知识

    信噪比:即Signal noise ratio , 即SNR: 它的单位为 dB, 公式为: SNR = 10lg(PS / PN), 其中 ps 表示信号的有效功率, pn 表示噪声的有效功率: 如 ...

  6. JDBC选择数据库实例

    在本教程将演示如何在JDBC应用程序中选择一个数据库. 在执行以下示例之前,请确保您已经准备好以下操作: 具有数据库管理员权限,以在给定模式中创建数据库. 要执行以下示例,需要用实际用户名和密码替换这 ...

  7. Java EE的十三个技术规范

    Java 是一种非常棒的语言,健壮,跨平台运行,屏蔽了具体的平台环境的要求,也就是说只要支持java 虚拟机,就可以运行java程序. 下面,我们一起学习一下J2EE的十三种技术规范. 一.JDBC: ...

  8. Weblogic在Linux下启动特别慢及进入控制台慢的解决方法

    实际是JVM在Linux下的bug 他想调用一个随机函数 但取不到 暂时的解决办法是 1)较好的解决办法: 在Weblogic启动参数里添加 “- Djava.security.egd=file:/d ...

  9. Hive性能分析和优化方法

    Hive性能分析和优化方法 http://wenku.baidu.com/link?url=LVrnj-mD0OB69-eUH-0b2LGzc2SN76hjLVsGfCdYjV8ogyyN-BSja5 ...

  10. 前端如何获取http状态码400的返回值

    axios.get("/check_mobile_and_sent_code",{withCredentials:true,params:{mobile:formInline.mo ...