Titanium JIRA Archive
Titanium SDK/CLI (TIMOB)

[TIMOB-26628] iOS 11.0: App crashes on launch

GitHub Issuen/a
TypeBug
PriorityCritical
StatusClosed
ResolutionFixed
Resolution Date2018-12-05T20:06:00.000+0000
Affected Version/sn/a
Fix Version/sRelease 7.5.1
ComponentsiOS
Labelscore, defect, ios, regression
ReporterJoe Finnigan
AssigneeGary Mathews
Created2018-12-04T09:11:11.000+0000
Updated2018-12-10T23:38:20.000+0000

Description

When launching any app on iOS 11.0 specifically, the app crashes with the following exception:
[ERROR] The application has crashed with an uncaught exception 'NSInvalidArgumentException'.
[ERROR] Reason:
[ERROR] -[TiRootViewController setNeedsUpdateOfHomeIndicatorAutoHidden]: unrecognized selector sent to instance 0x102814e00
[ERROR] Stack trace:
[ERROR] 0   CoreFoundation                      0x0000000182bc4d74 <redacted> + 148
[ERROR] 1   libobjc.A.dylib                     0x00000001820d8528 objc_exception_throw + 56
[ERROR] 2   CoreFoundation                      0x0000000182bd2218 <redacted> + 0
[ERROR] 3   UIKit                               0x000000018ca9e874 <redacted> + 296
[ERROR] 4   CoreFoundation                      0x0000000182bca708 <redacted> + 1380
[ERROR] 5   CoreFoundation                      0x0000000182ab035c _CF_forwarding_prep_0 + 92
This is re-produceable using an empty app using 'ti create'. Launches fine on iOS 10, iOS 11.2/11.4, and iOS 12+. Only crashes on iOS 11.0 as far as we can test. This is quite an urgent issue for us, as it is blocking us from releasing a new version to the stores.

Comments

  1. Joe Finnigan 2018-12-04

    I think I've managed to patch this issue using the following in TiRootViewController.m
       #if IS_XCODE_9
         if ([TiUtils isIOS11OrGreater]) {
           if ([self respondsToSelector:@selector(setNeedsUpdateOfHomeIndicatorAutoHidden)]) {
               [self setNeedsUpdateOfHomeIndicatorAutoHidden];
           }
         }
       
    It no longer crashes on iOS 11 and works on all our test devices we have here. Based on this fix: https://github.com/lionheart/openradar-mirror/issues/18762
  2. Ewan Harris 2018-12-04

    [~jfinnigan], Does this only occur on a physical device or do you know if it's specifically 11.0.0? I'm using an 11.0.1 simulator (it's the closest I can get from XCode), and can't reproduce the issue. I'll ask the team to try if they have an iOS 11.0.0 device
  3. Gary Mathews 2018-12-04

    master: https://github.com/appcelerator/titanium_mobile/pull/10510
  4. Gary Mathews 2018-12-05

    7_5_X: https://github.com/appcelerator/titanium_mobile/pull/10511
  5. Lokesh Choudhary 2018-12-10

    Verified the fix in SDK 7.5.1.v20181210141225 & 8.0.0.v20181210140414. Closing.

JSON Source