Haxe 4.3.0 prodces APK that crashes on Android 10

I’ve updated haxe to 4.3.0 and then OpenFL, Lime, HXCPP and other haxelibs to the latest versions.

Then compiled PiratePig example that is a part of OpenFL samples (GitHub - openfl/openfl-samples: Haxelib-based OpenFL sample projects).

The resulting build crashes on launch on Redmi 9C NFC (Android 10) with the following error:

image

The same build works fine on other devices that we have (Android 11+).

The Android build enviroment (NDK, Java and such) was the same as before the Haxe update and it worked well before.

The log is blow (filtered for the PID).

04-17 12:58:25.868   536   536 D Zygote  : Forked child process 5947
04-17 12:58:25.871  5947  5947 I Zygote  : DropCapabilitiesBoundingSet ro.build.version.type=
04-17 12:58:25.891  5947  5947 I mples.piratepi: Late-enabling -Xcheck:jni
04-17 12:58:25.895   535  1488 D OemNetd : setPidForPackage: packageName=org.openfl.samples.piratepig, pid=5947, pid=10493
04-17 12:58:25.896  1215  1245 I ActivityManager: Start proc 5947:org.openfl.samples.piratepig/u0a493 for activity {org.openfl.samples.piratepig/org.openfl.samples.piratepig.MainActivity} caller=com.miui.home
04-17 12:58:25.924  5947  5947 E mples.piratepi: Unknown bits set in runtime_flags: 0x8000
04-17 12:58:26.243  5005  5170 D PerfEngineController: ForegroundInfo{mForegroundPackageName='org.openfl.samples.piratepig', mForegroundUid=10493, mForegroundPid=5947, mLastForegroundPackageName='com.miui.home', mLastForegroundUid=10087, mLastForegroundPid=1690, mMultiWindowForegroundPackageName='null', mMultiWindowForegroundUid=-1, mFlags=1}
04-17 12:58:26.245  1215  2825 D PowerHalWrapper: amsBoostNotify pid:5947,activity:org.openfl.samples.piratepig.MainActivity, package:org.openfl.samples.piratepig, mProcessCreatePackorg.openfl.samples.piratepig 
04-17 12:58:26.247   566   593 I libPowerHal: [perfNotifyAppState] foreground:org.openfl.samples.piratepig, pid:5947, uid:10493
04-17 12:58:26.626  5947  5947 I FeatureParser: can't find angelican.xml in assets/device_features/,it may be in /vendor/etc/device_features
04-17 12:58:26.652  5947  5947 W mples.piratepig: type=1400 audit(0.0:12318): avc: denied { read } for name="u:object_r:vendor_default_prop:s0" dev="tmpfs" ino=15589 scontext=u:r:untrusted_app_27:s0:c237,c257,c512,c768 tcontext=u:object_r:vendor_default_prop:s0 tclass=file permissive=0
04-17 12:58:26.653  5947  5947 E libc    : Access denied finding property "ro.vendor.df.effect.conflict"
04-17 12:58:26.672  5947  6039 D libMEOW : applied 0 plugin for [org.openfl.samples.piratepig].
04-17 12:58:26.695  5947  5947 V SDL     : Device: angelican
04-17 12:58:26.695  5947  5947 V SDL     : Model: M2006C3MNG
04-17 12:58:26.696  5947  5947 V SDL     : onCreate()
04-17 12:58:26.707  5947  5947 W SDL     : Request to get environment variables before JNI is ready
04-17 12:58:26.720  5947  5947 W System.err: dlopen failed: cannot locate symbol "__atomic_compare_exchange_4" referenced by "/data/app/org.openfl.samples.piratepig-jmKUvKEuu0RJED5cXMMCqA==/lib/arm/libApplicationMain.so"...
04-17 12:58:26.850  5947  5947 I SurfaceFactory: [static] sSurfaceFactory = com.mediatek.view.impl.SurfaceFactoryImpl@f6e437d
04-17 12:58:26.907  5947  5947 I PowerHalWrapper: PowerHalWrapper.getInstance 
04-17 12:58:26.916  5947  5947 D ViewRootImpl[MainActivity]: hardware acceleration = true , fakeHwAccelerated = false, sRendererDisabled = false, forceHwAccelerated = false, sSystemRendererDisabled = false
04-17 12:58:26.925  5947  5947 D libMEOW : applied 0 plugin for [org.openfl.samples.piratepig].
04-17 12:58:26.927  5947  5947 I InputTransport: Create ARC handle: 0xe8beadf0
04-17 12:58:26.946  5947  5947 D ForceDarkHelper: updateByCheckExcludeList: pkg: org.openfl.samples.piratepig activity: org.openfl.samples.piratepig.MainActivity@8fa6dca
04-17 12:58:26.947  5947  5947 D ForceDarkHelper: updateByCheckExcludeList: pkg: org.openfl.samples.piratepig activity: org.openfl.samples.piratepig.MainActivity@8fa6dca
04-17 12:58:26.949  5947  5947 D ForceDarkHelper: updateByCheckExcludeList: pkg: org.openfl.samples.piratepig activity: org.openfl.samples.piratepig.MainActivity@8fa6dca
04-17 12:58:26.957  5947  5947 V SDL     : onStart()
04-17 12:58:26.961  5947  5947 V SDL     : onResume()
04-17 12:58:26.965  5947  5947 V PhoneWindow: DecorView setVisiblity: visibility = 4, Parent = null, this = DecorView@4507b3b[]
04-17 12:58:26.967  5947  5947 I PowerHalWrapper: PowerHalWrapper.getInstance 
04-17 12:58:26.970  5947  5947 D ViewRootImpl[MainActivity]: hardware acceleration = true , fakeHwAccelerated = false, sRendererDisabled = false, forceHwAccelerated = false, sSystemRendererDisabled = false
04-17 12:58:26.980  5947  5947 I InputTransport: Create ARC handle: 0xe8beaf60
04-17 12:58:26.981  5947  5947 V PhoneWindow: DecorView setVisiblity: visibility = 0, Parent = android.view.ViewRootImpl@a399c96, this = DecorView@4507b3b[MainActivity]
04-17 12:58:26.985  5947  5947 W Looper  : Slow Looper SDLActivity: Activity org.openfl.samples.piratepig/.MainActivity is 400ms late (wall=0ms running=0ms ClientTransaction{ callbacks=[android.app.servertransaction.TopResumedActivityChangeItem] }) because of 2 msg, msg 1 took 386ms (seq=2 running=354ms runnable=3ms io=5ms late=5ms h=android.app.ActivityThread$H w=110), msg 2 took 327ms (seq=3 running=245ms runnable=5ms io=39ms late=73ms h=android.app.ActivityThread$H w=159)
04-17 12:58:27.050  5947  6037 D libMEOW : applied 0 plugin for [org.openfl.samples.piratepig].
04-17 12:58:27.051  5947  6037 I GPUD    : @gpudInitialize: successfully initialized with GL, dbg=0 mmdump_dbg=0 mmpath_dbg=0
04-17 12:58:27.083  5947  6037 D Surface : Surface::connect(this=0xd55ca000,api=1)
04-17 12:58:27.084   620  1794 I BufferQueueProducer: [org.openfl.samples.piratepig/org.openfl.samples.piratepig.MainActivity#0](this:0xec1eb000,id:644,api:1,p:5947,c:620) connect(P): api=1 producer=(5947:org.openfl.samples.piratepig) producerControlledByApp=false
04-17 12:58:27.085  5947  6037 D Surface : Surface::setBufferCount(this=0xd55ca000,bufferCount=3)
04-17 12:58:27.086  5947  6037 D Surface : Surface::allocateBuffers(this=0xd55ca000)
04-17 12:58:27.103  5947  6037 W Gralloc3: mapper 3.x is not supported
04-17 12:58:27.106  5947  6037 E ion     : ioctl c0044901 failed with code -1: Invalid argument
04-17 12:58:27.166  5947  6037 D Surface : Surface::connect(this=0xd55ca800,api=1)
04-17 12:58:27.167   620  2270 I BufferQueueProducer: [org.openfl.samples.piratepig/org.openfl.samples.piratepig.MainActivity#1](this:0xe9496000,id:645,api:1,p:5947,c:620) connect(P): api=1 producer=(5947:org.openfl.samples.piratepig) producerControlledByApp=false
04-17 12:58:27.168  5947  6037 D Surface : Surface::setBufferCount(this=0xd55ca800,bufferCount=3)
04-17 12:58:27.168  5947  6037 D Surface : Surface::allocateBuffers(this=0xd55ca800)
04-17 12:58:27.246   620   646 I BufferQueueConsumer: [org.openfl.samples.piratepig/org.openfl.samples.piratepig.MainActivity#0](this:0xec1eb000,id:644,api:1,p:5947,c:620) setDefaultBufferSize: width=1044 height=664
04-17 12:58:27.256  5947  6037 D Surface : Surface::disconnect(this=0xd55ca000,api=1)
04-17 12:58:27.257   620   646 I BufferQueueProducer: [org.openfl.samples.piratepig/org.openfl.samples.piratepig.MainActivity#0](this:0xec1eb000,id:644,api:1,p:5947,c:620) disconnect(P): api 1
04-17 12:58:27.258  5947  6037 D Surface : Surface::connect(this=0xd55ca000,api=1)
04-17 12:58:27.259   620   646 I BufferQueueProducer: [org.openfl.samples.piratepig/org.openfl.samples.piratepig.MainActivity#0](this:0xec1eb000,id:644,api:1,p:5947,c:620) connect(P): api=1 producer=(5947:org.openfl.samples.piratepig) producerControlledByApp=false
04-17 12:58:27.260  5947  6037 D Surface : Surface::setBufferCount(this=0xd55ca000,bufferCount=3)
04-17 12:58:28.182   620  1339 I BufferQueueProducer: [org.openfl.samples.piratepig/org.openfl.samples.piratepig.MainActivity#0](this:0xec1eb000,id:644,api:1,p:5947,c:620) queueBuffer: fps=3.84 dur=1042.34 max=882.57 min=20.31
04-17 12:58:28.823  5947  6037 D Surface : Surface::disconnect(this=0xd55ca000,api=1)
04-17 12:58:28.824   620   646 I BufferQueueProducer: [org.openfl.samples.piratepig/org.openfl.samples.piratepig.MainActivity#0](this:0xec1eb000,id:644,api:1,p:5947,c:620) disconnect(P): api 1
04-17 12:58:28.825  5947  5947 D View    : [Warning] assignParent to null: this = DecorView@ca013e9[MainActivity]
04-17 12:58:28.825  5947  5947 I InputTransport: Destroy ARC handle: 0xe8beadf0
04-17 12:58:28.834  5947  5947 V SDL     : onPause()
04-17 12:58:28.996  5005  5034 D PerfEngineController: ForegroundInfo{mForegroundPackageName='com.miui.home', mForegroundUid=10087, mForegroundPid=1690, mLastForegroundPackageName='org.openfl.samples.piratepig', mLastForegroundUid=10493, mLastForegroundPid=5947, mMultiWindowForegroundPackageName='null', mMultiWindowForegroundUid=-1, mFlags=0}
04-17 12:58:29.030  5947  5947 V SDL     : onStop()
04-17 12:58:29.032  5947  5947 V PhoneWindow: DecorView setVisiblity: visibility = 4, Parent = android.view.ViewRootImpl@a399c96, this = DecorView@4507b3b[MainActivity]
04-17 12:58:29.042  5947  5947 V SDL     : onDestroy()
04-17 12:58:29.045  5947  6037 D Surface : Surface::disconnect(this=0xd55ca800,api=1)
04-17 12:58:29.047   620   646 I BufferQueueProducer: [org.openfl.samples.piratepig/org.openfl.samples.piratepig.MainActivity#1](this:0xe9496000,id:645,api:1,p:5947,c:620) disconnect(P): api 1
04-17 12:58:29.049  5947  5947 D View    : [Warning] assignParent to null: this = DecorView@4507b3b[MainActivity]
04-17 12:58:29.049  5947  5947 I InputTransport: Destroy ARC handle: 0xe8beaf60
04-17 12:58:29.057  5947  6037 I GED     : ged_boost_gpu_freq, level 100, eOrigin 2, final_idx 2, oppidx_max 2, oppidx_min 0
```|
2 Likes

Just in case someone wants to follow the discussion :slight_smile:

3 Likes

Fixed by:
lime: git 8.2.0-Dev
hxcpp: git master