إنشاء تطبيق اندرويد باستخدام لغة البرمجة بايثون: شرح تفصيلي لبناء تطبيقك


يعد تطوير تطبيقات Android أحد أسرع القدرات التقنية تطورًا هذه الأيام، وشهرته آخذة في الارتفاع. يتم جلب العديد من هياكل البرمجة الجديدة إلى الساحة؛ وقد أدرك البعض حكمهم بشكل استباقي. نظرًا لأن كل لغة أعلنت عن وجودها في مجال ما، فكيف يمكن نسيان بايثون؟

يمكن لأي شركة تطوير تطبيقات للهواتف المحمولة نشر لغات برمجة مختلفة مثل C، وCorona، وPython، وC++، وJavaScript، وC#، وLua، وJava، وHTML5، وKotlin، وما إلى ذلك. يحتوي المحيط الحيوي لـ Python على تشكيلة واسعة من المكتبات التي تتضمن عمليًا جميع الصفات المفيدة لأي شركة تطوير تطبيقات الهاتف المحمول. قوي. يعد تطوير تطبيقات Python منهجية مشهورة بشكل استثنائي نظرًا لقدرتها على التكيف وقابليتها المباشرة.

سوف يلقي هذا المقطع نظرة على كيفية تأطير أساسيات تعزيز تطبيق Android، والرجوع إلى الوثائق، وكيفية المضي قدمًا في مهامك.

KIVY

تم تطوير تطبيقات Android في Python أصبح ممكنًا ببساطة بفضل مكتبة Python مفتوحة المصدر لإنشاء حلول متعددة الاستخدامات وبرنامج تطبيق آخر متعدد جهات الاتصال يسمى Kivy. تم إطلاقه الأساسي في عام 2011، وتم إطلاقه بشكل ثابت في عام 2019! يدعم Kivy تطوير تطبيقات Android، ويمكن أن تعمل تطبيقاته في Linux وWindows وiOS وOS X وAndroid. إنه مكتوب بلغة Cython وPython، ويمكنك الاستعانة بمطوري Android بشكل أساسي من روسيا، مركزهم الأساسي.

المتطلبات والاعداد

لبدء المشروع، يجب عليك توظيف مطور Android لديه معرفة كاملة بالمتطلبات الأساسية التالية؛

-الكائنات والفئات في Python لغة البرمجة بايثون . يجب أن يكون لدى المبرمج Kivy مثبت مسبقًا المكتبة في نظامهم قبل البدء في المشروع. بعد ذلك، يمكنك استخدام الأمر التالي لتثبيت Kivy على النظام:

pip install kivy 

إحضار المكتبة

أنشئ مجلدًا باسم "تطبيق الآلة الحاسبة". هو اسم الحل داخل هذا المجلد، قم بإنشاء ملف جديد وقم بتسميته "main.py". اتبع المقتطف أدناه للمتابعة.

from kivy.app import App

from kivy.uix.gridlayout import GridLayout

from kivy.uix.label import Label

from kivy.uix.image import Image

from kivy.uix.button import Button

from kivy.uix.text input import TextInput

ترميز عناصر واجهة المستخدم للتطبيق

الآن، أنشئ كائن نافذة للحل البرمجي عن طريق بدء فصل "حاسبة العمر". تحقق من المقتطف أدناه.

class AgeCalculator(App):

def build(self):

        self.window = GridLayout()
 

return self.window

بعد ذلك، اجعل الوظيفة تعمل بنفس سرعة تنفيذ البرنامج للملف.

if __name__  == "__main__": 
AgeCalculator().run()

يجب على شركة تطوير تطبيقات Android تصميم البرنامج لـ المزيد من تفاعل المستخدم الفطري والواجهة. للتوضيح، ابدأ بترتيب الأعمدة الموجودة في إطار الشبكة. سيتم إجراء المزيد من التصميم بمجرد أن تعمل ميزات التطبيق بشكل جيد.

self.window.cols = 1

جهز الشعار باستخدام الكود أدناه. احفظ شعار التطبيق مرة أخرى في الدليل المشابه للملف "main.py" ليسهل على التطبيق اكتشافه.

self.window.add_widget(Image(source("logo_image.png"))) 

نظرًا لأن التطبيق يعتمد على حساب عمر المستخدم، يتعين علينا تقديم إدخال حيث يمكن للمستخدم إدراج تاريخ ميلاده. ويمكن تصنيفها على أنها "أدخل تاريخ ميلادك".

self.ageRequest = Label(text = "Enter your year of birth...")

self.window.add_widget(self.ageRequest)

self.date = TextInput(multiline=False)

self.window.add_widget(self.date)

تجميع بيانات المستخدم

لنقم الآن بإنشاء تطبيق لإرفاق معلومات المستخدم؛ هذا هو تاريخ الميلاد.

self.date = TextInput()

إرفاق الوظيفة بالزر لحساب العمر

لحساب العمر، يجب ربط وظيفة رد الاتصال بالزر لذلك أنه عند الضغط على زر "حساب العمر"، يُطلب من ميزة "الحصول على العمر" تقييم عمر المستخدم وفقًا لبيانات سنة الميلاد المقدمة.

self.button = Button(text = "Calculate Age")

self.button.bind(on_press = self.getAge)

self.window.add_widget(self.button)

تحديد وظيفة العمر

تطرح هذه الميزة سنة الميلاد المدخلة من السنة الحالية. يتم نشر مقطع بايثون "وقت البيانات" لاستخلاص جزء السنة منه.

علاوة على ذلك، يتم تحويل سنة إدخال المستخدم إلى عدد صحيح لحساب نوع البيانات القياسي. يتم تقديم النتيجة على شكل سلسلة ويتم تقديمها للمستخدم.

def getAge(self, event):

    today = datetime.today().year 

    dob = self.date.text

    age = int(today) - int(dob) 

    self.ageRequest.text = "You are " + str(int(age)) + " years old"

تصميم التطبيق الواجهة

ارسم الخطوط الحدودية في أسفل التطبيق و الجانبين. إحدى المزايا الإضافية للوحدة هي أن التطبيق ينمو، وبالتالي يستجيب لحجم الشاشة ويقدم مخططًا تفصيليًا لحجم الشاشة المضغوط.

تحقق من مكونات التطبيق في المقتطف التالي.

def build(self):

    self.window = GridLayout()

    self.window.cols = 1

    self.window.size_hint = (0.6, 0.7)

    self.window.pos_hint = {"center_x": 0.5, "center_y": 0.5 }

    self.window.add_widget(Image(source("logo_image.png")))

    self.ageRequest = Label(

        text = "Enter your date of birth...", 

        font_size = 50,

        color = "#ffffff",

        bold = True

    )

    self.window.add_widget(self.ageRequest)


   
    self.date = TextInput(

        multiline=False,

        padding_y = (30, 30),

        size_hint = (1, 0.7),

        font_size = 30

    )

    self.window.add_widget(self.date)



    self.button = Button(

        text = "Calculate Age",

        size_hint = (0.5, 0.5),

        bold = True,

        font_size = 30

    )

    self.button.bind(on_press = self.getAge)

    self.window.add_widget(self.button)


return self.window 

تشغيل التطبيق

افتح الجهاز وتصفح فهرس المهام لتشغيل التطبيق. وبعد ذلك، قم بتمرير الطلب أدناه في كتالوج المشروع.

python main.py

إرسال تعليق

أحدث أقدم