Приложението за iPad, разработено от Flash Builder, увисва след зареждане на външни данни

Разработвам приложение за iPad във Flash Builder 4.6. Моето приложение спира да работи на устройството, когато заредя данни от amfphp шлюза. Има около 30 стойностни обекта в отговора на сървъра. Когато сървърът отговори с по-малко данни - приложението работи добре.

Така че предполагам проблем при анализирането на отговора на AMF. Тази политика свързана ли е с iPad? Мога ли да добавя модификатори, докато опаковам, за да избегна подобен проблем?

Стан


person Stan Reshetnyk    schedule 25.01.2012    source източник
comment
Вися ли на вашата платформа за разработка? Windows или Mac, когато го тествате?   -  person ShaunOReilly    schedule 27.01.2012
comment
Работи добре в dev env на моя Windows 7. Проблемът е в устройство iPad1. Също така успях да заредя и анализирам 200KB xml на устройството. Но описаният проблем вероятно е свързан с AMF, RemoteObject, картографиране на клас amf.   -  person Stan Reshetnyk    schedule 27.01.2012
comment
Ако работи с по-малко обекти, може би паметта е проблем тук. Проверихте ли профайлъра за изтичане на памет и общо потребление на памет?   -  person AlBirdie    schedule 22.02.2012
comment
Доколкото знам, AMF не е проблемът. Всъщност има библиотека за AMF на ipad, наречена Cocoa-amf github.com/nesium/cocoa-amf   -  person keyle    schedule 23.02.2012
comment
Благодаря, че потърси. Деактивирах половината от проекта и успях да продължа напред.   -  person Stan Reshetnyk    schedule 23.02.2012


Отговори (1)


Проблемът вече е изчезнал/решен. AMF работи добре.

  1. Идентификаторът на приложението трябва да започва с правилен низ, дефиниран в профила на предоставяне!

  2. Изключете режима за отстраняване на грешки. Както в mxmlc, така и в предоставянето get-task-allow.

Мисля, че и следното засяга:

  1. Не трябва да има пазарни класове [RemoteClass] и с аргументи в конструктора (дори със стойности по подразбиране).

  2. Имах код, където NetConnection.connect се извикваше много често. Увеличен интервал.

person Stan Reshetnyk    schedule 23.02.2012
comment
Същият проблем тук, бихте ли разяснили повече отговора си? Трябва ли да добавя изрично идентификатора на приложението и елементите get-task-allow като права в дескриптора на въздушното приложение? - person Cosma Colanicchia; 22.11.2012
comment
Не помня какво съм имал работа с id. Но ясно си спомням още 2 проблема: 1) стойностните обекти, преминали през десериализация, трябва да имат празен конструктор. БЕЗ четни аргументи по подразбиране; 2) понякога виси при достъп до SharedObjects, но понякога не (в зависимост от опората). Но доста стабилно поведение. - person Stan Reshetnyk; 22.11.2012
comment
Благодаря ви за отговора.. Затруднявам се с приложение, което работи добре в Android (debug или пакетирано) и в iOS debug/run/fast/standard modes от Flash Builder, но увисва при 2-ро или 3-то повикване към отдалечена услуга когато е пакетиран ad-hoc.. от страната на сървъра, заявките се управляват правилно, но ipp ​​увисва, когато получи данните, преди да изпрати някакъв резултат или събитие за грешка.. - person Cosma Colanicchia; 22.11.2012
comment
ДОБРЕ. Звучи подобно на проблем 1) в моя коментар. Опитайте се да премахнете аргументите от конструктора на обекти. - person Stan Reshetnyk; 22.11.2012
comment
Открих проблема. Обърнете внимание, че аргументите на конструктора са подходящи, ако е предоставена стойност по подразбиране (проверена). В моя случай проблемът беше свързан с грешка в метод за настройка на десериализиран обект, който създаваше грешка при препълване на стека (напр. методът за настройка извиква себе си вместо своята променлива за съхранение).. емулаторът и приложението за Android по време на изпълнение просто откажете се, без да виси (при отстраняване на грешки ще регистрира грешката в конзолата), докато на iOS цялото приложение спира да отговаря (няма проверка на ограничението на стека на повикванията на транскодирано приложение?). Благодаря ти все пак! - person Cosma Colanicchia; 23.11.2012