มันเป็นไปได้ที่จะเรียกใช้โปรแกรมประยุกต์ตอบสนองพื้นเมืองบนอุปกรณ์ iOS ของคุณโดยตรงจากบรรทัดคำสั่งเหมือนที่เราทำในการจำลองด้วยreact-native run ios --simulator "iPhone 5s"
?
มันเป็นไปได้ที่จะเรียกใช้โปรแกรมประยุกต์ตอบสนองพื้นเมืองบนอุปกรณ์ iOS ของคุณโดยตรงจากบรรทัดคำสั่งเหมือนที่เราทำในการจำลองด้วยreact-native run ios --simulator "iPhone 5s"
?
คำตอบ:
สิ่งต่อไปนี้ใช้ได้ผลสำหรับฉัน (ทดสอบกับ react native 0.38
และ0.40
):
npm install -g ios-deploy
# Run on a connected device, e.g. Max's iPhone:
react-native run-ios --device "Max's iPhone"
หากคุณพยายามเรียกใช้run-ios
คุณจะเห็นว่าสคริปต์แนะนำให้ทำnpm install -g ios-deploy
เมื่อถึงขั้นตอนการติดตั้งหลังจากสร้าง
ในขณะที่เอกสารเกี่ยวกับคำสั่งต่างๆที่ตอบสนองพื้นเมืองข้อเสนอเป็นร่างเล็ก ๆ น้อย ๆ มันคุ้มค่าที่จะไปตอบสนองพื้นเมือง / ท้องถิ่น CLI ที่นั่นคุณสามารถดูคำสั่งทั้งหมดที่มีอยู่และรหัสที่เรียกใช้ - คุณสามารถคำนวณได้ว่ามีสวิตช์ใดบ้างสำหรับคำสั่งที่ไม่มีเอกสาร
react-native run-ios --device
งานได้และคำสั่งข้างต้นไม่ได้
npm install -g ios-deploy
ให้ลองเรียกใช้ sudo npm install -g ios-deploy --unsafe-perm=true --allow-root
react-native run-ios --udid XXXX --configuration Release
** INSTALLATION SUCCEEDED **
แต่ไม่มีอะไรเกิดขึ้นบนอุปกรณ์ ... เชื่อมต่ออย่างถูกต้อง 100% และรับรู้โดย Xcode พยายามทั้งคำตอบหลักและความคิดเห็น: react-native run-ios --device
ด้วยผลลัพธ์เดียวกัน
npm install -g ios-deploy
react-native run-ios --device "______\'s iPhone"
Found Xcode project ________.xcodeproj
Could not find device with the name: "_______'s iPhone".
Choose one of the following:
______’s iPhone Udid: _________
react-native run-ios --udid 0412e2c230a14e23451699
react-native run-ios --udid 0412e2c230a14e23451699 -- configuration Release
sudo npm install -g ios-deploy --unsafe-perm=true
ทำงาน
ios-deploy -c
ทำงานอย่างไรไม่ใช่เครื่องมือบรรทัดคำสั่ง มันควรจะเป็นyarn/npm ios-deploy -c
หรืออะไรบางอย่างสาเหตุที่ไม่ได้ผล
รันคำสั่งนี้ในไดเร็กทอรี root ของโปรเจ็กต์
1>. รายชื่ออุปกรณ์ iPhone ที่พบอุปกรณ์จริงและเครื่องจำลองที่เชื่อมต่อ เช่นเดียวกับคำสั่ง adb devices สำหรับ Android
xcrun instruments -s devices
2>. เลือกอุปกรณ์โดยใช้คำสั่งนี้ที่คุณต้องการเรียกใช้แอพของคุณ
ใช้ชื่ออุปกรณ์
react-native run-ios --device "Kool's iPhone"
ใช้ UDID
react-native run-ios --device --udid 0412e2c2******51699
รอและดูเพื่อเรียกใช้แอปของคุณในอุปกรณ์เฉพาะ - K00L;)
device
และudid
ตัวเลือกไม่สามารถใช้ร่วมกันได้"
หากคุณได้รับข้อผิดพลาดนี้ios-deploy@x.x.x preinstall: ./src/scripts/check_reqs.js && xcodebuild ...
โดยใช้ไฟล์npm install -g ios-deploy
ลองทำตามนี้ มันใช้ได้กับฉัน:
sudo npm uninstall -g ios-deploy
brew install ios-deploy
แค่อยากจะเพิ่มบางอย่างในคำตอบของคามิล
หลังจากทำตามขั้นตอนแล้วฉันยังคงพบข้อผิดพลาด
ข้อผิดพลาดไม่พบอุปกรณ์ที่มีชื่อ: ".... 's Xr"
หลังจากลบอักขระพิเศษออกจากชื่ออุปกรณ์ (ไปที่การตั้งค่า -> ทั่วไป -> เกี่ยวกับ -> ชื่อ )
เช่น: '
มันได้ผล!
หวังว่านี่จะช่วยคนที่ประสบปัญหาคล้าย ๆ กัน
ทดสอบด้วย - react-native-cli: 2.0.1 | ปฏิกิริยาพื้นเมือง: 0.59.8 | VSCode 1.32 | Xcode 10.2.1 | iOS 12.3
ได้ทำงานกับ
react-native run-ios --device="My’s iPhone"
และสังเกตว่าชื่อ iphone ของคุณเครื่องหมายวรรคตอนอาจจะแตกต่างกัน ฉันกำลังใช้สิ่งนี้ '
จริงๆแล้วสำหรับบิลด์แรกโปรดใช้ Xcode จากนั้นทำตามวิธีต่อไปนี้:
brew install ios-deploy
npx react-native run-ios --device
คำสั่งที่สองจะทำงาน app บนที่แรกอุปกรณ์ที่เชื่อมต่อ
ios deploy does not support the following options: id
ฉันอาจเป็นเหมือนฉัน iPhone ของคุณใช้ iOS เวอร์ชันเบต้าและคุณจะต้องใช้ Xcode เวอร์ชันเบต้า ลองsudo xcode-select -s /Applications/Xcode-beta.app
(สมมติว่าคุณติดตั้งแอป Xcode beta ที่ถูกต้อง)