Difference between revisions of "Android tutorial"

From Lazarus wiki
Jump to navigationJump to search
(use drive C instead of D for projects)
m (Lazarus üzerinde Android Yazılımları Geliştirmek)
Line 1: Line 1:
 
=Windows=
 
=Windows=
  
This is a quick tutorial on how to create android apps with Lazarus.
+
Bu Lazarus ile Android uygulamanın nasıl geliştirleceğini anlatan bir hızlı öğreticidir.
 +
Bu eğitimde JDK 1.6u45 + SDK 22.2.1 + ndk-r9 + Laz4Android1.1-41139-FPC2.7.1 paketleri üzerinden anlatım yapılmıştır.
  
In this tutorial assume used versions JDK 1.6u45 + SDK 22.2.1 + ndk-r9 + Laz4Android1.1-41139-FPC2.7.1
+
==Dizin Hazırlanması==
 +
Sürücü C üzerinde “Android” isimli bir dizin oluşturun.
  
==Prepare folder==
+
==JDK Yükleme==
Create on C:\ a folder called "Android"
+
1.6u45 (Bende jdk-6u45-windows-x64.exe yüklü vaziyette)
 
 
==Install JDK==
 
1.6u45 (i have installed jdk-6u45-windows-x64.exe)
 
  
 
http://www.oracle.com/technetwork/java/javasebusiness/downloads/java-archive-downloads-javase6-419409.html#jdk-6u45-oth-JPR
 
http://www.oracle.com/technetwork/java/javasebusiness/downloads/java-archive-downloads-javase6-419409.html#jdk-6u45-oth-JPR
  
It will be installed in to C:\Program Files\Java\.
+
Bu bağlantıdaki paket C:\Program Files\Java\. İçine yüklenmiş olmalı.
  
==Installing SDK==
+
==SDK yı Kurmak==
Go to http://developer.android.com/sdk/index.html
+
http://developer.android.com/sdk/index.html adresine git.
  
DOWNLOAD FOR OTHER PLATFORMS > SDK Tools Only
+
DİĞER PLATFORMLAR İÇİN OLAN > SDK ARAÇLARINI İNDİR.
 +
installer_r22.2.1-windows.exe (Önerilir)
 +
sdk (installer_r22.2.1-windows) yı C:\Android\android-sdk içine kur.
 +
"apkbuilder.bat" dosyasını  "C:\Android\android-sdk\tools"  içine kopyala (burada bulabilirsiniz 
 +
https://raw.github.com/ACSOP/android_sdk/master/apkbuilder/etc/apkbuilder.bat)
  
installer_r22.2.1-windows.exe (Recommended)
+
Şimdi SDK'yı güncelle  [WIN BAŞLAT > SDK Manager ]
 +
android 4.0 (API 14)' ü ekle
 +
android 2.2 (API 8) 'i ekle
 +
paketleri kur
  
Install sdk (installer_r22.2.1-windows) into C:\Android\android-sdk
+
==NDK'yı Kurmak==
 
 
Copy at "C:\Android\android-sdk\tools" the file "apkbuilder.bat" (can be found here
 
 
 
https://github.com/ACSOP/android_sdk/raw/master/apkbuilder/etc/apkbuilder.bat )
 
 
 
Now update the SDK [WIN START > SDK Manager ]
 
 
 
add android 4.0 (API 14)
 
 
 
add android 2.2 (API 8]
 
 
 
Install packages.
 
 
 
==Installing NDK==
 
 
http://developer.android.com/tools/sdk/ndk/index.html
 
http://developer.android.com/tools/sdk/ndk/index.html
  
Download only the file android-ndk-r9-windows-x86.zip
+
sadece android-ndk-r9-windows-x86.zip dosyasını indirin
 +
android-ndk-r9-windows-x86.zip zip dosyasını C:\Android\android-ndk-r9 içine ayıklayın.
  
Unzip android-ndk-r9-windows-x86.zip into C:\Android\android-ndk-r9
 
  
 +
==Laz4Android 1.1-41139-FPC2.7.1.7z nın Kurulması==
 +
https://skydrive.live.com/?cid=89ae6b50650182c6&id=89AE6B50650182C6!149 adresinden indir.
  
==Installing Laz4Android1.1-41139-FPC2.7.1.7z==
+
Laz4Android1.1-41139-FPC2.7.1.7z dosyasını “C:\Android\laz4android” içine aç
Download it from https://skydrive.live.com/?cid=89ae6b50650182c6&id=89AE6B50650182C6!149
 
  
Unzip Laz4Android1.1-41139-FPC2.7.1.7z into C:\Android\laz4android
+
Şu kopyalamayı yap
 
 
Copy
 
  
 
C:\Android\android-ndk-r9\toolchains\arm-linux-androideabi-4.6\prebuilt\windows\bin\arm-linux-androideabi-*.exe
 
C:\Android\android-ndk-r9\toolchains\arm-linux-androideabi-4.6\prebuilt\windows\bin\arm-linux-androideabi-*.exe
 
+
adresinden
to
 
 
 
 
C:\Android\laz4android\fpc\2.7.1\bin\i386-win32\*
 
C:\Android\laz4android\fpc\2.7.1\bin\i386-win32\*
 +
adresine.
  
Edit the file C:\Android\laz4android\build.bat like this :
+
"C:\Android\laz4android\build.bat" dosyasını şu şekilde düzenleyin :
  
 
<syntaxhighlight lang="dos">
 
<syntaxhighlight lang="dos">
Line 63: Line 53:
 
</syntaxhighlight>
 
</syntaxhighlight>
  
Run build.bat (doubleclick) ->  It will compile & bulid lazarus.
+
Built.bat dosyasını(çift tıklayarak) çalıştırın. Bu Lazarus' a derlemeyi ve inşaa etmeyi yapacaktır.
 
 
 
 
==Rebuilding Laz4Android IDE==
 
Run C:\Android\laz4android\lazarus.exe
 
 
 
Select "Start IDE"
 
 
 
select "Package" "Install/Uninstall Packages"
 
 
 
select customdrawn 0.0 > install selection and hit save and rebuild IDE , continue
 
 
 
 
 
==Compiling the demo "androidlcl"==
 
Copy C:\Android\laz4android\examples\androidlcl at C:\Android\Projects\androidlcl
 
  
Run "C:\Android\laz4android\lazarus.exe"
 
  
File > open "C:\Android\Projects\androidlcl\androidlcltest.lpr"
+
==Laz4Android Paketinin IDE ye İnşaa Edilmesi==
 +
C:\Android\laz4android\lazarus.exe dosyasını çalıştır.
 +
"Start IDE" yi seç.
 +
"Package" "Install/Uninstall Packages" 'i seç.
 +
Customdrawn 0.0' ı seçin. Devamında seçili olanı yüklediğinizda IDE yi yeniden inşaa(rebuild) edin.
  
Project > project options
 
  
Compiler options > select "Release TAndroid"
+
=="androidlcl" Demosunun Derlenmesi==
 +
C:\Android\Projects\androidlcl” ye “C:\Android\laz4android\examples\androidlcl” yi kopyala.
 +
"C:\Android\laz4android\lazarus.exe" yi çalıştır.
 +
Menüden Dosya > "C:\Android\Projects\androidlcl\androidlcltest.lpr"
  
Paths >  
+
Proje > proje Seçenekleri
 +
Derleme Seçenekleri > Seç "Release TAndroid"
 +
Yollar >
 +
Kütüphaneler -Ll : 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
 +
Hedef Dosya Adı : android\libs\armeabi\liblclapp.so
  
Libraries -Ll :
 
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
 
  
Target file name :
+
Kod Oluşturma:
android\libs\armeabi\liblclapp.so
 
 
 
Code generation
 
 
   Target OS -T android
 
   Target OS -T android
 
   Target CPU -P arm
 
   Target CPU -P arm
 
   Target processor default
 
   Target processor default
  
Linking :
+
Bağlayıcı (Linking):
 
   Enable strip symbols (-Xs)
 
   Enable strip symbols (-Xs)
  
Other : -dANDROID -Xd -CpARMV6 -FLlibdl.so
+
Diğer : -dANDROID -Xd -CpARMV6 -FLlibdl.so
  
Ide macro values :
+
Ide makro değerleri:
macro name : LCLWidgetType
+
makro adı: LCLWidgetTip
macro value : customdrawn
+
makro değeri : customdrawn
  
Now
+
Şimdi Çalıştır > Derlemek bu kütüphaneyi üretecek  : C:\Android\Projects\androidlcl\android\libs\armeabi\liblclapp.so [5.073 kb]
Run > Compile this will generate this library :
 
C:\Android\Projects\androidlcl\android\libs\armeabi\liblclapp.so [5.073 kb]
 
  
  
==Deployment==
+
==Dağıtımın Yapılması==
  
* Edit with a text editor
+
* C:\Android\Projects\androidlcl\android\generate_debug_key.bat dosyasını Yazı editöründe düzenlemek için aç.
C:\Android\Projects\androidlcl\android\generate_debug_key.bat
 
  
Modify the first 6 lines like this :
+
Bu şekilde ilk 6 satırı değiştirin :
  
 
<syntaxhighlight lang="dos">
 
<syntaxhighlight lang="dos">
REM Adjust these paths to yours
+
REM Senin için bu yolları ayarlayalım
 
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 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 APP_NAME=lcltest
Line 130: Line 107:
 
</syntaxhighlight>
 
</syntaxhighlight>
  
Run "generate_debug_key.bat"
+
"generate_debug_key.bat" dosyasını çalıştır.
 
+
Parola bunu kullan : "senhas"
Use as password : "senhas"
+
Bu dosyayı üretecek :
 
 
This will produce the file :
 
 
 
 
C:\Android\Projects\androidlcl\android\bin\LCLDebugKey.keystore
 
C:\Android\Projects\androidlcl\android\bin\LCLDebugKey.keystore
  
 +
* “C:\Android\Projects\androidlcl\android\build_debug_apk.bat” dosyasını Yazı editöründe düzenlemek için aç.
  
* Edit with a text editor
+
Bu şekilde ilk 6 satırı değiştirin :
C:\Android\Projects\androidlcl\android\build_debug_apk.bat
 
  
Modify the first 6 lines like this :
 
 
<syntaxhighlight lang="dos">
 
<syntaxhighlight lang="dos">
REM Adjust these paths to yours
+
REM Senin için bu yolları ayarlayalım
 
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 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 APP_NAME=lcltest
Line 152: Line 125:
 
</syntaxhighlight>
 
</syntaxhighlight>
  
run "build_debug_apk.bat" answer at the questions and give the password "senhas" when asked
+
"build_debug_apk.bat" dosyasını çalıştırdığında sorulara cevap olarak istenildiğinde parola “senhas” cevabını ver.
  
This will generate
+
Bu dosya üretilecek.
  
 
C:\Android\Projects\androidlcl\android\bin\lcltest.apk [1.549 kb]
 
C:\Android\Projects\androidlcl\android\bin\lcltest.apk [1.549 kb]
  
 
+
* “Android Sanal Aygıt” Oluşturma
* Create an Android Virtual Device
+
BAŞLAT > AVD Manager
START > AVD Manager
+
New > AVD name > Bir isim ver
 
+
Device 5.1 WVGA
New > AVD name > give a name
+
Hedef Android 4 API 14
 
+
İş Tamam
Device 5.1 WVGA
+
Birkez oluşturulan sanal aygıtı seçin ve “start” > “Launch” birkaç dakika bekleyin.
 
 
Target Android 4 API 14
 
 
 
Hit OK
 
 
 
Once created select the virtual device and hit "start" > "Launch" wait a couple of minutes.
 
 
   
 
   
  
* Edit with a text editor
+
* “C:\Android\Projects\androidlcl\android\adb_install.bat” dosyasını Yazı editöründe düzenlemek için aç.
C:\Android\Projects\androidlcl\android\adb_install.bat
 
  
Modify like this :  
+
Bu şekilde değiştirin :
 
<syntaxhighlight lang="dos">
 
<syntaxhighlight lang="dos">
 
REM Adjust these paths to yours
 
REM Adjust these paths to yours
Line 187: Line 153:
 
</syntaxhighlight>
 
</syntaxhighlight>
  
Run "adb_install.bat" . This will install the "LCL Test" into your Virtual device
+
"Adb_install.bat" dosyasını çalıştırın. Bu Sanal Aygıt içine "LCL Test" kuracak.
 
 
  
* Debugging
 
Edit with a text editor the file
 
  
C:\Android\Projects\androidlcl\android\adb_install.bat
+
* Hata Ayıklama(Debugging) işlemi.
 +
“C:\Android\Projects\androidlcl\android\adb_install.bat” dosyasını Yazı editöründe düzenlemek için aç.
  
like this :
+
Bu şekilde  değiştirin :
 
<syntaxhighlight lang="dos">
 
<syntaxhighlight lang="dos">
 
REM Adjust these paths to yours
 
REM Adjust these paths to yours
Line 205: Line 169:
 
</syntaxhighlight>
 
</syntaxhighlight>
  
By running this you will get a debug file here :
+
Çalıştığında burada bir hata ayılama(Debug) dosyan olacak :
 
 
C:\Android\Projects\androidlcl\android\std.txt
 
 
 
Enjoy !
 
 
 
==Links==
 
  
* [http://forum.lazarus.freepascal.org/index.php/topic,22414.msg141964.html? Original forum topic]
+
“C:\Android\Projects\androidlcl\android\std.txt”
* [http://sourceforge.net/projects/laztoapk/files/Lazarus%20and%20Android.pdf/download Lazarus and Android PDF tutorial with images]
 
  
=Linux=
+
“Tadını Çıkar” !
  
* [http://pascalgeek.blogspot.cz/2013/10/android-programming-with-lazarus.html Android Programming with Lazarus through Custom Drawn Interface]
+
==Bağlantılar==
  
[[Category:Android]]
+
* [http://forum.lazarus.freepascal.org/index.php/topic,22414.msg141964.html? Bu Yazının bulunduğu Orijinal Forum Konu Başlığı]
 +
* [http://sourceforge.net/projects/laztoapk/files/Lazarus%20and%20Android.pdf/download Lazarus ve Android için Resimli PDF Öğreticisi]

Revision as of 10:26, 9 March 2014

Windows

Bu Lazarus ile Android uygulamanın nasıl geliştirleceğini anlatan bir hızlı öğreticidir. Bu eğitimde JDK 1.6u45 + SDK 22.2.1 + ndk-r9 + Laz4Android1.1-41139-FPC2.7.1 paketleri üzerinden anlatım yapılmıştır.

Dizin Hazırlanması

Sürücü C üzerinde “Android” isimli bir dizin oluşturun.

JDK Yükleme

1.6u45 (Bende jdk-6u45-windows-x64.exe yüklü vaziyette)

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

Bu bağlantıdaki paket C:\Program Files\Java\. İçine yüklenmiş olmalı.

SDK yı Kurmak

http://developer.android.com/sdk/index.html adresine git.

DİĞER PLATFORMLAR İÇİN OLAN > SDK ARAÇLARINI İNDİR. installer_r22.2.1-windows.exe (Önerilir) sdk (installer_r22.2.1-windows) yı C:\Android\android-sdk içine kur.

"apkbuilder.bat" dosyasını  "C:\Android\android-sdk\tools"  içine kopyala (burada bulabilirsiniz  

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

Şimdi SDK'yı güncelle [WIN BAŞLAT > SDK Manager ] android 4.0 (API 14)' ü ekle android 2.2 (API 8) 'i ekle paketleri kur

NDK'yı Kurmak

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

sadece android-ndk-r9-windows-x86.zip dosyasını indirin android-ndk-r9-windows-x86.zip zip dosyasını C:\Android\android-ndk-r9 içine ayıklayın.


Laz4Android 1.1-41139-FPC2.7.1.7z nın Kurulması

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

Laz4Android1.1-41139-FPC2.7.1.7z dosyasını “C:\Android\laz4android” içine aç

Şu kopyalamayı yap

C:\Android\android-ndk-r9\toolchains\arm-linux-androideabi-4.6\prebuilt\windows\bin\arm-linux-androideabi-*.exe adresinden C:\Android\laz4android\fpc\2.7.1\bin\i386-win32\* adresine.

"C:\Android\laz4android\build.bat" dosyasını şu şekilde düzenleyin :
SET FPC_BIN_PATH=C:\Android\laz4android

Built.bat dosyasını(çift tıklayarak) çalıştırın. Bu Lazarus' a derlemeyi ve inşaa etmeyi yapacaktır.


Laz4Android Paketinin IDE ye İnşaa Edilmesi

C:\Android\laz4android\lazarus.exe dosyasını çalıştır. "Start IDE" yi seç.

"Package" "Install/Uninstall Packages" 'i seç.

Customdrawn 0.0' ı seçin. Devamında seçili olanı yüklediğinizda IDE yi yeniden inşaa(rebuild) edin.


"androidlcl" Demosunun Derlenmesi

C:\Android\Projects\androidlcl” ye “C:\Android\laz4android\examples\androidlcl” yi kopyala. "C:\Android\laz4android\lazarus.exe" yi çalıştır. Menüden Dosya > Aç "C:\Android\Projects\androidlcl\androidlcltest.lpr"

Proje > proje Seçenekleri Derleme Seçenekleri > Seç "Release TAndroid" Yollar > Kütüphaneler -Ll : 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 Hedef Dosya Adı : android\libs\armeabi\liblclapp.so


Kod Oluşturma:

 Target OS -T android
 Target CPU -P arm
 Target processor default

Bağlayıcı (Linking):

 Enable strip symbols (-Xs)

Diğer : -dANDROID -Xd -CpARMV6 -FLlibdl.so

Ide makro değerleri:

makro adı: LCLWidgetTip 
makro değeri : customdrawn

Şimdi Çalıştır > Derlemek bu kütüphaneyi üretecek : C:\Android\Projects\androidlcl\android\libs\armeabi\liblclapp.so [5.073 kb]


Dağıtımın Yapılması

  • C:\Android\Projects\androidlcl\android\generate_debug_key.bat dosyasını Yazı editöründe düzenlemek için aç.

Bu şekilde ilk 6 satırı değiştirin :

REM Senin için bu yolları ayarlayalım
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

"generate_debug_key.bat" dosyasını çalıştır. Parola bunu kullan : "senhas" Bu dosyayı üretecek : C:\Android\Projects\androidlcl\android\bin\LCLDebugKey.keystore

  • “C:\Android\Projects\androidlcl\android\build_debug_apk.bat” dosyasını Yazı editöründe düzenlemek için aç.

Bu şekilde ilk 6 satırı değiştirin :

REM Senin için bu yolları ayarlayalım
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

"build_debug_apk.bat" dosyasını çalıştırdığında sorulara cevap olarak istenildiğinde parola “senhas” cevabını ver.

Bu dosya üretilecek.

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

  • “Android Sanal Aygıt” Oluşturma

BAŞLAT > AVD Manager New > AVD name > Bir isim ver Device 5.1 WVGA Hedef Android 4 API 14 İş Tamam Birkez oluşturulan sanal aygıtı seçin ve “start” > “Launch” birkaç dakika bekleyin.


  • “C:\Android\Projects\androidlcl\android\adb_install.bat” dosyasını Yazı editöründe düzenlemek için aç.

Bu şekilde değiştirin :

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

"Adb_install.bat" dosyasını çalıştırın. Bu Sanal Aygıt içine "LCL Test" kuracak.


  • Hata Ayıklama(Debugging) işlemi.

“C:\Android\Projects\androidlcl\android\adb_install.bat” dosyasını Yazı editöründe düzenlemek için aç.

Bu şekilde değiştirin :

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ıştığında burada bir hata ayılama(Debug) dosyan olacak :

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

“Tadını Çıkar” !

Bağlantılar