android - 是否可以以编程方式添加和配置交换帐户

标签 android exchange-server accountmanager accounts

在安卓上我们可以通过设置->账户&同步->添加账户->公司手动添加一个账户,然后我们填写字段并添加账户。

我想以编程方式执行此操作。我在互联网上搜索但没有找到任何方法。

我找到了两个帖子( http://code.google.com/p/android/issues/detail?id=21233Android How to add/configure Exchange setting programmatically? ),之后看起来这是不可能的......但是有人知道有什么方法可以做到这一点吗?

我们可以编程方式打开屏幕settings->Account&sync->add account by intent Settings.ACTION_ADD_ACCOUNT。我也可以以某种方式填写这些字段吗?

有没有打算这样做?或者我可以以某种方式使用客户经理吗?

最佳答案

我也遇到过这个问题,我得到的唯一答案是 Android 3.0 及更高版本为否,而 2.3 及更低版本则不是。

  • 对于平台 2.3 及更低版本,您可以使用 Exchange 帐户创建屏幕的参数调用 Intent,因此所有字段都将被填充。

    //Gingerbread and lower
    ComponentName localComponentName = new ComponentName("com.android.email", "com.android.email.activity.setup.AccountSetupBasics");
    Intent exchangeIntent = new Intent("android.intent.action.MAIN");
    exchangeIntent.putExtra("com.android.email.AccountSetupBasics.username", mUserName);
    exchangeIntent.putExtra("com.android.email.AccountSetupBasics.password", mPassword);
    exchangeIntent.putExtra("com.android.email.extra.eas_flow", true);
    exchangeIntent.setComponent(localComponentName);
    exchangeIntent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
    

    (此代码基于我在堆栈交换中找到的答案,但我无法再次找到它以供引用)

    您必须了解此解决方案不适用于没有默认电子邮件客户端的设备。

    我认为这个解决方案是一种 hack 而不是真正的解决方案,但这是我发现的。

  • 从 HoneyComb 开始,交换账户创建屏幕发生了变化,它不再从 Intent 中获取这些参数,因此这个解决方案不适用,我找不到任何其他方法来做到这一点。

  • 我还没有实现的另一个解决方案是使用提供所需 API 的第 3 方电子邮件客户端来创建、删除或修改交换帐户

希望对你有帮助

关于android - 是否可以以编程方式添加和配置交换帐户,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12404230/

相关文章:

java - 如何在Android上通过反射实例化成员类

java - 从 m3u 播放列表流式传输直播电视 channel

java - 队列上的 NoSuchElementException

java - 使用 subscribeToStreamingNotifications 中的 Item.bind() 拒绝访问

.net - 我们可以使用EWS托管API连接到Exchange 2016吗?

android - 客户经理 : Android App not appearing under Accounts Tab of Settings,

java - Java 中是否有 C# 的 HttpServerUtility.UrlTokenEncode 的等效项?

asp.net - 无法加载文件或程序集 'Microsoft.Exchange.WebServices, Version=14.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35'

android - 从 AccountManager 获取基本的谷歌授权 token

安卓:谷歌认证