Custom Drawn Interface/Using the Android SDK, Emulator and Phones/ru

From Free Pascal wiki
Revision as of 12:08, 9 February 2012 by Kverde (talk | contribs) (Using the Emulator)

English (en) русский (ru)

Go back to Custom Drawn Interface/Android

Использование Android SDK

Загрузка и установка Android SDK очень простая. Нужно всего лишь перейти по ссылке: http://developer.android.com/sdk/index.html

Как настроить Ant

При использовании 'ant debug' для построения проекта Андроид может быть получено много ошибок о неудовлетворенных зависимостях. В Linux это может быть решено установкой пакетов которые име.т эти зависимости, это будет менятся от дистрибутива к дистрибутиву.

Настройка Ant в Mandriva Linux

Эти ошибки:

/usr/bin/build-classpath: error: Could not find jaxp_parser_impl Java extension for this JVM
/usr/bin/build-classpath: error: Could not find xml-commons-apis Java extension for this JVM

Могут быть исправленны, соответственно, с:

urpmi xerces-j2
urpmi xml-commons-jaxp

Обшие ошибки Ant

Эта ошибка:

 /home/felipe/Programas/lazarus-ccr/examples/androidlcl/android/build.xml:46: taskdef class com.android.ant.SetupTask cannot be found

Означает что нужно установить корректные пути к SDK в вашем файле проекта.

Recognition of devices under Linux

Unlike in Windows, where one needs to install a new set of drivers for nearly every phone, in Linux the Android devices are recognized as generic Android devices (regardless of being a phone, a tablet or a notebook) and they are ready to be used without installing additional drivers. One issue, however, that often appears is that devices are not fully recognized automatically and one receives the error message "?????? no permissions". In this case the command adb devices will look like this:

[felipe@localhost ~]$ cd Programas/android-sdk-linux_x86/tools/
[felipe@localhost tools]$ ./adb devices
List of devices attached 
????????????    no permissions

To solve this issue one can proceed with the following steps:

Step 1 - First read the tag of the device using lsusb run as root (or sudo):

[root@localhost Programas]# lsusb
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 001 Device 003: ID 04e8:681c Samsung Electronics Co., Ltd 
Bus 002 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 003 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 004 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 005 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 006 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 007 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 008 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub

The tag in this case is 04e8

Step 2 - Now, still as root, edit the file /etc/udev/rules.d/51-android.rules

If the file doesn't exist yet, then create it. Add the following line to the file:

SUBSYSTEM=="usb|usb_device", SYSFS{idVendor}=="04e8", SYMLINK+="android_adb", MODE="0666"

Change the ID to correspond to the id of your device.

Step 3 - Restart the linux usb service (udev)

In Ubuntu this can be done with: sudo services udev restart

In Mandriva udev doesn't appear as a service, so the only way to get things working for me was restarting the computer.

After doing this, the device should be fully recognized and "adb devices" as well as "adb logcat" should work.

[felipe@localhost tools]$ ./adb devices
* daemon not running. starting it now on port 5037 *
* daemon started successfully *
List of devices attached 
1000c31696b6    device

Использование эмулятора

Установка эмулятора

Построка(Building) образа эмулятора с поддержкой карты памяти

Шаг 1: Запустите приложение C:\Program Files\android-sdk-windows\tools\android.bat

Шаг 2: Создайте новый образ, нажмите кнопку New как на изображении ниже.

Android new image.PNG

Шаг 3: Установите название и параметры образа, размер карты памяти и поддрержку аппаратного обеспечения как на рисунке ниже. Android new image dialog.PNG

Запуск образа эмулятора

Шаг 1: Запустите приложение C:\Program Files\android-sdk-windows\tools\android.bat

Шаг 2: Выберите образ

Шаг 3: Нажмите на кнопку "start", как на изображении ниже.

Android run image.PNG

Копирование файлов на эмулятор

Вы можете использовать скрипт похожий на этот для копирования файлов с вашего жоского диска на эмулятор.

You can use a script similar to this one to copy files from your hard-drive to the emulator. Обратите внимание, что образ должен быть запущен и что он должен поддерживать карты памяти.

c:
cd "Program Files"
cd android-sdk-windows
cd tools
adb push C:\Mypath\Somefile.extension /sdcard
pause

Установка приложений в эмуляторе

Приложения для Андроид должны быть упакованы в файловом фомате .apk. Больше информации о том как создать .apk файл, который вы можете установить на эмуляторе/телефоне, смотрите Android Asset Packaging Tool (aapt). После упаковки файла, он может быть установлен в эмуляторе используя следуюзий вызов adb:

c:
cd "Program Files"
cd android-sdk-windows
cd tools
adb install C:\Mypath\MyApp.apk
pause

Использование телефона

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

Устанока файлового менеджера

Удивительно, Андроид телефоны поставляются без файлового менеджера. Однако, очень просто загрузить один из Android Market. Я предлагаю следующие инструкции:

1. Подключите телефон к WiFi или Мобильной сети.

2. Нажмите на иконку "Market" на рабочем столе Андроид. Будет необходимо войти в аккаунт Google для доступа к нему.

3. Нажмите на кнопку поиска и введите "oi".

4. Найдите и установите "OI File Manager" (бесплатную версию).

Samsung Galaxy S

The first thing to do when using Samsung Galaxy S is not believing the Samsung instructions. They will say that one should install Kies, their horribly crappy PC suite which is 130MB large and fails to install because the first thing that it does is failing to connect to a server in Korea to download even more files. Instead of doing this, following these instructions:

1. Go in the phone menu Settings -> About Phone -> USB settings. Change from "KIES" to "Mass storage"

2. Download and install 19 MB of Samsung USB drivers from: http://drivers.softpedia.com/dyn-postdownload.php?p=96692&t=4&i=1

3. Connect the cable of the phone

4. Drag the top menu of the phone down and mount the sdcard