RSS Feed

Andorid iso ile sanal makinede Android koÅŸturmak

December 13, 2011 by Oğuz Yarımtepe

Android için uygulama yazarken genel olarak Eclipse ve Android SDK kullanarak yazılan kod derleme sırasında sanal bir cihazda test ediliyor. Sanal makinenin açılması, oluÅŸan derlenmiÅŸ apknın makineye kurulması, kurulduktan sonra sizin açılan sanal cihazda etkileÅŸim ile menulerde gezinmeniz bazen yavaÅŸ olabiliyor. Beraber çalıştığımız öğrenciler X86 için derlenmiÅŸ ve sanal makineye kurmanızı saÄŸlayan bir iso bulmuÅŸlar. Projenin sayfasında sadece 2.2 için deÄŸil 2.3 ve farklı donanımlar için derlenmiÅŸ isoları da bulmak mümkün. Ben 2.2 olanını VirtualBox’a kurdum. Kurulum yapıldıktan sonra çıkan “Create Fake SD Card” seçeneÄŸini de aktif edip kurulumdan sonra sanal bir SD kart oluÅŸturulmasını saÄŸlamak gerekiyor. Android’in kurulacağı bir disk yanında Virtualbox’ta oluÅŸturulan sanal makineye ikinci bir disk ekleyip ext2 ile formatlayıp, etiket olarak SDCARD atanması da söyleniyor.[1][2]

Sonuçta elinizde daha hızlı çalışan bir Android oluyor. Bu sanal Android’e dışarıdan bir apk kurmak da epey kolay. Bunun için Android SDK içerisinden çıkan adb komutunu kullanmak lazım:

adb connect :5555

ile cihaza bağlandıktan sonra


adb install -r apk_dosyasi.apk

komutu ile kurulum yapmak mümkün.

Bu komut sonunda eğer sertifika hatası alınıyor ise uygulamanın kök dizininde önce


update project --target hedef_cihaz_numarası --path .

demek gerekiyor. Hedef cihaz numarası da


android list targets

komutu ile öğrenilebiliyor. android komutu da android-sdk içerisinde bulunuyor. Bu işlemden sonra


ant -Dsdk.dir=android_sdk_yolu release

ile uygulamanın bulunduğu dizinde bin altında imzalanmamış bir apk oluşturmak mümkün. Oluşan apkyı imzalamak için ise http://developer.android.com/guide/publishing/app-signing.html#ExportWizard adresinde yazılanları takip etmek yeterli. Sonrasında uygulamayı adb ile kurup sanal makinede denemek mümkün.


No Comments »

No comments yet.

Leave a Reply

Your email address will not be published. Required fields are marked *