![]() |
|
||||||||||
|
|||||
|
Регистрация: Apr 2012
Сообщений: 213
|
Если я хочу сохранять булин в шейред обджект, то для каждой ли переменной надо создавать отдельный getLocal() или как-то в один можно запихнуть? Я просто не совсем понимаю принцип работы SharedObject
|
|
|||||
|
Регистрация: Apr 2012
Сообщений: 213
|
public var shortE:Boolean = false, _shortE:SharedObject //функция для выгрузки, идёт без void private function sharedObjectView1() { _shortE= SharedObject.getLocal('shorty'); if (_shortE.data) { shortE = _shortE.data; } } //функция сохранения private function saveo(event:TouchEvent):void { _shortE.data['text'] = shortE _shortE.flush(); } Добавлено через 3 минуты public var shortE:Number = 0, _shortE:SharedObject //функция для выгрузки, идёт без void private function sharedObjectView1() { _shortE= SharedObject.getLocal('shorty'); if (_shortE.data['text']) { shortE = _shortE.data['text']; } } //функция сохранения private function saveo(event:TouchEvent):void { _shortE.data['text'] = shortE _shortE.flush(); } |
|
|||||
|
а я себе писал маленький кукименеджер
import flash.net.SharedObject; public class CookieManager { public static var storeName:String = ""; public static function getCookie(name:String, defaultValue:Object = null):Object { var so:SharedObject = SharedObject.getLocal(storeName, "/"); var res:Object = so.data[name]; if(res==null) return defaultValue; return res; } public static function saveCookie(name:String, value:Object):void { var so:SharedObject = SharedObject.getLocal(storeName, "/"); so.data[name] = value; so.flush(); } }
__________________
Чтобы доказать, что вы не робот, причините вред другому человеку. |
|
|||||
|
Регистрация: Apr 2012
Сообщений: 213
|
Так SharedObject, это ж не совсем куки) Из хтмл или ДжС к ним не обратишься. ExternalInterface - куки. Ну сейчас не об этом. То-есть 0-1 приемлемое решение?
|
|
|||||
|
SharedObject своего рода флеш-куки, товарищ GBee имел это ввиду.
P.S. Для просмотра локальных SO я использую утилиту http://blog.coursevector.com/minerva, очень удобно. |
|
|||||
|
listener
|
GBee, твой пример дает нормальный Boolean:
saveCookie("foo", true); var o:Object = getCookie("foo", false); trace(o is Boolean, o); // true, true Цитата:
|
|
|||||
|
[+4 06.05.14]
|
alexcon314 - тут скорее интерпретатор виноват. На сколько я помню со - записывает текстовые данные. И там скорее всего идет перевод. Типа такого
if(a == "true" || a == true ) a as Boolean Тоесть со в любом случае как txt документ получается вроде бы
__________________
Марк Tween |
|
|||||
|
Цитата:
Эээ, а, э. Почему я его так не использую?Там какая то фигня была, вроде все в стринги переводилось раньше? Блин.
__________________
Чтобы доказать, что вы не робот, причините вред другому человеку. |
|
|||||
|
Регистрация: Mar 2007
Сообщений: 319
|
на самом деле есть очень большая разница между вызов getLocal или один getLocal с сохранением ссылки на so.
вызов getLocal читает файл с диска и при выходе из области видимости записывает в файл и помечает выделенные объекты для очистки мусора. если держать ссылку на so то чтение и запись будет один раз. если не вызывать flush то запись на диск будет только после закрытия флеш плеера. это очень важно понимать, если используешь so в качестве кэша для каких то медиа файлов. иначе постоянная запись/чтение убьёт производительность. |
![]() |
![]() |
Часовой пояс GMT +4, время: 06:00. |
|
|
« Предыдущая тема | Следующая тема » |
|
|