我希望通过长按搜索按钮打开我的应用程序,但我想添加选项以停用此功能。
我添加到我的shortcutActivity中:
<intent-filter>
<action android:name="android.intent.action.SEARCH_LONG_PRESS"/>
<category android:name="android.intent.category.DEFAULT"/>
</intent-filter>
因此,当我长按搜索按钮时,它会被打开,但现在,我必须能够打开此功能。
这不是主要活动,此活动只调用主要活动然后结束()。
我该怎么做?
谢谢。
答案 0 :(得分:0)
不幸的意图过滤器是静态的
intent过滤器是IntentFilter类的一个实例。但是,由于Android系统在启动该组件之前必须了解组件的功能,因此通常不会在Java代码中设置intent过滤器,而是在应用程序的清单文件(AndroidManifest.xml)中将其设置为元素。 (一个例外是通过调用Context.registerReceiver()动态注册的广播接收器的过滤器;它们直接创建为IntentFilter对象。)
答案 1 :(得分:0)
实际上,使用PackageManager
:
ComponentName cnShortcutActivity = new ComponentName("my.package", "my.package.ShortcutActivity");
getPackageManager().setComponentEnabledSetting(cnShortcutActivity, PackageManager.COMPONENT_ENABLED_STATE_DISABLED, PackageManager.DONT_KILL_APP);