`react-native run-ios` trả về Lỗi: Không thể tìm thấy trình mô phỏng iPhone X


122

bất cứ khi nào tôi chạy react-native run-ios, tôi nhận được

Could not find iPhone X simulator

Error: Could not find iPhone X simulator
    at resolve (calendarPractice/node_modules/react-native/local-cli/runIOS/runIOS.js:149:13)
    at new Promise (<anonymous>)
    at runOnSimulator (calendarPractice/node_modules/react-native/local-cli/runIOS/runIOS.js:134:10)
    at Object.runIOS [as func] (calendarPractice/node_modules/react-native/local-cli/runIOS/runIOS.js:106:12)
    at Promise.resolve.then (calendarPractice/node_modules/react-native/local-cli/cliEntry.js:117:22)

tuy nhiên, khi tôi chạy trên Xcode, nó hoạt động tốt

{
  "devicetypes" : [
    {
      "name" : "iPhone 4s",
      "bundlePath" : "\/Applications\/Xcode.app\/Contents\/Developer\/Platforms\/iPhoneOS.platform\/Developer\/Library\/CoreSimulator\/Profiles\/DeviceTypes\/iPhone 4s.simdevicetype",
      "identifier" : "com.apple.CoreSimulator.SimDeviceType.iPhone-4s"
    },
    {
      "name" : "iPhone 5",
      "bundlePath" : "\/Applications\/Xcode.app\/Contents\/Developer\/Platforms\/iPhoneOS.platform\/Developer\/Library\/CoreSimulator\/Profiles\/DeviceTypes\/iPhone 5.simdevicetype",
      "identifier" : "com.apple.CoreSimulator.SimDeviceType.iPhone-5"
    },
    {
      "name" : "iPhone 5s",
      "bundlePath" : "\/Applications\/Xcode.app\/Contents\/Developer\/Platforms\/iPhoneOS.platform\/Developer\/Library\/CoreSimulator\/Profiles\/DeviceTypes\/iPhone 5s.simdevicetype",
      "identifier" : "com.apple.CoreSimulator.SimDeviceType.iPhone-5s"
    },
    {
      "name" : "iPhone 6",
      "bundlePath" : "\/Applications\/Xcode.app\/Contents\/Developer\/Platforms\/iPhoneOS.platform\/Developer\/Library\/CoreSimulator\/Profiles\/DeviceTypes\/iPhone 6.simdevicetype",
      "identifier" : "com.apple.CoreSimulator.SimDeviceType.iPhone-6"
    },
    {
      "name" : "iPhone 6 Plus",
      "bundlePath" : "\/Applications\/Xcode.app\/Contents\/Developer\/Platforms\/iPhoneOS.platform\/Developer\/Library\/CoreSimulator\/Profiles\/DeviceTypes\/iPhone 6 Plus.simdevicetype",
      "identifier" : "com.apple.CoreSimulator.SimDeviceType.iPhone-6-Plus"
    },
    {
      "name" : "iPhone 6s",
      "bundlePath" : "\/Applications\/Xcode.app\/Contents\/Developer\/Platforms\/iPhoneOS.platform\/Developer\/Library\/CoreSimulator\/Profiles\/DeviceTypes\/iPhone 6s.simdevicetype",
      "identifier" : "com.apple.CoreSimulator.SimDeviceType.iPhone-6s"
    },
    {
      "name" : "iPhone 6s Plus",
      "bundlePath" : "\/Applications\/Xcode.app\/Contents\/Developer\/Platforms\/iPhoneOS.platform\/Developer\/Library\/CoreSimulator\/Profiles\/DeviceTypes\/iPhone 6s Plus.simdevicetype",
      "identifier" : "com.apple.CoreSimulator.SimDeviceType.iPhone-6s-Plus"
    },
    {
      "name" : "iPhone 7",
      "bundlePath" : "\/Applications\/Xcode.app\/Contents\/Developer\/Platforms\/iPhoneOS.platform\/Developer\/Library\/CoreSimulator\/Profiles\/DeviceTypes\/iPhone 7.simdevicetype",
      "identifier" : "com.apple.CoreSimulator.SimDeviceType.iPhone-7"
    },
    {
      "name" : "iPhone 7 Plus",
      "bundlePath" : "\/Applications\/Xcode.app\/Contents\/Developer\/Platforms\/iPhoneOS.platform\/Developer\/Library\/CoreSimulator\/Profiles\/DeviceTypes\/iPhone 7 Plus.simdevicetype",
      "identifier" : "com.apple.CoreSimulator.SimDeviceType.iPhone-7-Plus"
    },
    {
      "name" : "iPhone 8",
      "bundlePath" : "\/Applications\/Xcode.app\/Contents\/Developer\/Platforms\/iPhoneOS.platform\/Developer\/Library\/CoreSimulator\/Profiles\/DeviceTypes\/iPhone 8.simdevicetype",
      "identifier" : "com.apple.CoreSimulator.SimDeviceType.iPhone-8"
    },
    {
      "name" : "iPhone 8 Plus",
      "bundlePath" : "\/Applications\/Xcode.app\/Contents\/Developer\/Platforms\/iPhoneOS.platform\/Developer\/Library\/CoreSimulator\/Profiles\/DeviceTypes\/iPhone 8 Plus.simdevicetype",
      "identifier" : "com.apple.CoreSimulator.SimDeviceType.iPhone-8-Plus"
    },
    {
      "name" : "iPhone SE",
      "bundlePath" : "\/Applications\/Xcode.app\/Contents\/Developer\/Platforms\/iPhoneOS.platform\/Developer\/Library\/CoreSimulator\/Profiles\/DeviceTypes\/iPhone SE.simdevicetype",
      "identifier" : "com.apple.CoreSimulator.SimDeviceType.iPhone-SE"
    },
    {
      "name" : "iPhone X",
      "bundlePath" : "\/Applications\/Xcode.app\/Contents\/Developer\/Platforms\/iPhoneOS.platform\/Developer\/Library\/CoreSimulator\/Profiles\/DeviceTypes\/iPhone X.simdevicetype",
      "identifier" : "com.apple.CoreSimulator.SimDeviceType.iPhone-X"
    },
    {
      "name" : "iPhone Xs",
      "bundlePath" : "\/Applications\/Xcode.app\/Contents\/Developer\/Platforms\/iPhoneOS.platform\/Developer\/Library\/CoreSimulator\/Profiles\/DeviceTypes\/iPhone Xs.simdevicetype",
      "identifier" : "com.apple.CoreSimulator.SimDeviceType.iPhone-XS"
    },
    {
      "name" : "iPhone Xs Max",
      "bundlePath" : "\/Applications\/Xcode.app\/Contents\/Developer\/Platforms\/iPhoneOS.platform\/Developer\/Library\/CoreSimulator\/Profiles\/DeviceTypes\/iPhone Xs Max.simdevicetype",
      "identifier" : "com.apple.CoreSimulator.SimDeviceType.iPhone-XS-Max"
    },
    {
      "name" : "iPhone Xʀ",
      "bundlePath" : "\/Applications\/Xcode.app\/Contents\/Developer\/Platforms\/iPhoneOS.platform\/Developer\/Library\/CoreSimulator\/Profiles\/DeviceTypes\/iPhone Xʀ.simdevicetype",
      "identifier" : "com.apple.CoreSimulator.SimDeviceType.iPhone-XR"
    },
    {
      "name" : "iPad 2",
      "bundlePath" : "\/Applications\/Xcode.app\/Contents\/Developer\/Platforms\/iPhoneOS.platform\/Developer\/Library\/CoreSimulator\/Profiles\/DeviceTypes\/iPad 2.simdevicetype",
      "identifier" : "com.apple.CoreSimulator.SimDeviceType.iPad-2"
    },
    {
      "name" : "iPad Retina",
      "bundlePath" : "\/Applications\/Xcode.app\/Contents\/Developer\/Platforms\/iPhoneOS.platform\/Developer\/Library\/CoreSimulator\/Profiles\/DeviceTypes\/iPad Retina.simdevicetype",
      "identifier" : "com.apple.CoreSimulator.SimDeviceType.iPad-Retina"
    },
    {
      "name" : "iPad Air",
      "bundlePath" : "\/Applications\/Xcode.app\/Contents\/Developer\/Platforms\/iPhoneOS.platform\/Developer\/Library\/CoreSimulator\/Profiles\/DeviceTypes\/iPad Air.simdevicetype",
      "identifier" : "com.apple.CoreSimulator.SimDeviceType.iPad-Air"
    },
    {
      "name" : "iPad Air 2",
      "bundlePath" : "\/Applications\/Xcode.app\/Contents\/Developer\/Platforms\/iPhoneOS.platform\/Developer\/Library\/CoreSimulator\/Profiles\/DeviceTypes\/iPad Air 2.simdevicetype",
      "identifier" : "com.apple.CoreSimulator.SimDeviceType.iPad-Air-2"
    },
    {
      "name" : "iPad (5th generation)",
      "bundlePath" : "\/Applications\/Xcode.app\/Contents\/Developer\/Platforms\/iPhoneOS.platform\/Developer\/Library\/CoreSimulator\/Profiles\/DeviceTypes\/iPad (5th generation).simdevicetype",
      "identifier" : "com.apple.CoreSimulator.SimDeviceType.iPad--5th-generation-"
    },
    {
      "name" : "iPad Pro (9.7-inch)",
      "bundlePath" : "\/Applications\/Xcode.app\/Contents\/Developer\/Platforms\/iPhoneOS.platform\/Developer\/Library\/CoreSimulator\/Profiles\/DeviceTypes\/iPad Pro (9.7-inch).simdevicetype",
      "identifier" : "com.apple.CoreSimulator.SimDeviceType.iPad-Pro--9-7-inch-"
    },
    {
      "name" : "iPad Pro (12.9-inch)",
      "bundlePath" : "\/Applications\/Xcode.app\/Contents\/Developer\/Platforms\/iPhoneOS.platform\/Developer\/Library\/CoreSimulator\/Profiles\/DeviceTypes\/iPad Pro (12.9-inch).simdevicetype",
      "identifier" : "com.apple.CoreSimulator.SimDeviceType.iPad-Pro"
    },
    {
      "name" : "iPad Pro (12.9-inch) (2nd generation)",
      "bundlePath" : "\/Applications\/Xcode.app\/Contents\/Developer\/Platforms\/iPhoneOS.platform\/Developer\/Library\/CoreSimulator\/Profiles\/DeviceTypes\/iPad Pro (12.9-inch) (2nd generation).simdevicetype",
      "identifier" : "com.apple.CoreSimulator.SimDeviceType.iPad-Pro--12-9-inch---2nd-generation-"
    },
    {
      "name" : "iPad Pro (10.5-inch)",
      "bundlePath" : "\/Applications\/Xcode.app\/Contents\/Developer\/Platforms\/iPhoneOS.platform\/Developer\/Library\/CoreSimulator\/Profiles\/DeviceTypes\/iPad Pro (10.5-inch).simdevicetype",
      "identifier" : "com.apple.CoreSimulator.SimDeviceType.iPad-Pro--10-5-inch-"
    },
    {
      "name" : "iPad (6th generation)",
      "bundlePath" : "\/Applications\/Xcode.app\/Contents\/Developer\/Platforms\/iPhoneOS.platform\/Developer\/Library\/CoreSimulator\/Profiles\/DeviceTypes\/iPad (6th generation).simdevicetype",
      "identifier" : "com.apple.CoreSimulator.SimDeviceType.iPad--6th-generation-"
    },
    {
      "name" : "iPad Pro (11-inch)",
      "bundlePath" : "\/Applications\/Xcode.app\/Contents\/Developer\/Platforms\/iPhoneOS.platform\/Developer\/Library\/CoreSimulator\/Profiles\/DeviceTypes\/iPad Pro (11-inch).simdevicetype",
      "identifier" : "com.apple.CoreSimulator.SimDeviceType.iPad-Pro--11-inch-"
    },
    {
      "name" : "iPad Pro (12.9-inch) (3rd generation)",
      "bundlePath" : "\/Applications\/Xcode.app\/Contents\/Developer\/Platforms\/iPhoneOS.platform\/Developer\/Library\/CoreSimulator\/Profiles\/DeviceTypes\/iPad Pro (12.9-inch) (3rd generation).simdevicetype",
      "identifier" : "com.apple.CoreSimulator.SimDeviceType.iPad-Pro--12-9-inch---3rd-generation-"
    },
    {
      "name" : "Apple TV",
      "bundlePath" : "\/Applications\/Xcode.app\/Contents\/Developer\/Platforms\/AppleTVOS.platform\/Developer\/Library\/CoreSimulator\/Profiles\/DeviceTypes\/Apple TV.simdevicetype",
      "identifier" : "com.apple.CoreSimulator.SimDeviceType.Apple-TV-1080p"
    },
    {
      "name" : "Apple TV 4K",
      "bundlePath" : "\/Applications\/Xcode.app\/Contents\/Developer\/Platforms\/AppleTVOS.platform\/Developer\/Library\/CoreSimulator\/Profiles\/DeviceTypes\/Apple TV 4K.simdevicetype",
      "identifier" : "com.apple.CoreSimulator.SimDeviceType.Apple-TV-4K-4K"
    },
    {
      "name" : "Apple TV 4K (at 1080p)",
      "bundlePath" : "\/Applications\/Xcode.app\/Contents\/Developer\/Platforms\/AppleTVOS.platform\/Developer\/Library\/CoreSimulator\/Profiles\/DeviceTypes\/Apple TV 4K (at 1080p).simdevicetype",
      "identifier" : "com.apple.CoreSimulator.SimDeviceType.Apple-TV-4K-1080p"
    },
    {
      "name" : "Apple Watch - 38mm",
      "bundlePath" : "\/Applications\/Xcode.app\/Contents\/Developer\/Platforms\/WatchOS.platform\/Developer\/Library\/CoreSimulator\/Profiles\/DeviceTypes\/Apple Watch - 38mm.simdevicetype",
      "identifier" : "com.apple.CoreSimulator.SimDeviceType.Apple-Watch-38mm"
    },
    {
      "name" : "Apple Watch - 42mm",
      "bundlePath" : "\/Applications\/Xcode.app\/Contents\/Developer\/Platforms\/WatchOS.platform\/Developer\/Library\/CoreSimulator\/Profiles\/DeviceTypes\/Apple Watch - 42mm.simdevicetype",
      "identifier" : "com.apple.CoreSimulator.SimDeviceType.Apple-Watch-42mm"
    },
    {
      "name" : "Apple Watch Series 2 - 38mm",
      "bundlePath" : "\/Applications\/Xcode.app\/Contents\/Developer\/Platforms\/WatchOS.platform\/Developer\/Library\/CoreSimulator\/Profiles\/DeviceTypes\/Apple Watch Series 2 - 38mm.simdevicetype",
      "identifier" : "com.apple.CoreSimulator.SimDeviceType.Apple-Watch-Series-2-38mm"
    },
    {
      "name" : "Apple Watch Series 2 - 42mm",
      "bundlePath" : "\/Applications\/Xcode.app\/Contents\/Developer\/Platforms\/WatchOS.platform\/Developer\/Library\/CoreSimulator\/Profiles\/DeviceTypes\/Apple Watch Series 2 - 42mm.simdevicetype",
      "identifier" : "com.apple.CoreSimulator.SimDeviceType.Apple-Watch-Series-2-42mm"
    },
    {
      "name" : "Apple Watch Series 3 - 38mm",
      "bundlePath" : "\/Applications\/Xcode.app\/Contents\/Developer\/Platforms\/WatchOS.platform\/Developer\/Library\/CoreSimulator\/Profiles\/DeviceTypes\/Apple Watch Series 3 - 38mm.simdevicetype",
      "identifier" : "com.apple.CoreSimulator.SimDeviceType.Apple-Watch-Series-3-38mm"
    },
    {
      "name" : "Apple Watch Series 3 - 42mm",
      "bundlePath" : "\/Applications\/Xcode.app\/Contents\/Developer\/Platforms\/WatchOS.platform\/Developer\/Library\/CoreSimulator\/Profiles\/DeviceTypes\/Apple Watch Series 3 - 42mm.simdevicetype",
      "identifier" : "com.apple.CoreSimulator.SimDeviceType.Apple-Watch-Series-3-42mm"
    },
    {
      "name" : "Apple Watch Series 4 - 40mm",
      "bundlePath" : "\/Applications\/Xcode.app\/Contents\/Developer\/Platforms\/WatchOS.platform\/Developer\/Library\/CoreSimulator\/Profiles\/DeviceTypes\/Apple Watch Series 4 - 40mm.simdevicetype",
      "identifier" : "com.apple.CoreSimulator.SimDeviceType.Apple-Watch-Series-4-40mm"
    },
    {
      "name" : "Apple Watch Series 4 - 44mm",
      "bundlePath" : "\/Applications\/Xcode.app\/Contents\/Developer\/Platforms\/WatchOS.platform\/Developer\/Library\/CoreSimulator\/Profiles\/DeviceTypes\/Apple Watch Series 4 - 44mm.simdevicetype",
      "identifier" : "com.apple.CoreSimulator.SimDeviceType.Apple-Watch-Series-4-44mm"
    }
  ],
  "runtimes" : [
    {
      "bundlePath" : "\/Applications\/Xcode.app\/Contents\/Developer\/Platforms\/iPhoneOS.platform\/Developer\/Library\/CoreSimulator\/Profiles\/Runtimes\/iOS.simruntime",
      "availabilityError" : "",
      "buildversion" : "16B91",
      "availability" : "(available)",
      "isAvailable" : true,
      "identifier" : "com.apple.CoreSimulator.SimRuntime.iOS-12-1",
      "version" : "12.1",
      "name" : "iOS 12.1"
    },
    {
      "bundlePath" : "\/Applications\/Xcode.app\/Contents\/Developer\/Platforms\/AppleTVOS.platform\/Developer\/Library\/CoreSimulator\/Profiles\/Runtimes\/tvOS.simruntime",
      "availabilityError" : "",
      "buildversion" : "16J602",
      "availability" : "(available)",
      "isAvailable" : true,
      "identifier" : "com.apple.CoreSimulator.SimRuntime.tvOS-12-1",
      "version" : "12.1",
      "name" : "tvOS 12.1"
    },
    {
      "bundlePath" : "\/Applications\/Xcode.app\/Contents\/Developer\/Platforms\/WatchOS.platform\/Developer\/Library\/CoreSimulator\/Profiles\/Runtimes\/watchOS.simruntime",
      "availabilityError" : "",
      "buildversion" : "16R591",
      "availability" : "(available)",
      "isAvailable" : true,
      "identifier" : "com.apple.CoreSimulator.SimRuntime.watchOS-5-1",
      "version" : "5.1",
      "name" : "watchOS 5.1"
    }
  ],
  "devices" : {
    "com.apple.CoreSimulator.SimRuntime.watchOS-5-1" : [
      {
        "availability" : "(available)",
        "state" : "Shutdown",
        "isAvailable" : true,
        "name" : "Apple Watch Series 2 - 38mm",
        "udid" : "01AFDEF7-63B6-465C-A02A-44EE4A07EABA",
        "availabilityError" : ""
      },
      {
        "availability" : "(available)",
        "state" : "Shutdown",
        "isAvailable" : true,
        "name" : "Apple Watch Series 2 - 42mm",
        "udid" : "BE62C985-DEE2-46EC-8962-A582D537EEE0",
        "availabilityError" : ""
      },
      {
        "availability" : "(available)",
        "state" : "Shutdown",
        "isAvailable" : true,
        "name" : "Apple Watch Series 3 - 38mm",
        "udid" : "078BF157-30FA-41D1-94FA-6B1686E03085",
        "availabilityError" : ""
      },
      {
        "availability" : "(available)",
        "state" : "Shutdown",
        "isAvailable" : true,
        "name" : "Apple Watch Series 3 - 42mm",
        "udid" : "E4CE652E-0185-4C59-B965-BED5FCEE7C76",
        "availabilityError" : ""
      },
      {
        "availability" : "(available)",
        "state" : "Shutdown",
        "isAvailable" : true,
        "name" : "Apple Watch Series 4 - 40mm",
        "udid" : "6621323A-A9DE-4BCB-AC97-54C8C33B0158",
        "availabilityError" : ""
      },
      {
        "availability" : "(available)",
        "state" : "Shutdown",
        "isAvailable" : true,
        "name" : "Apple Watch Series 4 - 44mm",
        "udid" : "D89037A3-66A0-43C1-90BA-E7C76CA0D724",
        "availabilityError" : ""
      }
    ],
    "com.apple.CoreSimulator.SimRuntime.tvOS-12-1" : [
      {
        "availability" : "(available)",
        "state" : "Shutdown",
        "isAvailable" : true,
        "name" : "Apple TV",
        "udid" : "AFAA21B8-BD4A-45EA-B0FF-E9915FE9B926",
        "availabilityError" : ""
      },
      {
        "availability" : "(available)",
        "state" : "Shutdown",
        "isAvailable" : true,
        "name" : "Apple TV 4K",
        "udid" : "EBB88F2E-CFFE-4981-A736-7A7C0B85643D",
        "availabilityError" : ""
      },
      {
        "availability" : "(available)",
        "state" : "Shutdown",
        "isAvailable" : true,
        "name" : "Apple TV 4K (at 1080p)",
        "udid" : "F0B73E8A-986E-447E-B37A-2F46096DEFF6",
        "availabilityError" : ""
      }
    ],
    "com.apple.CoreSimulator.SimRuntime.iOS-12-1" : [
      {
        "availability" : "(available)",
        "state" : "Shutdown",
        "isAvailable" : true,
        "name" : "iPhone 5s",
        "udid" : "F870B7FA-6DDA-4336-89AD-68A402844188",
        "availabilityError" : ""
      },
      {
        "availability" : "(available)",
        "state" : "Shutdown",
        "isAvailable" : true,
        "name" : "iPhone 5s",
        "udid" : "6627ADE5-F8C1-4AE5-BD6F-3AEDDC0B7B63",
        "availabilityError" : ""
      },
      {
        "availability" : "(available)",
        "state" : "Shutdown",
        "isAvailable" : true,
        "name" : "iPhone 6",
        "udid" : "05574997-ACAD-40CA-A3D7-5624D53F00FA",
        "availabilityError" : ""
      },
      {
        "availability" : "(available)",
        "state" : "Shutdown",
        "isAvailable" : true,
        "name" : "iPhone 6 Plus",
        "udid" : "93237078-CA6D-4F97-93F9-779809700018",
        "availabilityError" : ""
      },
      {
        "availability" : "(available)",
        "state" : "Shutdown",
        "isAvailable" : true,
        "name" : "iPhone 6s",
        "udid" : "9B50FE18-4F49-4EA4-80F0-DF498A667D33",
        "availabilityError" : ""
      },
      {
        "availability" : "(available)",
        "state" : "Shutdown",
        "isAvailable" : true,
        "name" : "iPhone 6s Plus",
        "udid" : "D4640B6D-97DC-4CA1-BE63-C5403159A3D4",
        "availabilityError" : ""
      },
      {
        "availability" : "(available)",
        "state" : "Shutdown",
        "isAvailable" : true,
        "name" : "iPhone 7",
        "udid" : "6E9EEC00-3291-42B4-B04A-BA3487F9CD5F",
        "availabilityError" : ""
      },
      {
        "availability" : "(available)",
        "state" : "Shutdown",
        "isAvailable" : true,
        "name" : "iPhone 7 Plus",
        "udid" : "6DA1C3CF-1D1F-4DEF-9B74-2C40D5FB5881",
        "availabilityError" : ""
      },
      {
        "availability" : "(available)",
        "state" : "Shutdown",
        "isAvailable" : true,
        "name" : "iPhone 8",
        "udid" : "E19386B9-469A-450B-9CD2-B4FE8687DCF9",
        "availabilityError" : ""
      },
      {
        "availability" : "(available)",
        "state" : "Shutdown",
        "isAvailable" : true,
        "name" : "iPhone 8 Plus",
        "udid" : "6D36DF76-8ED9-41A2-9E1A-0BA48B92C26E",
        "availabilityError" : ""
      },
      {
        "availability" : "(available)",
        "state" : "Shutdown",
        "isAvailable" : true,
        "name" : "iPhone SE",
        "udid" : "EE4818DF-F817-4441-8A1C-BE1B99303E10",
        "availabilityError" : ""
      },
      {
        "availability" : "(available)",
        "state" : "Shutdown",
        "isAvailable" : true,
        "name" : "iPhone X",
        "udid" : "85B78A8F-C32B-4493-BDD1-65ECA3F77C86",
        "availabilityError" : ""
      },
      {
        "availability" : "(available)",
        "state" : "Shutdown",
        "isAvailable" : true,
        "name" : "iPhone X",
        "udid" : "CA12C337-4F66-4C6C-ACE5-7F7EACCBC39A",
        "availabilityError" : ""
      },
      {
        "availability" : "(available)",
        "state" : "Shutdown",
        "isAvailable" : true,
        "name" : "iPhone XS",
        "udid" : "8BBCE315-2F4C-4132-8E53-28AF52401C8E",
        "availabilityError" : ""
      },
      {
        "availability" : "(available)",
        "state" : "Shutdown",
        "isAvailable" : true,
        "name" : "iPhone XS Max",
        "udid" : "4E77C62F-AB1F-4EDE-839B-53F70CAFC79E",
        "availabilityError" : ""
      },
      {
        "availability" : "(available)",
        "state" : "Shutdown",
        "isAvailable" : true,
        "name" : "iPhone XR",
        "udid" : "28D12ABE-3355-4862-960A-0FE5FFE41C7B",
        "availabilityError" : ""
      },
      {
        "availability" : "(available)",
        "state" : "Shutdown",
        "isAvailable" : true,
        "name" : "iPad Air",
        "udid" : "94485C88-BCEB-456A-95DC-5F8C3DA8D181",
        "availabilityError" : ""
      },
      {
        "availability" : "(available)",
        "state" : "Shutdown",
        "isAvailable" : true,
        "name" : "iPad Air 2",
        "udid" : "CF2C787D-A378-4AB9-B334-F7B24E94AF4D",
        "availabilityError" : ""
      },
      {
        "availability" : "(available)",
        "state" : "Shutdown",
        "isAvailable" : true,
        "name" : "iPad (5th generation)",
        "udid" : "DFE602A5-EC68-4585-8AB0-C045A9843D29",
        "availabilityError" : ""
      },
      {
        "availability" : "(available)",
        "state" : "Shutdown",
        "isAvailable" : true,
        "name" : "iPad Pro (9.7-inch)",
        "udid" : "5A3F3EAC-F788-49F1-A753-5D34A9990F0B",
        "availabilityError" : ""
      },
      {
        "availability" : "(available)",
        "state" : "Shutdown",
        "isAvailable" : true,
        "name" : "iPad Pro (12.9-inch)",
        "udid" : "EF6EBE34-0A85-4FF0-8A45-7BA418A0CC0C",
        "availabilityError" : ""
      },
      {
        "availability" : "(available)",
        "state" : "Shutdown",
        "isAvailable" : true,
        "name" : "iPad Pro (12.9-inch) (2nd generation)",
        "udid" : "FBA940F8-FD85-4D5E-A570-EB4F3A56E1F9",
        "availabilityError" : ""
      },
      {
        "availability" : "(available)",
        "state" : "Shutdown",
        "isAvailable" : true,
        "name" : "iPad Pro (10.5-inch)",
        "udid" : "8AE4AAED-ECE0-4984-9679-8D3022064692",
        "availabilityError" : ""
      },
      {
        "availability" : "(available)",
        "state" : "Shutdown",
        "isAvailable" : true,
        "name" : "iPad (6th generation)",
        "udid" : "1121363D-EF49-4AC0-9E46-5C30318A24A2",
        "availabilityError" : ""
      },
      {
        "availability" : "(available)",
        "state" : "Shutdown",
        "isAvailable" : true,
        "name" : "iPad Pro (11-inch)",
        "udid" : "038FECC0-8711-46E3-B601-8F88F2F4AD7D",
        "availabilityError" : ""
      },
      {
        "availability" : "(available)",
        "state" : "Shutdown",
        "isAvailable" : true,
        "name" : "iPad Pro (12.9-inch) (3rd generation)",
        "udid" : "12DC911F-2F45-4767-BC1A-6F1D0C8D9F3D",
        "availabilityError" : ""
      }
    ]
  },
  "pairs" : {
    "C9B69F4A-6A9D-44F3-A6BC-56BFA2F8B83F" : {
      "watch" : {
        "name" : "Apple Watch Series 4 - 44mm",
        "udid" : "D89037A3-66A0-43C1-90BA-E7C76CA0D724",
        "state" : "Shutdown"
      },
      "phone" : {
        "name" : "iPhone XS Max",
        "udid" : "4E77C62F-AB1F-4EDE-839B-53F70CAFC79E",
        "state" : "Shutdown"
      },
      "state" : "(active, disconnected)"
    },
    "5327B65F-29E7-42D0-9861-FF31428F3218" : {
      "watch" : {
        "name" : "Apple Watch Series 4 - 40mm",
        "udid" : "6621323A-A9DE-4BCB-AC97-54C8C33B0158",
        "state" : "Shutdown"
      },
      "phone" : {
        "name" : "iPhone XS",
        "udid" : "8BBCE315-2F4C-4132-8E53-28AF52401C8E",
        "state" : "Shutdown"
      },
      "state" : "(active, disconnected)"
    }
  }

phiên bản xcode của bạn là gì?
sdkcy

phiên bản xcode của tôi là 10.1
Seongmin Choo

bạn sử dụng phiên bản react-native nào? bởi vì một số phiên bản của phản ứng bản địa có một vấn đề liên quan đến vấn đề này
sdkcy

npmPackages: react: 16.6.3 => 16.6.3 react-native: ^ 0.58.3 => 0.58.3
Seongmin Choo

Tôi nghĩ đây là phiên bản mới nhất
Seongmin Choo

Câu trả lời:


108

Đã chỉnh sửa: Tôi đã sao chép phần thiết bị của bạn trong JSON đầu ra của bạn và nhúng vào phần của riêng tôi /node_modules/react-native/local-cli/runIOS/runIOS.js

function runOnSimulator(xcodeProject, args, scheme) {
return new Promise(resolve => {
    try {
        var simulators = {devices section of your json}; //Here
    } catch (e) {
        console.log("e", e);
        throw new Error('Could not parse the simulator list output');
    }

    const selectedSimulator = findMatchingSimulator(simulators, args.simulator);
    console.log("selected", selectedSimulator);
    if (!selectedSimulator) {
        throw new Error(`Could not find ${args.simulator} simulator`);
    }
    ...

Và cuối cùng, nó mắc lỗi tương tự như của bạn. Vì vậy, tôi đã tìm ra rằng phiên bản phân tích cú pháp của các thiết bị khác nhau. Trong thiết bị của bạn, phiên bản là;

"com.apple.CoreSimulator.SimRuntime.tvOS-12-1" //for tvOS
"com.apple.CoreSimulator.SimRuntime.iOS-12-1" // for iOS

nhưng trong phản ứng gốc kiểm tra giá trị phiên bản này như thế này ( /node_modules/react-native/local-cli/runIOS/findMatchingSimulator.js);

// Making sure the version of the simulator is an iOS or tvOS (Removes Apple Watch, etc)
if (!version.startsWith('iOS') && !version.startsWith('tvOS')) {
    continue;
}

Vì vậy, react-native không thể nhận ra.
Nếu chúng tôi thay đổi mã này với điều này;

// Making sure the version of the simulator is an iOS or tvOS (Removes Apple Watch, etc)
if (!version.startsWith('com.apple.CoreSimulator.SimRuntime.iOS') && !version.startsWith('com.apple.CoreSimulator.SimRuntime.tvOS')) {
    continue;
}

các vấn đề đã được giải quyết. Tôi đã kiểm tra điều đó với dữ liệu JSON của bạn trong máy tính của tôi và nó đã hoạt động.


22
Ghét rằng điều này đã hiệu quả - có ai có giải pháp lâu dài hơn không?
Kevin Grant,

2
Trong trường hợp bất kỳ ai đang chạy iPhone XR cụ thể (tức là. react-native run-ios --simulator='iPhone XR'), Hãy sử dụng phần sau react-native run-ios --simulator='iPhone Xʀ',. Sử dụng r viết thường sẽ không hoạt động.
Mix Master Mike

4
Bản sửa lỗi dài hạn là chờ đợi bản phát hành tiếp theo react-native-cli, trong đó điều này đã được sửa github.com/react-native-community/react-native-cli/pull/274
wbharding

4
Đây là câu trả lời như thế nào?!?!?!?! bạn không gây rối với các plugin như thế
Led

2
Điều này không hoạt động nữa. Thư mục runIOS không có trên thư mục react-native trong node_modules kể từ hôm nay. Bất kỳ sửa chữa nào khác?
Akio

100

Để khắc phục lỗi này, chỉ cần cài đặt lại mô-đun dự án & nút bằng npm

npm install

Sau đó, nó sẽ hiển thị một danh sách các cảnh báo và để khắc phục chúng, hãy sử dụng lệnh sau:

npm audit fix

Điều này sẽ khắc phục mọi thứ và cho phép bạn chạy trình giả lập iOS react-native run-ios


4
Không có gì để làm với NPM vì nó sẽ chỉ cần cài đặt hoặc mô-đun nút kiểm toán
Firu

15
Điều này đã sửa nó cho tôi ... mà không thực hiện câu trả lời được chấp nhận. Cảm ơn!
RiddlerDev

1
@Firu Và bây giờ có ít nhất ba người trong chúng tôi mà đây là bản sửa lỗi.
Rob Osborne

2
điều này không hiệu quả với tôi. react-native --version-> react-native-cli: 2.0.1 react-native: 0.57.7 react-native info->macOS 10.14.4 Platforms: iOS 12.2 Xcode: 10.2/10E125
Gianfranco P.

3
imho đây phải là câu trả lời đúng. Thay đổi node_modulestệp không phải là một câu trả lời hợp lệ. Nó sẽ quay lại cắn bạn khi bạn thùng rác node_modulesthư mục vì bất kỳ lý do gì.
Bathan

62

VẤN ĐỀ

Nếu bạn thử điều này với Xcode mới nhất (11), thì không có iPhone X!

Tự chạy Trình mô phỏng, trong menu trên cùng, xem phần Phần cứng, Thiết bị, iOS 13.0. Bạn sẽ thấy có:

  • iPhone 8
  • iPhone 8 Plus
  • iPhone XS
  • iPhone XS Max
  • iPhone XR
  • ... và một số iPad

Khi bạn thực thi run-ios, react-native được thiết kế để phù hợp với thiết bị được yêu cầu.

Mặc định được mã hóa cứng bên trong là iPhone X.

Chức năng cố gắng khớp với thiết bị được yêu cầu nằm trong:

/node_modules/@react-native-community/cli-platform-ios/build/commands/runIOS/findMatchingSimulator.js

Chức năng này được thiết kế để bạn có thể cung cấp cho nó một thiết bị và một số phiên bản tùy chọn.

Nếu không tìm thấy thiết bị và phiên bản đã cho, nó sẽ trả về kết quả khớp bằng thiết bị đầu tiên trong danh sách theo mặc định.

Nhưng ... trong thực tế, thiết bị đầu tiên là một chiếc đồng hồ và bất kỳ chiếc đồng hồ nào cũng bị loại trừ khỏi sự phù hợp, vì vậy hàm này sẽ trả về giá trị không.

GIẢI PHÁP 1 - Sử dụng thiết bị Xcode hiện có

Trước tiên, hãy tự chạy Trình mô phỏng, như đã mô tả ở trên và ghi chú iPhone hoặc iPad nào bạn muốn.

Sau đó, chuyển tên này làm đối số tùy chọn cho lệnh dòng lệnh run-ios như sau:

react-native run-ios --simulator="iPhone 8"

GIẢI PHÁP 2 - Thêm thiết bị iOS Xcode mới

Theo Ghi chú phát hành Xcode 11 :

"Xcode không còn tạo mọi thiết bị giả lập iOS khả dụng theo mặc định. Thay vào đó, một tập hợp các thiết bị được sử dụng phổ biến nhất sẽ được tạo. Để tạo các thiết bị khác - hoặc nhiều phiên bản của một thiết bị - hãy mở cửa sổ Thiết bị, chọn Trình mô phỏng, nhấp vào nút +, nhập tên và chọn loại thiết bị và phiên bản hệ điều hành có liên quan. Trong Terminal, thực hiện lệnh xcrun simctl create, ví dụ: xcrun simctl create "My iPhone 7" "iPhone 7" iOS13.0. (49428617) "

Trong Xcode, bạn cần thêm một thiết bị mới có tên "iPhone X".

Ngoài ra, tôi đã trả lời ở đây: React Native Issue # 2328


1
Cảm ơn rất nhiều, bạn đã tiết kiệm được ngày. Thay vì cấu hình các thay đổi theo cách thủ công, đây là giải pháp dễ nhất và chính xác nhất trong trường hợp ios 13+. Cá nhân điều này nên được gắn thẻ là câu trả lời được chấp nhận.
Parth Manaktala

5
đây sẽ là câu trả lời được chấp nhận, cùng với một lời giải thích nhanh chóng làm thế nào để thay đổi mặc định RN từ iPhone X
nosequeldeebee

1
Trình mô phỏng iOS 13.0 hiện không bao gồm mọi thiết bị có sẵn ngoại trừ thiết bị được sử dụng nhiều nhất, bạn cần tạo chúng theo cách thủ công nếu muốn có các thiết bị khác (ví dụ: iPhone 7, iPhone X). Tham khảo ở đây: developer.apple.com/documentation/xcode_release_notes/…
Akio

điều này đã cố định và nên là câu trả lời chính.
Jay

Tôi chỉ cần thêm iPhone X vào danh sách các thiết bị khả dụng trực tiếp trong XCode. Bây giờ nó có thể được tìm thấy!
bergjs

47

Khắc phục tạm thời:

Bước 1 : Mở tệp/node_modules/react-native/local-cli/runIOS/findMatchingSimulator.js

Bước 2 : Thay đổi một dòng mã, từ đây:

if (!version.startsWith('iOS') && !version.startsWith('tvOS')) {
  continue;
}

đến điều này:

if (!version.startsWith('com.apple.CoreSimulator.SimRuntime.iOS') && !version.startsWith('com.apple.CoreSimulator.SimRuntime.tvOS')) {
  continue;
}

Bước 3 : Chạyreact-native run-ios (bạn có thể cần chạy nó hai lần và đừng quên giết Metro Bundler [bảng điều khiển đang chạy trong nền] nếu nó đang chạy từ bản dựng không thành công trước đó của bạn!)

Vấn đề là sau khi cập nhật Xcode - không gian tên của trình mô phỏng đã được thêm vào danh sách phiên bản của thiết bị. Bản dựng React Native không mong đợi những không gian tên này - do đó, bản dựng bị phá vỡ.


1
Tôi không thể tìm thấy thư mục runIOS. Bất kỳ đề xuất?
Naman Jain

31

sau khi cập nhật lên Xcode 11 xcrun trả về true hoặc false chứ không phải YES hoặc NO như trước.

goto /node_modules/react-native/local-cli/runIOS/findMatchingSimulator.js và trong

tìm thấy

if (
   simulator.availability !== '(available)' &&
   simulator.isAvailable !== 'YES'
 ) {
  continue;
}

và thay đổi nó thành

if (
   simulator.availability !== '(available)' &&
   simulator.isAvailable !== true
 ) {
  continue;
}

3
Cái này cũng có tác dụng với tôi. Tìm thấy nó thư mục khác nhau. node_modules/@react-native-community/cli/build/commands/runIOS/findMatchingSimulator.js
user781404

1
Họ đã thay đổi nó một lần nữa (wtf)/node_modules/@react-native-community/cli-platform-ios/build/commands/runIOS/findMatchingSimulator.js
Oliver Dixon

Tôi không thể tìm thấy (wtf)
Forhad 5/10 '19

quá tệ. Điều tương tự ở đây. Trong các phiên bản trước đó của XCode, tôi đã phải thay đổi version.startsWiththành version.includes, điều này đã được sửa. Bây giờ, một vài dòng tiếp tục xuống, thay đổi 'YES' true ... Một câu chuyện không bao giờ kết thúc 😊
cokron

đã phải thay đổi nó trong gói cộng đồng, làm việc, nhờ
matt93

30

Không có trình mô phỏng iPhone X trên máy của bạn, rất có thể do bạn đã cập nhật Xcode. Bạn có thể chỉ cần chuyển tên của trình mô phỏng có sẵn như dưới đây:

react-native run-ios --simulator="iPhone 11"

Để kiểm tra các trình mô phỏng khả dụng, bạn có thể mở Xcode và kiểm tra danh sách thiết bị như hình dưới đây:

nhập mô tả hình ảnh ở đây


9

Mở tệp /node_modules/react-native/local-cli/runIOS/findMatchingSimulator.js

! version.startsWith ('iOS') ->! phiên bản. bao gồm ('iOS')


9

Sau khi cập nhật Xcode lên phiên bản 11, tôi gặp phải sự cố tương tự.

Một giải pháp có thể là thêm trình mô phỏng iPhone X vào danh sách của bạn.

  • Chọn trình mô phỏng -> Phần cứng -> Quản lý thiết bị (bạn sẽ thấy cửa sổ bật lên)

  • Chọn "Trình mô phỏng" -> (góc dưới bên trái) + (biểu tượng dấu cộng, bên cạnh "Bộ lọc"), sau đó thêm trình mô phỏng mới,

  • Tên trình mô phỏng: iPhone X Loại thiết bị: Chọn iPhone X.

Nó đã làm việc cho tôi


1
Đây là giải pháp đúng đắn 2019 👌
sospedra

Chắc chắn là con đường để đi. Đã xảy ra 2 vấn đề nhỏ sau: 1- Phải ghép nối trình mô phỏng "iPhone X" mới của tôi với thời gian chạy iOS 12.4 2- Phải thay thế simulator.isAvailable !== 'YES'bằng simulator.isAvailable !== truetrongnode_modules/@react-native-community/cli/build/commands/runIOS/findMatchingSimulator.js
8

8

Tôi cũng chưa cài đặt iPhone X làm trình mô phỏng trên Xcode. Tất cả những gì tôi phải làm là thêm iPhone X làm trình mô phỏng mới trong Xcode và tất cả đều ổn.

Trong Xcode: Chuyển đến Windowsau đó Devices and Simulators. Nhấp vào tab trình mô phỏng. Nhấn vào+ nút ở góc dưới cùng bên trái và thêm iPhone X.

Tôi hy vọng việc sửa chữa này cũng dễ dàng đối với bạn cũng như đối với tôi.


Nó dễ dàng như thế này, ít nhất là đối với tôi.
Chris

5

trong trường hợp của tôi, tôi chạy tập lệnh: sed -i '' s / startedWith / include / g 'node_modules / react-native / local-cli / runIOS / findMatchingSimulator.js và nó đã hoạt động. cũng phù hợp với những người không thể cập nhật ứng dụng gốc


5

Đối với Xcode 11.2 và iOS 13.2, đây là những thay đổi tôi đã thực hiện để chạy ứng dụng trong trình mô phỏng

trong findMatchingSimulator.js

dòng 43:

if (!version.startsWith('iOS') && !version.startsWith('tvOS')) {

đến

if (!version.includes('iOS') && !version.includes('tvOS')) {

hàng

dòng 52

if (
    simulator.availability !== '(available)' &&
    simulator.isAvailable !== 'YES'
  ) {
    continue;
  }

đến

if (
    simulator.isAvailable != true
  ) {
    continue;
  }

PS

Ngày đầu tiên về dự án React, quảng cáo đã hạ thấp nó! (Không)


4

Vấn đề của tôi là trình mô phỏng iPhone X không được cài đặt

Bạn có thể kiểm tra trình mô phỏng được cài đặt với

xcrun simctl list devices | grep iPhone | grep -v unavailable | cut -d'(' -f1

Sau đó chạy

react-native run-ios --simulator="iPhone Xs"

2

nếu không tìm thấy trình mô phỏng vẫn tồn tại sau khi thay thế các dòng mã sau trong runSimulator.js.

Đường dẫn cho runSimulator.js -> /node_modules/react-native/local-cli/runIOS/findMatchingSimulator.js

if (!version.startsWith('iOS') && !version.startsWith('tvOS')) { continue; }

với cái này

if ( !version.startsWith('com.apple.CoreSimulator.SimRuntime.iOS') && !version.startsWith('com.apple.CoreSimulator.SimRuntime.tvOS') ) { continue; }

bình luận dòng sau khi thay thế

if ( simulator.availability !== '(available)' && simulator.isAvailable !== 'YES' ) { continue; }

Nó sẽ khởi chạy trình mô phỏng iPhone mà không gặp bất kỳ sự cố nào.

và cách tiếp cận thứ 2 sau khi cập nhật lên XCode 11

Xcode 11 xcrun trả về true hoặc false chứ không phải CÓ hoặc KHÔNG cho thuộc tính isAvailable như trước. Bạn có thể kiểm tra điều đó bằng lệnh sau

xcrun simctl list devices --json 

lệnh trên sẽ in tất cả các thiết bị có sẵn như sau

"com.apple.CoreSimulator.SimRuntime.iOS-12-2" : [
  {
    "state" : "Booted",
    "isAvailable" : true,
    "name" : "iPhone X",
    "udid" : "E53748D1-628B-4A99-A419-4D7AE7CE4745"
  }
]

Thay thế CÓ bằng true trong mã sau

if ( simulator.availability !== '(available)' && simulator.isAvailable !== 'YES' ) { continue; }

như thế này

if ( simulator.availability !== '(available)' && simulator.isAvailable !== true ) { continue; }

Có, vấn đề của tôi là sau khi cập nhật lên xcode 11, tôi bắt đầu gặp lỗi này. thay thế 'YES' bằng true đã thực hiện công việc.
Sudhir

2

sửa chữa dễ dàng ...

Xcode -> tùy chọn -> thành phần cài đặt bộ tổng hợp ios 12.2


@velvetlnk - của tôi chỉ tăng lên chừng nào
Andrew Newby

cài đặt bất kỳ phiên bản ios nào dưới 13
velvetInk

2

thay đổi /node_modules/@react-native-community/cli-platform-ios/build/commands/runIOS/index.js

tập tin

options: [{
    name: '--simulator [string]',
    description: 'Explicitly set simulator to use. Optionally include iOS version between' + 'parenthesis at the end to match an exact version: "iPhone 6 (10.0)"',
    default: 'iPhone X'
  }

đến

options: [{
    name: '--simulator [string]',
    description: 'Explicitly set simulator to use. Optionally include iOS version between' + 'parenthesis at the end to match an exact version: "iPhone 6 (10.0)"',
    default: 'iPhone 8'
  }

2

Tôi gặp phải lỗi tương tự khi nâng cấp Xcode 10 của mình lên Xcode 11, nhưng việc chỉ định phiên bản trình mô phỏng xảy ra là cách khắc phục nhanh chóng cho tôi.

Danh sách đầu tiên tất cả trình giả lập ios có sẵn với

  xcrun simctl list devices | grep iPhone | grep -v unavailable | cut -d'(' -f1

Kết quả Đầu ra

Sau đó, chọn một để chạy phản ứng gốc, ví dụ:

 react-native run-ios --simulator='iPhone 11 Pro Max'

này nên làm việc tôi nghĩ nhưng không đối với tôi, tôi đã cố gắng với trình giả lập có liên quan mở và đóng cửa
Harry Moreno

1

Với react-native-cli 2.0.1, bạn có thể chỉ muốn đổi tên trình mô phỏng của mình. Theo mặc định, Xcode sẽ đặt tên cho một số thiết bị theo định dạng<DeviceName> (<DeviceSize>) . Tuy nhiên, phiên bản CLI này diễn giải bất kỳ thứ gì trong ngoặc đơn là phiên bản iOS.

Khi cố gắng chạy một trình mô phỏng có tên iPad Pro (10.5-inch), tôi có thể làm cho nó chạy bằng cách chỉ cần đổi tên trình mô phỏng thành iPad Pro [10.5-inch].

Bạn có thể đổi tên trình mô phỏng bằng cách sử dụng trình đơn Hardware-> Device-> của ứng dụng Trình mô phỏng Manage Devices...và nhấp chuột phải vào một trong các trình mô phỏng của bạn (trong Xcode 10.2.1)


1

Tôi gặp sự cố khi cập nhật Xcode. Tất cả các trình mô phỏng không khả dụng / không được gỡ cài đặt. Tôi đang cài đặt chúng một lần nữa.


1

Trong trường hợp của tôi, tôi đã thử các giải pháp khác ở trên nhưng không hiệu quả.

Sau đó, tôi cố gắng nâng cấp phản ứng-có nguồn gốc từ 0.59.5để 0.59.10sau đó nó được giải quyết


Sau khi thử mọi thứ, tôi thay đổi phiên bản từ 0.59.5sang 0.59.10và nó đã giải quyết được vấn đề, lời khuyên tuyệt vời :)
Manoj Sehrawat


0

Đối với tôi, tôi đã phải cập nhật React Native lên 0,60 bằng cách chạy npx react-native-git-upgrade.


-1

Tôi đang gặp vấn đề tương tự mỗi khi cập nhật Xcode.
Tôi chạy lệnh này:

sudo killall -9 com.apple.CoreSimulator.CoreSimulatorService

Sau đó tôi react-native run-ioslại chạy .


Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.