mac android 模拟器启动,react-native使用脚本启动android模拟器(macos)

我们在开发react-native的时候,需要先启动安卓模拟器,然后执行npm start启动编译。正常启动模拟器的方式就是:

1、打开android studio

2、打开一个项目,随便什么吧

3、点击右上角 AVD Manager

4、选择一个模拟器,并双击

对的,如果你用的是android studio,那没什么问题的,举手之劳的事儿。

但是我们一般用webstorm,因为RN是android和ios共享的,所以用xcode和android studio都不舒服。

福利来了

笔者给你们一个快速打开的脚本。你可以保存到项目的文件里,比如 android.sh

#!/usr/bin/env bash

ANDROID_PATH_EXIST=`cat ~/.bash_profile | grep ANDROID_NDK=`

if [ "$ANDROID_PATH_EXIST" == "" ]; then

echo '

export ANDROID_NDK=$HOME/Library/Android/ndk

' >> ~/.bash_profile

source $HOME/.bash_profile

fi

avds=`ls ~/.android/avd | grep .avd | sed "s#.avd##"`

avds=(${avds})

avd_count=`ls ~/.android/avd | grep .avd | wc -l`

echo ""

echo "安卓模拟器列表:"

echo ""

ls ~/.android/avd | grep .avd | sed "s#.avd##"

echo ""

if [ ${avd_count} == 0 ]; then

echo "没有找到安卓模拟器,请到android studio中添加"

exit 1

elif [ ${avd_count} == 1 ]; then

avd=${avds[0]}

else

# 需要从刚才的列表里任选一个

read -p "你要启动哪个模拟器:" avd

echo ""

fi

process=`ps aux | grep "\-avd ${avd}" | grep -v grep`

process_count=`echo ${process} | wc -l`

if [ "${process}" != "" ] && [ ${process_count} == 1 ]; then

process_id=`echo ${process} | awk '{print $2}'`

echo "正在强制关闭模拟器..."

kill -9 ${process_id}

# 防止再次启动失败

sleep 1

fi

echo "模拟器${avd}正在启动..."

cd ~/Library/Android/sdk/tools/

emulator -avd ${avd} &

echo "模拟器启动完成"

怎么用呢?

sh android.sh && npm start

或者干脆写进npm start的脚本里,更省事的

顺便说一句,ios的启动也是用脚本的

react-native run-ios --port 8081 --simulator 'iPhone 7'

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值