Почему я не могу получить pushToken с помощью Huawei Pu sh Kit? - PullRequest
0 голосов
/ 23 апреля 2020

Я использую следующий фрагмент кода, однако я все еще не могу получить pushToken.

private void obtainToken() {
    // get token
    new Thread() {
        @Override
        public void run() {
            try {
                String appId = AGConnectServicesConfig.fromContext(MainActivity.this).getString("client/app_id");
                pushtoken = HmsInstanceId.getInstance(MainActivity.this).getToken(appId, "HCM");
                if(!TextUtils.isEmpty(pushtoken)) {
                    Log.i(TAG, "get token:" + pushtoken);
                }
            } catch (Exception e) {
                Log.i(TAG,"getToken failed, " + e);

            }
       }
   }.start();
}

1 Ответ

0 голосов
/ 24 апреля 2020

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

Если версия EMUI вашего устройства более ранняя, чем 10.0, код, который вы использовали, вернет пустой токен pu sh. В таком случае необходимо реализовать пользовательский сервис, расширяющий HmsMessageService.

В вашем AndroidManifest. xml add;

<service
   android:name=".CustomPushService"
   android:exported="false">
      <intent-filter>
         <action android:name="com.huawei.push.action.MESSAGING_EVENT" />
     </intent-filter>
</service>

Затем создайте следующий класс;

public class CustomPushService extends HmsMessageService {
     private static final String TAG = "PushTokenLog";

     @Override
     public void onNewToken(String token) {

       super.onNewToken(token);
       Log.i(TAG, "receive token:" + token);
      }
}

И, наконец, убедитесь, что ваше устройство Huawei: ) Большинство функций HMS Core опирается на EMUI. Без EMUI функциональность функций на данный момент не гарантируется.

Ниже приведена хорошая ссылка, чтобы увидеть отношение HMS Core - EMUI. https://developer.huawei.com/consumer/en/doc/development/HMS-Guides/emui_version_dependent_features

...