iOS / Android Dev Tools

формат токена APNs

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

формат токена APNs

Входной токен

Hex: внешние <…> и пробелы ASCII. Десятичный ввод: беззнаковые байты 0–255.

Результат форматирования

Счётчик описывает формат, а не действительность токена APNs.

Обработка в браузере, без отправки и сохранения ввода.

Параметры

Введите полную последовательность байтов.

Формат токена APNs в журнале может отличаться от записи, которую ждёт сервис отправки. Начальный 00 — полноценный байт. Преобразование всей последовательности в одно число может его потерять.

Берите полные данные из обработчика регистрации. Отладочное описание иногда сокращает содержимое. Удаление пробелов и скобок не восстанавливает пропущенные байты.

Зачем проверять формат токена APNs

Сохранение нулей и порядка

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

Ячейки байтов со скобками и промежутками объединяются в строку с сохранением начального нуля и порядка.

Сопоставление байтов без расшифровки

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

Три ряда с разной группировкой соединяются с одной и той же упорядоченной последовательностью байтов.

Сначала определите систему счисления

01

Уточните значение 10

В режиме hex запись 10 означает десятичное 16. В десятичном режиме это десять. Даже если во входе только цифры, инструмент использует выбранную систему, а не угадывает её.

02

Приостановите автоматическое обновление

Автоматический расчёт ждёт 350ms после изменения. Если его отключить, появится кнопка; работает и Ctrl/Cmd + Enter. Изменение текста или параметров сразу блокирует экспорт старого результата.

03

Сверьте байты перед копированием

Побайтовый hex помогает увидеть начальные 00, а десятичный массив — сопоставить беззнаковый дамп. Пример и очистка сначала показывают предпросмотр. Одно действие отмены восстанавливает вход и результат вместе.

Три представления одних байтов

Две цифры на каждый байт

00 01 ff превращается в 0001ff, а не в 1ff. Для значений меньше 16 сохраняется ведущий ноль. Это правило записи отдельного байта, а не ограничение общей длины токена.

Отдельная десятичная грамматика

Принимаются целые числа от 0 до 255. При наличии запятых в каждом фрагменте должно быть одно число; без запятых разделителем служит пробел. Внешние квадратные скобки необязательны. Смешанная запись 1 2,3 отклоняется.

Позиция ошибки в исходном тексте

Недопустимый hex, незакрытая скобка, нечётное число цифр и байт вне диапазона сопровождаются строкой и столбцом. Расчёт не переписывает вход, поэтому позицию можно сопоставить с исходным журналом.

Чего нельзя узнать по записи

Длина не подтверждает действительность
Apple указывает переменную длину токенов устройства. Инструмент не требует 32 байта или 64 hex-символа. Любая непустая последовательность в пределах бюджета ввода допускает форматирование.
Нет восстановления пропущенных данных
Hex допускает пробелы ASCII и одну внешнюю пару <…>. Префикс 0x, кавычки, двоеточия, запятые и многоточия вызывают ошибку. Цифры не дополняются, а посторонние символы не удаляются молча.
Другие идентификаторы не разбираются
JWT, FCM, Base64 и идентификаторы канала широковещательной отправки не преобразуются. Непрозрачные байты не декодируются в текст и не раскрывают здесь устройство, окружение или сообщение.
Доставка уведомления не проверяется
Успех означает только возможность преобразовать синтаксис в байты. Регистрацию, topic, среду и аутентификацию отправителя проверяют отдельно. Полей для сертификатов и отправки push нет.
Один ограниченный текстовый ввод
Бюджет составляет 65 536 кодовых единиц UTF-16 и проверяется до разбора без обрезки. Нет импорта файлов и URL, пакетов токенов или постоянной истории. Десятичные отрицательные значения, ведущие нули, дроби и экспоненты отклоняются.

Вопросы про формат токена APNs

Как преобразовать токен устройства из NSData в NSString?

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

Какова длина токена устройства iPhone?

По документации Apple длина переменная. Часто встречающийся размер не является гарантией. Счётчик показывает число предоставленных байтов, не оценивая по нему действительность токена.

Можно ли проверить действительность токена APNs или GCM?

Не по внешнему виду. Эта страница проверяет запись байтов токена APNs, но не его регистрацию. Токены GCM и FCM не интерпретируются.

Как записать токен, если APNs возвращает BadDeviceToken?

Нужна шестнадцатеричная запись байтов. Проверьте полноту значения, а также окружение и topic у отправителя. Удаление пробелов устраняет только часть возможных причин ошибки.

Почему внезапно изменилось отображение токена APNs?

Отладочное описание не является стабильным форматом сериализации. Явно кодируйте байты из обработчика регистрации. Многоточие или сводка длины не позволяют восстановить скрытые данные на этой странице.

Нашли ошибку кодирования или разбора?

Подготовьте следующий токен

Проверьте формат токена APNs, сопоставьте имеющиеся байты и скопируйте актуальное представление для следующего шага.