分享搭建React Native安卓环境遇到的问题及解决方案

发布于14天前 作者shen100 37次浏览

Android Studio自带的模拟器的HOSTS文件不能修改?

按照网上搜索的方法,将/system改为可读写的,输入以下命令

adb root
adb remount
adb shell
root@xxxxxx:/ #mount -o remount, rw /system

最后输入mount后,发现/system还是只读的,见下面的 /system ext4 ro,即read only

/dev/block/sda6 /system ext4 ro,noatime,data=ordered 0 0

最后换成用genymotion装模拟器,输入以下命令后,hosts文件能修改了

adb root
adb remount
adb shell
root@xxxxxx:/ #mount -o remount, rw /system

Genymotion安装的模拟器不能上网?

折腾了一天,模拟器有时候能上网,有时候不能,最后发现,原来是没有手动连接WIFI,如下图,不只是On 这个按钮要开启,而且WiredSSID要点击后连接,之前一直是仅仅开启了On这个按钮

React Native初始化项目速度很慢?

在进行React Native初始化时,需要执行如下命令:

react-native init AwesomeProject

但是按下Enter键后,要很长时间才能初始化完成,或者直接就失败了。

在初始化的过程中,node-gyp需要进行编译,node-gyp 编译时候需要 NodeJs 源码来提供头文件,所以它会先尝试下载 NodeJs 源码。我们可以先把 NodeJs源码下载到本地,然后提取给 node-gyp。

执行如下脚本:

bash node-gyp.sh

执行脚本前要保证已经安装了nodejs, wget,如果没安装的话,请先安装。

node-gyp.sh的内容如下:

NODE_VERSION=`node -v | cut -d'v' -f 2`

echo ${NODE_VERSION}

# 下载源码包(使用镜像)
wget http://npm.taobao.org/mirrors/node/v$NODE_VERSION/node-v$NODE_VERSION.tar.gz

# 删除现有内容不完整的目录
rm -rf ~/.node-gyp
mkdir ~/.node-gyp

# 解压缩并重命名到正确格式
tar zxf node-v$NODE_VERSION.tar.gz -C ~/.node-gyp
mv ~/.node-gyp/node-v$NODE_VERSION ~/.node-gyp/$NODE_VERSION

# 创建一个标记文件
printf "9\n">~/.node-gyp/$NODE_VERSION/installVersion

npm官方的源不稳定,我们可以使用国内淘宝的源

npm config set registry=http://registry.npm.taobao.org/

配置这些之后,再去初始化项目

react-native init AwesomeProject
收藏
分享
暂无回复