在启动GCM注册程序API 8之前,有没有办法检查用户是否在他的设备上添加了他的Google帐户?
当尝试在没有它的情况下注册时,应用程序会在关闭时意外停止警告,所以要先检查,提醒用户并关闭应用程序.
解决方法
我查看了checkDevice()的源代码,据我所知,它只检查API级别,并且gcm包在设备上.所以根据CommonsWare的建议,这段代码似乎可以帮我完成工作:
private boolean deviceHasGoogleAccount(){ AccountManager accMan = AccountManager.get(this); Account[] accArray = accMan.getAccountsByType("com.google"); return accArray.length >= 1 ? true : false; }
你需要这条线
<uses-permission android:name="android.permission.GET_ACCOUNTS" />
在清单中