Проблема с вылетом приложения для iPhone - PullRequest
0 голосов
/ 02 марта 2012

У меня возникли проблемы на устройстве, которое было одобрено 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 голосов
/ 03 марта 2012

Ваше устройство исчерпало память и, следовательно, убито iOS. У меня нет опыта работы с Titanium, поэтому я не могу дать никакого реального решения. Возможно, вы захотите проверить его с очень маленьким zip-файлом, чтобы проверить, работает ли он.

Это также зависит от того, требуется ли zipfile.extract много памяти для процесса извлечения. Надеюсь, это поможет хоть немного.

Изменить: причина также может быть в том, что приложение слишком долго не отвечало, намекая на то, что процесс разархивирования слишком долго блокировал основной поток, поэтому сторожевой таймер убил его.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...