是否可以访问和更新Exchange帐户?

时间:2014-03-19 08:57:52

标签: android

在我的项目中,我需要访问设备上的Exchange帐户,以进行更改。

我需要在我的应用程序中以编程方式执行此操作。

我已经四处寻找,但似乎没有办法做这样的事情。

请提供任何帮助或建议?


编辑编辑

更具体地说,我需要: 列出设备上的所有电子邮件帐户,并允许用户更改Exchange帐户的设置:

*服务器地址

*服务器端口号

* SSL(开/关)

*接受所有SSL证书(开/关)

*帐户密码

3 个答案:

答案 0 :(得分:1)

查看AccountManager(http://developer.android.com/reference/android/accounts/AccountManager.html

你应该可以这样做:

AccountManager accountManager = AccountManager.get(context);
Account[] accountList = accountManager.getAccounts();
for(Account account : accountList){
    accountManager.getUserData(account, AccountManager.KEY_USERDATA);
    accountManager.setUserData(account, AccountManager.KEY_USERDATA, "data");
}

答案 1 :(得分:1)

您无法修改其他交换帐户的权限/设置(它会给您带来安全性错误)。您只能创建自己的交换帐户,因为它将作为您的AppName包含在您的交换帐户中。

答案 2 :(得分:-1)

Powershell可能是我想要用来做这个的工具,但是从设备来看它很棘手。像AccountManager这样的工具应该可以帮助他们使用远程Powershell脚本。我能想到的替代方案是:

  1. 创建您自己的Web服务,您可以从中执行powershell命令,并让您的应用程序连接到该服务。这是适用于Exchange 2010和2013的良好入门:http://forums.asp.net/t/1683553.aspx?Mailbox+creation+in+Exchange+Server+2010+using+ASP+Net+3+5+application
  2. 找到一个直接从设备执行远程PowerShell请求的工具。我没试过这个,但这看起来像一个很好的主题:http://social.technet.microsoft.com/Forums/windowsserver/en-US/bc1b417d-0388-486b-8742-305a48224a92/android-client-for-powershell-remote-scripting?forum=winserverpowershell
  3. 我个人已经在我的应用程序正在使用的域内托管了Web服务(数据源在域中),所以我将我的邮箱和AD用户管理服务放在那边,然后移动应用程序进行简单的调用,如CreateUser,EnableMailbox,CreateMailEnabledUser ...