Titanium JIRA Archive
Appcelerator Community (AC)

[AC-2887] Ti Plus modules often crash my iOS apps

GitHub Issuen/a
TypeBug
Priorityn/a
StatusClosed
ResolutionFixed
Resolution Date2012-11-21T00:21:10.000+0000
Affected Version/sn/a
Fix Version/sn/a
ComponentsAppcelerator Modules, Titanium SDK & CLI
Labelsadmob, crash, module, pdf, quicklook
ReporterNicole
AssigneeShak Hossain
Created2011-09-30T12:38:56.000+0000
Updated2016-03-08T07:47:51.000+0000

Description

I tried some Ti Plus modules and found that they often crash my iOS apps. Sample 1 with QuickLook module: My iPad app has two pages, the main page is a tableview listing the files I'd like to show (pdf or jpg files). And when user clicks on a row, it goes to the second page which using QuickLook to display the file. The pdf or jpg render is good, but the app automatically exits each time when it goes back to the main page. I attached the sample pages here. Sample 2 with AdMob module: It's an iPhone/iPad app. The app structure is similar with the 1st one. The main page is a category listing, the 2nd page is article listing, and the 3rd page is article detail. The app worked perfect itself. But once I added the ti.admob module to the 2nd and 3rd pages, the app crashes MUCH MUCH MORE frequently than before, on both simulator and devices. Crush logs: Unfortunately there seems no crash logs such as exceptions produced in the console. The app just locked up and then crashed. The following is what I can get from the console: [DEBUG] App Spec: specified by path /Users/legogreen/Documents/Titanium/Titanium Studio Workspace/QuickLookTest/build/iphone/build/Debug-iphonesimulator/QuickLookTest.app [DEBUG] SDK Root: path=/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator4.3.sdk version=4.3 name=Simulator - iOS 4.3 [DEBUG] using device family ipad [DEBUG] Session started [DEBUG] Session did end with error Error Domain=DTiPhoneSimulatorErrorDomain Code=1 UserInfo=0x100303770 "The simulated application quit." [INFO] Application has exited from Simulator Thanks, Nicole

Attachments

FileDateSize
app.js2011-09-30T12:38:56.000+00001162
quicklook.js2011-09-30T12:38:56.000+0000223

Comments

  1. Nicole 2011-10-05

    I just canceled my Indie subscription because those modules can't be used for production. Hope this problem can be fixed soon and I'd like to subscribe again. Thanks.
  2. Matthew Apperson 2011-10-20

    Nicole, Two things, first being that the AdMob module is free and available as open source. The second being that to diagnose or fix these issues we will need crash logs from the console to be able to fix them. As soon as you can get that to us, please re-open the ticket and edit the description to contain that new info. Again, I am very sorry for the inconvenience. Best regards, Matt
  3. Nicole 2011-10-20

    Sorry Matthew, I don't know how to re-open this ticket. I just added the information I got from the console when the app crashed. Could you help to re-open it? Thanks a lot!
  4. Dawson Toth 2012-04-19

    Hi Nicole, I want to apologize for the long delay in responses. First, regarding AdMob. I have recently fixed an issue where the AdMob module would cause a crash when navigating between JavaScript contexts. Version 1.3 of the module contains my fixes for this. 1.3 is available here: https://github.com/appcelerator/titanium_modules/tree/master/admob/mobile/ios If you are interested, the changes I made to remedy the situation are available here: https://github.com/appcelerator/titanium_modules/pull/28 Second, regarding Quicklook. I have not been able to reproduce the issue you are seeing. I have placed your example code in an app and used it on an iPhone 4S, and in the iPhone 5.1 Simulator. I can click each of the rows, see the quicklook preview, and then return to the list. The app never exits or crashes. What version of Titanium Mobile are you using? Can you try 2.0.1? Also, please don't store the Quicklook module in the Titanium namespace. The correct way is now the following:
       var Quicklook = require('ti.quicklook');
       
    I know that you are doing what the original example showed (Titanium.Quicklook = Ti.Quicklook = req...), but that way has been proven to cause crashes and memory issues. So please make that simple change and correct your references to Ti.Quicklook. Regards, Dawson
  5. Daniel Sefton 2012-11-21

    No activity since April, I'm assuming this has been resolved. If not, let us know and we'll re-open once again. Thanks.

JSON Source