检测应用程序中安装的 Play 服务和使用的 Play 服务

2024-07-04

我拥有的

我有一个应用程序严重依赖 Google Play 服务(对于 Firebase),所以我需要用户的设备安装 Play 服务。更重要的是,设备中安装的 Play 服务版本应等于或高于我在应用程序中使用的 Play 服务版本。

我想要的是

如果用户使用的是我在应用程序中定位的旧 Play 服务版本,我想在应用程序的启动屏幕中显示一条消息(可能是对话框或小吃栏)。

就像目前一样,我在应用程序中使用的 Play Services 版本是 10.0.1。这显然是版本名称。

我知道我能做到这一点

int v = getPackageManager().getPackageInfo("com.google.android.gms", 0 ).versionName;

但我无法比较设备中安装的 Play 服务的版本和我正在使用的 Play 服务的版本?我应该使用 versionCode 而不是 versionName 来执行此操作吗?如果是这样,我如何知道我正在使用的 Play 服务的版本代码?

或者有不同的(或更好的)方法来做到这一点?


这是我使用的方法..干杯

public static boolean checkPlayServices(Context context) {
    final int PLAY_SERVICES_RESOLUTION_REQUEST = 9000;
    GoogleApiAvailability api = GoogleApiAvailability.getInstance();
    int resultCode = api.isGooglePlayServicesAvailable(context);
    if (resultCode != ConnectionResult.SUCCESS) {
        if (api.isUserResolvableError(resultCode))
            api.getErrorDialog(((Activity) context), resultCode, PLAY_SERVICES_RESOLUTION_REQUEST).show();
        else {
            showToast(context, "This device is not supported.", true);
            ((Activity) context).finish();
        }
        return false;
    }
    return true;
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

检测应用程序中安装的 Play 服务和使用的 Play 服务 的相关文章

随机推荐