1

我有一个使用 Google Maps Android API v2 的应用程序,因此使用了 Google Play 服务。

我遇到的问题是:我该如何帮助那些没有安装 Google Play 服务的用户?

我正在对服务进行常规检查:

int result = GooglePlayServicesUtil.isGooglePlayServicesAvailable(getBaseContext());

            switch (result) {
            case ConnectionResult.SUCCESS:
                startActivity(new Intent(this, Map.class));                 
                break;

如果结果不好,我会向用户显示一个带有选项的对话框:

AlertDialog.Builder builder = new AlertDialog.Builder(this);
                builder.setMessage("Error mesage").setTitle("Error message title");

                builder.setPositiveButton("Yes", new DialogInterface.OnClickListener() {
                    public void onClick(DialogInterface dialog, int id) {

                        GooglePlayServicesUtil.getErrorDialog(result, MainMenu.this, 32).show();
                        dialog.dismiss();
                    }
                });

当用户单击“是”并收到 Google Play 服务提示时,用户单击它并在大多数情况下被转发到 Google Play 商店。但是这里有来自 Google Play 的另一条错误消息,说“单元(电话)与此版本不兼容”,我认为这很奇怪,因为我使用的是 HTC Sensation Z710e,我最近更新到 4.0.3 的 android .

在我的另一部手机 HTC Wildfire S A510e 与 Android 2.3.5 上,当用户从GooglePlayServicesUtil.getErrorDialog.

有什么想法可以帮助用户获得 Google Play 服务吗?谢谢

4

1 回答 1

1

你可以尝试两件事:

1.调试并找出isGooglePlayServicesAvailable方法的结果值。如果失败,它应该是以下值之一:

SERVICE_MISSING, 
SERVICE_VERSION_UPDATE_REQUIRED, 
SERVICE_DISABLED, 
SERVICE_INVALID

所以您知道为什么Google Play 服务 APK不可用。

2.注意手机与此版本不兼容 - 当android清单的uses-feature标签中未提及适当的功能时,有时会向用户显示此消息。

从清单中的功能参考列表中选择正确的功能,并适当记下 uses-sdk 和权限标签。

于 2013-03-04T16:13:24.403 回答