android - 如何在启动 GCM 程序之前检查用户 google 帐户是否已添加到设备上?

标签 android notifications google-cloud-messaging

有没有办法在开始 GCM 注册程序 API 8 之前检查用户是否在他的设备上添加了他的谷歌帐户?

当尝试在没有它的情况下注册时,应用程序会在关闭时发出意外停止的警告,所以首先要检查,提醒用户并关闭应用程序。

最佳答案

我查看了 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" />

在 list 中

关于android - 如何在启动 GCM 程序之前检查用户 google 帐户是否已添加到设备上?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13530397/

相关文章:

android - 无法创建服务

ios - 在 Swift 中以编程方式更改推送通知

javascript - 地理定位在 Android webview 上不起作用

java - 如何在单个viewholder中实现onClickListener和onLongClickListener?

java - 带有 Eclipse 的 AndroidSlidingUpPanel 的问题 - 错误膨胀类

notifications - 使用Google Cloud Messaging发送广播通知

c# - 适用于 Windows Phone 8 的 Windows Azure 通知中心无法正常工作

ios - phonegap 推送插件未收到 GCM registrationId

ios - 使用 GCM 在 IO 中实现推送通知

android - 在GCM中,onError(Context context,String errorId)中的错误id是什么