LAMW/ru

From Free Pascal wiki
Jump to navigationJump to search

Template:MenuTranslate

Android robot.svg

Эта статья относится только к Android.

См. также: Multiplatform Programming Guide

Light bulb  Примечание: Эта страница взята из предыдущего урока HOW_TO_INSTALL_by_Dieselnutjob.pdf (для Windows). Теперь это вики, вы можете обновлять его, когда уверены, что оно работает и/или помогает.

LAMW - это набор мастеров Lazarus, который вы запускаете из меню Build и Tools.

Он помогает устанавливать параметры, организовывать библиотеки и запускать инструменты, необходимые для создания APK-файлов, используемых для установки приложений на Android.

Эта установка включает в себя несколько пакетов, содержащих компоненты, полезные для разработки программ Android с помощью Lazarus с использованием JNI.

Как установить на Linux

См. LAMW на Linux

Как установить на Windows

Это работает на Windows 8 и 10 Home Edition 64-бит.

Загрузка

Создайте папку C:\lamw and C:\lamw\projects

Загрузите эти файлы в папку C:\lamw :

lamw download.png

Важные замечания :

Версии, указанные здесь, в настоящее время работают, хотя некоторые из них являются старыми и даже скрыты их создателями/издателями.

Но последние стабильные версии не всегда совместимы с инструментами (по крайней мере, NDK).

Если более свежая стабильная версия работает хорошо, обновите Wiki.

Возможно, у вас уже есть наборы, установленные где-то еще на вашем компьютере. Это может привести к проблемам, если вы попытаетесь использовать их заново. Безопаснее делать новые загрузки в c:\lamw. Помните об использовании соответствующих версий и не используйте ярлыки, ранее установленные с другими версиями.

Получение исходников

Вы должны получить исходники LAMW, используя один из 3 методов, перечисленных ниже. Они содержат мастера настройки и 3 пакета.

Получение с помощью git-клиента

Здесь мы используем Git Gui, но вы можете использовать и другие более простые инструменты, такие как Tortoise GIT.

  1. создайте папку C:\lamw\lazandroidmodulewizard
  2. щелкните правой кнопкой мыши на этой папке
  3. нажмите "GIT Gui here"
  4. нажмите "Clone existing repository" (Клонировать существующее хранилище) и введите https://github.com/jmpessoa/lazandroidmodulewizard в поле ввода "Source location".
  5. выберите папку C:\lamw\lazandroidmodulewizard

lamw git checkout.png

Получение с помощью svn-клиента

Посредством Tortoise SVN

https://github.com/jmpessoa/lazandroidmodulewizard в папку C:\lamw\lazandroidmodulewizard

lamw svn checkout 1.png

lamw svn checkout 2.png

Распаковка из архива

Альтернативным способом является загрузка этого zip-файла в папку c:\lamw и распаковка (по умолчанию) в папку C:\lamw\lazandroidmodulewizard.

Вам придется делать это часто, потому что часто происходят обновления LAMW, и у вас в этом случае не будет под рукой какого-нибудь менеджера обновления исходного кода для быстрой проверки обновлений или участия в проекте.

Установки

Распакуйте android-sdk_r24.4.1-windows.zip в c:\lamw\android-sdk-windows

Распакуйте android-ndk-r10e-windows-x86.zip в c:\lamw\android-ndk-r10e-windows-x86

Распакуйте apache-ant-1.9.6-bin.zip в c:\lamw\apache-ant-1.9.6

Распакуйте laz4android1.5-50093-FPC3.1.1.7z в C:\lamw\Laz4Android

Распакуйте и запустите jdk-8u65-windows-i586.exe . Это установит JDK в C:\Program Files (x86)\Java\jdk1.8.0_65\

lamw java sdk install.png

Light bulb  Примечание: В зависимости от инструмента, который вы используете для распаковки zip или 7z, убедитесь, что у вас первая папка не дублируется дважды. Например, такое дублирование c:\lamw\android-ndk-r10e-windows-x86\android-ndk-r10e-windows-x86 приведет к ошибкам на последующих этапах ...

Обновление наборов разработчиков Java

Запустите C:\lamw\android-sdk-windows\SDK Manager.exe

  1. cнимите выделение Android N (API 23 N Preview)
  2. cнимите выделение Android 6.0 (API 23)
  3. отметьте Android SDK Platform-tools
  4. отметьте Android SDK Build-tools
  5. отметьте Extras/Android Support Library [если найден...]
  6. отметьте Extras/Google USB Driver
  7. нажмите Install 4 packages (Установить 4 пакета) [3 пакета, если библиотека поддержки Android не найдена]
  8. примите условия лицензии и нажмите Install (Установить)
  9. подождите, пока закончится загрузка
  10. выйдите из SDK Manager

lamw sdk manager 1.png


Запустите C:\lamw\android-sdk-windows\SDK Manager.exe снова

  1. cнимите выделение Android N (API 23 N Preview)
  2. cнимите выделение Android 6.0 (API 23)
  3. expand Android 4.2.2 (API 17)
  4. отметьте SDK Platfrom
  5. отметьте ARM EABI v7a System Image
  6. нажмите Install 2 packages (установить 2 пакета)
  7. примите условия лицензии и нажмите Install (Установить)
  8. подождите, пока закончится загрузка
  9. выйдите из SDK Manager

lamw sdk manager 2.png

Build and prepare Laz4Android

Laz4Android is simply an instance of Lazarus.

From Windows, run cmd, then :

cd \lamw\Laz4Android build.bat

lamw cmd laz4android 1.png

lamw cmd laz4android 2.png

When finished, exit cmd mode

Create a shortcut on your desktop for C:\lamw\laz4android\startlazarus.exe

Execute it

Start IDE

Package -> Open package file (.lpk)

select C:\lamw\lazandroidmodulewizard\trunk\tfpandroidbridge_pack.lpk

Compile

Use>> Install

Do you want to rebuid Lazarus now? Yes

Laz4Android will restart

Package -> Open package file (.lpk)

select C:\lamw\lazandroidmodulewizard\trunk\lazandroidwizardpack.lpk

Compile

Use>> Install

Do you want to rebuid Lazarus now? Yes

Laz4Android will restart

Package -> Open package file (.lpk)

select C:\lamw\lazandroidmodulewizard\trunk\ide_tools\amw_ide_tools.lpk

Compile

Use>> Install

Do you want to rebuid Lazarus now? Yes

Laz4Android will restart

Path settings

In Laz4Android:

Tools -> [LAMW] Android Module Wizard -> Path settings

Path to Java JDK: C:\Program Files (x86)\Java\jdk1.8.0_65
Path to Ant bin: C:\lamw\apache-ant-1.9.6\bin
Path to Android SDK: c:\lamw\android-sdk_r24.4.1-windows
Path to Android NDK: C:\lamw\android-ndk-r10e
NDK version: 10e
Path to Simonsay's templates: C:\lamw\lazandroidmodulewizard\trunk\java

lamw path settings.png

OK.

File -> Restart

Create your first project

In Laz4Android :

Project -> Close project [if necessary]

Project Wizard -> New project

Select JNI Android Module [Lamw GUI]

Click OK

lamw create new project.png

Path to Workspace [Projects Folder]: C:\lamw\projects
New Project Name: LamwGUIProject1
Default Package Name: org.lamw
Include "android-support-v4.jar": no
NDKPlatfom: 17
MinSdkAPI: 17
TargetSdkApi: 17
Instruction: ARMv7a
ARM Fpu: Soft
Android Theme: DeviceDefault

lamw configure project.png

Save unit1.pas

Click Save

Now, if you hover the mouse over any unit in uses clause, IDE will show an error message.

File -> Restart

After restart, if you hover the mouse over any unit in uses clause, IDE does not show error message anymore

Drag from Android Bridge a jButton onto form

Events OnClick, double click and add :

procedure TAndroidModule1.jButton1Click( Sender: TObject );
begin
  ShowMessage('Hello World');
end;

File -> Save All

Run -> Build

Target: C:\lamw\projects\LamwGUIProject1\libs\armeabi\libcontrol.so: Success

Light bulb  Примечание: This Build step is not required, because it will be executed by the next one. However it can help to diagnose an issue.
Light bulb  Примечание: Before next step, check your Android device is connected to the PC with an USB cable.

Run -> [Lamw] Build APK and run

Building APK...: Success

if ADB is working with your phone, the APK will then be copied, installed and run automatically !

Otherwise, copy C:\lamw\projects\LamwGUIProject1\bin\LamwGUIProject1-debug.apk to some folder of the Android device, and install this file using the device file manager.

Other demos

In C:\lamw\trunk\demos\Eclipse, you will find a lot of projects to help you with the available functionalities.

You have to :

  1. Open the project file <project_name>/jni/controls.lpi
  2. Goto project options and change NDK paths according your installation
  3. Project, Options, LAMW Project configuration and check the Target SDK API which must be the same as installed above.
  4. Run, Build the project. As the "Hello World" above, it should copy, install and run the application on the Android device.
  5. Try it !

If you get the message "Application has stopped", it can be useful to goto Tools, [LAMW] Android Module Wizard, Upgrade Code templates

Select the directory containing examples and a project and click "OK".

Then build again, and it should work !