LINUX.ORG.RU

Облачное хранение данных пользователя мобильного приложения

 


0

1

Допустим, я разрабатываю некую игрушку для Android. В этой игрушке у каждого юзера есть состояние, заданное буквально несколькими числами. Мне нужно чтобы это состояние синхронизировалось между всеми девайсами одного пользователя, а также переживало переустановку приложения (я не против какой-нибудь специальной кнопки удаления аккаунта, чтобы следовать всяким GPDR, но хочу избежать случайной потери прогресса игроком). Также мне нужно осложнить читинг. То есть когда данные проходят через сервер синхронизации между девайсами, то они проверяются на корректность изменения (небольшая функция, выполняющаяся server side) и некорректные действия игнорируются и не распространяются на другие девайсы юзера (более того, когда девайсы с некорректными данными попытается засинхронизироваться изменённые данные перезапишутся данными с сервера). Например, какое-то изменение состояния может происходить только раз в сутки. Нужно нейтрализовать тупые варианты вроде перевода часов. Кул хацкеры пусть взламывают сколько-угодно локально, пока это не касается server-side копии мне пофиг. Хочется избежать явного создания учётки, чтобы юзер просто поставил приложение и получил состояние, которое было до удаления приложения. Никаких «авторизуйтесь с помощью Facebook/VK/Google/etc». Я видел подобное поведение в других приложениях, значит это как то возможно.

Разумеется, хочется получить это всё бесплатно, пока у приложения не миллионы пользователей (то есть нужен сервис с бесплатным периодом до каких-то объёмов хранимых данных/юзеров).

Какие у меня есть варианты? Firebase? Что-то другое? В какую сторону копать?

★★★★★

Последнее исправление: KivApple (всего исправлений: 1)

нужно чтобы это состояние синхронизировалось между всеми девайсами одного пользователя

избежать явного создания учётки

никаких «авторизуйтесь с помощью Facebook/VK/Google/etc»

очень интересно посмотреть, как у тебя это получится

Deleted
()
Ответ на: комментарий от Deleted

Да без учетки-то просто - по ид без личных данных. Но при смене телефона слетит. А передавать ид без паролей - глупость.

Zhbert ★★★★★
()
Ответ на: комментарий от Deleted

Понятное дело, что на низком уровне это будет привязка через Google Play. Но я вижу, что некоторые приложения умудряются это делать без показа окошка выбора аккаунта при первом запуске. Просто ставишь приложение, что-то делаешь. Делаешь Hard Reset, логинишься в тот же Google аккаунт, ставишь приложение заново - видишь те же данные. Аналогично с удалением и установкой без сброса всей системы.

KivApple ★★★★★
() автор топика

У Гугла же есть гуглоигры. Никаких авторизацией/регистраций, пользователь ведь уже залогинен в учётку Гугла.

karton1 ★★★★★
()
Ответ на: комментарий от Zhbert

Гуглоигры позволяют синхронизировать сохранения игры. Но дадут ли они сделать небольшую server-side обработку сохранений? Как я уже сказал, мне нужно защититься от простых читов (типа перевода системного времени для обхода ограничений на интервалы выполнения каких-то действий), потому что иначе это убивает всю суть моей игры (если же юзер заморочился рутованием телефона и патчингом приложения, то он уже ССЗБ).

KivApple ★★★★★
() автор топика
Ответ на: комментарий от karton1

Мне нужна ещё примитивная server-side обработка. А ещё хочется чуть-чуть доступа к сейвам юзеров. Тупо аналитика вроде «самое большое набранное количество очков за всю историю существования приложения (без привязки к конкретному юзеру)».

KivApple ★★★★★
() автор топика
Ответ на: комментарий от KivApple

Firebase

Да. Хотя любое другое облако тоже подойдёт.

Мне нужна ещё примитивная server-side обработка

Lambda.

no-such-file ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.