2014-02-15 2 views
0

EDITКак различать клиентские устройства?

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

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

ORIGINAL

Поэтому у меня есть приложение, которое имеет узел .js в качестве исходного кода. Теперь это сделано так, что тот же сервер (что означает код серверной) используется для:

  1. браузера клиента
  2. Android приложение
  3. IOS приложение

Все JSON.

Теперь, как узнать, из какого «устройства» возникает запрос.

«Тип устройства» проверяется только при загрузке, после чего «тип устройства» хранится в сеансе пользователя.

Ввод «секретного» в двоичный файл мобильного приложения небезопасен (я думаю).

ответ

1

Для iOS вы можете использовать уникальный идентификатор (например, как описано в this related question/answer). Имейте в виду, что уникальный идентификатор изменится, если пользователь удалит и переустановит ваше приложение.

Для браузеров вы можете использовать IP-адрес или какой-либо «токен» или файл cookie, который вы передаете, когда браузер сначала подключается к вашему серверу.

Для Android вы можете использовать Settings.Secure # ANDROID_ID, as found in the answer to this question.

1

Вы можете использовать заголовок User-Agent, чтобы передать устройство и версию os только, как работает браузер прямо сейчас.

Смежные вопросы