اندروید
اندروید چیست ؟
در سال 2005 گوگل ، شرکت اندروید در کالیفرنیا که توسط اندی رابین، ریچ ماینرز، نیک سیرز و کریس وایت پایهگذاری شده بود را خرید . شرکت اندروید در زمینه تولید نرمافزار و برنامههای کاربردی برای تلفنهای همراه فعالیت میکرد .
Android از واژه یونانی به معنی انسان وار و بنا بر ترجمه لغت نامه کمبریج ،اینگونه تعریف شدهاست : «یک ربات (ماشینی که به وسیله کامپیوتر کنترل میشود) که به گونهای ساخته شده تا شکل ظاهری شبیه به انسان داشته باشد . بنا بر این میتوان کلمه ربات انسان نما را ترجمه مناسبی برای این واژه در نظر گرفت.
اندورید یک سیستمعامل همراه است که گوگل برای تلفنهای همراه و تبلتها عرضه میکند و با همکاری دهها شرکت بر روی دستگاههای مبتنی بر اندروید قرار میدهد اندروید بر پایه هسته لینوکس ساخته شدهاست و در بین سیستمعاملهای همراه بیشترین استفاده را دارد .
اندی رابین مدیر عامل اجرایی این شرکت پس از پیوستن اندروید به گوگل به سمت قائممقام مدیریت مهندسی این شرکت و مسئول پروژه اندروید در گوگل منصوب شد و تیم او برای تولید سکوی تلفن همراه مبتنی بر هسته لینوکس آغاز به کار کردند و نتیجه اولیه ی این پروژه مطرح کردن اتحادیه گوشی باز بود که ۳۴ شرکت فعال در زمینه تولید نرمافزار، تولید تلفنهای همراه ، اپراتور تلفن همراه و تولیدکننده نیمه رساناها و پردازندههای تلفن همراه از جمله شرکتهایی چون سامسونگ ، الجی الکترونیکس ، موتورولا ، اچتیسی ، تی-موبایل، انتیتی دوکومو ، اینتل ، انویدیا ، تگزاس اینسترومنتس ، کوالکام ، برودکام ، تلفونیکا ، اسپرینت ، ایبی و البته گوگل ، اعضای بنیانگذار این اتحادیه بودند .
اریک اشمیت مدیر ارشد اجرایی گوگل در این مراسم گفت از دیدگاه ما سکویی که ما ارائه کردهایم ، هزاران تلفن گوناگون را به بازار روانه خواهد کرد . نخستین گوشی مبتنی بر اندروید توسط شرکت اچتیسی با همکاری تی-موبایل تولید شد . این گوشی که به فاصله کمتر از یک سال از تشکیل اتحادیه گوشی باز یعنی در ۲۲ اکتبر ۲۰۰۸ تولید شد ، در بازارهای مختلف به نامهای اچتیسی دریم ، تی-موبایل جی۱ و ارا جی۱ به بازار عرضه گردید .
در 9 دسامبر ۲۰۰۸ سونی اریکسون ، اریکسون ، توشیبا ، ایسوز ، گارمین ، هواوی ، آرم هولدینگز و … به اتحادیه گوشی باز پیوستند . روند پیوستن شرکتهای بزرگ به اتحادیه تا به امروز نیز ادامه داشتهاست و شرکتهایی چون ایسر، آلکاتل، لنوو، شارپ، فاکسکان، انایسی، کیوسرا، انایکسپی، استی-اریکسون ، مارول ، زدتیئی و دل نیز از جمله شرکتهایی بودهاند که به جمع پشتیبانیکنندگان اندروید پیوستهاند .
به دنبال همکاری رسمی توسعه دهندگان اندروید با شرکت نستله در ۳ سپتامبر ۲۰۱۳ که از شرکتهای مطرح صنعت شکلاتسازی جهان میباشد ،نگارش ۴٫۴ سیستمعامل اندروید ، کیتکت نام گرفت . کیت کت از مارکهای معروف شکلات است که توسط شرکت نستله تولید میشود .
Android Lollipop (به معنای آبنباتچوبی) که به نام های اندروید ۵ یا اندروید L نیز شناخته می شود در 15 اکتبر 2014 توسط گوگل ارائه شد . اندروید L براساس گفته رئیس بخش اندروید گوگل بزرگترین بهروزرسانی در اندروید است .
Android Marshmallow یا اندروید ۶ نسخهای دیگر از سیستم عامل اندروید که در سپتامبر ۲۰۱۵ توسط گوگل معرفی شد .
آخرین به روز رسانی اندروید نسخه ۸ یاOrio میباشد که در ۲۰۱۷ انتشار یافتهاست .
حق امتیاز اکثر قسمتهای اندروید به صورت اپن سورس بر اساس مجوز نسخه Apache Licens2.0 ارائه میگردد . با اینکه سعی میشود تا اکثریت قسمتهای این سیستم عامل بر اساس همین مجوز ارائه گردد ، هسته لینوکس موجود در این سیستم عامل با پروانه عمومی همگانی (GPLv2) منتشر شدهاست .
تیم طراحی گوگل تقاضا کرد تا لوگویی برای اندروید طراحی کنند که به سرعت با کاربر ارتباط برقرار کند و به آسانی قابل شناسایی باشد ؛ همچنین گفته شد که این لوگو باید حتماً تصویری از ربات باشد چرا که اندروید به معنای ربات است . آیرینا بلاک (طراح لوگوی اندروید ) پس از مطالعه زیاد در مورد اسباببازیها و شخصیتهای فانتزی و تخیلی ، تصمیم گرفت لوگوی اندروید را از یک منبع عجیب الهام بگیرد مانند دستشویی! هر کسی علامت روی در دستشوییها را دیده و الهام از این علامتها میتواند باعث شود در یک نگاه لوگوی اندروید شناخته شود . نکته جالبی که در مورد لوگوی اندروید وجود دارد این است که گوگل برخلاف دیگر شرکتها که سعی در حفاظت از لوگویشان داشتند تصمیم گرفت تا لوگو را به صورت Open Source قرار دهد تا هر کس بتواند آن را به دلخواه خودش تغییر دهد . گوگل در اینباره میگوید “ما تصمیم گرفتیم که این لوگو ، یک لوگوی اشتراکی و تعاملی باشد که هر کس در دنیا بتواند آن را تغییر دهد . این تصمیم بسیار شجاعانه بود. ” اپلیکیشن Androidify یا اسباب بازیها و Action Figure و.. به لطف آزاد بودن لوگوی اندروید امکانپذیر شدهاست .
قابل ذکر است اندروید از تمامی تکنولوژیهای اتصال (=Connectivity) شامل GSM/EDGE, CDMA, EV-DO, UMTS, بلوتوث و وای-فای و همچنین از فرمتهای مختلف فایلهای مالتی مدیا مثل MPEG-4, H.264, MP3, AAC, AMR, JPEG, PNG, GIF پشتیبانی میکند .
این سیستم عامل برای ارسال اساماس از فرمهای SMS, MMS و XMPP پشتیبانی میکند .
مرورگر موجود در اندروید بر اساس فریم ورک اوپن سورس WebKit توسعه یافتهاست .
ابزارهای مختلف اندروید برای توسعه دهندگان به راحتی در دسترس است و توسط شرکت گوگل پشتیبانی میشوند. این ابزارها شامل کتابخانهها، خطایاب، شبیهساز گوشی و یک پلاگین برای اکلیپس است و برای ذخیره دادهها و مدیریت بانکهای اطلاعاتی سبک از نرمافزار SQLite استفاده میکند .
اندروید از سختافزارهای مختلف همچون جی پی اس و دوربینهای متنوع سنسورهای مخصوص همچون سنسور مجاورت و… پشتیبانی میکند و تصاویر و فایلهای گرافیکی بوسیله OpenGL پردازش میشوند که کیفیت بالاتری خواهند داشت.
با استفاده از تکنولوژی نسبتاً جدید شرکت Adobe با نام AIR نیز میتوان به توسعه برنامههای کاربردی تحت این سیستم عامل پرداخت .
نرمافزارهای جانبی اندرویدی که با استفاده از زبان جاوا نوشته میشوند برای ارتباط با لایههای زیرین سیستم عامل میتوانند از کتابخانههای جاوایی اندروید استفاده کنند . بخش رابط کاربری سیستم عامل اندروید و بسیاری از برنامههای اندروید هم با جاوا نوشته شدهاند . اما این سیستم عامل، Java Virtual Machine ندارد . برای اجرای برنامههای جاوایی روی این سیستم عامل، کدهای جاوا به کدهای Dalvik تبدیل میشوند و سپس روی Dalvik vitrual machine اجرا میشوند . دالویک یک ماشین مجازی جاوایی است که برای سیستم عامل اندروید بهینه شدهاست تا هم RAM و هم CPU و هم باتری کمتری مصرف کند . برنامههای جاوایی معمولی هم که روی گوشیهای دیگر اجرا میشوند با استفاده از نرمافزارهای شبیهساز ماشین مجازی جاوا مانند j2ME MIDP Runner روی این سیستم عامل قابل اجرا هستند.
شرکت گوگل برای اولین بار در اندروید ۴٫۴ ، آرت را در کنار دالویک قرار داد و کاربران میتوانستند با مراجعه به تنظیمات آن را فعال کنند و امروزه جایگزین دالویک شده است .
اندروید در حالت پیشفرض فایلهای mp3, aac , ogg , amr , midi , mpeg4 , wav , bmp , gif , png , jpg را پشتیبانی کرده و Adobe Flash را نیز پخش میکند و میتواند فایلهای GIF متحرک را با حرکت پخش کند . برای پخش فایلهای جریان دار مانند صوت و ویدئو نیز میتوانید از تگ ویدئو html۵ و همچنین تکنولوژی Adobe Flash Streaming استفاده کنید . در نسخههای جدید ، موتور جاوااسکریپت مرورگر کروم که سرعت بسیار بالایی در اجرای کدهای جاوا اسکریپت دارد به مرورگر اندروید متصل شدهاست .
اگرچه گوگل از همان ابتدا کدهای نظیرfsck_msdos,e2fsck,fsck.exfat به اندورید اضافه نمود که مشابه قابلیت check disk در ویندوز و حلال بسیاری از مشکلات در زمینه عیبهای دیسکها میباشد ولی متأسفانه سیستم عامل اندروید بهطور مستقیم سیستم فایل NTFS را پشتیبانی نمیکند البته فقط
VFAT (FAT32)را برای USB OTG پشتیبانی میکند .
مجموعه برنامهنویسی اندروید یا Android SDK شامل یک دیباگر ، کتابخانههای اندروید شبیهساز سیستم عامل ، مستندات اندروید و فایلهای نمونه و آموزشی است که به کاربر در ایجاد برنامهها کمک میکند . هماکنون این SDK بر روی یک سیستم ۳۲ بیتی که لینوکس، ویندوز یا mac OSX داشته باشد اجرا میشود . پیش نیازهای نصب این SDK عبارتند از کیت توسعه جاوا و Apache Ant و python2.2 که برنامههای نوشته شده برای اندروید با نسخههای مختلف میباشد .
در اکثر سیستم عاملها گرفتن دسترسی روت ساده است و به سادگی چند کلیک میتوان از سیستم عامل دسترسی روت گرفت یا مجوز دسترسی را باطل کرد اما این مسئله در سیستم عامل اندروید به یک معضل واقعی تبدیل شده که گاهی حتی میتواند دیوایس اندرویدی مربوطه را برای همیشه خراب کند و در اکثر مواقع روت شدن یا خراب شدن دستگاه اندرویدی قابل برگشت نیست .روت به معنی دسترسی ریشه به سیستم عامل است و زمانی که یک ابزار اندرویدی روت میشود دسترسی کاربر به ابزار مربوطه افزایش مییابد ، در سیستم عامل لینوکس به کاربری که دسترسیهای مدیریتی دارد روت و در ویندوز به آن Administrator میگویند ، برای مثال با توجه به توسعه اندروید بر مبنای هسته لینوکس میتوانیم یک سیستم عامل مبتنی بر دبیان را با اندروید مقایسه کنیم در دبیان کافیست در پنجره ترمینال عبارت sudo su را تایپ کنیم و پسورد را وارد کنیم ، بعد از این کار هر دستوری که در ترمینال تایپ کنید با دسترسی روت اجرا خواهد شد، بعد از بستن پنجره ترمینال مجوز دسترسی روت باطل خواهد شد و سیستم عامل مانند سابق با دسترسی محدود به فعالیت خود ادامه میدهد در اندروید این پروسه با دانلود درایورهای مربوطه و رام روت شده انجام میشود ، به این ترتیب که رام روت شده باید جایگزین رام داخلی گوشی شود ، این فرایند معمولاً قابل برگشت نیست و ریسکهایی نیز به همراه دارد که از جمله آن ریسکها میتوان به Break شدن دائمی دستگاه اندرویدی اشاره کرد .
در این بخش تمام آموزش ها و نکات وابسته به سیستم عامل اندروید قرار داده خواهد شد.