code: private HuaweiApiClient resetApiClient(){
          if (context == null) {
              HMSAgentLog.e("HMSAgent not init");
              return null;
          }
  
          synchronized (APICLIENT_LOCK) {
              if (apiClient != null) {
                  // 对于老的apiClient，1分钟后才丢弃，防止外面正在使用过程中这边disConnect了
                  disConnectClientDelay(apiClient, 60000);
              }
  
              HMSAgentLog.d("reset client");
  
              // 这种重置client，极端情况可能会出现2个client都回调结果的情况。此时可能出现rstCode=0，但是client无效。
              // 因为业务调用封装中都进行了一次重试。所以不会有问题
              HuaweiIdSignInOptions signInOptions = new
                      HuaweiIdSignInOptions.Builder(HuaweiIdSignInOptions.DEFAULT_SIGN_IN).requestAccessToken().requestOpenId().requestUnionId().build();
              apiClient = new HuaweiApiClient.Builder(context)
                      .addApi(HuaweiPay.PAY_API)
                      .addApi(HuaweiGame.GAME_API)
                      .addApi(HuaweiSns.API)
                      .addApi(HuaweiId.SIGN_IN_API, signInOptions)
                      .addApi(HuaweiPush.PUSH_API)
                      .addConnectionCallbacks(INST)
                      .addOnConnectionFailedListener(INST)
                      .build();
              return apiClient;
          }
      }
docs: 重新创建apiclient
  2种情况需要重新创建：1、首次 2、client的状态已经紊乱
  @return 新创建的client