android 使用 AccountManager 添加帐户,找不到处理 Intent 的 Activity { act=android.settings.ADD_ACCOUNT_SETTINGS(有附加功能)}

标签 android android-intent accountmanager

在某些手机中(准确地说是在某个“oneplus”android v6.0.1 中)。我收到 No Activity found to handle Intent { act=android.settings.ADD_ACCOUNT_SETTINGS (has extras) } 错误,当我尝试调用帐户添加屏幕时似乎是“正确的”方式。

 Intent intent = new Intent(Settings.ACTION_ADD_ACCOUNT);
 intent.putExtra(Settings.EXTRA_ACCOUNT_TYPES, new String[]{Constants.ACCOUNT_TYPE});
 startActivity(intent);

我似乎可以添加

<intent-filter>
       <action android:name="android.settings.ADD_ACCOUNT_SETTINGS" />
</intent-filter>

我的登录 Activity ,但我应该这样做吗?如果是这样,为什么它在大多数手机上都能正常工作,但在其中一个手机上却崩溃了。我希望我的帐户 Intent 像用户试图通过手机的设置屏幕创建帐户一样通过,这似乎是一个糟糕的快捷方式。

最佳答案

终于找到问题了。显然,我所处理的手机是在氰基上运行的,无论出于何种原因,其他 android 6 手机(和模拟器)不需要 GET_ACCOUNT 权限来请求我自己的应用程序帐户,而这款手机却需要。

该错误没有说明缺少权限,但是在通过运行时请求获取 GET_ACCOUNT 后,它按预期运行。

关于android 使用 AccountManager 添加帐户,找不到处理 Intent 的 Activity { act=android.settings.ADD_ACCOUNT_SETTINGS(有附加功能)},我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36681414/

相关文章:

android - 从 Android 应用程序调用 Google map 应用程序以获取行车路线

android - UrbanAirship 与 GCM 通知

安卓:谷歌认证

android - 防止Thread被垃圾回收,防止上下文泄露

java - 带键的 Gson 字符串

java - 修改来自另一个Android类的自定义 View

android - 异步任务运行时 Activity 重启

android - sleep 模式和深度 sleep 模式有什么区别?

android - 在不丢失数据的情况下处理屏幕旋转 - Android

android - 如何从 Android 上保存的帐户中检索 Facebook-AuthToken