2015-09-23 15 views
7

Cordova v5.3.1/Ionic v1.1.0 (Bibliothek v1.6.4)iOS 9 Ionic Cordova App stürzt auf iPhone ab; funktioniert auf dem iPad

Unsere Anwendung auf iOS 9 von 8.4 aktualisiert. Die Anwendung baut und läuft gut auf dem iPad/iPad mini. Es stürzt jedoch ab, wenn es auf einem iPhone bereitgestellt wird.

Unten ist die Debug-Ausgabe:

2015-09-23 11: 17: 09,920 AnApplicaiton [6490: 1.359.695] *** Assertion Ausfall - [UIApplication _cachedSystemAnimationFenceCreatingIfNecessary:]/BuildRoot/Library/Caches/com.apple.xbs/Quellen/UIKit_Sim/UIKit-3505,16/UIApplication.m: 1697

2015-09-23 11: 17: 09,926 AnApplication [6490: 1.359.695] *** Beenden app durch für die nicht abgefangene Ausnahme 'NSInternalInconsistencyException', Grund: 'Zugriff auf _cachedSystemAnimationFence requi res das Haupt Gewinde '

Die Debug-Konsole ist bis zu diesem Punkt identisch.

Antwort

6

Ich weiß nicht den wahren Grund, aber wenn die App WebView und Drittanbieter-Tastatur wie Swype hat, stürzt das Programm ab. Ich habe das Problem viele Male wiederholt. Wenn Ihre App WebView wie Cordova, iAd, Admob verwendet, werden Sie diese seltsamen Abstürze sehen. Ich weiß nicht, wie ich dieses Problem verhindern kann. Es passiert nur auf iOS und nur auf iPhones. Meine Absturzberichte zeigen iPhone 5s, iPhone 6, iPhone 6 Plus.

Edit: Ich denke, Code von @ Kurt.F gegeben kann das Problem für jetzt beheben. Fügen Sie folgenden Code zu Ihrer AppDelegate.swift Datei hinzu. Alle Credits gehen an @ Kurt.F

+0

In unserem Fall sind wir alle 3rd-Party-Tastaturen nicht verwenden. – Joey

+0

@Joey Sie erwähnen, dass Sie keine Drittanbieter-Tastaturen verwendet haben, aber trotzdem die Antwort akzeptiert haben. Hat dies unabhängig von der Tastatursituation geholfen? – jmknoll

5

Dies scheint ein Konflikt zwischen 3rd-Party-Tastaturen und dem WebView zu sein. Ich bin auch in der Lage, Chrome (außerhalb von Cordova) auf iOS 9 zum Absturz zu bringen. Ich gehe einfach auf eine beliebte Website und konzentriere mich ein paar Mal auf einige Bearbeitungsfelder. Sie können während des Ladens der Seite die Tastatur aufrufen, während eine bestimmte benutzerdefinierte aktiviert ist und abstürzt.

Ich habe ein einfaches Cordova-Plugin erstellt, damit keine Tastaturerweiterungen mit der App ausgeführt werden können. Keine dauerhafte Lösung, aber es wird die Abstürze vorerst stoppen. Fügen Sie einfach das Plugin hinzu, es werden keine Codeänderungen benötigt.

https://github.com/kurtisf/cordova-plugin-restrict-keyboard