Я создал приложение для часов Android Wear.А теперь есть одно устройство в России (город Ульяновск) и одно в Канаде (город Торонто).Все настройки и версии Сервисов Google Play одинаковы для обоих устройств.Но на русском языке нет проблем с получением токена FirebaseInstanceId, и исключение «FirebaseInstanceId: получение токена не удалось: SERVICE_NOT_AVAILABLE» в Канаде.
Устройства: - Ticwatch E, носить ОС Google 1.01-1.3, Google Play Services 12.6.85, ОС Android 7.1-8.0
FCMRegistrationIntentService - это мой класс, который расширяет FirebaseInstanceIdService, объявленный в манифесте Android:
<service
android:name=".gcm.FCMRegistrationIntentService"
android:permission="false">
<intent-filter>
<action android:name="com.google.firebase.INSTANCE_ID_EVENT"/>
</intent-filter>
</service>
FCMRegistrationIntentService:
public class FCMRegistrationIntentService extends FirebaseInstanceIdService {
@Override
public void onTokenRefresh() {
// Get updated InstanceID token.
String refreshedToken = FirebaseInstanceId.getInstance().getToken();
}
private void sendRegistrationToServer(String token) {
// TODO: Implement this method to send token to your app server.
}
}
и вызов токенав основном коде с:
FirebaseInstanceId.getInstance().getToken();
, который возвращает правильный токен на русском языке и ноль в Канаде (поскольку изначально «FirebaseInstanceId: сбой получения токена: SERVICE_NOT_AVAILABLE»)