Удалить пользователя с сервера, если он удаляет приложение

Можно ли удалить пользователя с сервера, если он удалит ваше приложение со своего телефона?

Я использую UUID для создания пользователей, поэтому им не нужно регистрироваться, но я не хочу, чтобы пользователи удаляли приложение, а затем присоединялись и получали новый uuid, пока старый все еще находится в базе данных.

Есть ли альтернативы использованию UUID, чтобы избежать регистрации. Очевидно, что UDID, который был бы идеальным, устарел для IOS 6 и выше.

Пожалуйста, помогите, заранее спасибо.


person fa_devlpr    schedule 25.12.2014    source источник


Ответы (4)


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

person Vipin Sharma    schedule 25.12.2014
comment
Спасибо, попробую этот метод. - person fa_devlpr; 25.12.2014

Вы не можете знать, удалил ли пользователь ваше приложение или нет. Так что метод, который вы упомянули, невозможен.

В одном случае, если вы используете какую-либо рекламу в своем приложении, вы получите идентификатор рекламы. Он уникален для устройства, поэтому, если пользователь снова установит ваше приложение, вы получите тот же рекламный идентификатор и сможете идентифицировать пользователя. Но я не буду рекомендовать этот метод, так как я могу продать свой телефон в любой момент, а новый владелец сможет использовать ваше приложение. Но в этом сценарии он будет считаться старым пользователем.

Поэтому я предлагаю сохранить логин для отдельных пользователей. В этом подходе тоже много подводных камней. Вы не можете определить, удалено приложение или нет. Также один и тот же пользователь может создать несколько имен пользователей и использовать их с одного устройства.

person Midhun MP    schedule 25.12.2014

Вы можете сохранить DeviceId в базе данных, связанной с вашим пользователем, а затем проверить, зарегистрировано ли уже это устройство, удалить старое и установить новый UUID. Вы можете получить DeviceId следующим образом:

[[UIDevice currentDevice] identifierForVendor].UUIDString;

Это будет одинаково для всех ваших приложений (в магазине приложений), но уникально для устройства.

Я думаю, что вы не можете поймать событие удаления в своем приложении.

Также проверьте эту ссылку: Могу ли я узнать, когда пользователь удалить мое приложение?

person Miknash    schedule 25.12.2014

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

person Geet    schedule 25.12.2014
comment
Спасибо, но как я могу сохранить пользователя в БД, когда все, что у меня есть для каждого пользователя, это UUID, который создается при первом запуске приложения? - person fa_devlpr; 25.12.2014
comment
сопоставьте каждый UUID с адресом электронной почты или именем пользователя. Если пользователь пытается снова установить и повторно использовать приложение, просто покажите ему, что пользователь уже существует, и направьте его на вход - person Geet; 26.12.2014