使用包检查是否启用了应用程序

时间:2014-08-16 18:54:05

标签: android

我想检查用户是启用还是禁用了一个应用程序。

我唯一知道的是我可以得到这个int

int appstate= this.getPackageManager().getApplicationEnabledSetting("com.example.app");

如何使用此int检查应用程序是启用还是禁用?

示例

if(......){//is enabled

}
else{
//disabled
}

2 个答案:

答案 0 :(得分:31)

ApplicationInfo ai = 
               getActivity().getPackageManager().getApplicationInfo("your_package",0);

boolean appStatus = ai.enabled;

感谢Amir

答案 1 :(得分:4)

您还可以根据开发人员文档使用这些常量 - http://developer.android.com/reference/android/content/pm/PackageManager.html#getApplicationEnabledSetting(java.lang.String)

返回组件的当前启用状态。可以是COMPONENT_ENABLED_STATE_ENABLEDCOMPONENT_ENABLED_STATE_DISABLEDCOMPONENT_ENABLED_STATE_DEFAULT中的一个。最后一个意味着应用程序的启用状态基于清单中的原始信息,如ComponentInfo中所示。