ReactNative IOS 指定版本运行

2018/12/5 posted in  web

可以使用xcrun来运行查看具体的版本

williamtekiMacBook-Pro:react-native-Gank valentine$ xcrun simctl list devices
== Devices ==
-- iOS 12.1 --
    iPhone 5s (6199ADBB-CB0E-4CDB-8950-A871F1DA9CF0) (Shutdown)
    iPhone 6 (00AB9AE8-E128-4C10-9D62-570250772E8D) (Booted)
    iPhone 6 Plus (E69D1237-B032-4AEF-A813-74637DCBBB39) (Shutdown)
    iPhone 6s (26894AEF-9D10-40CC-B137-293C0252A6F5) (Shutdown)
    iPhone 6s Plus (7A137B77-3E03-473C-B2EE-F2721CD599E7) (Shutdown)
    iPhone 7 (308F8F53-7C35-44F3-9749-D1A27EB83F0D) (Shutdown)
    iPhone 7 Plus (781E31F0-5ABD-472A-BEEE-4184FD41FE67) (Shutdown)
    iPhone 8 (2994B9EF-2EF3-4907-B0BC-A3BA1237CC98) (Shutdown)
    iPhone 8 Plus (F4C073DC-32AB-40E9-8E3B-7390C29697AD) (Shutdown)
    iPhone SE (A95F1C9A-A574-4D87-8BCF-E8F772A01E63) (Shutdown)
    iPhone X (6394A4CF-E2DD-42D1-BAA7-A750EC6FFD7F) (Shutdown)
    iPhone XS (ED451917-64D1-450C-8BF7-FACE896A9985) (Shutdown)
    iPhone XS Max (CEA9C873-9B8B-4153-8095-5F0BEDE8AACE) (Shutdown)
    iPhone XR (38156FC2-A003-4764-A290-AC122F356BB1) (Shutdown)
    iPad Air (E6ADEDFF-C380-40CF-B39E-1A18C421C169) (Shutdown)
    iPad Air 2 (CA3F1EF9-B5D8-402D-97E0-497B15D30E1F) (Shutdown)
    iPad (5th generation) (3459FC77-D370-4082-81AD-2EF8A93D0E03) (Shutdown)
    iPad Pro (9.7-inch) (5ED82ADE-A8CF-4111-9F41-79350B2279BB) (Shutdown)
    iPad Pro (12.9-inch) (DF32A188-7A36-44D8-A3FD-2876A121CB10) (Shutdown)
    iPad Pro (12.9-inch) (2nd generation) (18B3B724-D907-4A04-AF8E-DD8BD15FBA6D) (Shutdown)
    iPad Pro (10.5-inch) (FD76F0D2-3D7A-4827-9319-B910CF8EA4BF) (Shutdown)
    iPad (6th generation) (4AD10639-51B2-407C-8F1E-0C90A6A6EFFC) (Shutdown)
    iPad Pro (11-inch) (23301F25-2B2D-40F2-8FCC-DAB30A2CDD47) (Shutdown)
    iPad Pro (12.9-inch) (3rd generation) (44A5B520-2930-48CB-9D2F-10F7FC74713E) (Shutdown)
-- tvOS 12.1 --
    Apple TV (C93717D7-B1B8-4116-AE7D-4C7A1DF6FBE7) (Shutdown)
    Apple TV 4K (0F4E46DF-35F3-423B-BDD8-4452C5A12D5C) (Shutdown)
    Apple TV 4K (at 1080p) (2C847CB7-5122-4330-BA7A-69ABA7D607F2) (Shutdown)
-- watchOS 5.1 --
    Apple Watch Series 2 - 38mm (CC6C55FE-D942-4DCF-BB9D-3775CB9851D3) (Shutdown)
    Apple Watch Series 2 - 42mm (36C5051E-69D0-47CB-A026-8C54554993A9) (Shutdown)
    Apple Watch Series 3 - 38mm (7DC891D9-A549-4E57-9249-CFE4EA805A20) (Shutdown)
    Apple Watch Series 3 - 42mm (BA5680EA-BDBA-472A-8D71-DE4974CAEDBF) (Shutdown)
    Apple Watch Series 4 - 40mm (7345AF43-04DC-45AD-9CF0-D40A1CF59BF4) (Shutdown)
    Apple Watch Series 4 - 44mm (4F1DC43F-F85E-4CA8-83E9-7A8C43A028CD) (Shutdown)

方法与android 相同,但是有个小问题
Debug 时会调用 react-native run ios命令,而这个命令默认会拉起iPhone 6的模拟器。并且系统版本还会选择现有的较低版本。有时候程序会直接因为版本太低无法运行。
只时候我们可以改一下这个命令的默认配置。
打开porject/node_modules/react-native/local-cli/runIOS/runIOS.js
在module.export 中找到options ,修改其中的Default为别的机型,比如iPhoneX,再次运行就可以默认使用iPhoneX机型Debug了
{
command: '--simulator [string]',
description: 'Explicitly set simulator to use',
default: 'iPhone X',
},

注意使用React Native Tools 进行Debug的时候,先要关闭网页的Debug。否则会提示
Could not debug. Another debugger is already connected to packager. Please close it before trying to debug with VSCode.
这时候,在行内打印断点,可以在下面的控制台查看变量进行调试,也可以用最上面的菜单栏控制Debug的步揍

参考文章:

React Native使用VSCode 进行 Debug