在Android L中显示错误的默认应用列表 [英] List of default apps showing wrong in Android L

查看:62
本文介绍了在Android L中显示错误的默认应用列表的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我想在Android L中获得所有默认应用程序.我使用了下面的代码,但它们给了我错误的解决方案.让我们先看看我的代码

I want to get all default apps in Android L. I used bellow code but they give me a wrong solution. Let see my code first

private void getMyAppLauncherDefault() {
    final IntentFilter filter = new IntentFilter(Intent.ACTION_MAIN);
    filter.addCategory(Intent.CATEGORY_HOME);
    List<IntentFilter> filters = new ArrayList<IntentFilter>();
    filters.add(filter);
    List<ComponentName> activities = new ArrayList<ComponentName>();
    final PackageManager packageManager = (PackageManager) getPackageManager();

    packageManager.getPreferredActivities(filters, activities, null);
    for (ComponentName activity : activities) {

        Log.d(TAG,"======packet default:==="+activity.getPackageName());
    }
}

这是日志.日志显示com.google.android.googlequicksearchboxcom.vlingo.midas之间的错误结果.它们都是语音应用程序,但是我将com.google.android.googlequicksearchbox设置为默认值.我不知道为什么日志显示com.vlingo.midas.我该如何解决?谢谢

And this is log. The log shows a wrong result between com.google.android.googlequicksearchbox and com.vlingo.midas. They are both Voice apps, but I set up com.google.android.googlequicksearchbox as default. I do not know why the log shows com.vlingo.midas. How can I fix it? Thanks

 16:02:44.817 /com.exam D/Sample: ======packet default:===com.sec.android.gallery3d
 16:02:44.827 /com.exam D/Sample: ======packet default:===com.android.mms
 16:02:44.827 /com.exam D/Sample: ======packet default:===com.android.mms
 16:02:44.827 /com.exam D/Sample: ======packet default:===com.vlingo.midas
 16:02:44.827 /com.exam D/Sample: ======packet default:===com.sec.android.app.sbrowser
 16:02:44.827 /com.exam D/Sample: ======packet default:===com.sec.android.gallery3d
 16:02:44.827 /com.exam D/Sample: ======packet default:===com.android.mms
 16:02:44.827 /com.exam D/Sample: ======packet default:===com.sec.android.app.launcher
 16:02:44.827 /com.exam D/Sample: ======packet default:===com.sec.android.app.sbrowser
 16:02:44.827 /com.exam D/Sample: ======packet default:===com.android.mms
 16:02:44.827 /com.exam D/Sample: ======packet default:===com.google.android.googlequicksearchbox
 16:02:44.827 /com.exam D/Sample: ======packet default:===com.sec.android.app.sbrowser
 16:02:44.827 /com.exam D/Sample: ======packet default:===com.sec.android.gallery3d
 16:02:44.827 /com.exam D/Sample: ======packet default:===com.android.mms
 16:02:44.827 /com.exam D/Sample: ======packet default:===com.google.android.apps.plus

更新:有默认的应用名称

update: There are default app names

推荐答案

上面添加的代码是完全正确的.它确实执行了它的意图.

The code you added above is perfectly right. It does perform what it is meant to.

现在,您已将com.google.android.googlequicksearchbox语音应用设置为默认设置,这就是它显示在日志中的原因. 显示com.vlingo.midas可能是因为将它设置为其他类别而不是语音的默认类别.

Now you have set com.google.android.googlequicksearchbox voice app as default and that's why it's showing up in the log. While com.vlingo.midas is showing probably because it's set as default for some other kind of category instead of voice.

这篇关于在Android L中显示错误的默认应用列表的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆