华为 P40 Google 播放服务对话框

Huawei P40 Google Play Services dialog

我想 运行 我的应用 Huawei P40。此 phone 不支持 Google Play 服务。所以我为 AppGallery. 制作了 APK 应用程序工作正常(只有 Google 地图无法打开)但是当我更改一些选项卡或内容时,一些系统对话框会弹出消息 "MyApp won't run without Google Play services, which are not supported by your device." This dialog can点击关闭,但每次我切换 ActivityFragment.

时它都会重新出现

有什么方法可以禁用此消息吗?我对我的 Gradle 个文件实施了 HMS

出现这种弹窗一般是因为代码中有以下方法

GoogleApiAvailability.makeGooglePlayServicesAvailable
GoogleApiAvailability.showErrorDialogFragment
GoogleApiAvailability.getErrorDialog

为了克服这个问题,像下面这样的控件应该会有所帮助并且适用于我的情况

GoogleApiAvailability googleApiAvailability = GoogleApiAvailability.getInstance();

int errorCode = googleApiAvailability.isGooglePlayServicesAvailable(this);

googleApiAvailability.makeGooglePlayServicesAvailable(this);
googleApiAvailability.showErrorNotification(this, errorCode);
googleApiAvailability.showErrorDialogFragment(this, errorCode, 100);

Dialog errorDialog = googleApiAvailability.getErrorDialog(this, errorCode, 100);
errorDialog.show();
errorDialog.setOnDismissListener(new DialogInterface.OnDismissListener() {
    @Override
    public void onDismiss(DialogInterface dialog) {
        Log.d(TAG, "Play pop-up has been dismissed!");
    }
});

或者,也可以使用 isGooglePlayServicesAvailable 方法并处理其 return 状态 SUCCESS、SERVICE_MISSING、SERVICE_UPDATING、SERVICE_VERSION_UPDATE_REQUIRED、SERVICE_DISABLED、 SERVICE_INVALID