选择哪个 android 设备(模拟器或 phone)将反应本机 运行-android 运行

Choose which android device (emulator or phone) will react-native run-android run on

我正在开发一个 react-native 应用程序,每次我想将更改更新到实际的 phone 或模拟器时,我执行 react-native run-android (有时我使用重新加载模拟器中的功能)。

我的问题是是否可以指定 device/emulator 命令将 运行,因为当我都连接时它会 运行 并更新应用程序最近 run/plugged.

所以我会想象这样的事情:

react-native run-android --device=XXXXXX

我一直在做一些研究,到目前为止还没有找到答案,所以我希望有人对此有所了解。谢谢!

如果您浏览文档,您会发现还有两个命令可用于启动服务器,但没有这样的 react-native 运行-android ---// deviceID 命令目前可用,但是,您可以在 node_modules 中自定义 React 本机代码,为自己制作该命令。

两条命令是:

1)react-native start
2)npm start

干杯:)

如果您只有一台设备,插入或 运行作为模拟器:

npx react-native run-android // or if you have a npm script, 'npm run android'

如果您有多个设备,无论是插入的还是 运行作为模拟器,以下内容都非常有用。

确保设备已插入,并使用 adb devices 获取设备 ID,然后 npx react-native run-android --deviceId [DEVICE_ID]

首先,插入设备,或使用Android Emulator CLI启动模拟器。

  1. emulator -list-avds 将列出您的 avds(android 虚拟设备),例如Pixel_2_API_29
  2. emulator -avd Pixel_2_API_29emulator @Pixel_2_API_29将启动指定的设备。
  3. emulator -help 了解更多信息。
  4. 然后,打开一个新的终端/标签,运行 或者 npx react-native run-android它将在所有 android 设备上启动您的应用程序,包括物理设备和 AVD。 如果您只想指定 1 台设备(为什么不 运行 全部指定!):
  5. adb devices,获取设备 ID 列表,例如1cfe4i231414523
  6. npx react-native run-android --deviceId 1cfe4i231414523

PS:React native 入门指南指定您应该卸载 react-native,而是通过 npx 使用包。卸载 npm rm -g react-native。现在,每次你想要 运行 react-native,使用 npx react-native [command]。 npx 所做的是它在本地 node_modules 中查找并从那里查找 运行,而不是可能过时的全局 react-native 包。