在尝试编写自定义 Android 同步适配器时,我遵循了这个。我成功地使用上述示例中的以下代码片段在常规设置中显示了一个条目(帐户设置)。
<PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android">
<PreferenceCategory android:title="General Settings" />
<PreferenceScreen android:key="account_settings"
android:title="Account Settings" android:summary="Sync frequency, notifications, etc.">
<intent android:action="fm.last.android.activity.Preferences.ACCOUNT_SETUP"
android:targetPackage="fm.last.android"
android:targetClass="fm.last.android.activity.Preferences" />
</PreferenceScreen>
</PreferenceCategory>
</PreferenceScreen>
该代码使我在常规设置中有一个条目(帐户设置):
单击帐户设置后,我收到如下错误,并且设备不必要地重新启动。
ERROR/AndroidRuntime(30057): android.util.AndroidRuntimeException: 从 Activity 上下文外部调用 startActivity() 需要 FLAG_ACTIVITY_NEW_TASK 标志。这真的是你想要的吗?
我知道这个错误可以通过代码解决。由于“帐户设置”首选项是基于 XML 的代码,因此我遇到了错误。
任何人都可以帮助解决问题吗?
我们如何通过代码控制这些偏好?