این روزها توسعه دهندگان زیادی روی ایجاد اپلیکیشن موبایل یا وب کار می کنند. درپایتون پکیج هایی مانند Kivy، PyQt وجود دارد که میتوانید از آنها برای ایجاد برنامههای کاربردی موبایل استفاده کنید. ما در این مقاله به بررسی برنامه نویسی اندروید با پایتون با پکیج Kivy می پردازیم .پیش نیاز کاربا kivy مسلط بودن به پایتون است . پس اگر به پایتون مسلط نیستید ابتدا روی یادگیری پایتون تمرکز کنید .
Kivy اولین بار در اوایل سال 2011 منتشر شد. این فریمورک چند پلتفرمی پایتون را می توان در ویندوز، مک، لینوکس و رزبری پای اجرا کرد. می توانید از این کتابخانه برای ایجاد نرم افزارهای رایگان و تجاری استفاده کنید.
هنگامی که یک برنامه با Kivy ایجاد می کنید، یک رابط کاربری طبیعی یا NUI ایجاد می کنید. ایده پشت یک رابط کاربری طبیعی این است که کاربر به راحتی می تواند نحوه استفاده از نرم افزار شما را بدون هیچ دستورالعملی یاد بگیرد. ما در این مقاله به بررسی برنامه نویسی اندروید با پایتون با Kivy می پردازیم.
نصب Kivy
توصیه می شود Kivy را در یک محیط مجازی پایتون نصب کنید. می توانید از کتابخانه داخلی venv پایتون یا بسته virtualenv استفاده کنید. دراینجا نحوه ایجاد یک محیط مجازی پایتون آمده است:
python3 -m venv my_kivy_project
این فایل اجرایی پایتون 3 شما را در پوشه ای به نام my_kivy_project کپی می کند و چند زیرپوشه دیگر را به آن دایرکتوری اضافه می کند. برای استفاده از محیط مجازی که ایجاد کردید ، باید آن را فعال کنید. حا باید kivy را نصب کنید :
python -m pip install kivy
کار با ویجت های Kivy
ویجت یک کنترل روی صفحه است که کاربر با آن تعامل خواهد داشت. تمام ابزارهای رابط کاربری گرافیکی با مجموعه ای از ویجت ها ارائه می شوند. برخی از ویجتهای رایجی که ممکن است استفاده کرده باشید عبارتند از دکمهها، جعبههای ترکیبی و برگهها و غیره.
اجرای یک برنامه
برای اینکه ببینید کیوی چگونه کار می کند، به برنامه ی زیر نگاه کنید:
در این حالت، یک ویجت Label ایجاد می کنید و متن، size_hint و pos_hint آن را ارسال می کنید. size_hint به Kivy اندازه هایی را می گوید که هنگام ایجاد ویجت باید از آنها استفاده کند که دو عدد می گیرد:
اولین عدد x است و به عرض کنترل اشاره دارد.
عدد دوم y است و به ارتفاع کنترل اشاره دارد.
هر دوی این اعداد می توانند بین 0 و 1 باشند. مقدار پیش فرض برای هر دو 1 است. pos_hint در کد بالا، به Kivy میگوید که ویجت را روی محورهای x و y متمرکز کند.
نمایش یک عکس
Kivy چند ویجت مختلف مرتبط با تصویر دارد. می توانید از Image برای بارگیری تصاویر از هارد دیسک خود یا از AsyncImage برای بارگذاری تصویر از URL استفاده کنید. به مثال زیر توجه کنید :
در این کد Image را از زیر بسته kivy.uix.image وارد می کنید. کلاس Image پارامترهای مختلفی را می گیرد، اما یکی از پارامترهایی که باید از آن استفاده کنید source است. source به Kivy می گوید که آدرس تصویر چیست و کدام تصویر را بارگذاری کند. بقیه کدها همان چیزی است که در مثال قبلی مشاهده کردید.
چیدمان ویجت
در Kivy، از لایه ها برای تقسیم بندی صفحه استفاده می کنیم. انواع مختلفی از لایه ها وجود دارد که می توانید از آنها استفاده کنید. اینجا برخی از رایج ترین آنها آورده شده است:
اینجا، شما BoxLayout را از kivy.uix.boxlayout وارد می کنید. سپس فهرستی از رنگ ها را ایجاد می کنید که لیستی از رنگ های قرمز-آبی-سبز (RGB) هستند. در نهایت، شما روی محدوده 5 حلقه می زنید و برای هر تکرار یک دکمه btn ایجاد می کنید. برای اینکه کارها کمی سرگرم کننده تر شوند، background_color دکمه را روی یک رنگ تصادفی تنظیم می کنید. سپس دکمه را با layout.add_widget(btn) به طرح خود اضافه کنید.
بسته بندی برنامه خود برای اندروید
اکنون که کد برنامه خود را تکمیل کرده اید، می توانید آن را با دیگران به اشتراک بگذارید. یکی از راه های عالی برای انجام این کار این است که کد خود را به برنامه ای تبدیل کنید که می تواند بر روی تلفن اندرویدی شما اجرا شود. برای انجام این کار، ابتدا باید بسته ای به نام buildozer را نصب کنید:
pip install buildozer
سپس، یک پوشه جدید ایجاد کنید و در ترمینال خود به آن پوشه برویدو دستور زیر را اجرا کنید:
buildozer init
با این کار یک فایل buildozer.spec ایجاد می شود که از آن برای پیکربندی اپ خود استفاده خواهید کرد. برای این مثال، می توانید چند خط اول فایل مشخصات را به صورت زیر ویرایش کنید:
# نام اپلیکیشن خود را بنویسید
title = myapp
# نام پکیج
package.name = myapp
# نام domain
package.domain = myapp.org
در این مرحله، تقریباً آماده ساختن برنامه خود حال باید فایل اصلی اپ خود را در پوشه جدیدی که ایجاد کرده بودید کپی کنید و نام آن را به main.py تغییر دهید. سپس باید دستور زیر را اجرا کنید :
buildozer -v android debug
زمان ساخت اپ
مرحله ساخت اپ زمان زیادی می برد! بسته به سخت افزار شما، ممکن است زمان زیادی طول بکشد، بنابراین با خیال راحت یک فنجان قهوه بنوشید و منتظر بمانید . buildozer تمام چیزهای مورد نیاز خود را در طول فرآیند ساخت از Android SDK دانلود می کند. اگر همه چیز طبق برنامه پیش برود، فایلی به نام چیزی شبیه myapp-0.1-debug.apk در پوشه bin خود خواهید داشت.
گام بعدی این است که گوشی اندرویدی خود را به رایانه متصل کرده و فایل apk را در آن کپی کنید. و روی فایل apk کلیک کنید. اندروید از شما می پرسد که آیا می خواهید برنامه را نصب کنید؟ از آنجایی که برنامه از خارج از Google Play دانلود شده است، ممکن است هشداری ببینید، اما همچنان می توانید آن را نصب کنید.
سخن پایانی
برای برنامه نویسی اندروید با پایتون kivy یک فریمورک رابط کاربری گرافیکی واقعا جالب است که می توانید از آن استفاده کنید. در این آموزش، اصول اولیه Kivy از جمله نحوه اضافه کردن ویجت ها، اتصال رویدادها، چیدمان چندین ویجت و استفاده از زبان KV را آموختید. و یاد گرفتید که چگونه آن را در سیستم عامل اندروید توزیع کنید!