Gluon Mobile 应用程序在未完成代码更改的情况下突然崩溃 (iOS 13.3.1)

Gluon Mobile app suddenly crashes without code changes being done (iOS 13.3.1)

我们的应用程序在 AppStore 审查期间被拒绝。但是,它在物理测试设备 运行 iOS 13.1.2 上运行良好。所以,我升级到 iOS 13.3.1,现在它崩溃了,错误报告与 Apple 发送的完全相同。

我的错误需要在 JavaFXPorts 中修复的假设是否正确?

Exception Type:  EXC_BAD_ACCESS (SIGABRT)
Exception Subtype: KERN_INVALID_ADDRESS at 0x0000000000000000
VM Region Info: 0 is not in any region.  Bytes before following region: 4374036480
      REGION TYPE                      START - END             [ VSIZE] PRT/MAX SHRMOD  REGION DETAIL
      UNUSED SPACE AT START
--->  
      __TEXT                 0000000104b68000-0000000106898000 [ 29.2M] r-x/r-x SM=COW  ...yMobileApp

Termination Reason: LIBSYSTEM, [0x4]
Triggered by Thread:  0

Thread 0 name:
Thread 0 Crashed:
0   libsystem_kernel.dylib          0x00000001aa016930 __abort_with_payload + 8
1   libsystem_kernel.dylib          0x00000001aa01af24 abort_with_payload_wrapper_internal + 100 (terminate_with_reason.c:72)
2   libsystem_kernel.dylib          0x00000001aa01aec0 abort_with_reason + 28 (terminate_with_reason.c:86)
3   libsystem_pthread.dylib         0x00000001a9f3fed0 pthread_self.cold.1 + 32
4   libsystem_pthread.dylib         0x00000001a9f3f0a8 pthread_self + 48 (internal.h:722)
5   Foundation                      0x00000001aa4d2964 +[NSThread currentThread] + 96 (NSThread.m:373)
6   MyMobileApp                 0x0000000104d58170 JNI_OnLoad_glass + 63624
7   MyMobileApp                 0x00000001055b0cfc 0x104b68000 + 10783996
8   MyMobileApp                 0x00000001055a5030 [J]com.sun.glass.ui.Window.<init>(Lcom/sun/glass/ui/Window;Lcom/sun/glass/ui/Screen;I)V + 10735664 (Window.java:273)
9   MyMobileApp                 0x00000001055b0c58 [J]com.sun.glass.ui.ios.IosWindow.<init>(Lcom/sun/glass/ui/Window;Lcom/sun/glass/ui/Screen;I)V + 10783832 (IosWindow.java:40)
10  MyMobileApp                 0x00000001055aa790 [J]com.sun.glass.ui.ios.IosApplication.createWindow(Lcom/sun/glass/ui/Window;Lcom/sun/glass/ui/Screen;I)Lcom/sun/glass/ui/Window; + 10758032 (IosApplication.java:78)
11  MyMobileApp                 0x0000000105915f50 [J]com.sun.javafx.tk.quantum.WindowStage.initPlatformWindow()V + 14344016 (WindowStage.java:198)
12  MyMobileApp                 0x0000000105915c7c [J]com.sun.javafx.tk.quantum.WindowStage.init(Lcom/sun/javafx/tk/quantum/GlassSystemMenu;)Lcom/sun/javafx/tk/quantum/WindowStage; + 14343292 (WindowStage.java:144)
13  MyMobileApp                 0x000000010590525c [J]com.sun.javafx.tk.quantum.QuantumToolkit.createTKStage(Ljavafx/stage/Window;ZLjavafx/stage/StageStyle;ZLjavafx/stage/Modality;Lcom/sun/javafx/tk/TKStage;ZLjava/security/AccessControlContext;)Lcom/sun/javafx/tk/TKStage; + 14275164 (QuantumToolkit.java:570)
14  MyMobileApp                 0x00000001061b485c [J]javafx.stage.Stage.impl_visibleChanging(Z)V + 23382108 (Stage.java:1164)
15  MyMobileApp                 0x00000001061b9bec [J]javafx.stage.Window.invalidated()V + 23403500 (Window.java:825)
16  MyMobileApp                 0x0000000105ed4e54 [J]javafx.beans.property.BooleanPropertyBase.markInvalid()V + 20368980 (BooleanPropertyBase.java:110)
17  MyMobileApp                 0x0000000105ed4f58 [J]javafx.beans.property.BooleanPropertyBase.set(Z)V + 20369240 (BooleanPropertyBase.java:146)
18  MyMobileApp                 0x00000001061b8564 [J]javafx.stage.Window.setShowing(Z)V + 23397732 (Window.java:923)
19  MyMobileApp                 0x00000001061b85d4 [J]javafx.stage.Window.show()V + 23397844 (Window.java:938)
20  MyMobileApp                 0x00000001061b34fc [J]javafx.stage.Stage.show()V + 23377148 (Stage.java:260)
21  MyMobileApp                 0x00000001054c4160 [J]com.gluonhq.charm.glisten.application.MobileApplication.a(Z)V + 9814368 (MobileApplication.java:277)
22  MyMobileApp                 0x00000001054c3e38 [J]com.gluonhq.charm.glisten.application.MobileApplication.start(Ljavafx/stage/Stage;)V + 9813560 (MobileApplication.java:235)
23  MyMobileApp                 0x00000001055f8a54 [J]com.sun.javafx.application.LauncherImpl.lambda$launchApplication1(Ljava/util/concurrent/atomic/AtomicBoolean;Ljavafx/application/Application;)V + 11078228 (LauncherImpl.java:868)

报告中还有更多内容,但我认为这应该足够了。如果需要更多信息,我很乐意提供。

在正式发布带有修复程序的新 JavaFXPorts 存储库之前,您可以从此 repository 下载自定义 ios-sdk。提取它并按如下方式更改 build.gradle 以使用它:

jfxmobile {
    javafxportsVersion = '8.60.13'
    ios {
        iosSdk='<PATH_TO_EXTRACTED_ios-sdk>';
        ....
    }
}