在Android上,我们可以通过设置手动添加帐户 - >帐户& sync->添加帐户 - >公司,然后填写字段并添加帐户。
我想以编程方式执行此操作。我在互联网上搜索但没有找到任何办法。
我发现了两个帖子(http://code.google.com/p/android/issues/detail?id=21233和Android How to add/configure Exchange setting programmatically?),之后看起来不可能......但有人知道这样做吗?
我们可以通过编程方式打开屏幕设置 - >帐户& sync->按意图Settings.ACTION_ADD_ACCOUNT添加帐户。我可以以某种方式填写字段吗?
有意图这样做吗?或者我可以以某种方式使用客户经理?
答案 0 :(得分:4)
我也遇到了这个问题,我得到的唯一答案是Android 3.0及以上版本的NO,而不是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);
(此代码基于我在堆栈交换中找到的答案,但我无法再次找到它以供参考)
您必须了解此解决方案不适用于没有默认eMail客户端的设备。
我认为这个解决方案是黑客而不是真正的解决方案,但这就是我所发现的。
从HoneyComb开始,交换帐户创建屏幕已更改,并且不再从意图中获取这些参数,因此此解决方案不适用,我找不到任何其他方法来执行此操作。
我尚未实施的另一个解决方案是使用第三方电子邮件客户端,该客户端提供创建,删除或修改交换帐户所需的API
希望我帮助