Ответ 1
Обновить. Используемый термин возвращается к Ключ сервера.
Совсем недавно появился токен Firebase Cloud Messaging (FCM Token), который выполняется. Это видно на вкладке "Облачные сообщения" в консоли Firebase.С >
Обновить. Теперь в GCM docs есть заметная заметка:
Начиная с сентября 2016 года новый серверный ключ может быть создан только в Firebase Console с помощью вкладки Cloud Messaging на панели настроек. Существующие проекты, которые необходимо создать новый ключ сервера, можно импортировать в консоль Firebase, не затрагивая их существующую конфигурацию.
Обновить. Также показалось бы, что Миграция с GCM на FCM устраняет проблему для 401 Unauthorized Error.
Если вы только начинаете использовать GCM, вместо создания проекта в Google Developers Console, сделайте это в консоли Firebase. После создания проекта просто используйте автоматически сгенерированный ключ сервера. Ниже приведены шаги, чтобы найти ключ сервера:
- Перейдите в Firebase Console и нажмите CREATE NEW PROJECT.
- Заполните свое желаемое название проекта и выберите свою страну. После этого новый проект должен быть активным.
- Затем на левой панели нажмите кнопку gear и выберите Настройки проекта.
- Затем перейдите на вкладку Cloud-Messaging.
Для старых проектов GCM вы можете просто импортировать проект в консоль Firebase:
- Перейдите в Firebase Console и нажмите IMPORT PROJECT.
- Выберите проект, который вы хотите импортировать, и свою страну.
- Нажмите ADD FIREBASE. После этого новый проект должен быть активным.
- Затем на левой панели нажмите кнопку gear и выберите Настройки проекта.
- Затем перейдите на вкладку Cloud-Messaging.
По какой-то причине теперь только серверный ключ работает с GCM. Android-ключ не единственный, который кажется недействительным, все другие ключи Client API (браузер, iOS, Android).
В отношении описания Server Key:
Создайте и используйте ключ сервера, если ваше приложение работает на сервере.
Логично использовать ключ сервера, так как вы используете ключ API на своем сервере, и он работает с сервером GCM Connection.
Если вы сравниваете документы FCM с GCM docs (под Credentials), вы можете видеть, что в GCM он указывает только ключ API, а в FCM он уже указывает ключ сервера. Ну, FCM - это более новая версия GCM, может быть, она имеет к ней какое-то отношение? Я не уверен, но я думаю, что вы получаете суть того, что я говорю.
Обновить. В документах GCM теперь отображается ключ сервера.
По умолчанию, после прохождения шага Configure your API Project создается ключ API сервера (я тестировал его, выбрав приложение для Android), То же самое происходит с firebase-cloud-messaging. Всякий раз, когда я создаю новый проект, он автоматически генерирует ключ сервера.
Надеюсь, в будущем будет объяснено, почему.
Идем дальше и добавляем шаги по созданию ключа сервера. На всякий случай другие запутались, или новички не уверены, как это сделать.
- Перейдите в Консоль разработчиков Google
- На панели слева нажмите Credentials
- На вкладке "Учетные данные" нажмите Create Credentials
- Выберите API Key
--- Обновление в Консоли разработчиков сокращает этот шаг здесь ---
- Выберите Server Key
- Заполните детали.
- Нажмите Create
Ключ сервера должен быть доступен к этому моменту.
Обновление: Кажется, что при генерации ключа API произошла недавняя смена. То же самое происходит до этапа 4, о котором я говорил выше. Однако после того, как вы выберете API-ключ, он будет напрямую создавать ключ API, не спрашивая, какой тип ключа (Server, Android, Browser, iOS) есть. Это позволит вам установить только некоторые Ограничения, которые были видны в зависимости от того, какой ключ API вы собираетесь генерировать.
Обновить. При создании ключа API без ограничений в нем отображается уведомление (восклицательный знак) о том, что ваш ключ API уязвим, поэтому он высоко рекомендуется для добавить ограничение для вашего ключа API. У одной почты возникла эта проблема, и добавление ограничения разрешило ее.