Kivy ile Android Uygulama Geliştirme

Kivy sayesinde Python ile uygulama geliştirebilirsiniz. Uygulamayı geliştirmeye başlamadan önce Kivy framework'u yüklü olmalı:

pip install kivy
***[pip kurulumu için https://packages.msys2.org/package/mingw-w64-x86_64-python-pip] MinGW üzerinden Python kullandığım için msys2 package manager üzerinden kurulumu yaptım. Kurulum yöntemi Python'u cihazınıza nasıl yüklediğinize bağlı olarak değişiklik gösterebilir.***


Kivy Kurulum Hatası Aldıysanız Okuyun

Muhtemelen kivy kurarken hata alacaksınız. Benim gibi 😑. Uzun, kırmızı renkli satırlar.. 15 dakikalık bir inceleme sonucunda aynı şekilde farklı Python framework'leri kurmak istediğim zaman da başarısız sonuçlar elde edildiğini farkettim. Yani anlayacağınız Python'un kendisi tam olarak sizden istenildiği şekilde bilgisayarınızda kurulu değil. Böyle gecekondu gibi kurulmuş bilgisayarınıza. Tam ve sağlıklı bir kurulum için Download Python | Python.org verilen bağlantıyı kullanın. Msys2 üzerinden cihazınıza Python falan yüklemeyin. Msys2 iyidir tabi orası ayrı. Bu notu ekliyorum çünkü bu yüzden hata alan kişilere yardımcı olabilir.

Küçük Bir Uygulama Testi

Oluşturduğum bir klasörde iki ayrı python dosyası oluşturdum. Bu dosyaların ismi main.py ve testapp.py. Böyle yapma sebebim alışkanlıktan dolayı, siz tüm kod işlemlerini direkt main.py dosyası üzerinden de yapabilirsiniz:
testapp.py
from kivy.app import App
from kivy.uix.label import Label

class TestApp(App):
    def build(self):
        return Label(text="Pop şarkısı")
main.py
from kivy.app import App
from kivy.uix.label import Label

class TestApp(App):
    def build(self):
        return Label(text="Pop şarkısı")
CMD üzerinden proje dizininde olmak üzere ".\main.py" komutunu çalıştırdım ve şu şekilde bir sonuç elde ettim:
kivy ilk uygulama

Farkedileceği üzere uygulama tasarım kısmı yine kod tarafında yapılmaktadır. Bu ileri seviye bir uygulama için dezavantajdır. Çünkü kodu iyice karmaşıklaştırır. Bu yüzden tasarım tarafı .kv uzantılı dosyalar üzerinden yönetilecektir:

testapp.kv adında bir dosya oluşturulur aynı dizin içinde:
#:kivy 2.1

<boxLayout>:
    orientation: "vertical"

    Label:
        text: "pop"

    Button:
        text: "tıkla"
Sonrasında testapp.py dosyasında aşağıdaki değişiklik yapılır:
from kivy.app import App
from kivy.uix.label import Label
from kivy.uix.boxlayout import BoxLayout

class TestApp(App):
    def build(self):
        return BoxLayout()
Şimdi çalıştıralım:
kivy tasarım
Burada ciddi bir uygulama yapmayacağım zaten internet üzerinde bir sürü kaynak bu konu hakkında mevcut. Şimdi sırada bu uygulamayı Android üzerinde çalıştırmak. Uygulamanın derlemesi için de Linux gerekli. Sıkıntı yok, Windows Subsystem var. Microsoft Store'dan Ubuntu Subsystem'i kurmanız yeter. Bu sayede cross-platform uygulamaları rahatlık geliştirebiliyoruz. Buradan itibaren şu bağlantıdaki anlatıma göre ilerleyeceğim https://buildozer.readthedocs.io/en/latest/installation.html. Subsystem'i açın ve sırasıyla rehberde olan talimatları yerine getirin. Ancak ben daha farklı bir yol izleyeceğim, Google Colab denilen bir platform kullanacağım. Bu platform size ücretsiz olarak bir nevi bilgisayar donanımı tahsil ediyor. Yani Windows bilgisayarınız üzerinden internet tarayıcısı aracılığıyla Python kodlarınızı compile edebiliyorsunuz. Google hesabınız açık olacak şekilde https://colab.research.google.com/notebooks/intro.ipynb bu adrese girin:
  • Dosya -> Yeni Not Defteri'ne tıklayın. Python kodlarını çalıştıracağımız yeni bir sayfa açılacak.
  • Açılan sayfada bağlantı sağlandıktan sonra bize yer açılmış oldu. Artık kodlarımızı bu tahsil edilen geçici alana yükleyebiliriz. Sol tarafta yer alan Dosyalar sekmesini açın ve dosya yükleme butonuna tıklayın. Dosya seçim ekranı açıldıktan sonra gerekli python kod dosyalarını tek tek seçin ve yükleyin.
  • Daha sonrasında kod satırı yer alan kısımdan aşağıdaki komutları sırasıyla çalıştırın:
komut1- !pip install buildozer

komut2- !pip install cython==0.29.19

komut3- !sudo apt-get install -y \
    python3-pip \
    build-essential \
    git \
    python3 \
    python3-dev \
    ffmpeg \
    libsdl2-dev \
    libsdl2-image-dev \
    libsdl2-mixer-dev \
    libsdl2-ttf-dev \
    libportmidi-dev \
    libswscale-dev \
    libavformat-dev \
    libavcodec-dev \
    zlib1g-dev

komut4- !sudo apt-get install -y \
    libgstreamer1.0 \
    gstreamer1.0-plugins-base \
    gstreamer1.0-plugins-good

komut5- !sudo apt-get install build-essential libsqlite3-dev sqlite3 bzip2 libbz2-dev zlib1g-dev libssl-dev openssl libgdbm-dev libgdbm-compat-dev liblzma-dev libreadline-dev libncursesw5-dev libffi-dev uuid-dev libffi6

komut6- !sudo apt-get install libffi-dev

komut7- !buildozer init

komut8- !buildozer -v android debug

komut9- !buildozer android clean
Ünlemle başlayan her komutu sırasıyla Kod satırına ekleyin ve üçgen butonuna tıklayın. Her işlem bitiminde yeni komut çalıştırmak için +Kod butonuna tıklayın ve sonraki komutu yapıştırıp, üçgen butona tıklayarak çalıştırın. Yeni komutu çalıştırmadan önce önceki komutun çalışmasının bittiğinden emin olun. Tüm komutların çalışması bittiğinde .apk dosyası oluşturulmuş olacaktır. Ancak bu işlem çok uzun sürebilir yani en azından 30 dakikanızı alabilir. Ayrıca Google Colab kullanımının belli bir sınırlaması var öğrendiğim kadarıyla ancak benim işimi gördü.

Hiç yorum yok:

Yorum Gönder