2015-02-16 3 views
0

GCM Идентификаторы выглядеть следующим образом:Почему GCM ID так долго?

APA91bEMUGVEW6Z3dtzE8RwzSDEQQaCIviSnnwLJyrElcTeZrE7QsOvVYc6p4s9-KWmOCyyqekc_uXV4gNaiLl95b3EuT7kc-k1WdAlPzEfbhgwfVzIh-FUMdyof4CUK-6h4A5uo9LyfApss8sd1A7ry0Z-FNOSqk8AS5G4iJx2Pr-8OJU9XsUg

Это строка длиной около 200.

Если мы просто используем аз, AZ и 0-9, а затем, используя строку длиной 20, мы имеем пространство ~ 60^20, которое составляет ~ 10^35 строк, чего должно быть достаточно для обозримого будущего. Тогда почему Google предпочитает иметь такие длинные идентификаторы GCM?

Примечание: В моем проекте мне нужно иметь дело с потенциально миллионами идентификаторов GCM, а копирование и сравнение таких больших строк приведет к некоторым накладным расходам, которых можно было бы избежать.

+1

FWIW, по-видимому, спецификация говорит, что это может быть до 4K: http://stackoverflow.com/a/13713128/14955 – Thilo

+0

Документация GCM не предоставляет эту информацию. Google для этого показывает, что «ID регистрации» не имеет фиксированной длины и может содержать длину до 4 Кбайт (4096 байт). – bjiang

ответ

0

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

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