2010-11-19 10 views
5

Estoy tratando de agregar permisos al manifiesto de mi aplicación, para que pueda acceder a otras aplicaciones que el usuario instala en tiempo de ejecución. Pensé que la forma de hacerlo era definir un árbol de permisos en el manifiesto y luego usar PackageManager.addPermission() para agregar permisos debajo de ese árbol. Sin embargo, no puedo hacer que esto funcione y la documentación que encontré no fue concluyente. ¿Alguien podría mostrarme cómo hacer esto por medio de un simple ejemplo? ¡Gracias!Agregando permisos al manifiesto de la aplicación programáticamente

+0

Después de leer sus respuestas, explicaré más a fondo lo que estoy tratando de hacer. La idea es que mi aplicación se comunique con algunos complementos similares. Como es correcto, la aplicación conoce todos estos complementos (así que no hay problemas con los permisos) pero el usuario debería poder instalar complementos nuevos a través de una actividad especial: veo una lista de aplicaciones disponibles, elijo una y se instala Entonces, este nuevo complemento debería aparecer en un menú de mi aplicación principal y debería ser posible interactuar con él. Ya he visto cosas similares, pero entiendo que es un tema complicado. – androidtje

Respuesta

1

No tiene acceso a otras aplicaciones solo para su aplicación y para las aplicaciones que se ejecutan con la ID de usuario de su aplicación.

+0

Bueno, realmente no sé a qué se refiere, pero es posible tener acceso a componentes de otras aplicaciones, incluso cuando tienen una ID diferente. Todo se explica en el Marco de seguridad de Android. – androidtje

+0

@androidtje: No puede cambiar nada fuera de su propia aplicación. Por favor, diríjanme a la parte de documentación que describe lo contrario. –

+0

La idea no es cambiar nada fuera de mi aplicación. Solo quiero otorgar a mi aplicación los permisos necesarios para interactuar con una aplicación de terceros, si esta última ofrece esa posibilidad. – androidtje

1

Imposible en un dispositivo no rooteado. Cuestiones de seguridad involucradas.

+0

Sí, sé que un dispositivo rooteado lo haría posible. ¿Pero qué pasa con los permisos de firma? Pensé que el Marco de seguridad de Android permitía definir el entorno adecuado para que solo las aplicaciones que desearan tuvieran acceso a su aplicación. – androidtje

0

No pensé que esto fuera posible. Pensé (y un conferenciante, que también podría estar equivocado) que todos los permisos debían agregarse a medida que el código se compila. Si puede agregar permisos posteriormente, ¿no permitiría que las aplicaciones accedan a toda mi información sin mi permiso? Tampoco tendría sentido en la pantalla de confirmación cuando descargue una aplicación, ya que los permisos que le advierte pueden no todos los permisos que va a usar.

En mi opinión, no creo que sea posible. Es abusado con demasiada facilidad. Tampoco creo que sea posible y creo que será difícil encontrar información sobre él.

1

Solo los dispositivos rooteados son por cable, por razones de seguridad.

Cuestiones relacionadas