2010-11-19 13 views
5

Sto tentando di aggiungere autorizzazioni al manifest dell'applicazione, in modo che possa accedere ad altre app che l'utente installa in fase di runtime. Ho pensato che il modo per farlo era definire un albero dei permessi nel manifest e quindi usare PackageManager.addPermission() per aggiungere permessi sotto quell'albero. Tuttavia, non riesco a farlo funzionare e la documentazione che ho trovato non è conclusiva. Qualcuno potrebbe mostrarmi come farlo con un semplice esempio? Grazie!Aggiunta di autorizzazioni al manifest dell'applicazione in modo programmatico

+0

Dopo aver letto le tue risposte, spiegherò ulteriormente cosa sto cercando di fare. L'idea è che la mia app comunichi ad alcuni componenti aggiuntivi come. Come tutti sanno, tutti questi componenti aggiuntivi sono noti all'app (quindi nessun problema con le autorizzazioni) ma l'utente dovrebbe essere in grado di installare nuovi componenti aggiuntivi attraverso un'attività speciale: vedo un elenco di app disponibili, ne scelgo una e viene installato. Quindi, questo nuovo componente aggiuntivo dovrebbe apparire in un menu della mia app principale e dovrebbe essere possibile interagire con esso. Ho già visto cose simili, ma capisco che è un argomento complicato. – androidtje

risposta

1

Non si ha accesso ad altre applicazioni solo per la propria applicazione e per le applicazioni in esecuzione con l'ID utente dell'applicazione.

+0

Beh, non so davvero cosa intendi ma è possibile avere accesso a componenti di altre applicazioni, anche quando hanno ID diversi. Tutto è spiegato in Android Security Framework. – androidtje

+0

@androidtje: non è possibile modificare nulla al di fuori della propria applicazione. Per favore, indicami la parte della documentazione che descrive il contrario. –

+0

L'idea è di non cambiare nulla al di fuori della mia app. Voglio solo concedere alla mia app le autorizzazioni necessarie per interagire con un'app di terze parti, se quest'ultima offre questa possibilità. – androidtje

1

Impossibile in un dispositivo non rootato. Problemi di sicurezza coinvolti.

+0

Sì, so che un dispositivo rooted renderebbe possibile. Ma per quanto riguarda le autorizzazioni di firma? Pensavo che il Framework di sicurezza di Android permettesse di definire l'ambiente giusto in modo che solo le applicazioni che desideri avrebbero accesso alla tua app. – androidtje

0

Non pensavo che fosse possibile. Ho pensato (ed è stato pensato da un docente, che potrebbe anche sbagliare) che tutte le autorizzazioni dovevano essere aggiunte mentre il codice veniva compilato. Se è possibile aggiungere autorizzazioni in seguito, non consentirebbe alle app di accedere a tutte le mie informazioni senza la mia autorizzazione? Non ci sarebbe nemmeno alcun punto nella schermata di conferma quando si scarica un'applicazione, poiché le autorizzazioni che ti avvisano potrebbero non tutte le autorizzazioni che sta per utilizzare.

A mio parere non penso che dovrebbe essere possibile. E 'troppo facilmente abusato. Inoltre, non penso sia possibile e penso che sarà difficile trovare informazioni su di esso.

1

Per motivi di sicurezza, solo i dispositivi rooted sono cablati.

Problemi correlati