Kivy ile Android Uygulama Geliştirme - Python (1) / Turkish Tutorial

in utopian-io •  7 years ago  (edited)

Kivy

Pythonda bildiğiniz gibi bir platforma program yazma imkanımız mevcut bu platformlardan bir taneside android cihazlar. Python ile android cihazlara uygulama geliştirmek kivy programı ile mevcut. tabiki bir çok program var ama ben size daha kullanışlı olan kivy programını öğreteceğim. bu seri hem pythonla alakalı hemde kivyle alakalı çok şey öğreneceğiz. ilk olarak bu yazıda gerekli programları yüklemek ve ilk uygulamamızı oluşturarak giriş yapmaktır. ayrıca Kivy ile sadece android değil ios ve windows phone'a da uygulama geliştirmeniz mümkün. bu seri de sadece anroid için uygulama geliştirecez.

Neler Öğreneceğiz
-kivy kurulumu
-kivy ile android geliştirme
-buildozer kurulumu

Gereksinim

  • Python
  • Kivy
  • Buildozer

Kurulum

ilk program olarak python'ı bilgisayarımıza kurmak için https://www.python.org/downloads/ sitesine gidip işletim sistemimize uygun ve en güncel python'ı indire bilirsiniz.

ikinci programımız olan kivy'i kurmak için terminal penceresini açarak aşağıdaki satırları sırayla yazmanız gerekmekte.

python -m pip install --upgrade pip wheel setuptools

python -m pip install docutils pygments pypiwin32 kivy.deps.sdl2 kivy.deps.glew kivy.deps.gstreamer --extra-index-url https://kivy.org/downloads/packages/simple/

python -m pip install kivy

sorun bir şekilde kurulması gerekmektedir. aksi bir durum gerçekleşirse yorum ile belirtiniz.

son programımız olan buildozer içinde aynı şekilde terminal ekranını açmamız gerekiyor.

# pip aracılığıyla buildozeri indiriyoruz. 
sudo pip install buildozer
#güncel sürümü indiriyoruz.
sudo pip install https://github.com/kivy/buildozer/archive/master.zip
#git clone, ile buildozer i kopyalıyoruz.
git clone https://github.com/kivy/buildozer
cd buildozer
python setup.py build
sudo pip install -e .

bu aşamaya kadar sorunsuz geldiyseniz harika artık kurmamız gereken bir program kalmadı.
Zorluk Seviyesi
-Temel

Öğretici İçeriği
Artık kendi projemizi oluşturacak gereksinimlere ulaştık bundan sonraki adımlar bizim kodlar ile aramızdaki bilgi ile alakalı ilk olarak sade ve anlaşılır olan tek sayfalık bir uygulama geliştirilem. first.py adlı bir dosya oluşturun ve aşağıda kodları dosyaya kopyalayın. kodları inceleyin ve daha sonra ben açıklayacağım.

from kivy.app import App
from kivy.uix.label import Label
class FirstApp(App):
    def build(self):
    return Label(text='Utopian bir steemit projesidir.')
FirstApp().run()

Ekran Görüntüsü
firstapp.png

ilk olarak dosyamızın içine App ve Label kütüphanelerini dosyanın içine import ediyoruz. bir sınıf oluşturup adını FirstApp olarak belirledim çünkü bizim ilk uygulamamız çalıştırmamızı istediğimiz kodları içine yazacağız. build adında bir fonksiyon oluşturduk ve return (dönüş) methoduna ise label methodunu ve içine label methodunun yazı ifadesini belirledik ve oluşturduğumuz sınıfı run() ile çalıştırdık. Tebrikler ilk android uygulamamız bitti !

.kv kullanarak uygulama geliştirmek.
.kv uzantılı dosya kivy'e ait ve kivynin açtığı bir dosya uzantı türüdür. .py uzantılı dosyanın içine dahil edilip o dosya üzerinden çalıştırılması gerçekleşiyor. Anlaya bilmeniz için basit bir örnek vereyim, py uzantılı dosya HTML dosyalı uzantı olarak kodun çalıştırıldığı yer kv uzantılı dosya ise CSS görünümün değiştirildiği yer olarak anlatabilirim. örnek bir uygulama da yaparsak daha rahat pekiştireceksiniz.

main.py

from kivy.app import App
from kivy.uix.screenmanager import ScreenManager, Screen
from kivy.lang import Builder
Builder.load_file('main.kv')
class second(Screen):
    pass
sm = ScreenManager()
sm.add_widget(second(name='second'))
class SecondApp(App):
    def build(self):
    return sm 
if __name__ == '__main__':
    SecondApp().run()

main.kv

<second>:
    Label:
    font_size: '48sp'
    text: 'Merhaba Utopian.'
    pos: 0,180
    Label:
    font_size: '24sp'
    text: 'Kivy ile Android Uygulama Geliştirme'
    pos: 0,100
    Button:
    text: 'tıkla'
    size_hint: None, None
    size: '200sp', '100'
    pos: 300,100

Ekran Görüntüsü
secondapp.png

kodları incelediğimiz zaman main.py deki kodlarda önce ihtiyacımız olan kütüphaneleri projeye import ediyoruz. main.kv dosyasını da Builder.load_file methodu ile projeye import ettik. Second adında sınıfımızı oluşturduk çünkü main.kv deki second adlı bölümü buradan çağıracağız. projemize sonradan kütüphane olarak dahil ettiğimiz ScreenManager fonksiyonu ile main.kv deki istediğimiz kısımı çekiyoruz. biz second kısmını çekiyoruz. ve daha sonra ki kodlar da çalıştırma işleminin sağlanması için gereken kodlar. ilk projede açıklamıştım dönüp bakabilirsiniz.

düzenlemelerin ve eklemelerin gerçekleştiği main.kv dosyasındaki satırları incelediğimiz de second adında bir sınıf oluşturuyoruz ve içine label methodu ile text ini belirleyerek yazılar yazıyoruz. methodun içinden fontun boyutu ve pozisyonunu da belirliyoruz. fontlardaki sp karakterlerini px karakterlerine benzete biliriz. button methodunda ise aynı şekilde text ile butonun üstündeki yazıyı belirliyoruz pozisyonunu ve boyutunu belirliyoruz.

Bu kivy ile android uygulama geliştirmenin ilk dersi idi. diğer derslerde de aynı şekilde detaylı bir anlatım biçimiyle sizlere elimden geldiği kadar en ince ayrıntısına kadar öğretip farklı uygulamalarla pratik yaptıracağım.



Posted on Utopian.io - Rewarding Open Source Contributors

Authors get paid when people like you upvote their post.
If you enjoyed what you read here, create your account today and start earning FREE STEEM!
Sort Order:  

Your contribution cannot be approved because it does not follow the Utopian Rules.

  • Your repository isn't valid
  • Your contribution is not in any way standard.
  • I hope to see some improvement in your next contribution in this category. Thank you.
    You can contact us on Discord.
    [utopian-moderator]