iPhone应用程序崩溃(抛弃)问题

时间:2012-03-02 15:34:50

标签: iphone image memory crash

我在我的设备上遇到了一些问题,这个应用程序已被Apple批准在商店出售。我认为它被批准很奇怪,但由于我对他们的审批程序知之甚少,也许不是。

无论如何,这是我用来下载远程.zip文件并将其解压缩到设备的代码:

var xhr = Titanium.Network.createHTTPClient();

xhr.onload = function()
{

    var path = Titanium.Filesystem.applicationDataDirectory;
    if (Titanium.Filesystem.getFile(path,'1-1.jpg').exists())
    {
    introScreen.remove(viewLoad);
    ntroScreen.remove(actInd);
    introScreen.add(view);
    introScreen.add(ci);

    } else {

    var f = Ti.Filesystem.getFile(Ti.Filesystem.applicationDataDirectory, 'HFTImages.zip');
    f.write(this.responseData);
    Ti.API.log('INFO',Ti.Filesystem.applicationDataDirectory);

    var appDir = 
    Ti.Network.decodeURIComponent(Ti.Filesystem.applicationDataDirectory).replace('file://localhost','') ;
    zipfile.extract(appDir+'HFTImages.zip', appDir);

    f.deleteFile();

    introScreen.remove(viewLoad);
    introScreen.remove(actInd);
    introScreen.add(view);
    introScreen.add(ci);

    Ti.API.info('The file has been extracted to:'+appDir);
    }

};
xhr.open('GET','http://dl.dropbox.com/u/23138095/HFTImages.zip');
xhr.send();

如果它对任何人有帮助,这里是我得到的崩溃日志:

Incident Identifier: A2053187-D47E-459A-AA5E-B631D5B55282
CrashReporter Key:   ca558f421734b4d844e54d004ede3913830139f8
OS Version:          iPhone OS 3.1.3 (7E18)
Date:                2012-03-01 19:29:13 -0500

Free pages:        96
Wired pages:       10558
Purgeable pages:   0
Largest process:   Hooray For Today

Processes
         Name                 UUID                    Count resident pages
Hooray For Today <cc527ca9b51937c5adbe035fe27a7b12>    9320 (jettisoned) (active)
    mediaserverd <3d3800d6acfff050e4d0ed91cbe2467e>     255
     dataaccessd <13d80b2e707acc91f9aa3ec4c715b9cc>     505
         syslogd <8eddddc00294d5615afded36ee3f1b62>      71
            apsd <32070d91b216d806973c8f1b1d8077a4>     171
       securityd <b9e51062610d27f727c5119b8f80dcdf>     243
         notifyd <591dd4dd804b4b8741f52335ea1fa4ab>    2027
      CommCenter <b4b87526ae086bb62c982f1078f43f81>     189
     SpringBoard <324939a437d1cca1fa4af72d9f5d0eba>    2158 (active)
      accessoryd <8f21c8b376d16e2ccb95ed6d21d8317a>      91
         configd <85efd41aceac34ccc0019df76623c7a9>     371
       fairplayd <a2eaf736b3e07c7c9a2c82e9eb893555>      93
   mDNSResponder <df1cd275e4ad434e0575990e8e1da4cb>     292
       lockdownd <80d2bd44c0bcca273d48ce52010f7e65>    1204
         launchd <a5988245aade809bf77576f1d9de42c5>      72

**End**

任何人都可以看到我可能有内存峰值或其他事情发生的地方吗?它在模拟器中运行良好。

如果有人可以,请帮忙。我不能完全感谢你的时间!

1 个答案:

答案 0 :(得分:0)

您的设备内存不足,因此被iOS杀死。我没有使用Titanium的经验,因此无法提供任何真正的解决方案。您可能希望使用非常小的zip文件对其进行测试,以检查其是否有效。

它还取决于zipfile.extract是否需要大量内存用于提取过程。希望这至少有一点帮助。

编辑:原因也可能是该应用程序没有响应太长时间,暗示解压缩进程阻塞主线程太长时间以便看门狗将其杀死。