آموزش برنامه نویسی اندروید - قسمت ۱۹: اجرای پروژه روی یک دستگاه واقعی
شنبه 28 دی 1392 11:02 AM
از نقاط ضعف یک ماشین مجازی می توان به صرف زمان نسبتاً طولانی برای ساخت آن برای اولین بار(این زمان بسته به سخت افزار کامپیوتر یا لپ تاپ می تواند متغیر باشد ولی معمولاً چیزی در حدود 3 الی 4 دقیقه به طول خواهد انجامید)، سرعت کمتر آن نسبت به یک دستگاه واقعی، عدم توانایی در استفاده از ویبره در ماشین مجازی، کیفیت کمتر صفحه نمایش آن نسبت به یک دستگاه واقعی و غیره اشاره نمود.
درست است که یک Emulator از دید نگارندۀ این آموزش دارای نقاط ضعف زیادی است اما برشمردن یک ویژگی مهم Emulator در ارتباط با یک دستگاه واقعی خالی از لطف نیست. به عبارت دیگر ما به عنوان یک توسعه دهنده اپلیکیشن موظف هستیم اپلیکیشنی طراحی کنیم روی اکثر دستگاه های موجود در دست کاربران در جامعه دارای ظاهری مناسب بوده و UI آن از یک دستگاه نسبت به دستگاه دیگر دارای حداقل تفاوت باشد.
برای این منظور دو رویکرد متفاوت را می توان اتخاذ نمود: اول اینکه به تعداد دستگاه های اندرویدی موجود در بازار از تلفن های همراه دو اینچی و چهار اینچی گرفته تا تبلت هایی در اندازه های متفاوت در اختیار داشته باشیم تا بتوانیم اپلیکیشن خود را روی تک تک آنها تست کنیم تا از ظاهر مناسب اپلیکیشن خود در دستگاه های متفاوت اطمینان حاصل کنیم.
رویکرد دوم این است که به تعداد دستگاه های موجود در بازار اقدام به ساخت ماشین های مجازی متفاوت کنیم و اپلیکیشن خود را روی آنها تست کنیم. اگرچه که باز هم با اتخاذ چنین رویکردی با محدودیت های آن مواجه خواهیم بود اما این در حالی است که این رویکرد نسبت به رویکرد اول عملی تر بوده و اجرای آن به مراتب راحت تر و کم هزینه تر می باشد(از این جهت راحت تر است که اگر فرض هم کنیم که اکثر دستگاه های موجود در بازار در اختیارمان باشد، نصب درایور تک تک آنها و همچنین نصب آن ها یکی پس از دیگری از طریق کابل USB کار دشواری به نظر می رسد. از سوی دیگر این رویکرد از این جهت کم هزینه تر است که اگر بخواهیم اپلیکیشن خود را روی دستگاه های واقعی تست کنیم، نیاز است تا چندین میلیون تومان صرف خرید دستگاه های واقعی کنیم).
به منظور تست کردن اپلیکیشن خود روی تلفن همراه سه سری تنظیمات می بایست انجام داد. اول آنکه نرم افزار Companion اتصال دستگاه به کامپیوتر را روی سیستم خود نصب کنیم. برخی دستگاه ها دارای یک دی وی دی نصب این نرم افزار هستند و نرم افزار برخی دیگر از دستگاه ها را می بایست از وب سایت شرکت سازنده دانلود کرد. متأسفانه از ارائه آموزش در این زمینه خودداری می کنیم چرا شرکت های مختلف دارای نرم افزارهای Companion متفاوتی هستند و ارائه آموزش برای کلیه برندهای امکان پذیر نیست.
اکنون تلفن همراه خود را از طریق کابل USB به کامپیوتر یا لپ تاپ خود متصل می کنیم. چنانچه هیچ مشکل غیر منتظره ای پیش نیاید، به محض اتصال دستگاه خود به کامپیوتر، محیط برنامه نویسی اکلیپس دستگاه ما را خواهد شناخت.
سری دوم تنظیمات مربوط به خود دستگاه اندرویدی است. برای این منظور اول همانند تصویر زیر دکمه Menu تلفن همراه خود را می زنیم:
سپس همانطور که در تصویر فوق نشان داده شده است دکمه Settings به معنی "تنظیمات" را زده و از میان گزینه های موجود در Settings روی گزینه Applications به معنی "اپلیکیشن ها" کلیک می کنیم:
پس از کلیک کردن روی گزینه Applications صفحه ای به صورت زیر خواهیم دید:
در این صفحه می بایست روی گزینه Development به معنی "توسعه" کلیک کرده و متعاقباً صفحه ای به صورت زیر خواهیم دید:
همانطور که در تصویر فوق مشاهده می شود گزینه USB debugging به معنی "مشکل یابی از طریق کابل "USB غیر فعال است. با فعال کردن این گزینه تلفن همراه ما برای تست کردن اپلیکیشن ها آماده شده است:
همانطور که در تصویر فوق توسط یک دایره قرمز رنگ نشان داده شده است، با فعال کردن گزینه USB debugging هشداری که داخل کادر مستطیلی قرمز رنگ نوشته شده است برای ما نمایان می شود. به طور خلاصه این هشدار حاکی از آن است که تلفن همراه این اخطار را به ما می دهد که USB debugging صرفاً برای اهداف توسعه اپلیکیشن بوده و از طریق این گزینه خواهیم توانست که داده ها را از روی کامپیوتر روی دستگاه خود کپی کرده و سپس اپلیکیشن ها را روی دستگاه خود نصب نماییم. با این توضیحات به نظر می رسد که این دقیقاً همان چیزی است که ما برای توسعه اپلیکیشن نیاز داریم از اینرو همانطور که در تصویر فوق با یک فلش قرمز رنگ نشان داده شده است دکمه OK را کلیک می کنیم.
حال می توانیم به صفحه اصلی تلفن همراه خود بازگردیم و اقدام به اجرای سومین سری از تنظیمات کنیم.
برای اینکه متوجه شویم که محیط برنامه نویسی اکلیپس تلفن همراه ما را شناخته است، همانند تصویر زیر عمل می کنیم:
همانطور که در تصویر فوق مشخص است، از بخش منوی اصلی اکلیپس وارد گزینه Window سپس گزینه Show View شده و در نهایت روی گزینه Devices به معنی "دستگاه ها" کلیک می کنیم. پس از کلیک کردن روی این گزینه پنجره ای به شکل زیر مشاهده خواهد شد:
در پنجره فوق گزینه شماره یک نشانگر Emulator یی است که در مرحله قبل ساختیم و کلمه Online نشانگر این مسئله است که این دستگاه مجازی فعال است. سپس مقابل آن نامی که در حین ساخت برای دستگاه مجازی تحت عنوان AVD-2.1-Version انتخاب کردیم نشان داده شده است.
گزینه دوم مربوط به دستگاه تلفنی است که به کامپیوتر متصل شده است. همانطور که ملاحظه می شود به جای نشان دادن نام دستگاه تلفن یک id برای آن در نظر گرفته شده است. مجدداً کلمه Online را می بینیم که نشان می دهد که دستگاه تلفن هم به سیستم متصل است. در نهایت عدد 2.3.4 را می بینیم که نشانگر نسخه سیستم عامل اندروید نصب شده روی دستگاه تلفن بنده است(این عدد بسته به نوع تلفن همراه می تواند متغیر باشد).
حال همانطور که در قسمت آموزشی گذشته توضیح داده شد، برای اجرای اپلیکیشن خود می بایست روی دکمه Run به معنی "اجرا کردن" به صورت زیر کلیک کنیم:
در این مرحله از آنجا که اکلیپس بر سر دو راهی قرار خواهد گرفت که پروژه را روی کدام گزینه اجرا کند(دستگاه مجازی یا دستگاه واقعی)، بنابراین پنجره زیر نمایش داده خواهد شد:
همانطور که ملاحظه می شود در این پنجره هر دو دستگاه نمایش داده شده اند. با کلیک کردن روی گزینه مورد نظر و آبی شدن آن به اکلیپس می گوییم که قصد داریم پروژه را روی گزینه انتخاب شده اجرا کنیم. حال می توانیم دکمه OK را کلیک کنیم. اما پیش از کلیک کردن، گزینه Use same device for future launches که در تصویر فوق با یک بیضی قرمز رنگ مشخص شده است به معنی "از این دستگاه برای اجراهای آینده استفاده کن" را می توانیم تیک بزنیم تا اکلیپس به طور خودکار دستگاه مد نظر ما را در اجراهای آینده مد نظر قرار داده و دیگر مجبور نباشیم این پنجره را تنظیم کنیم.
اکنون به محض زدن دکمه OK همانطور که در تصویر زیر مشاهده می شود پروژه ابتدا روی دستگاه موبایل بنده نصب شده سپس به صورت خودکار اجرا می گردد:
پس از اجرای اپلیکیشن چنانچه به لیست اپلیکیشن های گوشی خود مراجعه کنیم، خواهیم دید که اپلیکیشنی با نام My First Android Project با لوگوی معروف گوگل در کنار دیگر اپلیکیشن ها قرار گرفته است.
در آموزش بیستم با نحوه شخصی سازی محیط برنامه نویسی اکلیپس به منظور در دسترس قرار دادن کلیه ابزارهای مورد نیاز برای توسعه اندروید خواهیم پرداخت.
مدیر تالار های: