-1

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

提前致谢。

4

2 回答 2

0

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

存储值 false 作为默认值...

通过检查此条件启动启动器

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

于 2012-11-07T12:49:43.410 回答
0

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

    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;

如这个答案所示:如何在 android 2.3 及更高版本中获取当前启动器的包名称?

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

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

于 2012-11-07T13:06:04.733 回答