Google, 2008’de, gadget severlerin kalbini hemen kazanan Android işletim sistemini piyasaya sürdü. Geliştiriciler yeni işletim sistemini ücretsiz ve açık kaynak yaptı. Buna ek olarak, "Android" in hızlı gelişimi, geliştiricilere yönelik kapsamlı bir destek politikasından kaynaklanmaktadır. Böylece, yüzlerce özgür programcı gelişme alanına girdi.
O zamanlar, iOS için nasıl bir başvuru oluşturacağına dair birçok el kitabı yazılmıştı, ancak Android için ciddi el kitapları çok azdı.
Android işletim sisteminin çalışması Linux çekirdeğini temel alır. Ve her uygulama ayrı bir sanal makinede çalışıyor. Android işletim sistemi için kodları üst düzey Java programlama dilinde yazılmıştır. Ancak, doğrudan cihazlara erişim kullanan bir ürün oluşturmak istiyorsanız veya maksimum performansa ihtiyacınız varsa, NDK kullanılır - C ++ için bir geliştirme kiti.
Şu anda, resmi Google Play mağazasında yaklaşık 2 milyon yazılım ürünü var, çünkü bugün herkes mobil uygulama oluşturabilir.
Kendi başvurunuzu nasıl oluşturabilirsiniz?
“Android” uygulamasının program kodunu yazmak için özel bir geliştirme ortamı kullanılır. Programlama için işletim sisteminin oluşturulmasından bu yana Eclipse ve IntelliJ IDEA ürünleri kullanılmıştır. Bunu yapmak için, Android uygulamaları oluşturmak için özel olarak tasarlanmış eklentiler yayınlandı. Bununla birlikte, resmi geliştirme ortamının Google - Android Studio'dan yayınlanmasından sonra, eklentiler desteklenmeyi bıraktı ve programlama şimdi bu yazılım paketinde gerçekleşti.
Android Studio'nun sistemde çalışması için, Java Kodları derleyicisini, kitaplıkları ve JRE - çalışma zamanını içeren ücretsiz bir geliştirme seti olan Java Geliştirme Kiti olmalıdır. JDK'ya ek olarak, bir uygulama oluşturmak için Android SDK'yı indirmeniz gerekir - bir dizi test ve hata ayıklama uygulaması içeren doğrudan Android için geliştirme için bir bileşen kümesi. Bu otomasyon araçlarını kullanarak ilk programı yazmak bir Vkontakte uygulaması oluşturmak kadar kolaydır.
Geliştirme ortamı
Her şeyden önce, resmi Oracle web sitesinden indirebileceğiniz yeni bir JDK sürümü kuruludur. Ardından, Android Studio yüklenir, developer.android.com adresinden indirilebilir. Kurulumdan sonra, ortam, kullanıcıyı gerekli tüm adımlar boyunca yönlendiren Android SDK'yı bağımsız olarak indirebilecektir.
Uygulamanızı oluşturmadan önce, indirme ve işlemlerinin nasıl uygulandığını anlamaya değer. Program kodunu özel bir byte koduna dönüştürdükten sonra, ortam .APK uzantılı bir arşiv oluşturur. İçerir:
- DEX dosyalarında bulunan uygulama kaynak kodu;
- varlıklar klasöründe bulunan ek kaynaklar;
- gösterilecek kaynaklar;
- Ana arşiv dosyası; uygulama izinlerini, sürüm gereksinimlerini, çalışmaya katılan sınıfların listesini vb. içeren AndroidManifest'tir.
Uygulama başladığında, Dalvik sanal makinesi veya “Android 5.0” sürümünden çalışan Sanat sistemi, çalıştırılabilir kodun anında derlendiği ayrı bir işlem oluşturur.
İlk adımlar
Uygulamanızı oluşturmadan önce, Android Studio etkinliklerin geliştirilmesi için çeşitli seçenekler sunacaktır. İlki seçmeniz gerekiyor - yeni bir Android Studio projesi oluşturun.
Ardından, program sizden gelecekteki uygulamanın adını, şirketin etki alanını ve projenin bilgisayar diskindeki fiziksel konumunu belirtmenizi isteyecektir.
Bir sonraki pencerede, uygulamanın çalışabileceği minimum Android sürümünü girmeniz gerekecektir.Farklı seçenekler seçerken, aşağıdaki açıklama mevcut ayarlara sahip cihazların yüzde kaçının Google Play'de kaydedildiğini gösterir. Bu, ürününüz için en büyük kitleyi seçmenize olanak sağlar. Herkes yeni uygulamalar yaratabildiğinden, bu alandaki rekabet çok büyük. Yani, kapsama alanı ne kadar fazlaysa, o kadar iyidir.
Bir sonraki adımda, sistem uygulama için birkaç standart düzen şemaları sunacaktır. Ekrandaki bileşenlerin konumundan sorumludurlar. Android için bir uygulama oluşturmak için en kolay seçenek boş işaretleme. İleri düğmesine tıkladıktan sonra, program geliştiriciyi doğrudan kod editörüne aktarır.
Android için Programlama Anatomisi
Kendiniz bir uygulama oluşturmak için projenin yapısını anlamanız gerekir. Sol pencerede gelecekteki programın öğelerinin bir hiyerarşisi var. Uygulamanın kök kısmı, uygulamanın tüm alt dizinlerini içerir.
Bildiriler klasörü Android için herhangi bir programın ana dosyasını içerir - AndroidManifest. Uygulama için birçok teknik bilgi taşır. Çoğu durumda, el ile düzenlemek zorunda kalmazsınız, çünkü SDK en sık gerekli satırları ve parametrelerini otomatik olarak oluşturur.
Java klasörü ana kaynak kodunu içerir. .Java uzantılı dosyalar burada bulunur. Onlarda, gelişimin çoğu gerçekleşecek.
Res klasörü kaynakları olan birkaç alt klasör içeriyor. Çizilebilir alt dizin, projenin görsel tasarımı için gerekli grafik dosyaları için tasarlanmıştır. Düzen, ekrandaki öğelerin özelliklerini ve düzenini belirten .xml uzantılı dosyalar içerir - düğmeler, metin alanları, anahtarlar, vb. Bu klasörden, gadget'ın masaüstünde bir simge oluşturmak için bir resim çekilecek. Değerler dizini, uygulama için periyodik olarak gerekli olan sabit değerleri tanımlar. Örneğin, renk kodları, sıkça oluşan düğmeler için çizgiler ve açıklamalar, stil özellikleri.
Gradle Scripts bölümü, servis bilgilerini saklamak için tasarlanmıştır. Girilen parametrelere dayanarak projeyi toplayacak ve derleyecek Gradle proje montaj sistemi için gereklidir.
Doğrudan kod
VK'da bir uygulama oluşturmadan önce, API ve dilin en azından yüzeysel eğitimi kursunu tamamlamanız gerekir. Ayrıca burada, Java bilginizi önceden daraltmanız gerekecektir.
Varsayılan olarak oluşturulan ana sınıf MainActivity.java olarak adlandırılır. Uygulamanın cihazda indirmeye başlayacağı ondan. Android Studio'nun kendisi ilk lansman için gerekli kodu otomatik olarak oluşturdu.
Başvurunuzu oluşturmadan önce, temel ilkeleri anlamanız ve yazılanları anlamanız gerekir.
Proje dosyalarının konumundan paketin en üst satırı sorumludur. İçe aktarma bize hangi kütüphanelerin yüklendiğini gösterir.
Sınıflar ve Yöntemler
Sınıfın kendisi bir genel erişim belirteci ile başlar. Sınıf kullanma haklarını ayırt etmeye hizmet eder. Public kelimesi, MainActivity.java yazılımının açık olduğu ve projenin başka yerlerinden kullanılabileceği anlamına gelir. Sonra sınıf anahtar kelimesi gelir, adı ve en ilginç olanı uzatır. Bu terim mevcut sınıfın Faaliyetten miras aldığı anlamına gelir. Ve böylece, tüm yöntem ve alanlarını alır.
Sınıfın gövdesi diş telleriyle çevrilidir. İçlerinde tüm kodun yapısını oluşturan yöntemler ve alanlar vardır.
@Override, çevreyi, onu izleyen yöntemin geçersiz kılınacağı konusunda uyaran bir nottur. Bu, onu ana sınıftan almanız ve bu koda özgü olan değişiklikleri eklemeniz gerektiği anlamına gelir. Böylece, miras mekanizması Java'da çalışır.
Ek açıklamayı korumalı erişim belirleyicisi izler; bu, bu yönteme hem bu sınıfta hem de varislerden ve hiçbir yerden erişilemeyeceği anlamına gelir.
Void anahtar sözcüğü, yöntemin türünü veya çalışma sonunda neyin geri dönmesi gerektiğini belirtir. Bu tür hiçbir şey döndürmediğini gösterir, ancak yalnızca vücutta olanı gerçekleştirir.Yöntemler, değerlere bağlı olarak String, int, double ve diğerleri türlerine sahip olabilir.
OnCreate adı, üst sınıf faaliyetinin geçersiz kılınan yönteminin adıdır. Yürütme sistemine tam olarak neye ihtiyaç duyulduğunu göstermek için, süper anahtar kelime gövdeye OnCreate çağrısı ile eklenir.
Bir sonraki satır daha az ilgi çekmiyor. SetContentView () yöntemi, işaretleme dosyasını MainActivity.java sınıfına “sabitler” ve bu Aktivitenin ekranının nasıl görünmesi gerektiğini söyler.
ekran
İşaretleme dosyaları, ekranda hangi öğelerin bulunacağından sorumludur. Sabit veya değişken değerler belirten parametrelere sahip dizeler içerirler. Bu işaretleme dili, XML spesifikasyonuna göre yapılır. Bu nedenle, parametre bildirimi biçimi kesinlikle standardize edilmiştir.
Android için uygun bir uygulama oluşturmak için işaretleme hakkında biraz bilgi sahibi olmanız gerekir. Android Studio nazikçe basit bir dosya oluşturdu.
Ekran elemanları
Bu durumda işaretlemenin kök kabı RelativeLayout'tur, bu da içindeki tüm öğelerin nispeten yerleştirileceği anlamına gelir. İki parametre içerir - android: layout_width = "match_parent" ve android: layout_height = "match_parent". Birincisi RelativeLayout kabının genişliği, ikincisi ise yüksekliği. Match_parent sabiti, her iki göstergenin üste karşılık gelmesi gerektiği ve bu nedenle öğenin tam ekranda genişleyeceği anlamına gelir.
Daha sonra, RelativeLayout'ta, bir TextView yerleştirilir ve normal bir etiketten başka bir şey değildir.
Özniteliği wrap_content olan, içeriğin etrafını ifade eden, bilinen layout_width ve layout_height parametrelerine sahiptir. Diğer bir deyişle, öğenin boyutları metin miktarına göre ayarlanır.
Aşağıdaki iki seçenek, öğenin içindeki metnin hizalanmasını gösterir.
Padding parametresi, etiketleri değer kaynak klasöründen girintili yapmak için dijital bir değer alır.
Bir yazıt için en önemli parametre, metin içeren bir satırdır. Doğrudan özniteliğe girilebilir, ancak buna sabit kod denir ve uygulamanın yerelleştirilmesini büyük ölçüde karmaşıklaştırabileceği için geçersiz kabul edilir. Görüntülenmesi gereken verilerin, yani metin dizgisinin de, değerler klasöründeki strings.xml dosyasından alınmasına dikkat edilmesi önemlidir.
İlk lansmanı
Android cihazın yerel emülatörü basit bir doğaüstü performans gerektirir. Uygulamayı çalıştırabilir veya Genymotion adlı alternatif bir analogu indirip yükleyebilirsiniz.
Android Studio kontrol panelindeki yeşil Çalıştır düğmesine basılarak uygulama başlatılır. Projenin montajı sırasında herhangi bir hata bulunmazsa, uygulama başlayacak ve dünyayı memnuniyetle karşılayacaktır.
bulgular
Artık bir mobil uygulamanın nasıl oluşturulacağı netleşti.
Android için programlama, iOS için biraz daha kolaydır. Bir geliştirici hesabının fiyatı Apple'ın fiyatından daha düşük. Gerekli tüm yazılımlar ücretsizdir ve birçok platformda çalışır. İOS için bir uygulama oluşturmadan önce, tıpkı Android'deki gibi, bir programlama dilinde uzmanlaşmanız gerekir. Platform hız kazanıyor, yeni sürümler piyasaya sürülüyor, bu nedenle mobil uygulamaların geliştirilmesi giderek daha önemli hale geliyor.