آموزش سریع Android

اندروید به معنای مَرد، انسان، شبه آدم یا رُبات (آدم آهنی) یک سیستم عامل موبایل است که گوگل برای اسمارت فونها و تبلتها و هم اکنون برای تلویزیونها عرضه مینماید و با همکاری دهها شرکت بر روی دستگاههای مبتنی بر اندروید قرار میدهد.اندروید بر پایه هسته لینوکس ساخته شدهاست و بیشترین استفاده را در بین سیستم عاملهای موبایل دارد.
نرمافزارهای جانبی اندرویدی با استفاده از زبان جاوا نوشته میشوند و برای ارتباط با لایههای زیرین سیستم عامل میتوانند از کتابخانههای جاوایی اندروید استفاده کنند. بخش رابط کاربری سیستم عامل اندروید با زبان جاوا نوشته شدهاست و بسیاری از برنامههای اندروید هم با جاوا نوشته شدهاند. اما این سیستم عامل، Java Virtual Machineندارد. برای اجرای برنامههای جاوایی روی این سیستم عامل، کدهای جاوا به کدهای Dalvik تبدیل میشوند و سپس روی Dalvik vitrual machine اجرا میشوند. دالویک یک ماشین مجازی جاوایی است که برای سیستم عامل اندروید بهینه شدهاست تا همRAMو همCPUو هم باتری کمتری مصرف کند. برنامههای جاوایی معمولی هم که روی گوشیهای دیگر اجرا میشوند با استفاده از نرمافزارهای شبیهساز ماشین مجازی جاوا مانند j2ME MIDP Runner روی این سیستم عامل قابل اجرا هستند.
رابط کاربری اندروید

واحد سازندهی اصلی واسط کاربری یک شی View است که از کلاس View ایجاد شده است و یک ناحیه مسطتیل شکل را بر روی صفحه اشغال می کند و مسئول ترسیم و ادارهی رویداد های مربوطه است. View کلاس پایه برای ویجت هاست، که برای ایجاد مولفه های واسط کاربری تعاملی مانند دکمه ها، فیلدهای متنی و غیره به کار می روند.

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

آموزش مدیریت رویدادها در اندروید : Android Event Handling

اگر شما از قبل اطلاعاتی در مورد Cascading Style Sheet (CSS) در طراحی وب داشته باشید، Android Style نیز بسیار شبیه به آن عمل می کند. تعدادی ویژگی مربوط به هر ویجت اندرویدی وجود دارد که شما می توانید برای تغییر ظاهر اپلیکیشن خود آنها را تنظیم کنید. یک سبک (style ) می تواند مواردی مانند ارتفاع، نحوه قرار گیری صفحات، رنگ فونت، اندازه فونت، رنگ پس زمینه و بسیاری از موارد دیگر را مشخص کند.

اندروید لیست بزرگی از ویجت های از پیش ساخته شده مانند Button، TextView، EditText، ListView، CheckBox، RadioButton، Gallery، Spinner، AutoCompleteTextView و غیره را ارائه می کند،که شما میتوانید مستقیما در اپلیکیشن اندرویدی خود از آنها استفاده کنید. ولی ممکن است
مفاهیم پیشرفته اندروید


برای اعلام پیام های مهم به کاربر نیاز است، که از روش های ماندگار تری استفاده شود. یک اعلان (notification) پیغامی است که میتواند به عنوان یک آیکن در بالای صفحه دستگاه که ما آن را نوار اعلان یا نوار وضعیت می نامیم، نمایش داده شود.

آموزش سرویسهای مبتنی بر موقعیت در اندروید Android Location Based Services

آموزش ارسال ایمیل در اندروید : Android Sending Email


آموزش برقراری تماس در اندروید : Android Phone Calls


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

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

انیمیشن در اندروید از راه های بسیاری امکان پذیر می باشد. در این فصل ما در مورد یک راه آسان و به کرات استفاده شده در ساخت انیمیشن بحث خواهیم کرد که انیمیشن tweened نامیده می شود.

اندروید دارای یک میکروفن داخلی می باشد که از طریق آن می توانید صدا را گرفته و ذخیره کنید و یا در تلفن خود اجرا کنید. راههای زیادی برای انجام این کار وجود دارد ما متداول ترین آن از طریق گروه MediaRecorder می باشد.

شما می توانید به راحتی صدا یا تصویر تماس گیرنده را کنترل کنید، به عنوان مثال حالت سکوت، ویبره،صدا و غیره. اندروید گروه AndroidManager را ارائه می دهد که دسترسی به این کنترل ها را مشخص می کند. برای اینکه از گروه Android Manager استفاده کنید، ابتدا باید یک آبجکت از این گروه با فراخوانی روش getSystemService()، ایجاد کنید.

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

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

از میان راه های متفاوت، بلوتوث یکی از راه های ارسال و دریافت داده به دستگاه دیگر می باشد. سکوی اندروید از چارچوب بلوتوث حمایت می کند زیرا که به دستگاه اجازه می دهد تا به طور وایرلس داده را با دستگاه های بلوتوثی دیگر جابه جا کند.

دو راه برای استفاده از دوربین در برنامه ی شما وجود داردکه آن دو راه عبارتند از 1) استفاده از برنامه ی دوربین اندروید موجود در برنامه ی خود .

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

در اندروید می توانید برای رشته ها در برنامه فونتهای خود را تعریف کنید. فقط لازم است فونتها را از اینترنت دانلود کنید و سپس آن را در فولدر assets/fonts قرار دهید.

اندروید به شما اجازه می دهد تا داده ی برنامه ی خود را برای ذخیره ی انبوه بک آپ کنید تا یک نقطه ی بازگشت برای داده ی برنامه و تنظیمات ایجاد کنید. شما می توانید فقط داده ی برنامه را بک آپ کنید. برای دسترسی به داده ی برنامه ها لازم است تلفن خود را روت (root) کنید.

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

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

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

اندروید انواع خاصی از لمس صفحه را ارائه می دهد که عبارتند از: فشار دادن(pinch)، ضربه ی دوتایی (double tap)، فهرست ها (scrolls)، فشار طولانی مدت (long presses)، flinch

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

اندروید به شما اجازه می دهد تا تصاویر را با افکت های مختلف روی آنها به کار برید. شما به راحتی می توانید تکنیک های مختلف تصاویر را برای افزودن افکت های خاص روی تصاویر به کار ببرید. این افکت ها می توانند روشن شدن، تار شدن و تبدیل به grayscle و غیره باشند.

گاهی اوقات نمی خواهید که تصویری به طور ناگهانی روی صفحه ظاهر شود، بلکه ترجیح می دهید به جای تصویری که تغییر می کند، انیمیشن به کار ببرید. این عمل در اندروید با ImageSwitcher پشتیبانی می شود.

اندروید حافظه های متفاوتی برای ذخیره سازی داده های مربوط به برنامه ها ارائه می دهد. این حافظه ها عبارتند از: preference های به اشتراک گذاته شده، حافظه ی داخلی، حافظه ی خارجی، حافظه ی QLite، و ذخیره سازی از طریق اتصال به شبکه.

سکوی اندروید دارای یک موتور JET با محتوای صوتی در برنامه های شما می باشد. اندروید گروه JetPlayer را برای به کار بردن این برنامه ارائه می دهد.

JSON مخفف JavaScript Object Notation می باشد، که حالتی از مباله ی مستقل داده و بهترین انتخاب برای XML می باشد. این فصل توضیح می دهد که چگونه یک فایل JSON را تجزیه کرده و اطلاغات لازم را از آن استخراج کنیم.


شما ميتوانيد پيشرفت يك فعاليت اندرويدي را بوسيله بارگذاري نوار پیشروی نشان دهيد. نوار پیشروی به دو شكل پديدار مي شود Loadingbar و Loadingspinner. در اين فصل در مورد spinner بحث خواهيم كرد.

يك برنامه اندرويدی مي تواند بر روی وسايل گوناگون در مناطق متفاوت نصب گردد به منظور جذاب تر كردن محيط اندرويدی خود برنامه كاربردی شما بايد شامل متن و شماره ها و فايل ها و غيره شود... با روش های تعبيه شده برای مكان هايی كه برنامه ی كاربردی شما در آنجا استفاده خواهد شد.

يك برنامه Login براي صحت بخشيدن به اصلاعات شما براي ورود به برخي از برنامه هاي خاص است.شما ممكن است آن را در هنگام ورود به فيس بوك و تويتر و غيره ديده باشيد.

اندرويد مديا پلير را فراهم كرده تا به سرويس های اين گروه همچون خواندن فايل های صوتی و تصويری و غيره دسترسي داشته باشد.به منظور استفاده از مديا پلير ما بايد روش استاتيك را به آن نسبت دهيم.در اين روش دوباره به مديا پلير باز می گردد. كه جزييات در زير آمده است

حالت مالتي تاچ زماني كه بيش از يك انگشت صفحه را لمس كنند اتفاق مي افتد.اندرويد اجازه انتخاب اين حركات رو ميدهد.

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

اندروید به برنامه های شما اجاره می دهد تا به اینترنت یا هر شبکه ی عمومی دیگر متصل شده و به شما اجازه می دهد عملکردهای شبکه انجام دهید.

NFC مخفف Near Field Communication می باشد، همانطور که از اسم پیداست این برنامه یک مکانیزم ارتباط وایرلس بین دو دستگاه سازگارارائه می دهد. NFC یک تکنولوژی وایرلس با دامنه ی کوتاه می باشد که دارای دامنه ی 4 سانتی متر یا کمتر برای اشتراک داده بین دو دستگاه می باشد.

در این فصل قد داریم توضیح دهیم که چطور می توانید PHP و MYSQL را در برنامه ی اندروید خود جا دهید. زمانی که شما یک وب سرور دارید و تمایل دارید به داده ی آن روی برنامه ی اندروید خود دسترسی داشته باشید، این برنامه بسیار مفید خواهد بود.

ساده ترین راه برای ساختن دوره ی پیشروی ایجاد گروهی به نام ProgressDialog می باشد. Loadinbar هم می تواند ازطریق همین گروه ساخته شود. تنها تفاوت منطقی بین bar و دوره این است که اولی وقتی استفاده می شود که شما زمان کل انتظار برای فعالیت خاص را می دانید، در حالیکه دومی زمانی استفاده می شود که شما زمان این انتظار را نمی دانید.

نوارهای پیشروی برای نشان دادن پیشروی یک فعالیت به کار می روند. وقتی که شما در حال بارگذاری یا دانلود کردن چیزی از اینترنت هستید، بهتر است که پیشروی بارگذاری یا دانلود به یوزر نمایش داده شود.

اطلاعیه پیامی است که می توانید به یوزر بیرون UI برنامه ی خود نمایش دهید. شما می توانید در اندروید اطلاعیه های مربوط به خود را به راحتی ایجاد کنید.

در این فصل در مورد RenderScript اندروید مطلب خواهیم آموخت. معمولا برنامه های اندروید طوری طراحی شده اند که تا جایی که ممکن است منابع کمتری استفاده کنند. اما برخی برنامه ها مانند بازی های سه بعدی، پردازش هایی با سطح بالا نیاز دارند.

RSS مخفف Really Simple Syndication ( به معنای متحدسازی واقعا آسان) می باشد. RSS راهیساده برایبه اشتراک گذاشتن آپدیت ها و محتوای وب سایت شما با یوزرهای شما می باشد، طوریکه یوزرها مجبور نباشند برای هر آپدیتی، روزانه سایت شما را مشاهده کنند.

Screen cast اندروید یک برنامه ی اندروید می باشد برای کنترل دستگاه اندروید. اگر تلفن شما در حالت روت نباشد، می توانید فعالیت موبایل خود را در کامپیوتر مشاهده کنید. اما اگر در حالت روت باشد می توانید از هر دو راه ارتباط برقرار کنید. همچنین اگر تلفن شما در حالت روت باشد، می توانید آن را به وسیله ی صفحه کلید و ماوس کنترل کنید.

برای دانلود و نصب آخرین ورژن android APIs از اینترنت و توسعه ی ابزار، اندروید به ما SDK manager را ارائه می دهد. SDK manager اندروید APIs و ابزار و سکوهای مختلف را در بسته های مختلفی که می توانید دانلود کنید، از هم مجزا می کند.

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
















فصل پیش رو کاربرد API location اندروید را برای شما تشریح می کند . بر اساس Eclipse 3.7, java 1.6 و Android 4.0 (ice cream sandwich) نوشته شده است .
مبانی اندروید

این خودآموز برنامه نویسی مقدماتی اندروید را به شما آموزش میدهد و شما را با برخی از مفاهیم پیشرفتهی مربوط به توسعه اپلیکیشن های اندروید (برنامه های کاربردی اندروید) آشنا میکند.

اندروید یک سیستم عامل متن باز و مبتنی بر لینوکس برای دستگاه های موبایل مانند گوشی های هوشمند و کامپیوترهای تبلت است. اندروید به وسیلهی Open Handset Alliance توسعه پیدا کرد و به وسیلهی گوگل و سایر شرکت ها هدایت شد.

قطعا از دانستن این موضوع خوشحال خواهید شد که شما می توانید توسعه اپلیکیشن اندرویدی خود را بر روی هر یک از سیستم عامل های زیر آغاز کنید.

سیستم عامل اندروید به صورت پشته ای از مولفه های نرم افزاری است که همانطور که در شکل زیر در دیاگرام معماری نشان داده شده است، به طور کلی به پنچ قسمت و چهار لایه ی اصلی تقسیم میشود.

مولفه های اپلیکیشن واحدهای سازنده ی اصلی اپلیکیشن های اندروید هستند. این مولفه ها دارای ارتباط ضعیفی با فایل مانیفست اپلیکیشن AndroidManifest.xml دارند که هر مولفه ی برنامه و نحوه تعامل مولفه ها با هم را توصیف میکند.

اولین گام ایجاد یک اپلیکیشن اندرویدی ساده با استفاده از Eclipse IDE است. گزینه های File -> New -> Project را دنبال کنید و نهایتا ویزارد Android New Application را از لیست ویزاردها انتخاب کنید. اکنون نام اپلیکیشن خود را HelloWorld بگذارید. این کار را با استفاده از پنجره ویزارد به صورت زیر انجام ده ید:

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

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

یک سرویس مولفه ای است که برای انجام عملیات طولانی مدت در پس زمینه، بدون نیاز به تعامل با کاربر، اجرا میشود. برای مثال، یک سرویس می تواند در پس زمینه موسیقی اجرا کند در حالیکه کاربر در اپلیکیشن متفاوتی قرار دارد ، و یا می تواند بدون قطع کردن تعامل کاربر با یک فعالیت، داده ها را از شبکه واکشی کنند. یک سرویس اساسا می تواند دو حالت داشته باشد:

آموزش دریافت کنندگان پیام های متشرشده در android

یک مولفه تامین کننده ی محتوا (content providers)، در صورت درخواست، داده های یک اپلیکیشن را به سایر اپلیکیشن ها ارائه میدهد. این درخواست ها به وسیله ی متدهایی از کلاس ContentResolver اداره میشوند. یک تامین کننده ی محتوا می تواند از روش های مختلفی برای ذخیره ی داده های خود استفاده کند و داده می تواند در یک پایگاه داده، در فایل ها یا حتی بر روی یک شبکه ذخیره شود.

یک قطعه (Fragment) بخشی از واسط کاربری یک اپلیکیشن و یا رفتاری است که شما میتوانید آن را در یک فعالیت قرار دهید. این مولفه امکان طراحی پیمانه ای[1] بیشتر فعالیت ها را فراهم میکند. می توان گفت که یک قطعه نوعی فعالیت فرعی (sub-acitivity) است. در ادامه نکات مهم مربوط به قطعه آورده شده است

آموزش Intent ها و فیلترهای آندروید : Android Intent Filter