我正在开发一款想要使用Google Cloud Messaging的Android应用。这又需要Google Play服务。 Android开发者网站会查看如何检查Google Play服务是否可用,如果没有使用错误代码传递给GooglePlayServicesUtil.getErrorDialog(),则显示本地化对话框,允许用户跳转到Play商店以安装Google播放服务或设置以启用它。
遵循此SERVICE_MISSING条件逻辑的初始测试会显示一个对话框,显示“此应用无法在没有Google Play服务的情况下运行,但手机中缺少这些服务。”
但是,就我而言,Google Cloud Messaging(以及Google Play服务)只需要支持可选功能。说应用程序“不会运行”是不正确的。但该文本来自GooglePlayServicesUtil。
我可以使用我选择的文本构建自己的对话框,而不是使用getErrorDialog(),但据我所知,Play服务的Play商店网址不公开。我还没有尝试过,但我可以预见到一个类似的问题迫在眉睫的SERVICE_DISABLED路径。
任何人都知道如何通过GooglePlayServicesUtil的秘密行动来整合特定于应用的文字?
答案 0 :(得分:3)
由于Google Play服务的资源位于库项目中,您应该可以在自己的应用中覆盖它们。您将在strings.xml
文件(以及其他字符串)中找到以下内容:
<!-- (For phones) Message in confirmation dialog informing user that
they need to install Google Play services (from Play Store) [CHAR LIMIT=NONE] -->
<string name="common_google_play_services_install_text_phone" msgid="2122112764540849864">This app won\'t run without Google Play services, which are missing from your phone.</string>
<!-- (For tablets) Message in confirmation dialog informing user that
they need to install Google Play services (from Play Store) [CHAR LIMIT=NONE] -->
<string name="common_google_play_services_install_text_tablet" msgid="7351599665250191022">This app won\'t run without Google Play services, which are missing from your tablet.</string>