Google Play服务可用性已在onResume
中验证:
override fun onResume() {
super.onResume()
verifyGooglePlayServicesAvailability()
}
如果检查失败,则会显示getErrorDialog
的对话框:
availability.getErrorDialog(this, status, RESOLVE_GOOGLE_PLAY_SERVICES_UNAVAILABILITY_REQUEST).show()
但由于某种原因,在错误解决后再次显示对话框。我找不到如何在文档中实现检查的示例。这是我的方法:
private fun verifyGooglePlayServicesAvailability()
{
val availability = GoogleApiAvailability.getInstance()
val status = availability.isGooglePlayServicesAvailable(this)
if (status != ConnectionResult.SUCCESS)
availability.getErrorDialog(this, status, RESOLVE_GOOGLE_PLAY_SERVICES_UNAVAILABILITY_REQUEST).show()
}
答案 0 :(得分:0)
这是因为Dialog占用前景并将Activity放在后台,因此多次调用onResume。考虑将它移动到你的onCreate,或者如果你需要它在OnResume中考虑一个标志,以避免在处理时检查两次