apk (formato de archivo)

Formato de archivo para software de Android

APK
Extensión de nombre de archivo
.apk, .apks, .aab, .xapk, .apkm,.akp
Tipo de medio de Internet
application/vnd.android.package-archive
Tipo de formatoFormato del paquete
Contenedor para
Extendido desdeFRASCO

El paquete Android con la extensión de archivo apk [1] es el formato de archivo utilizado por el sistema operativo Android y otros sistemas operativos basados ​​en Android para la distribución e instalación de aplicaciones móviles , juegos móviles y middleware . Se puede crear un archivo que utilice este formato a partir del código fuente escrito en Java o Kotlin .

Los archivos APK se pueden generar y firmar desde Android App Bundles . [2]

Descripción general

APK es análogo a otros paquetes de software como APPX en Microsoft Windows , APP para HarmonyOS o un paquete Debian en sistemas operativos basados ​​en Debian . Para crear un archivo APK, primero se compila un programa para Android utilizando una herramienta como Android Studio [3] o Visual Studio y luego todas sus partes se empaquetan en un archivo contenedor. Un archivo APK contiene todo el código de un programa (como archivos .dex ), recursos, activos, certificados y archivo de manifiesto . Como es el caso con muchos formatos de archivo, los archivos APK pueden tener cualquier nombre necesario, pero puede ser necesario que el nombre del archivo termine en la extensión del archivo para ser reconocido como tal. [4] [5] [6]

La mayoría de las implementaciones de Android permiten a los usuarios instalar manualmente archivos APK solo después de activar una configuración de "Fuentes desconocidas" que permite la instalación desde fuentes distintas a las confiables, como Google Play . Uno puede hacerlo por muchas razones, como durante el desarrollo de aplicaciones, para instalar aplicaciones que no se encuentran en la tienda o para instalar una versión anterior de una aplicación existente. [7]

Uso en otros sistemas operativos

Blackberry Limited admitía aplicaciones Android 4.1 Jelly Bean y superiores hasta Android Runtime hasta Blackberry 10 , ahora descontinuado , hasta la actualización de firmware 10.2.1 de enero de 2014. [8] El 18 de junio de 2014, BlackBerry anunció una relación oficial con Amazon.com , lo que resultó en la actualización 10.3 que incluía Amazon Appstore .

En 2015 Build, Microsoft también había anunciado un entorno de ejecución de Android para Windows 10 Mobile conocido como "Astoria", que permitiría que las aplicaciones de Android se ejecutaran en un entorno emulado con cambios mínimos y tuvieran acceso a las API de la plataforma Microsoft, como Bing Maps y Xbox Live, como reemplazos casi directos de los Servicios móviles de Google equivalentes . Los Servicios móviles de Google y ciertas API principales no estarían disponibles, y se dijo que las aplicaciones con "integración profunda en tareas en segundo plano" respaldaban mal el entorno. [9] [10]

El 25 de febrero de 2016, después de haberlo retrasado ya en noviembre de 2015, [11] [12] Microsoft anunció que "Astoria" sería archivada, argumentando que era redundante con el kit de herramientas nativo de Windows Bridge, ya que iOS ya es un objetivo principal para el desarrollo de aplicaciones móviles. La compañía también alentó el uso de productos de Xamarin (que habían adquirido el día anterior) para el desarrollo de aplicaciones multiplataforma utilizando el lenguaje de programación C# . [13] [14] Partes de Astoria se utilizaron como base para la plataforma Windows Subsystem for Linux (WSL) en la versión para PC de Windows 10. [15]

El 9 de agosto de 2019, HarmonyOS llegó con compatibilidad APK a través de la base AOSP con el kernel de Linux en HarmonyOS 1.0 para televisores y también el 2 de junio de 2021, la versión HarmonyOS 2.0 se expandió a teléfonos inteligentes y tabletas hasta la versión Galaxy Edition bajo el sistema HarmonyOS NEXT para la próxima versión beta iterativa de HarmonyOS 5 a la versión comercial, a partir del segundo trimestre de junio de 2024. [16] [17] [18] [19] [20]

En el evento de anuncio de Windows 11 en junio de 2021, Microsoft mostró el nuevo Subsistema de Windows para Android (WSA) que habilitará el soporte para el Proyecto de código abierto de Android (AOSP) y permitirá a los usuarios ejecutar aplicaciones de Android en su escritorio de Windows. Microsoft confirmó que los usuarios podrán cargar aplicaciones de Android en Windows y que sería posible instalar archivos APK descargados de fuentes de terceros. [21] El 5 de marzo de 2024, Microsoft anunció que finalizaría sus aplicaciones de Android en el subsistema de Windows 11 para el 5 de marzo de 2025, como parte de su esfuerzo por depreciar el subsistema del kernel de Windows NT eliminando la compatibilidad de las aplicaciones apk de Android, incluidas las aplicaciones de Android de Amazon App Store . [22]

Google anunció planes en diciembre de 2021 para llevar los juegos de Android a Windows en 2022. [23] [24]

Contenido del paquete

Un archivo APK es un archivo ZIP que generalmente contiene los siguientes archivos y directorios:

  • META-INFdirectorio:
    • MANIFEST.MF:el archivo de manifiesto
    • El certificado de la solicitud.
    • CERT.SF:La lista de recursos y un resumen SHA-1 de las líneas correspondientes en el archivo MANIFEST.MF; por ejemplo:
      Versión de firma: 1.0Creado por: 1.0 (Android)Manifiesto de resumen SHA1: wxqnEAI0UA5nO5QJ8CGMwjkGGWE=...Nombre: res/layout/exchange_component_back_bottom.xmlResumen SHA1: eACjMjESj7Zkf0cBFTZ0nqWrt7w=Nombre: res/drawable-hdpi/icon.pngResumen SHA1: DGEqylP8W0n0iV/ZzBx3MW0WGCA=
  • lib: el directorio que contiene el código compilado que depende de la plataforma, por ejemplo, bibliotecas nativas que se pueden cargar a través de JNI ; el directorio se divide en más directorios dentro de él:
    • armeabi-v7a:Código compilado solo para todos los procesadores basados ​​en ARMv7 y superiores
    • arm64-v8a: código compilado solo para todos los procesadores ARMv8 arm64 y superiores [25]
    • x86: código compilado solo para procesadores x86
    • x86_64: código compilado solo para procesadores x86-64
    • mipsy armeabi, obsoleto desde NDK r17 [26] [27]
  • res: el directorio que contiene recursos no compilados en resources.arsc (ver más abajo).
  • assets:un directorio que contiene activos de aplicaciones, que se pueden recuperar mediante AssetManager.
  • AndroidManifest.xml:Un archivo de manifiesto de Android adicional que describe el nombre, la versión, los derechos de acceso y los archivos de biblioteca a los que se hace referencia para la aplicación. Este archivo puede estar en formato XML binario de Android que se puede convertir en XML de texto simple legible para humanos con herramientas como AXMLPrinter2, Apktool M o Androguard.
  • classes.dex:Las clases compiladas en el formato de archivo dex ejecutadas por Android Runtime (o por la máquina virtual Dalvik utilizada en Android 4.4 KitKat ).
  • resources.arsc:un archivo que contiene recursos precompilados, como XML binario, por ejemplo.

Véase también

Lectura adicional

  • Hildenbrand, Jerry (27 de enero de 2017). "¿Se considera piratería la descarga de archivos APK?". Android Central . Consultado el 10 de febrero de 2023 .

Referencias

  1. ^ "Fundamentos de la aplicación". Desarrolladores de Android . Archivado desde el original el 21 de noviembre de 2020. Consultado el 3 de diciembre de 2018 .
  2. ^ Peters, Jay (30 de junio de 2021). «Google se está alejando de los APK en Play Store». The Verge . Archivado desde el original el 4 de agosto de 2021. Consultado el 15 de agosto de 2021 .
  3. ^ "Application Studio". Desarrolladores de Android . Archivado desde el original el 2021-09-12 . Consultado el 2020-02-22 .
  4. ^ "Dentro del marco de trabajo de aplicaciones Android" (video) . Google Sites . 2008. Archivado desde el original el 24 de diciembre de 2011. Consultado el 22 de octubre de 2008 .
  5. ^ Hatem Ben Yacoub (20 de abril de 2018). «Consejos: Cómo instalar archivos apk en el emulador de Android». Revista Open Ha . Archivado desde el original el 21 de mayo de 2012. Consultado el 17 de julio de 2021 .
  6. ^ "La estructura de los archivos APK de Android". OPhone SDN . OPhone Software Developer Network. 17 de noviembre de 2010. Archivado desde el original el 8 de febrero de 2011.
  7. ^ "Fuentes desconocidas: ¡Todo lo que necesitas saber!". Android Central . 27 de julio de 2018. Archivado desde el original el 1 de septiembre de 2021. Consultado el 4 de marzo de 2020 .
  8. ^ Michael, Kozlowski (29 de enero de 2014). «BlackBerry 10.2.1 Update Allows you to Install APK Files on your Phone» (La actualización de BlackBerry 10.2.1 le permite instalar archivos APK en su teléfono). GoodEReader . Archivado desde el original el 1 de marzo de 2014. Consultado el 29 de enero de 2014 .
  9. ^ "¿Cómo funcionará la compatibilidad con Android en Windows 10 para teléfonos?". TechRadar Pro . Archivado desde el original el 19 de mayo de 2015. Consultado el 22 de mayo de 2015 .
  10. ^ "Microsoft trae aplicaciones Android e iOS a Windows 10". Ars Technica . 29 de abril de 2015. Archivado desde el original el 8 de julio de 2017 . Consultado el 30 de abril de 2015 .
  11. ^ "Microsoft podría no traer aplicaciones Android a Windows después de todo". The Verge . Vox Media. 16 de noviembre de 2015. Archivado desde el original el 17 de noviembre de 2015 . Consultado el 16 de noviembre de 2015 .
  12. ^ Collins, Katie (16 de noviembre de 2015). «Microsoft pone en pausa la herramienta para portar aplicaciones de Android a Windows 10». CNET . CBS Interactive . Archivado desde el original el 9 de julio de 2017 . Consultado el 26 de mayo de 2022 .
  13. ^ "Microsoft confirma: la tecnología Astoria de Android en Windows ha desaparecido". Ars Technica . Conde Nast. 25 de febrero de 2016. Archivado desde el original el 25 de febrero de 2016 . Consultado el 25 de febrero de 2016 .
  14. ^ "Actualización sobre las oportunidades para desarrolladores y Windows 10". Blog Building Apps for Windows . Microsoft. 25 de febrero de 2016. Archivado desde el original el 26 de febrero de 2016 . Consultado el 25 de febrero de 2016 .
  15. ^ Bright, Peter (6 de abril de 2016). «Por qué Microsoft necesitaba que Windows ejecutara software Linux». Ars Technica . Condé Nast . Archivado desde el original el 6 de abril de 2016 . Consultado el 26 de mayo de 2022 .
  16. ^ Cheng, Christina (12 de junio de 2021). "Las aplicaciones de Google aún son compatibles con el nuevo HarmonyOS actualizado desde EMUI". RPRNA . Consultado el 15 de abril de 2023 .
  17. ^ Matsui, Emiko. "HarmonyOS NEXT Galaxy se presentará oficialmente a los usuarios en primavera: Huawei". HC Newsroom . HC Newsroom . Consultado el 12 de febrero de 2024 .
  18. ^ Matsui, Emiko (11 de abril de 2024). "Huawei lanzará la versión beta de HarmonyOS NEXT en el evento HDC 2024 en junio". Huawei Central . Consultado el 11 de abril de 2024 .
  19. ^ "HarmonyOS de Huawei tiene modo ADB, ¿podría estar basado en Android?". KLGadgetGuy . 2024-02-29 . Consultado el 2024-05-03 .
  20. ^ Linder, Brad (13 de noviembre de 2023). "La próxima versión de HarmonyOS de Huawei dejará de ser compatible con aplicaciones de Android". Liliputing . Consultado el 3 de mayo de 2024 .
  21. ^ Parmar, Mayank (27 de junio de 2021). "Microsoft confirma que las aplicaciones de Android se ejecutarán en todas las PC con Windows 11". Windows Latest. Archivado desde el original el 27 de junio de 2021. Consultado el 28 de junio de 2021 .
  22. ^ Warren, Tom. "Microsoft dejará de ofrecer aplicaciones Android en el subsistema Windows 11 en 2025". The Verge . Consultado el 5 de marzo de 2024 .
  23. ^ "Google Play Games: juega juegos de Android en tu PC". play.google.com . Archivado desde el original el 2023-01-03 . Consultado el 2023-01-04 .
  24. ^ Warren, Tom (9 de diciembre de 2021). «Google llevará los juegos de Android a Windows en 2022». The Verge . Archivado desde el original el 13 de diciembre de 2021. Consultado el 13 de diciembre de 2021 .
  25. ^ "Gestión de ABI | Desarrolladores de Android". developer.android.com . Archivado desde el original el 31 de mayo de 2019. Consultado el 16 de junio de 2018 .
  26. ^ "Android ABIs | Android NDK". Desarrolladores de Android . Archivado desde el original el 2019-04-08 . Consultado el 2020-08-14 . Nota: Históricamente, el NDK admitía ARMv5 (armeabi) y MIPS de 32 y 64 bits , pero la compatibilidad con estas ABI se eliminó en NDK r17.
  27. ^ Dan, Albert (5 de septiembre de 2018). "Registro de cambios r17". GitHub . Archivado desde el original el 28 de agosto de 2020 . Consultado el 14 de agosto de 2020 . Se ha eliminado la compatibilidad con ARMv5 (armeabi), MIPS y MIPS64. Intentar compilar cualquiera de estas ABI generará un error.
Obtenido de "https://es.wikipedia.org/w/index.php?title=Apk_(formato_de_archivo)&oldid=1237345133"