【问题标题】:Google Account Required Syncability FeatureGoogle 帐户所需的可同步性功能
【发布时间】:2011-12-30 12:32:34
【问题描述】:

我正在查看 JumpNotes 的代码,但有一件事我只是想不通。 JumpNotes: AccountList.java

public static final String[] GOOGLE_ACCOUNT_REQUIRED_SYNCABILITY_FEATURES =
        new String[]{ "service_ah" };

这用于获取谷歌帐户,如下所示:

mAccountManager.getAccountsByTypeAndFeatures(SyncAdapter.GOOGLE_ACCOUNT_TYPE,
            SyncAdapter.GOOGLE_ACCOUNT_REQUIRED_SYNCABILITY_FEATURES,

“service_ah”这个功能是什么?这是什么意思? 有什么方法可以获取 Android 上 google 帐户的身份验证器服务的来源?

【问题讨论】:

  • 我也尝试使用此服务,但未能成功,虽然能够在手机中获取谷歌帐户,因为所有内容都在 android 的堆栈中,所以当你添加更多帐户时,它会添加到堆栈所以当您获得 [0] 位置帐户时,这意味着这是用户同步其帐户时的第一个 gmail 帐户,请参阅此链接可能对您有帮助 stackoverflow.com/questions/6035194/…

标签: android android-syncadapter google-authentication google-account


【解决方案1】:

来自 Android 文档:

帐户功能是特定于身份验证器的字符串令牌,用于识别 布尔帐户属性。例如,特征用于告诉 Google 帐户是否有特定服务(例如 Google 日历或 Google Talk)已启用。特征名称及其含义 发布在与相关身份验证器相关的某个位置。

我没有找到任何官方文档,但似乎每个功能都采用 service_code 形式,其中代码代表 Google 服务。

从这个(过时的)list of services,“啊”显然代表“Google Mashups Editor & Google App Engine”

【讨论】:

    【解决方案2】:

    This python Google account authentication example对你的帮助不大,但我们可以学到以下两点:

    首先,Google 帐户上的连接由 GAE 分两步处理。

    > 这需要两次调用,一次调用 Google 帐户的 ClientLogin 服务, 然后到 App Engine 的登录前端。

    其次,我们可以在第 101 行找到令牌“_ah”,这意味着在这种情况下,我们启用 cookie 以在下次他要进行身份验证时使用服务进行自动身份验证(用户数据存储在 cookie 中以跳过第一次身份验证打电话)。

    因此,在您的情况下,“service_ah”表示您希望用户进行一次身份验证,然后身份验证过程应由 AccountManager 自动处理。

    【讨论】:

      猜你喜欢
      • 2012-04-08
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-11-01
      • 1970-01-01
      • 2012-10-07
      相关资源
      最近更新 更多