Java: Need some way to shorten this code
I have this piece of code that I would like to shorten...
PackageManager p = context.getPackageManager();
final List<PackageInfo> appinstall = p.getInstalledPackages(PackageManager.GET_PERMISSIONS);
PackageManager pro = context.getPackageManager();
final List<PackageInfo> apllprovides = pro.getInstalledPackages(PackageManager.GET_PROVIDERS);
I am seriously irritated to do this again and again to add new flag permissions, and I need to do it a couple of times, is there a shorter method in which I could put all the flags on the same definition...???
Let me put it this way, can I do this...??? (of course this give开发者_如何学JAVAs an error, but something similar..)
PackageManager p = context.getPackageManager();
final List<PackageInfo> appinstall = p.getInstalledPackages(PackageManager.GET_PERMISSIONS).addFlag(PackageManager.GET_PROVIDERS);
If it's the same syntax as C# and the flags are set properly, you could do this:
PackageManager p = context.getPackageManager();
final List<PackageInfo> appinstall =
p.getInstalledPackages(PackageManager.GET_PERMISSIONS |
PackageManager.GET_PROVIDERS)
public void usegetPackageInfo(){
//
final ListView lw = (ListView) findViewById(R.id.listView1);
PackageManager p = lw.getContext().getPackageManager();
final List<PackageInfo> appinstall =
p.getInstalledPackages(PackageManager.GET_PERMISSIONS |
PackageManager.GET_PROVIDERS);
final TextView tw = (TextView) findViewById(R.id.textView1);
Iterator it = appinstall.iterator();
while (it.hasNext()) {
PackageInfo rf = (PackageInfo) it.next();
tw.append(rf.toString());
}
}
check the android Documentation: for permissions: http://developer.android.com/guide/topics/manifest/uses-permission-element.html
for providers: http://developer.android.com/guide/topics/manifest/provider-element.html
Before that Completely study about manifest documentation
精彩评论