我想要做的是复制ToddlerLock应用程序的功能.我已设法清除默认启动器
PackageManager localPackageManager = getPackageManager();localPackageManager.clearPackagePreferredActivitIEs("com.androID.launcher");
然后用此打开启动选择对话框
Intent i = new Intent();i.setAction(Intent.ACTION_MAIN);i.addcategory(Intent.category_HOME);this.startActivity(i);
只要用户检查“默认使用此 *** 作”,主页键现在会将用户发送到我的应用程序,从而基本上禁用它.
然后,当我退出应用程序并且用户必须选择新的默认家庭应用程序时,我使用“clearPackagePreferredActivitIEs(”com.my_application“)”.
我的问题是我如何选择默认的主应用程序(实质上是在“com.androID.launcher”包的代码中检查“默认使用此 *** 作”复选框.这样用户不必经常看到该对话框每次打开和关闭我的应用程序时框.
我认为ToddlerLock在不使用clearPackagePreferredActivitIEs的情况下以某种方式做到这一点
因为如果我查看应用程序管理器中的“清除默认值”,它就不会被清除,您只需要在启动时一次通过设置为默认对话框,并在退出时将其设置回正常主屏幕.
谢谢你的帮助.
解决方法:
我以不同的方式实现了相同的功能.
>假设您已将“LockScreenAcitivity”配置为Manifest中的主屏幕.
>通过发送Home Intent启动LockScreenActivity.
> AndroID将d出一个对话框,选择默认的Acitivity
>从List中选择LockScreenActivity作为默认活动
> …..
> …..
>关闭活动时不会清除首选活动.
>通过调用PackageManager.setComponentEnabledSetting()来单独禁用LockScreenActivity
>禁用LockScreenActivity后,androID将回滚到先前的首选活动(这是您的旧主屏幕).
下次启动应用时,
>通过调用PackageManager.setComponentEnabledSetting()再次启用lockscreenActivity
>通过发送Home Intent启动LockScreenActivity.
以上是内存溢出为你收集整理的如何撤消clearPackagePreferredActivities(“com.android.launcher”);全部内容,希望文章能够帮你解决如何撤消clearPackagePreferredActivities(“com.android.launcher”);所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)