[TIMOB-17713] iOS8: App crashes after starting using "open in .." from another app
GitHub Issue | n/a |
---|---|
Type | Bug |
Priority | High |
Status | Closed |
Resolution | Fixed |
Resolution Date | 2014-09-17T01:15:56.000+0000 |
Affected Version/s | n/a |
Fix Version/s | Release 3.4.0, Release 3.5.0 |
Components | iOS |
Labels | ios8 |
Reporter | Andreas Graetz |
Assignee | Pedro Enrique |
Created | 2014-09-11T15:33:45.000+0000 |
Updated | 2014-11-21T20:23:41.000+0000 |
Description
Using "Open in .." to send a file to my app let my app crashing on opening before the first line of code will be executed.
Here is the log:
[ERROR] : The application has crashed with an uncaught exception 'NSInvalidArgumentException'.
[ERROR] : Reason:
[ERROR] : *** setObjectForKey: object cannot be nil (key: source)
[ERROR] : Stack trace:
[ERROR] :
[ERROR] : 0 CoreFoundation 0x2b69ae3f <redacted> + 126
[ERROR] : 1 libobjc.A.dylib 0x3917dc8b objc_exception_throw + 38
[ERROR] : 2 CoreFoundation 0x2b5b8ec3 <redacted> + 850
[ERROR] : 3 iQ.Suite 0x0021fe59 iQ.Suite + 1396313
[ERROR] : 4 UIKit 0x2ed9d6eb <redacted> + 278
[ERROR] : 5 UIKit 0x2eda0ea3 <redacted> + 2082
[ERROR] : 6 UIKit 0x2eda47f7 <redacted> + 2142
[ERROR] : 7 UIKit 0x2eda3d6b <redacted> + 118
[ERROR] : 8 UIKit 0x2eda3ced <redacted> + 360
[ERROR] : 9 UIKit 0x2ed98fd3 <redacted> + 478
[ERROR] : 10 FrontBoardServices 0x31db21f9 <redacted> + 40
[ERROR] : 11 FrontBoardServices 0x31dc10e9 <redacted> + 12
[ERROR] : 12 CoreFoundation 0x2b6615b5 <redacted> + 12
[ERROR] : 13 CoreFoundation 0x2b660879 <redacted> + 216
[ERROR] : 14 CoreFoundation 0x2b65f3b3 <redacted> + 1714
[ERROR] : 15 CoreFoundation 0x2b5ad621 CFRunLoopRunSpecific + 476
[ERROR] : 16 CoreFoundation 0x2b5ad433 CFRunLoopRunInMode + 106
[ERROR] : 17 GraphicsServices 0x329410a9 GSEventRunModal + 136
[ERROR] : 18 UIKit 0x2eb97809 UIApplicationMain + 1440
[ERROR] : 19 iQ.Suite 0x000d2573 iQ.Suite + 30067
[ERROR] : 20 libdyld.dylib 0x396fdaaf <redacted> + 2
[ERROR] : *** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '*** setObjectForKey: object cannot be nil (key: source)'
[ERROR] : *** First throw call stack:
[ERROR] : (0x2b69ae3f 0x3917dc8b 0x2b5b8ec3 0x21fe59 0x2ed9d6eb 0x2eda0ea3 0x2eda47f7 0x2eda3d6b 0x2eda3ced 0x2ed98fd3 0x31db21f9 0x31dc10e9 0x2b6615b5 0x2b660879 0x2b65f3b3 0x2b5ad621 0x2b5ad433 0x329410a9 0x2eb97809 0xd2573 0x396fdaaf)
Attachments
File | Date | Size |
---|---|---|
Alert.PNG | 2014-09-18T17:50:39.000+0000 | 142444 |
AppDesigner 2014 SVN.zip | 2014-09-12T07:43:30.000+0000 | 2364644 |
AppDesigner OpenIn Test.zip | 2014-09-13T19:12:11.000+0000 | 1827854 |
Screen Shot 2014-09-16 at 2.01.23 PM.png | 2014-09-16T21:03:56.000+0000 | 1823454 |
Example project added. This works on an iOS7 device but not on an iOS8. Try to "open in ..." any file from another app in this app.
Thank you. Is it possible to use a smaller example project? It helps eliminate unrelated issues.
New example created from Titanium "Default Project". Changes in app.js:
Tried to reproduce the issue with the code mentioned above, but could not reproduce. I don't get any crash. The app opens fine for me & I get an alert. See attachment above. Environment: Appc Studio : 3.4.0.201409131030 Ti SDK : 3.4.0.v20140916111716 Mac OSX : 10.9.4 Alloy : 1.5.0-rc2 CLI - 3.4.0-rc3 Code Processor: 1.1.1 xcode 6 gmseed Ipad 4 - IOS 8 Gm Seed
This screen tells me, that you haven't open the app using the "open in ..." functionality. This works fine, but try to select a file or attachment from your mail client and open this file in this app. This action causes a crash under iOS 8. If the app may working, you see the file url of the file in the inbox.
PR for master https://github.com/appcelerator/titanium_mobile/pull/6110 PR for 3.4.x https://github.com/appcelerator/titanium_mobile/pull/6111
Approved.
Verified fix on: Mac OSX 10.9.4 Appcelerator Studio, build:3.4.0.201409161950 Titanium SDK build: 3.4.0.v20140917120000 Titanium CLI, build: 3.4.0-rc4 Alloy: 1.5.0-rc2 Xcode6.0.1 iOS Device iPad4 (8.0) Opened a pdf file sent via email and opened using an app I had created. The app opened successfully, see attached screenshot for the alert message shown. Closing ticket.