我有一个我编写的可访问性应用程序,但在 android 4.0 及更高版本上,api 允许设置设置活动。这违背了拥有启动器条目的目的。有没有办法在清单中挑出 4.0 及更高版本的系统以不具有启动器图标?
编辑:解决方案
我将原始设置分类为 JB/ICS 设置。在这一点上这是非常不必要的,但是如果将特定于 JB/ICS 的东西添加到应用程序中,从长远来看,将它们分开可能会很好。
谢谢alanv,你的片段仍然有帮助
我有一个我编写的可访问性应用程序,但在 android 4.0 及更高版本上,api 允许设置设置活动。这违背了拥有启动器条目的目的。有没有办法在清单中挑出 4.0 及更高版本的系统以不具有启动器图标?
编辑:解决方案
我将原始设置分类为 JB/ICS 设置。在这一点上这是非常不必要的,但是如果将特定于 JB/ICS 的东西添加到应用程序中,从长远来看,将它们分开可能会很好。
谢谢alanv,你的片段仍然有帮助
您可以根据平台版本有选择地禁用活动。为您的 Settings 活动添加活动别名,并将 enabled 属性设置为特定于平台的值。这将确保它仅在您需要时显示在启动器中。
AndroidManifest.xml:
<activity
android:name=".MySettingsActivity"
. . . >
</activity>
<activity-alias
android:name=".MyActivityAlias"
android:label="@string/settings"
android:targetActivity=".MySettingsActivity"
android:enabled="@bool/show_settings">
<intent-filter>
. . .
</intent-filter>
</activity-alias>
值-v14/bool.xml:
<bool name="show_settings">false</bool>
值/bool.xml:
<bool name="show_settings">true</bool>