【问题标题】:Set application as default home将应用程序设置为默认主页
【发布时间】:2012-10-27 12:44:27
【问题描述】:

我已将我的应用程序设置为默认主页,一切正常,但如果我将启动器设置为我的应用程序的默认主页(错误地),那么我的应用程序永远不会要求将我的应用程序设置为默认并直接打开启动器主页。我想要这样,直到我的应用程序被设置为默认主页,它要求用户设置为默认值。请帮忙

提前致谢。

【问题讨论】:

  • 我可以清除其他应用程序的默认值吗?请帮忙

标签: android android-layout android-intent


【解决方案1】:

使用布尔条件创建首选项 ....

默认存储值为 false ...

通过检查这个条件来启动启动器

如果用户将您的应用设置为默认启动器,则将布尔偏好设置为 true ....

【讨论】:

  • 不,我在检查我的应用程序是否设置为默认值时没有遇到问题。当我选择 android Launcher 作为默认主页时出现问题(错误地),然后再次尝试将我们的应用设置为默认值,此时它直接启动之前设置的 android 默认主页。所以现在我没有得到设置默认主页的弹出窗口。
【解决方案2】:

您可以通过这段代码检查当前的默认启动器:

    Intent intent = new Intent(Intent.ACTION_MAIN);
    intent.addCategory(Intent.CATEGORY_HOME);
    ResolveInfo resolveInfo = getPackageManager().resolveActivity(intent, PackageManager.MATCH_DEFAULT_ONLY);
    String currentHomePackage = resolveInfo.activityInfo.packageName;

如本答案所示:How can I get the package name of the current launcher in android 2.3 and above?

因此,只需检查 currentHomePackage 是否等于您的应用程序包并采取相应措施。

如果用户将另一个应用程序设置为默认启动器,则选择默认启动器的对话框只会在他删除启动器默认值或删除/安装可以充当默认启动器的应用程序时再次出现。

【讨论】:

  • 是的,我已经完成了相同的过程,但无法获得再次设置默认值的弹出窗口。我可以清除那个 android 默认启动器,以便我可以选择我的应用作为默认启动器。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-03-28
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2010-09-25
相关资源
最近更新 更多