![]() |
|
||||||||||
|
|||||
|
Регистрация: Jan 2012
Сообщений: 836
|
Всем привет) Подскажите, каким методом сохранять игровые результаты наиболее правильно. Через SharedObject или через доступ к файловой системе и там заводить отдельный файл под сохранку?
|
|
|||||
|
Регистрация: Dec 2010
Сообщений: 49
|
Меня, когда я стартовал в мобильную разработку, беспокоил тот же вопрос. Shared Object работает и мои цели помогает достигать. Но советовали, что лучше использовать File + FileStream. Правда, я сам ещё не пробовал этот вариант.
|
|
|||||
|
Регистрация: Jan 2012
Сообщений: 836
|
Цитата:
Добавлено через 25 минут С другой стороны. При обновлении игры, будут ли браться сейвы с предыдущей обновы? Последний раз редактировалось Godwarlock; 29.09.2016 в 00:36. |
|
|||||
|
Регистрация: Dec 2010
Адрес: Ярославль
Сообщений: 1,255
|
Godwarlock, если сохранять файлы в applicationStorageDirectory, к нему так же нельзя будет достучаться извне(вообще, можно, но только из под рута).
Не интересовался, как устроен SharedObject на мобильных девайсах, но, скорей всего оно реализовано на основе SharedPreferences/NSUserDefaults, то есть, при наличии рута и их утащить можно. Если есть страх кражи сейвов, можно их шифровать ключём на основе уникального id девайса. Есть три варианта хранения данных: 1) SharedObject - подойдёт для хранения небольшого количества данных; 2) Сохранение в файл\файлы кастомного формата - для хранения любого количества данных любого вида; 3) SQLite - для хранения большого объёма структурированных данных. Вроде даже есть какие-то orm на as3. Цитата:
|
|
|||||
|
Регистрация: Jan 2012
Сообщений: 836
|
illuzor Спасибо. Идея с шифрованием на основе id девайся хорошая тема. В прочем и файл свой создавать наверно поприкольнее, можно любой формат придумать, а я люблю давать своим "вещичкам" имена xD
|
|
|||||
|
Цитата:
У тебя неверные данные. Если сделать файл с тем же названием, то он сможет легко прочитать твой шерд объект. Второй вариант, можно просто переложить твой SharedObject в директорию аналогичных объектов другого приложения, и вуаля, твой файл будет прочитан. То есть это никак не гарантирует варианта с распространением сейвов в сети. Более того, туда можно любые новые сейвы записать сразу. Например, что у тебя 100500 миллионов денег в игре, или все возможное оружие. Короче не надежная это тема. Цитата:
В общем, защитить сохранения можно только если хранить базу данных на своем сервере, и давать доступ после авторизации конкретного игрока. Локальную базу защитить невозможно. Но так, от всех желающих школьников конечно можно слегка защитить. Даже просто спрятав ключ где-то внутри приложения, и получая его как-то динамически. У SQLite есть возможность зашифровать данные 16-битным ключом. А для работы с SQLite в AIR, есть замечательный фреймворк FlexORM, которым я сам пользуюсь уже давно
__________________
Ко мне можно и нужно обращаться на ты) |
|
|||||
|
Регистрация: Dec 2010
Адрес: Ярославль
Сообщений: 1,255
|
Цитата:
Плохо ещё тем, что андроид версии 6+ может синхронизировать настройки приложений. То есть при смене девайса они просто не откроются. |
|
|||||
|
Регистрация: Jan 2012
Сообщений: 836
|
Цитата:
|
|
|||||
|
Регистрация: Dec 2010
Адрес: Ярославль
Сообщений: 1,255
|
Godwarlock, https://firebase.google.com/ - это общее.
А для игр есть специальный сервис - https://developers.google.com/games/services/ |
|
|||||
|
Регистрация: Jan 2012
Сообщений: 836
|
Спасибо за помощь)
|
![]() |
![]() |
Часовой пояс GMT +4, время: 19:22. |
|
|
« Предыдущая тема | Следующая тема » |
|
|