глобални функции на титанова сплав

Имам въпрос, глобалните функции, зададени в alloy.js, изпълняват ли се при всяко стартиране на приложението или при всяко отваряне на нов прозорец?

защото всъщност бих искал да създам уникален потребителски идентификатор за потребителя и да му присвоя глобална променлива, така че да може да се използва чрез приложението, но не съм сигурен дали ще създаде отново и преназначи генерирания потребителски идентификатор всеки път, когато приложението се опитва да отвори друг прозорец или ще използва същия user_id, който приложението е генерирало след инстанциране на мобилното приложение.

надявам се някой да ми отговори. >.‹


person user2558534    schedule 14.03.2014    source източник
comment
Тези функции ли сте дефинирали в alloy.js или имате предвид нещо по-дълбоко в Titanium SDK и се чудите как е създаден прозорец? Ако това бяха функции, които сте дефинирали там, щях да пусна предупреждение ('OMG THIS JUST RAN') в него, за да мога да видя какво се случва. Не мислех, че функциите в alloy.js се изпълняват, освен ако не сте ги извикали специално, така че може да съм объркан относно това, за което питате, или да не съм запознат с тази функция.   -  person Martin    schedule 15.03.2014


Отговори (1)


Функциите в alloy.js ще се изпълняват при всяко зареждане на приложението и ще се зареждат близо до началото на изпълнението на приложението. Така че отговорът е НЕ, вашият уникален идентификатор НЯМА да бъде създаван отново всеки път, когато се отвори нов прозорец.

От Titanium DOC:

Файлът за инициализиране app/alloy.js може да се използва за изпълнение на някакъв код близо до началото на жизнения цикъл на приложението. Съдържанието на този файл ще бъде изпълнено точно преди първоначалният контролер index.js да бъде зареден, което ви позволява да изпълните код, преди да бъдат заредени компоненти на потребителския интерфейс, и да замените вградените функции на Alloy, преди да бъдат изпълнени.

Също така, ето пример как да стартирате функция и да съхраните резултата в глобална променлива (вашата функция unique_id ще работи по същия начин):

Alloy.Globals.myId = function(){
   var id = (CODE TO GENERATE ID)
   return id;
}
person LucasA    schedule 25.03.2014