¿Puede alguien explicarme cuáles son los beneficios de la aplicación Android System sobre una aplicación "normal" (además de que no se puede desinstalar una aplicación del sistema)? Permisos especiales?Android System App 101
Respuesta
Aquí hay algo de confusión.
Primero, si está hablando de "aplicación de sistema" como solo una con el conjunto de FLAG_SYSTEM, todo esto significa que la aplicación se encuentra en la partición/del sistema, que es la partición de solo lectura que es básicamente el firmware del dispositivo. (Solo se puede modificar como parte de una actualización de firmware OTA.) Estas aplicaciones no se pueden eliminar simplemente porque están en una partición que no se puede modificar.
Lo único especial acerca de una aplicación de sistema más allá de esto es que hay un puñado de permisos de firma que también se pueden otorgar a cualquier aplicación en la imagen del sistema. Por ejemplo, hay un permiso para hablar directamente con el administrador de paquetes para instalar una aplicación (sin pasar por la interfaz de usuario del sistema) que dicha aplicación puede tener; esto es útil para cualquier tienda/mercado de aplicaciones precargado en un dispositivo.
Firmar con el certificado de la plataforma es un concepto ortogonal, una aplicación puede estar en la imagen del sistema o instalarse como una aplicación de terceros (aunque obviamente en casi todos vienen preinstalados). Tales aplicaciones tienen acceso a un conjunto completo de permisos de bajo nivel para interactuar con la plataforma. Muy pocas aplicaciones están firmadas con este certificado; es solo para aplicaciones de plataformas centrales. A menos que trabaje con un proveedor de hardware en un dispositivo, no tendrá acceso a esto.
Todos los certificados de la plataforma (ya estén disponibles para todas las aplicaciones, requieren que la aplicación esté firmada con el certificado de plataforma o estén disponibles para las aplicaciones instaladas en la partición del sistema) son declarados por el manifiesto de plataformas, como cualquier otro aplicación:
https://android.googlesource.com/platform/frameworks/base/+/master/core/res/AndroidManifest.xml
Según su explicación, me refiero a las aplicaciones preinstaladas (como el navegador o la aplicación Mensajes). Puede echar un vistazo en estas aplicaciones al https://android.googlesource.com. (búsqueda de plataforma/paquetes/aplicaciones/...).
Encontrará que estas aplicaciones no son diferentes a sus propias aplicaciones desarrolladas a medida, excepto que no puede eliminarlas. No se pueden eliminar ya que proporcionan la funcionalidad básica para operar su teléfono/dispositivo. Entonces, las mismas restricciones de seguridad se aplican allí.
Y usted solo puede ser una aplicación del sistema si vino con el firmware ¿verdad? (firmado con la "clave de la plataforma") – m88m
Creo que está hablando desde el punto de vista del fabricante. Sé que ciertos fabricantes de tabletas se envían con Skype preinstalado y otros debido a restricciones del mercado. Pero esos podrían eliminarse de nuevo, algo que vale la pena investigar. Nunca he visto una aplicación de sistema para descargar en el mercado, sería un gran riesgo de seguridad. Piensa en el permiso de BRICK que Janusz menciona a continuación. –
¡Hola! La aplicación MobileDefense está trabajando en algo así (¡Adivino!) Vea aquí http://support.mobiledefense.com/viewtopic.php?id=569 lea la declaración (topper): "Pronto lanzaremos un nuevo APK que automatiza todo el proceso de instalación de la aplicación del sistema ". Creo que hay una manera ... – m88m
Existen permisos que solo pueden ser obtenidos por aplicaciones de sistemas. Por ejemplo, cada aplicación puede solicitar el permission brick, pero solo se otorga a las aplicaciones que están firmadas como aplicaciones del sistema. Hay algunas otras características que tienen más sentido, creo que directamente la instalación y eliminación de aplicaciones también sería un permiso del sistema.
¿Sabes en una lista de tales permisos (que solo las aplicaciones del sistema pueden usar?) – m88m
- 1. ¿cuál es la diferencia entre/system/app y/data/app?
- 2. Android: copiar programáticamente apk a/system/app
- 3. Empuje mi apk a/system/app
- 4. ¿Cómo desinstalar su propia aplicación desde/system/app?
- 5. Push .apk a/system/app/en HTC HERO
- 6. Agile Development 101 Video
- 7. 101 Rx Ejemplos
- 8. NETWORK_ERROR: XMLHttpRequest Excepción 101
- 9. WebKitErrorDomain de error 101
- 10. NETWORK_ERR: XMLHttpRequest Excepción 101
- 11. uiwebkit error 101
- 12. Contraseñas de salazón 101
- 13. android image "viewer" app
- 14. Android In-App Purchase
- 15. android app piracy prevention
- 16. 101 tutorial para configurar nhibernate?
- 17. Sql Query System System Hotel Query?
- 18. Android Market filters app - ¿Telefonía?
- 19. Amazon Android App Market Results
- 20. Android App Market Update Propagation
- 21. Android App consumo de energía
- 22. clojure 101 combinando vectores en un mapa
- 23. php 101 DateTime usando el formato atom
- 24. C++ std :: system 'system' no es un miembro de std
- 25. Android Library Manifest vs. App Manifest
- 26. Android App y Pattern Lock Screen
- 27. Android in-app Respuesta inesperada de facturación
- 28. Porting C++ lib/app en Android
- 29. Redirigir usuario a App Store en Android
- 30. Instalar Android Market App en Emulator
¡Gracias! eso es lo que estaba buscando – m88m
Me parece que esta respuesta está desactualizada.Al construir una rom personalizada, deberías poder firmar cosas con el certificado de la plataforma. ¿Y hay listas de las mencionadas "funciones de bajo nivel" y los permisos especiales disponibles para las aplicaciones del sistema? –
es posible que también desee consultar http://stackoverflow.com/questions/7707889/android-system-permissions-through-root –