【问题标题】:sharing Custom AccountAuthenticator between apps在应用程序之间共享自定义 AccountAuthenticator
【发布时间】:2014-09-16 20:45:30
【问题描述】:

我有一个为使用自定义 AccountAuthenticator 的客户端构建的应用。它工作得很好,它可以满足客户的需求。

但是,这只是将使用相同身份验证管理器的应用程序集合中的第一个应用程序,这就是我不确定如何继续的地方。

我无法知道任何给定用户将安装哪些应用程序,或者它们的安装顺序。我不要求用户为每个应用程序提供他们的凭据;这违背了拥有身份验证管理器的目的。

从一些初步测试看来,仅在每个应用程序中包含相同的代码是行不通的。

我应该做一些类似于使用任何 google play 服务所需的事情吗?编写一个函数来测试是否存在仅执行身份验证的应用程序,然后将用户发送到市场以安装执行身份验证的应用程序?或者从我们自己的服务器下载apk?

或者是否有其他方法可以避免将用户推出应用程序?

【问题讨论】:

    标签: android android-authenticator


    【解决方案1】:

    我正在尝试实现与您相同的环境,使用相同帐户的多个应用程序,我的最终方法是(我并不是说这是最好的方法):

    有一个“后台”验证器应用程序,所有正常应用程序都会检查是否安装了此应用程序,否则启动 google play 下载它。

    此验证器应用程序将使用AccountManager(教程here)创建帐户,它不会有任何启动器活动,只会从其他应用程序启动以创建帐户。

    有了这个验证器应用程序,其他的实现似乎很容易(见here

    【讨论】:

    • 您是否尝试过在每个应用程序中包含身份验证器类,使用相同的包名称等定义?
    • 我认为在所有应用程序中包含身份验证器可能会起作用(请参阅stackoverflow.com/a/31882428/2170109),但您需要拥有相同的sharedUserId、相同的 apk 签名并在 之前 发布应用程序(之后您无法更改这些内容)。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2020-06-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-03-23
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多