No se puede encontrar el ejecutable ‘apksigner’ para firmar APK manualmente

4 minutos de lectura

Avatar de usuario de ScottyC
scottyc

Siguiendo el Firme su aplicación manualmente guía,

Puede firmar su aplicación desde la línea de comandos utilizando las herramientas estándar de Android SDK y JDK

yo debería apksigner algún lugar para correr

$ apksigner sign –ks my-release-key.jks my-app.apk

¿Dónde se supone que está este ejecutable? La documentación nunca especifica dónde se supone que debo obtener la herramienta en la guía de firma o el firmante de apk doc.

No recuerdo haber tenido este problema la última vez que firmé manualmente una aplicación. He buscado en todos los directorios que se me ocurren sin suerte (incluidos los subdirectorios):

  • AppData\Local\Android\sdk
  • Archivos de programa\Android\Android Studio
  • Archivos de programa\Java\jdk1.8.0_91

Buscando en Google ‘apksigner’ parece que aparece una serie de herramientas de firma de apk no oficiales, pero no hay descarga oficial. ¿Qué me estoy perdiendo?

Ejecutando Android Studio 2.2, herramientas de compilación 24.0.2, JDK 1.8

Gracias

CONTESTADA: Actualizar a 24.0.3 lo resuelve. Gracias a Alex Klyubin, vote a favor de su respuesta. Por alguna razón, Build Tools 24.0.2 simplemente no tiene apksigner.

Herramientas de compilación, revisión 24.0.3 (septiembre de 2016)

  • Se agregó apksigner, una herramienta de firma de APK para reemplazar jarsigner…

  • Re: apksigner no existe en 24.0.2. apksigner es una nueva herramienta. Todavía no existía cuando se lanzaron Android SDK Build Tools 24.0.2.

    – Alex Kliubin

    13/10/2016 a las 22:21

  • ¿Ejecutaste ese comando dentro de Android Studio? Cuando ejecuto el comando, dice que no se encontró el comando apksigner. ¿Necesito establecer una variable de entorno? @ScottyC

    –Rohit Singh

    27 de agosto de 2022 a las 17:26

apksigner enviado con Android SDK Build Tools 24.0.3 (ver https://developer.android.com/studio/releases/build-tools.html). La herramienta se puede encontrar en el SDK de Android build-tools/<tools version> directorio. Por ejemplo, build-tools/24.0.3/apksigner en Linux/OSX y build-tools/24.0.3/apksigner.bat en Windows

  • Tenga en cuenta que apksigner falta en la versión 26.0.0 de herramientas de construcción. se rastrea en tematracker.google.com/issues/62696222 y se supone que se arreglará en la próxima versión. La solución hasta entonces es usar apksigner de 25.0.3.

    – Frieder Bluemle

    29 de junio de 2017 a las 2:48

  • Acabo de enterarme de esto también, muy molesto. Me pregunto cómo 26.0.0 pasó las pruebas de liberación

    – Sipka

    2 de julio de 2017 a las 7:39

  • La descarga de 26.0.1 a través del administrador SDK de Android Studio soluciona esto. mi ruta de Ubuntu: /home/__user__/Android/Sdk/build-tools/26.0.1/apksigner

    – ryan lluvia

    17 de agosto de 2017 a las 17:58


  • ugh, pensé que estaba perdiendo la cabeza; gracias por señalar la herramienta que falta en 26.0.0. ¿Cómo es que Google sigue teniendo estos problemas con la falta de de las versiones SDK? Si tuviera un centavo por cada vez que esto ha sucedido…

    – wkhatch

    15 de febrero de 2018 a las 18:51

en Mac
El Apksigner está dentro de las herramientas de compilación, todo lo que necesita es esta línea

/Users/adewale***/Library/Android/sdk/build-tools/28.0.3/apksigner verify MyApp.apk

solo cambia /Users/adewale***/Library/Android/sdk/build-tools a su ruta de herramientas de compilación. Hecho

Avatar de usuario de BOUZAR
BOUZAR

Estaba enfrentando el mismo problema en windows 10Encontré apksigner.jar archivo jar en la siguiente ruta:

C:\Users\miaou\AppData\Local\Android\Sdk\build-tools\29.0.2\lib

copié el .jar archívalo y pégalo dentro platform-tools carpeta dentro del directorio SDK de Android

  • gracias hombre, esto me salvó. siempre debe haber alguien que trabaje con soluciones alternativas 😁

    – Fuad Teimúrov

    8 de julio de 2022 a las 13:58

  • Gracias hombre después de 22 horas finalmente encontré la solución.

    – Shahid Kan

    31 de julio de 2022 a las 11:09

  • Esta es la RESPUESTA porque, el apksigner.bat no es obligatorio pero apksigner.jar es. Este archivo es un poco extraño porque tiene este archivo de murciélago fantasmal en la forma esperada. bin carpeta pero la real jar file resides in the lib folder!

    – usuario30478

    27 de agosto de 2022 a las 13:08

En Windows 10 debería estar en el directorio

 C:\Users\{user}\AppData\Local\Android\Sdk\build-tools\

Tenga en cuenta que el directorio AppData está oculto de forma predeterminada. Primero asegúrese de haber instalado Android SDK 24.0.3 o posterior.
ingrese la descripción de la imagen aquí

Avatar de usuario de Suryakant kumar
Suryakant kumar

Usar este comando funcionará con seguridad (Para ventanas)

–Ir a este directorio

C:/Users/{UserName}/AppData/Local/Android/Sdk/build-tools/29.0.0/

–Escriba este comando:

apksigner.bat verify {PathToApp/AppName}.apk

Ejemplo completo:

C:/Users/Surya/AppData/Local/Android/Sdk/build-tools/29.0.0/apksigner.bat verify C:/AndroidApp/test.apk

avatar de usuario de top.eng
top.eng

En Windows no pude usar apksigner incluso con las herramientas de compilación versión 31.0.0.

finalmente usé el comando apksigner con .bat postfix y funcionó bien.

por ejemplo

 apksigner.bat verify AppName.apk

avatar de usuario de ouflak
ouflak

Si ha descargado herramientas de línea de comandos y aún no ha extraído la carpeta “build-tools”, abra cmd y vaya a la ubicación de la carpeta donde está presente su SDKManager y luego ejecute el siguiente comando:

//sdkmanager build-tools verison number like following command

sdkmanager build-tools;31.0.0 

“apksigner.jar” viene dentro de la carpeta build-tools\version number\lib.

Después de ejecutar el comando anterior, configure la ruta (donde está presente su apksigner.jar) en la variable de entorno.

Puede consultar la lista de versiones de herramientas de compilación desde el siguiente enlace:
https://developer.android.com/studio/releases/build-tools

O simplemente puede ejecutar el siguiente comando en el cmd:

sdkmanager --list

¿Ha sido útil esta solución?