Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   API приложений и сред (http://www.flasher.ru/forum/forumdisplay.php?f=61)
-   -   Отследить удаление приложения (http://www.flasher.ru/forum/showthread.php?t=142425)

Serg65535 20.07.2010 20:56

Отследить удаление приложения
 
Уважаемые коллеги, кто-нибудь знает, возможно-ли средствами API отследить факт, когда пользователь удаляет моё приложение? (Хотелось бы сразу грохнуть его данные на моём сервере) Сейчас думаю решать по времени отсутствия активности - но это не панацея.

Спасибо.
ЗЫ, Прошу прощения, может плохо искал.

mikhailk 20.07.2010 21:17

Насколько я помню, именно такого функционала в API VK нет.
Можно косвенно.

При загрузке приложения от имени какого-либо пользователя получаем список всех его друзей и список его друзей, установивших приложение. Перебираем друзей, не установивших приложение, если установки нет, а профиль есть - скорее всего пользователь приложение снес.

Вот только я не уверен в безопасности всего этого процесса. Данным от клиента верить нужно с осторожностью.

2morrowMan 21.07.2010 00:23

А если пользователь снова потом приложение установит?

Zebestov 21.07.2010 00:47

начнет все заново — шо за вопрос?!

Azo 21.07.2010 01:00

зачем удалять акаунт с сервера? можно просто блокировать. А котгда пользователь снова установит - восстановить трафикопожирающий акаунт. Ведь я так понимаю вы хотите удалить пользователя что бы лишний раз не отправлять например увидомление впустую..

Serg65535 21.07.2010 09:31

В принципе, я сейчас так и решаю. Каждый пользователь при старте приложения получает с сервера хеш от строковой суммы ID всех своих друзей. Потом запрашивает своих друзей у API. Если хэши не сходятся, то на сервер посылается обновлённый список друзей, который заменяет старый. Это гарантирует, что пользователь, удаливший приложение, не будет более участвовать в межпользовательской логике.

Удаление пользователя таким образом, автоматически наступает по двум условиям:
Отсутствие друзей + отсутствие активности, скажем месяц.

mikhailk 21.07.2010 11:52

Цитата:

Сообщение от Azo (Сообщение 923790)
зачем удалять акаунт с сервера? можно просто блокировать. А котгда пользователь снова установит - восстановить трафикопожирающий акаунт. Ведь я так понимаю вы хотите удалить пользователя что бы лишний раз не отправлять например увидомление впустую..

Меня, например, трафик не волнует.
Если пользователь в игру не заходит, то и трафика он не порождает.

Паразитный объем БД - на мой взгляд единственное, ради чего стоит ввязываться в этот процесс очистки. Например, установлено приложение (в текущий момент) у 300 тыс. пользователей, реально играет где-то 50 тыс., а в базе - больше 400 тыс. профилей со всеми вытекающими последствиями.

Из них безусловно можно удалить 100 тыс профилей тех, кто приложение снес и еще столько же наберется тех, кто приложение установил, в игру вошел (профиль создался), но играть так и не начал. Т.е., по идее, можно сжать базу в два раза.

На объеме в 400 тыс. это большого смысла не имеет. На объеме в 4 млн. - вполне.

Serg65535 21.07.2010 12:02

Цитата:

Сообщение от mikhailk (Сообщение 923824)
Меня, например, трафик не волнует.
Если пользователь в игру не заходит, то и трафика он не порождает.

Речь не столько о трафике, сколько об участии "мёртвых душ" в межпользовательской логике, которая просчитывается, когда пользователей нет в он-лайне. Если у меня друг Вася, и он сегодня удалил приложение, а я заходил только позавчера - то при просчёте моих связей Вася будет учтён, хотя его уже нет. Васю выкинет из списка моих друзей на сервере, только когда я войду в игру.

mikhailk 21.07.2010 13:38

Это зависит от логики приложения, как я понимаю. Большинство высоконагруженных приложений в том же ВК реализованы так, чтобы свести к минимуму то, о чем Вы говорите. Каждый пользователь копошится в своей песочнице, а изменения его статуса относительно других пользователей (например, в том же общем рейтинговом листе) инициируется не со стороны сервера, а со стороны клиента.


Часовой пояс GMT +4, время: 23:40.

Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.