الاندرويد ستديو الان اصبح البيئة الوحيدة والمسؤولة عن برمجة تطبيقات اندرويد وهو مبني على IntelliJ IDEA وقد قامت قوقل بالاعلان عنه في عام 2013 بدلا عن Eclipse وقد مر بمراحل بيتا عديدة حتى تم اطلاقه رسميا سابقا وايضا تم ايقاف الدعم عن Eclipse . وياتي الاندرويد الايتديو يمميزات عديدة لبرمجة التطبيقات ابتداءا من تطبيقات الجوال والتابلت والتيفي والساعات وانتهاءا بـAuto الخاص بالسيارات وهو بيئة مجهزة بالكامل لكل مايحتاج له مطوروا الاندرويد . لذلك سنتكلم في هذه المقالة عن اهم plugins التي قد تساعدنا كمبرمجين للقيام ببعض الاعمال .
-
H.A.X.M
نعلم ان محاكي الاندرويد بطيئ جدا ولكن مع معالجات انتل وهذه الاضافة سيمكننا من تشغيل المحاكي بسرعة ملحوظة جدا وذلك لاعتماد انتل على استخدام Intel VT وهي تقنية التمثيل الوهمي لقطع الهاردوير . قائمة المعالجات المدعومة بهذه التقنية هنا لتثبيت الاضافة اتبع الخطوات التالية : بعد التحميل سنحتاج الى التثبيت وذلك عن طريق الذهاب الى مسار SDK في جهازك sdk\extras\intel نجد مجلد باسم Hardware_Accelerated_Execution_Manager نقوم بفتحه ونثبت برنامج IntelHAXM_1.1.4 كاي برنامج اخر . افتح المحاكي ولاحظ الفرق الان ?
-
Genymotion:
محاكي اندرويد يعتمد على VirtualBox للانظمة الوهمية يقدم العديد من المميزات والخدمات وايضا بامكانك اضافة خدمات قوقل وتثبيت جميع التطبيقات الموجودة في Play Store مع امكانية قطع الاتصال وايضا تغيير الموقع وتسجيل الشاشة فيديو والتحكم به عن طريق الجوال وايضا واهم ميزة هو توافر جميع انظمة الاندرويد الرسمية وتخصيص حجم الهاتف او التابلت . ويمكنك تحميل المحاكي من هنا
-
Android ButterKnife Zelezny:
ButterKnife مكتبة اندرويد تقوم بكتابة Views بشكل مبسط وسريع وسهل للقراءة والفهم وايضا يمكننا استخدامة لعمليات listeners مثال لطريقة كتابة احد Views :
@Bind(R.id.textview) TextView textview;
اما بالسنبة لعمليات listeners ستكون بهذ الشكل ” مثال لاعطاء Button امر Click “
@OnClick(R.id.submit) public void submit() { // TODO submit data to server... }
بالنسبة للاضافة فانها تقوم باضافة جميع Views في التصميم التي داخل Layout سواء اكانت Activity او Fragment او Adapter كما سنشاهد الان في الفيديو التالي :
-
Generate selectors :
اضافة جميلة ورائعة اذا اردنا انشاء خلفية للـButton تدعم تصميم الماتيريال وايضا تدعم الانظمة القديمة كل ماعليك فقط هو تحديد الالوان والضغط على موافق وسيقوم بانشاء الملفات دون تدخل .
الخطوات :
– نحدد الالوان للتطبيق في ملف style.xml :<color name="colorPrimary">#519FE5</color> <color name="colorPrimaryDark">#388AC6</color> <color name="colorAccent">#FFFFFF</color>
– نقوم بفتح Plugin وننشئ الملفات :
– نقوم بتحديد اسم الملف وايضا تحديد الالوان :
– سيتم توليد ملفات Selector للـButton وايضا دعم ripple للماتيريال ديزاين .
– لاستخدام Selector كما في الكود التالي :<android.support.v7.widget.AppCompatButton android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_margin="16dp" android:background="@drawable/<GENERATED_DRAWABLE>" android:gravity="center" android:minWidth="100dp" android:text="pressed" />
– النتيجة :
Lollipop > Lollipop <=
-
Android File Grouping Plugin:
اذا لديك الكثير من ملفات التصميم في Layout فانت حتما تحتاج الى هذه الاضافة التي تتيح لك تقسم Layout الى عدة اقسم دون نقل الملفات .
لو كان لديك في مجلد Layout هذه الملفاتres/ layout/ chat_activity.xml chat_toolbar.xml chat_item.xml chat_share_view.xml home_activity.xml home_toolbar.xml home_fragment_sign_in.xml home_fragment_sign_up.xml
بعد استخدام الاضافة ستكون بهذا الشكل :
res/ layout/ chat/ chat_activity.xml chat_toolbar.xml chat_item.xml chat_share_view.xml home/ home_activity.xml home_toolbar.xml home_fragment_sign_in.xml home_fragment_sign_up.xml
نلاحظ انه قد تم تقسيم الملفات ووضعها في مجموعات منظمة لسهولة الوصول اليها .
-
GsonFormat :
اذا كنت تستخدم Json في تطبيقك واردت انشاء Class JsonModel فانك ستحتاج لكتابة الكثير من الاسطر وخاصة اذا كان لديك اكثر من Level داخل الـJson ولكن مع هذه الاضافة ستحتاج فقط الى نسخ object واحد فقط من Json وستقوم الاضافة بتوليد الدوال المطلوبة والمتغيرات بصورة سريعة جدا كما سنلاحظ في الصورة المتحركة القادمة :
اذا لديك اي اضافة قد تكون مفيدة شاركنا بها في التعليقات .