اپلیکیشن اندروید


#1

با سلام خدمت دوستان
قصد داشتم برای یکی از دوستانم یه اپلیکیشن آندروید درست کنم که بتونه محاسبات کسب و کارشو رو گوشی انجام بده .
یه اپلیکیشن ساده با یه صفحه اینترو اول و ۳ تا ورودی و ۵ تا خروجی که از محاسبه ورودی ها بدست میاد ، سریع ترین راهی که پیشنهاد میکنید برای اینکار چی هست ؟ خودم با kivy python تونستم درستش کنم ولی بیلد کردن برای خروجی apk تقریبا ۲ روزه وقتمو گرفته و هنوز موفق نشدم.

این رو به عنوان مثال یکی دیگه پیاده سازی کرده که من قصد دارم یه دستی روش بکشم کمی مرتب تر و شکیل تر بشه


#2

کلا سریعترین راه برای اندروید reactN یا Vue هست، اما کلا وقتی پروژه ای ۲ روز برای build زمان ببره احتمالا مشکل جای دیکست، مگر اینکه کل سیستم یک پروژه انترپرایز رو کمپایل کنی :face_with_thermometer:.
در نظر داشته باش که من از kivy استفاده نکردم


#3

اینکه دو روز زمان میبره مسلما غیر طبیعیه، ولی اگه تنظیمات درست نباشن، توی هربار بیلد، تمام sdk و ndk و… رو دانلود میکنه. این باعث میشه با اینترنت ایران، نصف روز زمان ببره :joy:

اپلیکیشنهایی که با python/kivy نوشته شدن رو دیدم، سرعتشون کم نیست!
البته خودم خیلی سعی کردم یه پروژه با کیوی بسازم ولی اصلا نتونستم apk بگیرم. همش به ورژن sdk و ndk و… گیر میده موقع بیلد کردن.


#4

واقعا زمان هدر میده ولی موفق شدم با کیوی‌ ادامه بدم و داره قشنگ پیش می‌ره ولی پشتیبانی نکردن از فارسی مجبورم کرده به جای هر تکستی که دارم یه فایل تصویری ترنسپرنت استفاده کنم که البته یه روشی برای reshape کردن حروف هست که روی دسکتاپ جواب میده ولی تو گوشی موفق نشدم اجرا کنم و در بیلد گرفتنم همینی که شما می فرمایید مشکل شده بود هر دفعه یه جا تایم اویت میشد به خاطر کیفیت بالای اینترنتم هست !!


#5

در مورد تمپلیت خود کیوی ام میتونم بگم سینتکس خیلی قشنگی داره واسه قالب بندی و قرار دادن عناصر .


#6

کی گفته از فارسی پشتیبانی نمیکنه؟:wink:
بچه به این خوبی!
این کد رو نگاه کنید.

from arabic_reshaper import reshape
from bidi.algorithm import get_display 

self.myapplication.text = get_display(reshape('روی دکمه‌ی ریفرش کلیک کنید.'))

کد کامل ننوشتم. خودتون میدونید دیگه این چیه و کجا باید نوشته بشه.

برای فایل .kv هم

#:import a arabic_reshaper.reshape
#:import f bidi.algorithm.get_display 

text: f(a('ریفرش'))

#7

رو گوشی نصب میکنم کرش می‌کنه دقیقا همینو امتحان کردم


#8

همینکه شما تا بیلد کردن apk پیش رفتید یعنی خیلی از من جلوترید :cry:


#9

نفرمایید من از ترس اول اومدم ببینم میشه بیلد کرد بعد تو جزئیات کیوی غرق شم :kiwi_fruit: :grin: ولی استفاده از پایتون خیلی فانه برای توسعه ⁦:v:️⁩


#10

و اینکه یه آموزش به زبان اسپانیایی هست که به زور از یوتوب پیدا کردم خیلی کمک کرد لینکشو یادم بمونه فردا اینجا ارسال میکنم


#11

Python Kivy - Como gerar um APK! - YouTube

به این اسم جستجو کنید


#12

چندان بد هم نشده ولی هنوز مونده تموم شه

چند روز بعد …

اداره دارد :smile:


#13

در مورد پردازش اینپوت های فایل کیوی در فایل main چطوری امکان محاسبه‌های مختلف بهتره ؟


#14

خیلی خوب بنظر میاد :hugs:


#15

درود در طراحی UI قسمت کدنویسیش چقدر انعطاف داره ؟ اون قسمتشم با پایتان هست ؟


#16

منظور از انعطاف رو متوجه نشدم ؟ ولی هر پروپرتی که در کتابخونه کیوی هست رو میشه خیلی ساده اضافه کم یا میکسین کرد


#17

با OpenGL ES 2.0 که embeded هست کار میکنه, یعنی هرجا OpenGL ES 2.0 وجود داشته مثل android.

https://developer.android.com/guide/topics/graphics/opengl


#18

انعطاف خیلی بالایی داره. ولی به درد هر چیزی نمیخوره. نمیشه نرم افزار با ظاهر native درست کرد! میشه نرم افزار با ظاهر کاستوم درست کرد!
یعنی خروجی کار مثل kde یا gnome یا نرم افزارهای android نمیشه. یه چیز کاملا متفاوت میشه.
این هم خوبه (۱۰۰٪ کاستوم) و هم بده (سختتر از اینه که چهارتا چیز از پیش تعریف شده رو صدا بزنیم)

ظاهر نرم افزارهایی که با kivy ساخته میشن، توی یه فایل با پسوند *.ky ذخیره میشه.
یه جور زبان اسکریپت نویسیه. مثل پایتون نیست ولی خیلی فضایی هم نیست.
یه نگاه به این صفحه بندازید.
مثلا به جای این:

from x.y import z as name
from os.path import isdir
import numpy as np

میگیم این:

#:import name x.y.z
#:import isdir os.path.isdir
#:import np numpy

البته بهتره اون لینک رو ببینید. بقیه‌ی کدهاش اینقدر شبیه نیست. ولی ساده و منطقیه.


#19

کیوی :heart_eyes: من تو نسخه قبل از 1 باهاش کار کردم … حسرت به دل موندم برا بیلد apk :sweat_smile: مثل اینکه با یک سری ورژن های دقیقی از NDK , SDK کار میکنه ک اونموقعا نت نداشتم تست کنم …
همونطور ک اقا پویا گفتن … برای ui کاستوم عالیه (یعنی عینن هرچیزی ک میسازید تو همه OSها به همین شکل خواهد بود) … و علاوه بر اپ crud … این امکان … کیوی رو برای بازی سازی فوق العاده میکنه . …

یه پروژه دیگه پایتونی برای اندروید هست ک بر پایه ui نیتیو هر پلتفرم کار میکنه ک از پروژه های pybee هست (به اسم toga) ک هنوز کار داره تا به مرحله پروداکشن ردی برسه(داکش خیلی ناقص و خلاصه هست و راه حل درستو حسابی برای ارتباط با gradle و sdk , ndk ننوشته) …

من یکم سرم خلوت شه میخام روی weex زمان بزارم : ) … چون vue.js بلدم … مثل اینکه خیلی سرعت پیشرفت عالی ای داره … و چند نمونه اپ خوب باهاش دولوپ شده … کیوی/پایتونم تو برناممه … (خلاصه با هرکدوم ک راحت تر و سریع تر بشه :slight_smile:)


#20

به نظرتون کیوی برای طراحی اپلیکیشن پیام رسان می‌تونه مناسب باشه ؟ توسعه لذت بخشی میتونی داشته باشه همین که کراس پلتفرم هست خودش به نظرم خیلی می‌تونه جلوتر ببره کارو