解决方法
我查看了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" />
在清单中