【问题标题】:Is this possible to add and configure an exchange account programmaticaly是否可以以编程方式添加和配置交换帐户
【发布时间】:2012-09-06 10:06:21
【问题描述】:

在android上我们可以通过settings->Account&sync->add account->Corporate手动添加账户,然后我们填写字段并添加账户。

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

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

我们可以通过Intent Settings.ACTION_ADD_ACCOUNT以编程方式打开屏幕设置->账户&同步->添加账户。我也可以填写这些字段吗?

有这样做的意图吗?或者我可以以某种方式使用客户经理吗?

【问题讨论】:

    标签: android exchange-server accountmanager accounts


    【解决方案1】:

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

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

      //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 开始,交换帐户创建屏幕已更改,它不再从意图中获取这些参数,因此此解决方案不适用,我找不到任何其他方法。

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

    希望对我有所帮助

    【讨论】:

    • 这里是 stackoverflow.com/questions/7901653/…
    猜你喜欢
    • 1970-01-01
    • 2010-11-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-11-22
    相关资源
    最近更新 更多