
اپاچی کوردوا
من برنامه نویس خوبی نیستم ( راستش بخوام بگم اصلاً برنامه نویس نیستم ) بخاطر همین معمولاً سعی میکنم با اسکریپت و کد ور برم تا با استرینگ و و متغیر و کانکارنسی و این حرفا . همون طور که میدونید زبان پیشفرض برنامه نویسی اندروید جاوا هستش البته به لطف NDK هم میشه از زبانهای c و ++c تو پروژه استفاده کرد ولی کیه که همچین زحمتی به خودش بده . به هر حال گوگل داره روی جایگزین کردن این زبان با golang فکر میکنه که البته فکر خوبی هم هستش البته من ترجیح میدادم ruby باشه ولی خب همیشه همه چیز اونجوری پیش نمیره که ما میخوایم . داشتم میگفتم که با توجه به علاقه بی حد و حصر به توسعه وب من بیشتر با پلتفرم های مختلف این قضیه کار میکنم یعنی وقتی پایتان کار میکنم معمولاً دور ور flask میچرخم چون ساده است . و اصلاً سمت django نمیرم . بخاطر همین تو توسعه اندروید هم ترجیح میدم بیشتر با خط فرمان و اسکریپت ور برم تا اینکه پشت Android Studio وقت طلف کنم .
یه مشکلی که اکثر زبانهای برنامه نویسی دارن این هستش که نمیشه بدون دستکاری کد منبع برنامه رو بین پلتفرم های مختلف جا به جا کرد . خب ابزار هایی به وجود اومدن که این کارو انجام بدن ولی تا حال حاضر به جز ++c استاندارد و golang من همچین قابلیت تو زبانهای دیگه ندیدم . خب راه حل چیه . یه برنامه ننویس مثل من ترجیح میده از cordova استفاده کنه که یه برنامه توسعه یافته توسط آپاچی هستش تا وب اپلیکیشن های مارو که با html و جاوا اسکریپت نوشتیم بویلد کنه . البته پروژه های جانبی مثل phonegap و ionic هم در کنارش توسعه پیدا میکنه که اون ها هم جالب هستن ولی باز از هسته cordova استفاده میکنن .
خب برای نصب cordova ما به چند چیز احتیاج داریم من فرض میزارم اینکه سیستم عامل شما لینوکس دبیان بیس هستش البته که میتونید همه این مراحل در توزیعهای دیگه هم اجرا کنید
در ابتدا کافیه nodejs و npm رو دریافت کنید
sudo apt-get install nodejs npm
سپس بر اساس مستندات کوردوا کافیه در ترمینال این دستور رو وارد کنیم تا اخرین نسخه دانلود بشه
npm install -g cordova
خب تا اینجای کار همه چیز به خوبی و خوشی انجام شده . قسمت بد ماجرا تحریم های ظالمانه گوگل علیه دولوپر های عزیزمون هستش . پس با یه تغییر ip که انجام میدین google sdk manager رو دریافت میکنید فقط به دلیل جلوگیری از ارور های بعدی لطفا اخرین نسخه android sdk platform tools و android sdk build tools بعلاوه android 22 و 23 رو دریافت کنید . به دلیل اینکه راه های زیادی برای دریافت sdk manager هست در این مورد زیاد توضیح نمیدم . فقط یادتون باشه همه چیز باید آپدیت باشه . بخاطر همین به یه اینترنت خوب نیاز دارید
بعد از نصب sdk manager و مشتقاتش حالا نیاز که اون رو به PATH سیستم بشناسونیم . برای من که از zsh استفاده میکنم کافیه در قسمت /home/
.bashrc
این رو قرار بدین کافیه تایپ کنید
nano /home/username shoma/.bashrc
و سپس این هارو به اخرش اضافه میکنیم
export PATH=$PATH:/home/<user>/Android/Sdk/tools
export PATH=$PATH:/home/<user>Android/Sdk/platform-tools
سپس کد source /home/
sudo apt-get install openjdk-8-jdk
لازم هستش که java رو هم به سیستم شناسونده بشه پس با دستور
sudo gedit /etc/environment
و قرار دادن این کد
JAVA_HOME="/usr/lib/jvm/java-8-openjdk-amd64"
که البته بازم بنا به معماری سیستم شما این ادرس میتونه متفاوت باشه . سپس کافیه کد source /etc/environment
رو وارد کنید تا شناسونده بشه
حالا اگه همه چیز خوب پیش رفته باشه باید با زدن همچین کد هایی برنامه سمپل hello کوردوا بویلد بشه
cordova create hello com.example.hello HelloWorld
cd hello
cordova platform add android
cordova build android
اگر که بویلد شد خوب و اگر نشد ارور ها شامل دوتا ارور عمده میشه ارور اول exit code 2 هست که به خاطر اپدیت و نصب نبودن sdk manager و android target 22 هستش . ارور exit code 8 زمانی به وجود میاد که در سیستم 64 بیتی مفسر سیستم 32 نباشه که با وارد کردن دستور زیر در ترمینال حل میشه
sudo apt-get install lib32stdc++6
sudo apt-get install lib32z1
به دلیل کند بودن امولاتور اندروید من استفاده از genymotion رو به شدت توصیه میکنم من عادت به نوشتن همچین متن های بلند نصب و توسعه ندارم . اگه سوالی داشتید میتونید از تویتر یا گیتهابم یا ایمیلم که توی قایل کانفیگ بلاگ هست اقدام کنید