1.4.2 Splash & Crash
I'm using continuous builds and have the latest 1.4.2 sdk because it has a couple of bug fixes I really need for my app (settimeout is fixed, animated map pin drop working, and a couple other things). It's great to have these things fixed and my app is ready to submit…except for the fact that it does what I'm calling the "splash and crash" maneuver when running on the device - it loads the splash screen on launch, and then immediately crashes. This is frustrating because it used to work on the device fine (with 1.4.1, and 1.4.1.1), and works perfectly in the simulator.
I've seen a couple similar questions without any answers that helped my situation, so I'm asking here if anyone has any advice for getting this to work on the device. I appreciate any help you can give.
1 Answer
-
Accepted Answer
This was fixed a while back but this needed a cleaning which the continuous build didn't do until the latest one (r5949bc72).
If you're pulling from HEAD, you MUST delete iphone/lib/7.txt, iphone/lib/8.txt AND iphone/lib/TiJSCore.a in order to revert to the working library.
Long version:
1.4.0 had TiJSCore v7, which gave those scary but harmless warnings in iOS 4.1, so I recompiled TiJSCore to use the more modern mmap functions. This recompile is known as TiJSCore v8. However, because the newer mmap functions, despite having the same args, doesn't allow for readwrite and execute on the same memory page in iOS 4.0.2 and later, v8 would crash on newer OSes. More specifically, the OS would force the app to quit as a security measure. I never saw this because, when running from xCode/debugging, the debugger overrides this security, so it'd run fine for me.
Since then, I reverted back to v7, so we have scary but harmless warnings again, but the code works. HOWEVER, the way scons works is to see that the library had been downloaded in the past. Since it sees 7.txt, it won't replace v8 with v7.
Since 1.4.1.1 was based on 1.4.0 with changes into the python used by Titanium Developer, and not the runtime, 1.4.1.1 was blissfully unaware and unaffected by this issue.