是否可以仅对一台特定设备使用
run-android
命令?
例如,如果我连接了三台设备(或模拟器),并且我只想在其中一台上使用
run-android
?
也许类似
adb install -s DEVICE_NUMBER
?
要在可选设备上运行反应本机应用程序,您可以在运行命令中指定一些标志。要查看可用的添加 --help:
npx react-native run-android --help
然后你可以通过--deviceId指定你的设备ID
npx react-native run-android --deviceId=DEVICE_ID
查看可用设备 ID'
亚行设备
列出 AVD:
$ANDROID_HOME/tools/emulator -list-avds
运行特定模拟器:
$ANDROID_HOME/tools/emulator -avd Pixel_API_28_AOSP
要在当前打开的模拟器中运行 React Native:
npx react-native run-android
要在多个正在运行的模拟器之间进行选择:
adb devices
npx react-native run-android --deviceId=DEVICE_ID
(这个答案的最后一点)
详细阐述@alexander的答案,您可以使用以下工作流程:
cd android
./gradlew assembleDebug # assembleRelease for release builds
adb install -s <yourdevice> app/build/outputs/apk/yourapk.apk # You can check the identifier for your device with adb devices
adb reverse tcp:8081 tcp:8081 Will forward the phone's 8081 port to the computer's 8081, where the packager listens. If you are deploying over Wi-Fi, have a look at: https://facebook.github.io/react-native/docs/running-on-device-android.html#configure-your-app-to-connect-to-the-local-dev-server-via-wi-fi
在不同的屏幕中,运行:
npm start # Will run the packager
如果您确实需要这个,您可能需要将第一个片段包装到一个脚本中,您可以使用手机的标识符对其进行参数化。
npx react-native run-android --deviceId='myDeviceId'
这对我有用。别忘了
''
这个。它接受字符串
你可以做
npx react-native run-android --list-devices
。这将允许您在可用的设备/模拟器中选择一个设备/模拟器(连接和断开连接)。
您不需要使用
run-android
命令在特定设备上启动它
首先,你必须启动打包器:
./packager/packager.sh
然后只需构建一个 APK 文件并在目标设备上运行它。 APK 将连接到构建服务器,并自动从中获取捆绑包。
但是如果由于某些原因没有发生,请单击重新加载按钮:-)
实际上,首先,请确保
adb
安装,我认为在设置您的RN环境时您肯定已经安装了,请按照以下步骤操作:
使用电缆将 Android 外部设备连接到计算机
运行这个命令
adb devices
,你至少会看到结果:
List of devices attached
9999xxx3434yyy device
仅供参考:
9999xxx3434yyy
是您的设备ID
将给定的设备 ID 放入以下命令中
npx react-native run-android --deviceId="9999xxx3434yyy"
或
yarn run react-native run-android --deviceId="9999xxx3434yyy"
提示:如果设备是小米产品,请继续观看手机屏幕,因为您应该重新安装访问权限。
如果您使用的是 React >= 0.68.x。只需输入以下内容:
npx react-native run-android --deviceId=VCR4XCORPFTKAQFA
在终端中输入 adb devices 即可恢复 VCR4XCORPFTKAQFA。
要在一台特定连接的 Android 设备上运行应用程序:
adb devices
以查看已连接设备的列表(您应该只看到 1 个这样的设备,因为其余设备已断开连接)npx react-native run-android
这将通过 USB 在连接的设备上安装 React-native 应用程序。
在这种情况下似乎无法在特定设备上安装应用程序。所以请遵循这个
npx react-native run-android
adb devices
8081
映射到计算机的 8081
例如:
adb -s DEV_1_ID reverse tcp:8081 tcp:8081
adb -s DEV_2_ID reverse tcp:8081 tcp:8081
adb -s DEV_3_ID reverse tcp:8081 tcp:8081
...
当然!这是更新的答案,其中包含
npm
和 yarn
命令:
package.json
文件。scripts
部分。android
键并替换其值,或创建新的 android_list
键和值。android
键的值"android": "react-native run-android --list-devices"
"android_list": "react-native run-android --list-devices"
然后使用以下命令运行命令:
npm run android_list
yarn android_list