gpt4 book ai didi

android - 处理 Android 中的 C2DM 错误 ACCOUNT_MISSING

转载 作者:太空狗 更新时间:2023-10-29 14:31:14 24 4
gpt4 key购买 nike

注册 C2DM 可能会导致错误 ACCOUNT_MISSING .根据文档,必须以这种方式处理此错误“应用程序应要求用户打开帐户管理器并添加 Google 帐户。”

我想通过应用程序向用户提供这种可能性。我见过两种显示此屏幕的方法:

//Intent
context.startActivity(newIntent(Settings.ACTION_ADD_ACCOUNT).putExtra(Settings.EXTRA_AUTHORITIES, new String[] {?}));

这个解决方案的问题是我已经尝试了几个 EXTRA_AUTHORITIES(“com.google”、“com.google.android.gsf 等),但没有一个显示任何内容,如果参数 EXTRA_AUTHORITIES 被省略,所有电话帐户显示出来。

//Account manager    
AccountManager.get(context).addAccount("com.google", null, null, null, this, new AccountManagerCallback<Bundle>() {
public void run(AccountManagerFuture<Bundle> accountManagerHandle) {
//TODO Handle response.
}
}, null);
}

此解决方案的问题在于它需要 MANAGE_ACCOUNTS 权限,而用户可能不希望为此接受额外的权限。

你会如何处理这种情况?

最佳答案

对于 EXTRA_AUTHORITIES 字段,您可以使用“gmail-ls”来仅显示 Google 帐户选择器。

经过多次谷歌搜索后,我在 android.provider.Gmail 中找到了常量源代码:

public static final String AUTHORITY = "gmail-ls"

此类不是公共(public) API 的一部分,因此作为一种解决方法,它有点脆弱:-(。

关于android - 处理 Android 中的 C2DM 错误 ACCOUNT_MISSING,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6608418/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com