ایجاد ,فایل ,کاربرد ,پروژه ,اندروید ,زیرشاخه ,hello world ,برنامه hello ,صورت خودکار ,انتخاب کنید ,هنگام ایجاد ,برنامه hello world ,name android intent ,نوشتن برنامه he

برنامه "Hello World" برای همه برنامه نویسانی که برای اولین بار شروع به یادگیری زبان جدیدی می کنند، مثالی آشنا و پرکاربرد است. از این رو ما هم کار خود را با نوشتن برنامه Hello World آغاز می کنیم.

 

مطالبی که هم اکنون در حال خواندن آن هستید ترکیبی از مطالب چند کتاب و سایت رسمی پروژه اندروید است و در آن سعی شده است به کلیه سوالاتی که در هنگام نوشتن برنامه Hello World برای یک برنامه نویس مطرح می شوند، پاسخ مناسب داده شود.

پیش فرض های این راهنما:

 

  •  از Eclipse استفاده شود.
  •  ADT plugin برای Eclipse نصب باشد. (به زودی مطلبی در این مورد تهیه می شود)
  •  Android SDK نصب شده باشد. (به زودی مطلبی در این مورد تهیه می شود)

۱. نصب پلاتفرم

برای اجرا برنامه Hello World باید حداقل یک پلاتفرم اندروید در محیط SDK نصب شده باشد. برای نصب پلاتفرم در Eclipse مراحل زیر را  انجام دهید:

  • برنامه Android SDK Manager را اجرا کنید.
  • اگر به اینترنت متصل باشید و IP ئی غیر از IP ایران بتوانید به سیستم تان بدهید (پروکسی یا VPN)، باید صفحه ایی مانند تصویر زیر را ببینید که در آن لیست پلاتفرم های موجود و وضعیت آنها نشان داده شده است. از لیست موجود، پلاتفرم (های) مورد نظر خود را انتخاب، سپس بر روی دکمه Install ... packages کلیک کنید.

Android SDK Manager

 

 

اگر نمی دانید که بهترین و پرکاربردترین پلاتفرم اندروید برای نصب کدام نسخه آن است، نمودار زیر می تواند به شما در انتخاب پلاتفرم کمک کند. نمودار، نشان دهنده تعداد دستگاه هایی است که در یک بازه 14 روزه (تا 1 دسامبر 2011)  به سایت اندروید مارکت متصل شده اند. بنابراین می تواند مرجع مناسبی برای انتخاب نسخه پلاتفرم باشد. به جرات می توان گفت که حدود ۹۷ درصد دستگاههای اندرویدی دنیا در حال حاضر از پلاتفرم نسخه ۲ استفاده می کنند اما باید در نظر داشت که اعداد این نمودار با توجه به گسترش روزافزون دستگاه های اندرویدی جدید به سرعت در حال تغییر است
 
 Android Platform
 

۲. ایجاد AVD

برای اجرا و مشاهده برنامه Hello World، شما نیاز به شبیه ساز اندروید دارید. اما شبیه ساز به تنهایی کافی نیست و شما باید به آن بفهمانید که چه پلاتفرمی از اندروید و با چه مشخصات سخت افزاری را شبیه سازی کند. این کار با ایجاد Android Virtual Device یا AVD که نسخه پلاتفرم و تنظیمات دستگاهی که شبیه ساز باید شبیه سازی کند را مشخص می کند، انجام می شود.

برای ایجاد AVD باید مراحل زیر را انجام دهید.

  • در Eclipse، گزینه Window>AVD Manager را انتخاب کنید و سپس روی دکمه New کلیک کنید.
    AVD
  •  ابتدا یک نام برای آن انتخاب کنید، به عنوان مثال m_avd.
  • برای مقدار target، پلاتفرمی که در مرحله قبل نصب کرده اید را انتخاب کنید.
  • بر روی کلید create AVD کلیک کنید تا AVD ایجاد شود.
 

۳. ایجاد پروژه

برای ایجاد اولین پروژه خود، به ترتیب منوهای File>New>Project>Android>Android Project را انتخاب و سپس مطابق تصاویر زیر مقادیر فیلدهای خواسته شده را مشخص کنید.

New Project 1

New Project 2

New Project 3

 

 

در نهایت با کلیک بر روی دکمه Finish، پروژه HelloWorld ایجاد می شود.

توضیحات مربوط فیلدها

به دلیل اینکه در هنگام ایجاد پروژه، باید مقادیر فیلدهای مختلفی مشخص شود، ممکن است برای کسی که برای اولین بار این کار را انجام می دهد، مشخص کردن این مقادیر کمی سخت به نظر برسد. از این رو سعی می شود در ادامه توضیح خلاصه ایی در مورد هر کدام از فیلدها آورده شود.

Project Name

 

مقدار این فیلد، تعیین کننده نام پروژه در Eclipse و همچنین نام زیرشاخه ایی که فایل های پروژه در آن ذخیره می شوند، است.

Build Target

این فیلد، مشخص کننده نسخه SDK ئی است که شما برای ایجاد کاربرد از آن استفاده می کنید. برای مثال، اگر شما Android 2.1 را انتخاب می کنید، کاربرد شما با کتابخانه پلاتفرم Android 2.1 کامپایل می شود. مقداری که در این فیلد مشخص می کنید، لزوماً نباید با مقدار Target در هنگام ایجاد AVD یکسان باشد، اما نباید نسخه ایی جدیدتر از آن هم باشد. نکته مهمی که باید به آن توجه کرد این است که کاربردهای اندروید Forward-compatible هستند، یعنی کاربردهایی که با پلاتفرم های قدیمی تر نوشته شده اند حتماً بر روی پلاتفرم های جدید هم اجرا می شوند.

Application Name

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

Package Name

مقدار این فیلد مشخص کننده nampspace ئی است که همه کدهای شما به عنوان زیرمجموعه آن قرار می گیرند.

نام package، باید بین همه package هائی که بر روی سیستم اندروید نصب می شوند یکتا باشد، به همین خاطر برای اطمینان از منحصر به فرد بودن این نام، بهتر است که از نامی مشابه نام سایت ها (domain-style) برای نام گذاری استفاده کنید. به عنوان مثال، معکوس نام وب سایت شرکت تان به همراه نام کاربردتان می تواند نام مناسبی باشد. مانند net.sepanta.android.Helloworld.

Create Activity

مقدار این فیلد تعیین کننده نام کلاسی است که به صورت پیش فرض هنگام ایجاد پروژه تولید می شود و زیرکلاسی از کلاس Activity است. همانطور که می بینید در کنار این فیلد، checkbox ئی وجود دارد که ایجاد این کلاس را اختیاری می کند، اما تقریباً همه کاربردهای اندروید حداقل از یک activity تشکیل شده اند، پس بهتر است که اجازه دهید این کلاس ایجاد شود.

Min SDK Version

این فیلد مشخص کننده پائین ترین نسخه ایی است که کاربرد شما بر روی آن اجرا می شود. مقدار این فیلد باید با مقدار Build Target برابر باشد.

دیگر فیلدها: checkbox ئی که برای "Use default location" وجود دارد، به شما اجازه می دهد که محل ذخیره سازی فایل های پروژه خود را تغییر دهید.

حال، اولین پروژه اندروید شما آماده است و باید ساختاری مشابه تصویر زیر در Package Explorer ببینید.

 

 

 

Package Explorer

شاید وقتی برای اولین بار ساختار ایجاد شده را می بینید کمی گیچ کننده به نظر برسد، اما برای اینکه با نقش هر یک از فایل ها و مسیرهای ایجاد شده بیشتر آشنا بشوید در ادامه به بررسی آنها می پردازیم.

ساختار ایجاد شده ساختاری قدرتمند است، اما اگر شما ندانید که فایل ها و زیرشاخه های ایجاد شده به چه منظوری ایجاد شده اند، ممکن است کدهای خود را در جایی قراردهید که نباید قراردهید. بعضی از این فایل های ایجاد شده نیاز به تغییر توسط برنامه نویس دارند و بعضی از آنها خیر.

فایل AndroidManifest.xml

AndroidManifest.xml فایلی است که تنظیمات کلی پروژه شما در آن قراردارد. اگر شما یک برنامه نویس ASP.NET باشید می توانید این فایل را ترکیب فایل های web.config و Global.asax تصور کنید. در این فایل باید Activityها، Services، BroadcastReceivers، ContetProvider و سطوح دسترسی کاربرد اندروید تعریف شوند. برای مثال اگر کاربرد نیاز به دسترسی به شبکه دارد باید در این فایل تعریف شود. یک AndroidManifest.xml استاندارد باید حاوی اطلاعات ذیل باشد.

AndroidManifest.xml

 

ویژگی package، بسته پایه برای پروژه ایجاد شده را تعریف می کند. مقدار این ویژگی باید در کل android market یکتا باشد و اندروید مارکت تنها اجازه ایجاد یک کاربرد با نام package خاص را می دهد. بنابراین، یک عادت خوب این است که از معکوس نام domain به عنوان نام package استفاده کنید تا از تلاقی اسم بسته کاربردتان با کاربردهای سایر برنامه نویسان جلوگیری شود.

android:versionName و android:versionCode بیانگر نسخه کاربرد هستند. versionName چیزی است که کاربر می بیند و هر رشته ایی از کاراکترها می تواند باشد. versionCode باید یک عدد صحیح باشد و اندروید مارکت با استفاده از تغییرات این عدد تشخیص می دهد که آیا کاربرد شما به روزرسانی شده است یا خیر؟ و به دستگاه هایی که کاربرد شما را نصب کرده اند پیغام به روزرسانی را نشان می دهد. مقدار اولیه versionCode معمولا 1 است و با توجه به تغییراتی که اعمال می شوند این عدد افزایش می یابد.

 تگ "activity" مشخص کننده Activity های کاربرد است و به ازای هر Activity ئی که به کاربردتان اضافه می شود، یک تگ جدید برای آن نیز ایجاد می شود. در مثال فوق این مقدار نشان دهنده کلاس "net.sepanta.android.HelloWorld" است. یک intent filter برای این کلاس ثبت شده است که مقدار مشخص شده در تگ action،android:name="android.intent.action.MAIN"، نشان دهنده این است که هر زمان کاربرد شروع به کار کرد آن Activity هم شروع به اجرا کند. مقدار تگcategory android:name="android.intent.category.LAUNCHER" باعث می شود که کاربرد شما به شاخه application بر روی دستگاه اندروید اضافه شود.

فایل project.properties

این فایل حاوی تنظیمات پروژه تان است و به صورت خودکار هنگام ایجاد پروژه ایجاد می شود. این فایل برای revision control استفاده می شود.

زیرشاخه ها

در شاخه اصلی پروژه ایجاد شده، زیر شاخه های متعددی وجود دارند. مهمترین آنها عبارتند از  src ،gen ،assests، bin و res که هر کدام از آنها برای منظورهای مختلفی تعریف شده اند. این زیرشاخه ها هر کدام نقش جدایی ناپذیری در نحوه عمکرد کاربرد شما دارند.

زیرشاخه src

این زیرشاخه حاوی کل کدهای پروژه تان است. هنگامی که برای اولین بار پروژه تان ایجاد می شود، این زیرشاخه حاوی فایل activity.java است (در این پروژه  =HelloWorld.java).

زیرشاخه gen و فایل R.java

زیرشاخه gen در پروژه اندروید، حاوی مقادیر تولیده شده است. R.java کلاسی است که حاوی ارجاع ها (references) به منابع تعریف شده در زیرشاخه res است. این منابع می توانند مقادیر، منوها،layout ، آیکونها، عکس ها و انیمیشن باشد.

اگر شما یک منبع جدید ایجاد کنید ارجاع یا reference مطابق با آن به صورت خودکار در فایل R.java ایجاد می شود. ارجاع ها، مقادیر عددی استاتیکی هستند که سیستم اندروید متدهایی را برای دسترسی به منابع مطابق با آن ارجاع ها را فراهم می کند. برای مثال، برای دسترسی به یک متغیر رشته ایی با شناسه ارجاع R.string.yourstr از متد getString(R.string.yourstr)x استفاده می شود. مدیریت و نگهداری فایل R.java به عهده Eclipse است و نیازی به تغییر دستی مقادیر آن نیست.

R.java

 

 

 

زیرشاخه assets

این زیرشاخه، برای نگهداری فایل های raw  استفاده می شود. فایل هایی که در این زیرشاخه وجود دارند می توانند فایل های صوتی برای streaming و فایل های انمیشین باشند. فایل های موجود در این زیرشاخه هیچ ID ئی در فایل R.java تولید نمی کنند و شما برای دسترسی به آنها باید مسیر فایل را مشخص کنید.

زیرشاخه bin

در این زیرشاخه فایل نهایی .apk و سایر منابع کامپایل شده ذخیره می شوند.

زیرشاخه res

این زیرشاخه، جایی است که منابع پروژه شما در آن نگهداری می شوند و به کاربرد شما متصل می شود. هنگامی که شما یک پروژه اندروید ایجاد می کنید، res حاوی سه زیر شاخه drawable,layout و values است. زیر شاخه های drawable و layout  به ترتیب برای نگهداری تصاویر و چیدمان صفحه رابط کاربری استفاده می شوند. در حالی که زیر شاخه values، فایل های حاوی رشته های سراسری (global string) را نگهداری می کند.

زیر شاخه drawable حاوی فایل های تصویری است که کاربرد شما می تواند از آنها استفاده کند. البته اگر دقت کنید می بینید که به جای زیرشاخه  drawable، سه زیرشاخه drawable-hdpi،drwable-mdpi و drawable-ldpi وجود دارند. در این زیرشاخه ها سه نسخه از یک عکس با رزولوشن های مختلف قرار می گیرد که نام زیرشاخه ها به ترتیب نشان دهنده عکس های با رزولوشن بالا، متوسط و پائین هستند و اندروید به صورت خودکار و با توجه به شرایط بهترین رزولوشن را انتخاب می کند.

زیرشاخه layout حاوی یک فایل XML به نام main.xml است که کاربرد هنگام ایجاد رابط کاربری به آن ارجاع می کند. یک نمونه از فایل main.xml در زیر نشان داده شده است.

main.xml

 

 

 

۴. ایجاد رابط کاربری برای پروژه Hello World

بعد از ایجاد پروژه، در زیرشاخه src یک فایل جاوا به نام HelloWorldActivity.java به وجود می آید که حاوی یک زیرکلاس از کلاس Activity است. کد این فایل را بدون هرگونه تغییری در زیر می بینید.

HelloWorld activity

حال بر روی فایل ایجاد شده تغییراتی را ایجاد می کنیم. که در زیر این تغییرات را به صورت پر رنگ می بینید.

HelloWorld activity 2

 

کدهای اضافه شده فوق یک TextView با متن "Hello World" ایجاد می کنند.

 ۵.  اجرا

برای اجرا کاربرد ایجاد شده

  • از منوی Run گزینه Run را انتخاب کنید
  • از پنجره بازشده گزینه Android Application را انتخاب کنید.

پلاگین Eclipse به صورت خودکار برای پروژه شما تنظیمات اجرا (run configuration) جدیدی را ایجاد می کند، سپس شبیه ساز اندروید را اجرا می کند. بسته به محیط اجرا، شبیه ساز ممکن است چندین دقیقه طول بکشد که کاملاً بارگذاری شود، به همین دلیل لطفاً صبور باشید. هنگامی که شبیه ساز بارگذاری شد، پلاگین Eclipse کاربرد شما را نصب می کند و Activity پیش فرض را نمایش می دهد.

Run Hello World

تبریک می گویم شما اولین کاربرد اندرویدی خود را با موفقیت ایجاد کردید. به نظر من از این به بعد میزان پیشرفت شما به همتتان بستگی دارد. اگر می خواهید به یک برنامه نویس حرفه ایی اندروید تبدیل شوید، پیشنهاد می کنم یک پروژه نسبتاً بزرگ برای خود تعریف و سعی کنید آن را پیاده سازی کنید.

منبع اصلی مطلب : فروشگاه خدمات کامپیوتری اهورا
برچسب ها : ایجاد ,فایل ,کاربرد ,پروژه ,اندروید ,زیرشاخه ,hello world ,برنامه hello ,صورت خودکار ,انتخاب کنید ,هنگام ایجاد ,برنامه hello world ,name android intent ,نوشتن برنامه he
اشتراک گذاری: این صفحه را به اشتراک بگذارید

سایت : برنامه Hello World اندروید