全文是在Ubuntu虚拟机环境下启动安卓项目。
1.下载jdk8
配置JDK环境变量
进入root 用户模式
sudo -i
图形界面方式打开配置文件
gedit /etc/profile
在文件底部添上下面命令
export JAVA_HOME=/home/root18/Downloads/jdk8/jdk1.8.0
export $JAVA_HOME/lib:$JAVA_HOME/jre/lib:$CLASSPATH
export PATH = $JAVA_HOME/bin:$JAVA_HOME/jre/bin:$PATH
使JDK环境变量生效
source/etc/profile
验证JDK是否成功
java-version
2. 下载Android Studio
启动的快捷方法
安装完AS后,设置环境变量简化启动的步骤
图形界面方式打开配置文件
gedit /etc/profile
在文件底部加入
export PATH=$PATH:/usr/local/android-studio/bin
alias astudio=/usr/local/android-studio/bin/studio.sh
这里astudio可以用来表示Android studio
使环境变量生效
source /etc/profile
这样输入astudio就可以启动Android studio
安装sdk
启动sdk可能会出现 Unable to access Adroid sdk的提示,这时需要选择setup proxy
进入后选择第三个 Mannual proxy configuration
hostname 填入mirrors.neusoft.edu.cn
port number 填入 80(一般默认好了)
点击ok确认
若出现sdk未下载成功还需要重新配置Http Proxy,http://mirrors.dormforce.net 端口:80
Setting>Appearance & Behavior >System Settings >Http Proxy,选择Auto-detect proxy settings,并且填写URL为:http://mirrors.dormforce.net :80,点击clear passwords,最后点击OK保存设置
配置sdk系统变量
gedit /etc/profile
文档底部加入以下命令
export ANDROID_HOME=/home/root18/Android/Sdk
export PATH=$ANDROID_HOME/tools:$ANDROID_HOME/platform-tools:$PATH
下载相关工具
从SDK Manager中选择“ SDK平台”选项卡,然后选中右下角“显示软件包详细信息”旁边的框。查找并展开Android 9 (Pie)条目,然后确保选中以下各项:
Android SDK Platform 28
Intel x86 Atom_64 System Image 要么 Google APIs Intel x86 Atom System Image
接下来,选择“ SDK工具”选项卡,并在此处也选中“显示软件包详细信息”旁边的框。查找并展开“ Android SDK Build-Tools”条目,然后确保28.0.3已选择该条目。
最后,单击“应用”以下载并安装Android SDK和相关的构建工具。
安装模拟器
点击安装对应的安卓模拟器
安装nodejs、npm
解压到相应文件夹下,解压文件的 bin 目录底下包含了 node、npm 等命令,我们可以使用 ln 命令来设置软连接:
ln -s /Desktop/nodejs/bin/npm /usr/local/bin/
查看node版本
node -v 或 node --version
v12.16.1
查看npm版本
npm -v 或 npm --version
6.13.4
这里如果不使用软连接的话有可能出现node及npm实际版本比下载版本低的问题,这里我需要npm>6,node>10
jitsi-meet项目在AStudio打开后的问题
-
npm install
sudo -i
用 npm install 下载node_modules,安装相关依赖,这里不能使用cnpm install,会出现一系列报错的问题。 -
npm i -g react-native-cli
用npm 安装 react-native-cli,这样我们就有了react-native命令,可以用这个命令构建项目 -
react-native run-android
这一步用来构建安卓项目,首先要确保模拟器打开。
可能出现的坑有以下几个:
/bin/sh: 1: adb: not found
这里需要安装 adb
sudo apt-get update
sudo apt-get install adb
验证 adb
输入 adb 出现一大堆内容,表明adb已存在
adb devices 可以显示模拟器的连接状态
Error: SDK location not found. Define location with sdk.dir in the local.properties file or with an ANDROID_HOME environment variable.
这里我已经配置好sdk环境变量了,但之所以还会出现这样的报错令人费解,检查一下发现项目中没有local.properties这个文件,于是只打开android这个模块,AStudio自动给安装了local.properties文件,里面内容就是sdk.dir路径,然后打开完整的项目,运行 react-native run-android,就不会报错了,下面是运行成功的jitsi-meet安卓项目图片。
Emulator: context mismatch in svga_surface_destroy
虚拟机上运行模拟器会出现这样的报错,并且模拟器可能闪退,这种情况在网上看到没有较好的解决方法,可以选择换真机调试。
总结
只要完成以上所有该处理的细节,成功运行RN安卓项目的话,下次运行项目,只需启动好AStudio后,打开模拟器或连接真机,然后运行react-native run-android就大功告成了。
完成了第一步,也是最重要的一步,万事开头难,后面学习和开发还有很多知识点和踩不完的坑,后面还会分享的。