Sign in Join
Wiki copytemporary

Revision 3 of 5, by WikiArchive on 11-4-2026. The page as it is now.

Android tutorial/es

Windows

Este es un tutorial rápido sobre como crear aplicaciones para Android con Lazarus.

Para este tutorial se asumen los siguientes programas que deben tener las versiones que se muestran a continuación:

JDK 1.6u45 SDK 22.2.1 NDK-r9 Laz4Android1.1-41139-FPC2.7.1

Adicionalmente ver:

http://wiki.lazarus.freepascal.org/Custom_Drawn_Interface/Android#Step_3_-_Create_the_Android_project_structure

http://wiki.lazarus.freepascal.org/Custom_Drawn_Interface/Android#Step_4_-_Creating_the_APK_package_in_Windows

Preparando una carpeta

Crear en C:\ una carpeta llamada "Android"

Instalar JDK (Java Development Kit)

1.6u45 (yo he instalado jdk-6u45-windows-x64.exe) arm-linux-androideabi/bin

http://www.oracle.com/technetwork/java/javasebusiness/downloads/java-archive-downloads-javase6-419409.html#jdk-6u45-oth-JPR

Esto se debe instalar en C:\Program Files\Java\. o bien C:\Archivos de Programa\Java\. (Supongo que la instalación en español será así y no influirá a la hora de que lo encuentre laztoapk).

Instalando SDK

Ir a http://developer.android.com/sdk/index.html

DOWNLOAD FOR OTHER PLATFORMS > SDK Tools Only

installer_r22.2.1-windows.exe (Recommendado)

Instalar sdk (installer_r22.2.1-windows) en C:\Android\android-sdk

Copiar a "C:\Android\android-sdk\tools" el fichero "apkbuilder.bat" (lo podemos encontrar aquí:

https://github.com/ACSOP/android_sdk/raw/master/apkbuilder/etc/apkbuilder.bat )

Ahora actualizamos el SDK [WIN START > SDK Manager ]

añadimosandroid 4.0 (API 14)

añadimos android 2.2 (API 8]

Instalamos los paquetes.

Instalando NDK

http://developer.android.com/tools/sdk/ndk/index.html

Descargar únicamente el fichero android-ndk-r9-windows-x86.zip

Descomprimir android-ndk-r9-windows-x86.zip dentro de C:\Android\android-ndk-r9

Instalando Laz4Android

Descargarlo desde https://skydrive.live.com/?cid=89ae6b50650182c6&id=89AE6B50650182C6!149

(A fecha Marzo 2015 se puede descargar de http://sourceforge.net/projects/laz4android/?source=directory donde se encuentra en la versión laz4android1.5-47987-FPC3.1.1.exe). He traducido el tutorial a pesar de todo pero que sepais que ya ha trancurrido bastante tiempo desde que se escribió.

Descomprimir Laz4Android1.1-41139-FPC2.7.1.7z dentro de C:\Android\laz4android

Copiar

C:\Android\android-ndk-r9\toolchains\arm-linux-androideabi-4.6\prebuilt\windows\bin\arm-linux-androideabi-*.exe

a

C:\Android\laz4android\fpc\2.7.1\bin\i386-win32\*

Editar el fichero C:\Android\laz4android\build.bat like this :

dos
SET FPC_BIN_PATH=C:\Android\laz4android

Ejecutar build.bat (doble click) -> Esto compilará y reconstruirá Lazarus.

Reconstruir el IDE de Laz4Android

Ejecutar C:\Android\laz4android\lazarus.exe

Seleccionar "Arrancar IDE"

Seleccionar "Paquete" "Instalar/Desinstalar Paquetes"

Seleccionar customdrawn 0.0 > Instalar selección y pulsar salvar para reconstruir el IDE, continuar.

Compilando la demo "androidlcl"

Copia C:\Android\laz4android\examples\androidlcl en C:\Android\Projects\androidlcl

Ejecuta "C:\Android\laz4android\lazarus.exe"

Archivo > Abrir "C:\Android\Projects\androidlcl\androidlcltest.lpr"

Proyecto > Opciones del Proyecto > Opciones del Compilador > Seleccionar "Release TAndroid"

Rutas >

Libraries -Fl: C:\Android\android-ndk-r9\platforms\android-8\arch-arm\usr\lib;C:\Android\android-ndk-r9\toolchains\arm-linux-androideabi-4.6\prebuilt\windows\lib\gcc\arm-linux-androideabi\4.6

Nombre de fichero destino: android\libs\armeabi\liblclapp.so

Generación de Código:

 SO Deseado (-T) -> Android
 Familia CPU deseada (-P) -> arm
 Procesador deseado (-Cp) -> (predeterminada)

Enlazado:

 Enable strip symbols (-Xs)

Otros : -dANDROID -Xd -CpARMV6 -FLlibdl.so

Ide macro values : macro name : LCLWidgetType macro value : customdrawn

Ahora: ejecutar > Compilar Lo cual generará la librería: C:\Android\Projects\androidlcl\android\libs\armeabi\liblclapp.so [5.073 kb]

Desarrollo

C:\Android\Projects\androidlcl\android\generate_debug_key.bat

Modificar las 6 primeras líneas tal como figura a contiuación:

dos
REM Ajusta estas rutas adecuándolas a tu instalación
SET PATH=C:\Android\android-sdk\tools;C:\Android\android-sdk\build-tools\17.0.0;C:\Android\android-sdk\platform-tools\;C:\Progra~1\Java\jdk1.6.0_45\bin
SET APP_NAME=lcltest
SET ANDROID_HOME=C:\Android\android-sdk
SET APK_SDK_PLATFORM=C:\Android\android-sdk\platforms\android-8
SET APK_PROJECT_PATH=C:\Android\Projects\androidlcl\android

Ejecutar "generate_debug_key.bat"

Utilizar como contraseña: "senhas"

Esto generará el fichero:

C:\Android\Projects\androidlcl\android\bin\LCLDebugKey.keystore

C:\Android\Projects\androidlcl\android\build_debug_apk.bat

Modificar las primeras 6 líneas para que se parezca a esto:

dos
REM Ajusta estas rutas adecuándolas a tu instalación
SET PATH=C:\Android\android-sdk\tools;C:\Android\android-sdk\build-tools\17.0.0;C:\Android\android-sdk\platform-tools\;C:\Progra~1\Java\jdk1.6.0_45\bin
SET APP_NAME=lcltest
SET ANDROID_HOME=C:\Android\android-sdk
SET APK_SDK_PLATFORM=C:\Android\android-sdk\platforms\android-8
SET APK_PROJECT_PATH=C:\Android\Projects\androidlcl\android

Tengo que cambiar el mio a esto en la versión 22 de SDK:

dos
SET APK_BUILD_TOOLS=C:\development\android-sdk\build-tools\22.0.1
SET PATH=C:\development\android-sdk\tools;C:\development\android-sdk\platform-tools\;C:\Program Files\Java\jdk1.7.0_79\bin;%APK_BUILD_TOOLS%
SET APP_NAME=androidlcl
SET ANDROID_HOME=C:\development\android-sdk
SET APK_SDK_PLATFORM=C:\development\android-sdk\platforms\android-22
SET APK_PROJECT_PATH=C:\Android\Projects\androidlcl\android

Y estas líneas:

REM Convierte el bytecode java a bytecode dalvik
::REM For older SDKs: call dx --dex --verbose --output=%APK_PROJECT_PATH%\bin\classes.dex %APK_PROJECT_PATH%\bin\classes
::REM For older SDKs:  call java -Djava.ext.dirs=%ANDROID_HOME%\platform-tools\lib\ -jar %ANDROID_HOME%\platform-tools\lib\dx.jar --dex --verbose --output=%APK_PROJECT_PATH%\bin\classes.dex %APK_PROJECT_PATH%\bin\classes
call java -Djava.ext.dirs=%ANDROID_HOME%\platform-tools\lib\;%APK_BUILD_TOOLS%\lib\ -jar %APK_BUILD_TOOLS%\lib\dx.jar --dex --verbose --output=%APK_PROJECT_PATH%\bin\classes.dex %APK_PROJECT_PATH%\bin\classes

Ejecutar "build_debug_apk.bat" respondiendo a las preguntas y entrar la contraseña "senhas" cuando se solicite

Esto generará:

C:\Android\Projects\androidlcl\android\bin\lcltest.apk [1.549 kb]

START > AVD Manager

New > AVD name > give a name

Device 5.1 WVGA

Target Android 4 API 14

Pulsar OK

Una vez creado seleccionar el dispositivo virtual creado y pulsar "start" > "Launch" y esperar unos pocos minutos.

C:\Android\Projects\androidlcl\android\adb_install.bat

Modificar tal como figura a continuación:

dos
REM Adjust these paths to yours
SET PATH=C:\Android\android-sdk\tools;C:\Android\android-sdk\build-tools\17.0.0;C:\Android\android-sdk\platform-tools\;C:\Progra~1\Java\jdk1.6.0_45\bin

adb uninstall com.pascal.lcltest
adb install bin\lcltest.apk

pause

Ejecutar "adb_install.bat" . Esto instalará el "LCL Test" dentro de tu Dispositivo Virtual.

Edita con un editor de ficheros el siguiente fichero de proceso por lotes (.bat):

C:\Android\Projects\androidlcl\android\adb_install.bat

como esto:

dos
REM Adjust these paths to yours
SET PATH=C:\Android\android-sdk\tools;C:\Android\android-sdk\build-tools\17.0.0;C:\Android\android-sdk\platform-tools\;C:\Progra~1\Java\jdk1.6.0_45\bin

adb logcat > std.txt

pause

Al ejecutar esto obtendremos como salida un fichero de depurado:

C:\Android\Projects\androidlcl\android\std.txt

¡ A disfrutarlo ! :)

Links

Preparar carpeta

Crear el directorio ~\Android

Instalar OpenJDK

bash
sudo apt-get install openjdk-7-jdk

Más información sobre OpenJDK en: http://openjdk.java.net/

Instalar SDK (Software Development Kit)

Ir a http://developer.android.com/sdk/index.html

Other download options > SDK Tools Only

android-sdk_r22.6.2-linux.tgz (Recomendado)

Extraer SDK () dentro de ~\Android\android-sdk

bash
tar -zxvf android-sdk_r22.6.2-linux.tgz

Ahora actualizar el SDK (Start ~\Android\android-sdk\tools\android)

añadir android 4.0 (API 14)

añadir android 2.2 (API 8]

Instalar los paquetes.

Instalar NDK (Native Development Kit)

http://developer.android.com/tools/sdk/ndk/index.html

Descargar únicamente el fichero android-ndk-r9d-linux-x86.tar.bz2

Extraer android-ndk-r9d-linux-x86.tar.bz2 dentro de ~\Android\android-ndk-r9

bash
tar -jxvf android-ndk-r9d-linux-x86.tar.bz2

Construir FPC 2.7.1

Instalar el último paquete de distribución FPC disponible:

bash
sudo apt-get install fpc

Descargar el FPC trunk más actual desde el SVN:

bash
svn co http://svn.freepascal.org/svn/fpc/trunk/ ~/Android/fpcsrc

Construir el trunk de para ARM hacia ~/Android/fpc:

bash
make crossinstall CPU_TARGET=arm OS_TARGET=linux \
CROSSBINDIR=~/Android/android-ndk-r9/toolchains/arm-linux-androideabi-4.8/prebuilt/linux-x86_64/arm-linux-androideabi/bin OPT=-dFPC_ARMEL INSTALL_PREFIX=~/Android/fpc

Reconstruir el IDE de Lazarus

Ejecutar ~\Android\lazarus

Selecciona "Start IDE"

Selecciona "Paquete" "Instalar/Desinstalar Paquetes"

Selecciona customdrawn 0.0 > Instalar la selección y pulsar salvar y reconstruir IDE , continuar

Enlaces


From the Free Pascal wiki, page "Android tutorial/es", as it stood on 2015-07-16 after a change by FTurtle, out of the wiki's dump of 2024-05-26. Copyright stays with the author who wrote it, according to the old wiki's Licensing page. If you have concerns about this material, message the admin.