Come elencare le applicazioni installate in un telefono insieme all'elenco dei permessi utilizzati da tali applicazioni
Ciao,
Presumo che tu stia chiedendo come elencare le applicazioni installate e i relativi permessi richiesti in un'app android.
Puoi usare PackageManager per ottenere i dettagli sulle applicazioni installate nel tuo dispositivo.La classe PackageManager ha il metodo getInstalledApplications() che restituisce l'elenco di tutte le applicazioni installate.
Puoi ottenere tutte le informazioni di un'app da getPackageInfo.From PackageInfo you can get requested permissions of an app.
Please refer the code below.
- PackageManager p = getPackageManager();
- StringBuffer appNameAndPermissions=new StringBuffer();
- PackageManager pm = getPackageManager();
- List packages = pm.getInstalledApplications(PackageManager.GET_META_DATA);
- for (ApplicationInfo applicationInfo : packages) {
- Log.d("test", "App: " + http://applicationInfo.name + " Package: " + applicationInfo.packageName);
- try {
- PackageInfo packageInfo = pm.getPackageInfo(applicationInfo.packageName, PackageManager.GET_PERMISSIONS);
- appNameAndPermissions.append(packageInfo.packageName+"*:\n");
- //Get Permissions
- String[] requestedPermissions = packageInfo.requestedPermissions;
- if(requestedPermissions != null) {
- for (int i = 0; i < requestedPermissions.length; i++) {
- Log.d("test", requestedPermissions[i]);
- appNameAndPermissions.append(requestedPermissions[i]+"\n");
- }
- appNameAndPermissions.append("\n");
- }
- Log.d("app and permissions----->",appNameAndPermissions.toString());
- } catch (Exception e) {
- e.printStackTrace();
- }}
Articoli simili
- Quanto sono diverse le iscrizioni ad Amazon Prime in India e negli Stati Uniti? Potrebbe elencare le differenze?
- Puoi elencare tutti (o la maggior parte) degli incantesimi di Harry Potter, o c'è un link dove posso trovarli?
- Come spostare le applicazioni installate sul mio telefono Alcatel one touch sulla scheda SD
- Quante applicazioni possono essere installate in un telefono Android da 3GB (RAM)?