可能重复:
如何检查应用是否是Android中的非系统应用?
此代码返回包括Android系统和时钟等系统应用程序在内的所有内容.
public List<ApplicationInfo> getApps() {
final PackageManager pm = context.getPackageManager();
List<ApplicationInfo> packages = pm
.getInstalledApplications(PackageManager.GET_META_DATA);
return packages;
}
Run Code Online (Sandbox Code Playgroud)
如何区分这些和用户安装的应用程序?
Tal*_*lha 10
您好,您可以使用下面的代码
for(ApplicationInfo app : apps) {
//checks for flags; if flagged, check if updated system app
if((app.flags & ApplicationInfo.FLAG_UPDATED_SYSTEM_APP) == 1) {
installedApps.add(app);
//it's a system app, not interested
} else if ((app.flags & ApplicationInfo.FLAG_SYSTEM) == 1) {
//Discard this one
//in this case, it should be a user-installed app
} else {
installedApps.add(app);
}
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2094 次 |
| 最近记录: |