در این پست تلاش میکنم هر انچه که نیاز هست از سیستم عامل اندرویید گفته شود را ذکر کنم تا دوستانی که با این سیستم عامل اشنایی ندارند و خواهان شناخت ان هستند کمکی کرده باشم:
بخش اول: مقدمه
سیستم عامل آندروید چیست ؟
اندروید (Android) نام یک سیستم عامل موبایل است که توسط شرکت گوگل توسعه داده می شود. این سیستم عامل اوپن سورس است و برپایه هسته لینوکس بنا شده است. اندروید بر خلاف سیستم عامل iOS آیفون که فقط پردازنده های ARM را پشتیبانی میکند، بر روی انواع مختلفی از پردازنده ها (ARM, MIPS, Power Architecture, x86) قابل نصب است. از سال 2008 تاکنون تلفن های همراه متعددی با استفاده از این سیستم عامل به بازار ارائه شده اند. همچنین چندین Tablet PC نیز با استفاده از این سیستم عامل به بازار ارائه شده اند.
آندروید سیستم عاملی بر اساس لینوکس :
این سیستم عامل بر اساس هسته سیستم عامل لینوکس توسعه یافته است. در واقع مدیریت و بهینه سازی حافظه، ارتباط با سخت افزار و سرویس های سیستم، امنیت، مدیریت پردازش ها و مدیریت منابع دستگاه موبایل را هسته لینوکس انجام می دهد و آندروید فقط لایه ایست که ارتباط میان کاربر و سیستم عامل را برقرار می کند. این لایه نرم افزاری بوسیله جاوا پیاده سازی شده است و به همین علت قادر به اجرای کدهای Native نخواهد بود. آندروید همانند لینوکس اوپن سورس خواهد بود و توسعه دهندگان بیشماری بر روی آن کار می کنند.
با Eclipse برای آندروید برنامه بنویسید : همانطور که قبلاً گفتم برنامه نویسی برای آندروید بوسیله زبان جاوا انجام می شود. گوگل جهت راحتی برنامه نویسان پلاگینی برای اکلیپس ارائه داده که آن ها بتوانند با استفاده از قدرت اکلیپس برای آندروید برنامه تولید کنند. شما ابتدا باید Eclipse را از اینجا دریافت کنید و سپس این پلاگین را روی آن نصب کنید. بعد از این در قسمت پروژه های اکلیپس گزینه ای به نام Android اضافه خواهد شد که می توانید با استفاده از آن به زبان جاوا و با قدرت اکلیپس برای آندروید برنامه بنویسید.
لینوکس:
لینوکس (به انگلیسی: Linux) نام یک سیستم عامل رایانه ای است که معروف ترین نمونه نرم افزار آزاد و گسترش به روش اُپن سورس (متن باز) شناخته می شود. در واقع تنها باید هستهٔ لینوکس را لینوکس نامید، اما به طور معمول این واژه به سیستم عامل های یونیکس مانندی (یا گنو/لینوکسی) اطلاق می شود که بر مبنای هستهٔ لینوکس و کتاب خانه ها و ابزارهای پروژه گنو ساخته شده اند. به مجموعه ای از نرم افزارهای بنا شده بر اجزای گفته شده توزیع لینوکس (linux distribution) می گویند که به طور معمول شامل ابزارهای گسترش نرم افزار، پایگاه های داده، سرویس دهنده های وب مثل آپاچی، محیط های رومیزی مانند گنوم و کی دی ای و ایکس اف سی ای و مجموعه های اداری مانند اُپن آفیس هستند.
در ابتدا لینوکس برای استفادهٔ ریزپردازنده ها با معماری ۸۰۳۸۶ اینتل طراحی شده بود؛ اما امروزه انواع گوناگون معماری ها را پشتیبانی می کند و در انواع و اقسام وسایل از کامپیوترهای شخصی گرفته تا ابر رایانه ها و تلفن های همراه به کار می رود. این سیستم عامل که در ابتدا بیشتر توسط افراد مشتاق گسترش پیدا می کرد و به کار گرفته می شد، توانسته است پشتیبانی شرکت های سرشناسی چون آی بی ام و هیولت-پاکارد را به دست آورد و با بسیاری از نسخه های خصوصی یونیکس رقابت کند. طرفداران لینوکس و بسیاری از تحلیل گران این موفقیت را ناشی از استقلال از فروشنده، کم هزینه بودن پیاده سازی، سرعت بالا، امنیت و قابلیت اطمینان آن می دانند.
پیشینه لینوکس :
در سال ۱۹۸۴ میلادی ریچارد استالمن که رئیس بنیاد نرم افزارهای آزاد بود پروژه گنو (GNU) را آغاز کرد. در این پروژه که یک نرم افزاری محسوب می شد برنامه نویسان با یکدیگر همکاری می کردند که این همکاری تا به حال نیز ادامه دارد.
آن زمان بیشتر ابزارهای پروژه گنو که با زبان برنامه نویسی سی و اسمبلی نوشته شده بود آماده کار بود و تنها یک هستهٔ مناسب و آزاد کم بود. حتی سیستم عامل مینیکس نیز با وجود در دسترس بودن کد منبع آن، آزاد نبود و حق نشر مخصوص داشت. کار در پروژه گنو به سمت طراحی یک هسته مناسب متمرکز می شد اما به نظر می رسید که برای ایجاد این هسته حداقل چند سال دیگر زمان نیاز است.
این تأخیر برای لینوس تُروالدز قابل تحمل نبود. بنابراین خودش دست به کار شد و با الهام از کد مینیکس کار را آغاز کرد. سرانجام در ۲۵ اوت سال ۱۹۹۱ در ساعت ۲۰:۵۷ (به وقت گرینویچ) پیامی تاریخی به گروه خبری comp.os.minix از طرف لینوس بندیک تُروالدز ارسال شد. او یک دانشجوی فنلاندی بود که آن زمان در دانشگاه هلسینکی درس می خواند.
متن پیام او چنین بود:
«سلام به هر ** که آن بیرون از مینیکس استفاده می کند.من هم اکنون روی سیستم عاملی آزاد برای رایانه های AT ۳۸۶(۴۸۶) کار می کنم (فقط برای سرگرمی؛ مانند پروژهٔ گنو بزرگ و حرفه ای نیست). از ماه آوریل کار را آغاز کرده ام و هم اکنون این سیستم عامل آماده است و کار می کند. دوست دارم از دیدگاه دیگران در مورد سیستم عاملم با خبر شوم. چه آنان که مینیکس را دوست دارند و چه آنان که دوست ندارند. چرا که سیستم عامل من تا حدی شبیه به مینیکس است.در حال حاضر (۱٫۰۸)bash و(۱٫۴۰) gcc را بر روی آن دارم و چیزهای دیگری که به نظر می رسد همه درست کار می کنند. این بدان معناست که طی چند ماه آینده چیز به دردبخوری فراهم خواهم کرد و دوست دارم بدانم مردم بیشتر چه امکاناتی لازم دارند. به هر پیشنهاد و نظری خوش آمد می گویم اما قول نمی دهم که آن را انجام دهم!
لینوس ([دس).پ.ن. – بله این نرم افزار آزاد است. البته قابل انتقال بر روی انواع دیگر رایانه نیست (چرا که دستورات AT۳۸۶ را به کار می برد) و ممکن است غیر از سخت دیسک AT چیز دیگری را پشتیبانی نکند. این همه چیزی است که من دارم!»
لینوکس برخلاف مینیکس (یک سیستم عامل ساده نوشته شده توسط پروفسور آندرو تاننبام که برای آموزش طراحی سیستم عامل به کار می رفت) که از معماری میکروکرنل استفاده می کرد، با ایده هسته های مونولیتیک طراحی شده بود. اولین نسخهٔ لینوکس در سپتامبر ۱۹۹۱ در اینترنت منتشر شد. دومین نسخه آن به فاصلهٔ کمی در اکتبر همان سال منتشر شد.[۱] از آن پس هزاران برنامه نویس و هکر در سراسر دنیا در این پروژه شرکت کردند. مقالهٔ «کلیسای جامع و بازار» مدل گسترش هسته لینوکس و نرم افزارهای مشابه را تشریح می کند.
پنگوئن تاکس نشانه و مایه خوش شانسی هستهٔ لینوکس است. لینوس تُروالدز مالک علامت تجاری لینوکس است که به عنوان «نرم افزار سیستم عامل رایانه برای تسهیل در استفاده و عملیات رایانه» به ثبت رسیده است.
رابطه اندروید و جاوا :
نرم افزارهای جانبی اندرویدی با استفاده از زبان جاوا نوشته میشوند و برای ارتباط با لایه های زیرین سیستم عامل میتوانند از کتابخانه های جاوایی اندروید استفاده کنند. بخش رابط کاربری سیستم عامل اندروید با زبان جاوا نوشته شده است و بسیاری از برنامه های اندروید هم با جاوا نوشته شده اند. اما این سیستم عامل ، Java Virtual machine ندارد . برای اجرای برنامه های جاوایی روی این سیستم عامل، کدهای جاوا به کدهای Dalvik تبدیل میشوند و سپس روی Dalvik virtual machine اجرا میشوند. (دالویک یک ماشین جازی جاوایی است که برای سیستم عامل اندروید بهینه شده است تا هم RAM و هم CPU و هم باطری کمتری مصرف کند). برنامه های جاوایی معمولی هم که روی گوشی های دیگر اجرا میشوند با استفاده از نرم افزارهای شبیه ساز ماشین مجازی جاوا مانند j2ME MIDP Runner روی این سیستم عامل قابل اجرا هستند.
فرمت فایل های پشتیبانی شده
اندروید در حالت پیشفرض فایل های mp3, aac , ogg , amr , midi , mpeg4 , wav , bmp , gif , png , jpg را پشتیبانی میکند. اندروید Adobe Flash را نیز پخش میکند و میتواند فایل های GIF متحرک را با حرکت پخش کند. برای پخش فایل های جریان دار مانند صوت و ویدئو نیز میتوانید از تگ ویدئو html5 و همچنین تکنولوژی Adobe Flash Streaming استفاده کنید.در نسخه های جدید اندروید، موتور جاوااسکریپت مرورگر کروم که سرعت بسیار بالایی در اجرای کدهای جاوا اسکریپت دارد به مرورگر اندروید متصل شده است. (در ضمن مرورگر اندروید کدهای HTML5 را پشتیبانی میکند)
محیط برنامه نویسی اندروید
Android SDK شامل یک دیباگر، کتابخانه های اندروید، شبیه ساز سیستم عامل ، مستندات اندروید و فایل های نمونه و آموزشی است که به شما در ایجاد اولین برنامه هایتان کمک میکند. هم اکنون این SDK بر روی یک سیستم 32 بیتی که لینوکس ، ویندوز و یا mac OSX داشته باشد اجرا میشود. پیش نیازهای نصب این SDK عبارتند از JDK و Apache Ant و python 2.2 . برنامه های نوشته شده برای اندروید با پسوند .apk ذخیره میشوند.
App Inventor for Android : شاهکار گوگل در ایجاد برنامه های اندرویدی
برنامه ساز اندروید یک محیط برنامه نویسی ویژوال تحت وب برای برنامه نویسان تازه کار است که بر پایه ی کتابخانه جاوایی open Blocks و توسط یکی از استادان برجسته ی دانشگاه MIT بنا شده است و فانکشن هایی برای برقراری ارتباط با سخت افزارهای مورد پشتیبانی اندروید دارد: مانند شتاب سنج، جهت سنج، GSP ، مدیریت پیامک اندروید، مبدل صدا به متن و حتی امکان اتصال به وب سرویس ها (وب سرویس آمازون و توییتر بصورت پیشفرض در این محیط برنامه نویسی گنجانده شده). این محیط برنامه نویسی آنقدر پیشرفت کرده است که دانشگاه های MIT ، هاروارد، ولزلی و سانفرانسیسکو آنرا بعنوان یک کورس برای دانشجویان برگزار میکنند.
گوگل هدف از ایجاد سیستمی مانند android app inventor را اینگونه بیان میکند که هر کسی باید قادر باشد تا برای اندروید برنامه بسازد ، حتی بچه های دبستانی که چیزی از برنامه نویسی نمی دانند ، زیرا آنها نیازهای موردنظر خود را با اینکار رفع میکنند و اگر سیستم اندرویدی نداشته باشند ، برای خرید یک گوشی اندرویدی ترغیب میشوند. در این محیط برنامه نویسی شما می توانید با drag-n-drop براحتی کامپوننت ها را روی صفحه بکشید و نوشتن اولین برنامه ی اندرویدی خود را آغاز کنید
بخش دوم:
اندرویید در لغت به معنیروبات یا آدم نما است، اما در دنیای تلفن همراه به عنوان یکی از سیستم های عامل معرفی شده است.
OHA برای نامگذاری این ورژن ها معمولا از نام خوراکی ها استفاده می کند. ورژن ها تجاری که تا به امروز معرفی شده اند عبارتند از:
-
ورژن شماره 1.5 با نام cupcake یا کیک خامه ای
-
ورژن 1.6 با نام Donut یا پیراشکی
ورژن 2 و 2.1 با نام Elcair یا شیرینی با خامه و بستنی
ورژن 2.2 با نام بستنی یخیfroyo
-
والبته دو ورژن ماست میوه ای و نان زنجفیلی که هنوز دارای لوگو نمی باشند.
در اینجا هم به بررسی اندروید 2’2 یاهمان
Froyo میپردازیم:
فرویو، نام اصلی آخرین نسخه از پلتفرم موبایل گوگل است. در واقع، آخرین نسخه فعلی سیستم عامل موبایل گوگل. اگر شما به تازگی یک گوشی آندرویدی خریده اید، به احتمال زیاد با فرویو کار خواهد کرد.
کاربران اندروید هنگام روشن شدن گوشی، آیکون آن را بر روی گوشی مشاهده می کنند، اما کاربران فرویو علاوه بر آن یک ویجت جدید را در گوشی مشاهده می کنند. همچنین تغییرات زیبای دیگری مانند انیمیشن های چشم نواز، محیط کاربری را زیباتر جلوه می دهند. اما کاربران Nexus One که از اَندروید ۲٫۱ استفاده می کنند، همه این تفاوت ها را احساس نمی کنند.
بر طبق شنیده ها فرویو به شما اجازه می دهد گوشی خود را به یک هات اسپات تبدیل کنید. بدین ترتیب شما برای استفاده همه ی دستگاه های خود از جمله iPad اینترنت خواهید داشت. البته این قابلیت فعلاً فقط برای آندرویدهایی که از AT&T به عنوان اپراتور استفاده می کنند، امکانپذیر است، اما برای فرویو در همه شبکه ها قابل استفاده خواهد بود. یعنی گوشی آندرویدی شما میتواند تبدیل به یک اکسس پوینت بی سیم وای فای بشود و به ابزارهای دیگر به صورت بی سیم اینترنت بدهد.
اَندروید ۲٫۲ تا پنج برابر سریعتر از اَندروید ۲٫۱ است. فرویو این سرعت را مدیون استفاده از کامپایلر just-in-time است که در آن استفاده شده. همچنین گوگل ادعا کرده فرویو سریعترین مرورگر موبایلی جهان را دارد. همه سرعت را دوست داریم…
اَندروید ۲٫۲ (فرویو) از فلش نسخه ۱۰٫۱ پشتیبانی می کند. این قابلیت از اهمیت ویژه ای برخوردار است. چرا که این ویرایش از فلش به صورت اختصاصی برای موبایل طراحی شده. مهمتر از آن این مورد شکاف عظیمی بین گوگل و اپل پدید خواهد آورد. شکافی که گوگل و ادوبی در یک طرف و اپل در طرف دیگر آن خواهند بود.
به هر شکل این مساله می تواند نشان دهد که خارج کردن فلش از مرورگرهای موبایل آنقدر هم ایده خوبی نیست ولی باید دقت کرد که در نهایت انتخاب با کاربران است.
با استفاده از فرویو، وقتیکه شما اپلیکیشنی را در کامپیوتر خود دانلود می کنید، نیازی نیست که حتماً گوشی خود را به آن وصل کنید تا آن را داشته باشید. به جای آن، برنامه مورد نظر، به صورت اتوماتیک از طریق WiFi برروی گوشی شما نصب می شود. همین اتفاق برای موزیک هایی که خریداری می کنید می افتد.
می توانید موسیقی های کتابخانه آی تیون را روی فرویو استریم کنید.
فرویو سخت افزارهای گوشی را در اختیار نرم افزارها قرار می دهد. برای مثال از طریق مرورگر می توان به دوربین دسترسی داشت. یا اینکه نقشه روی مرورگر می تواند از قطب نمای تلفن استفاده کند. از دیگر قابلیت های فرویو، تشخیص صدا به منظور جستجو و استفاده از مترجم گوگل است. همچنین قابلیت ترجمه مکالمه هم در این نسخه آندروید وجود دارد. ضمن اینکه مدیریت برنامه ها و به روز رسانی آنها در پس زمینه، هم امکانپذیر است.
چه کسانی فرویو خواهند داشت
کاربران Nexus One می توانند خوشحال باشند که اولین کسانی هستند که می توانند آپدیت فرویو را دریافت کنند. بقیه دارندگان گوشی های آندروید اما باید منتظر باشند تا سفت افزار (Firmware) مربوط به گوشی آنها عرضه شود که این مورد به اپراتور آنها و شرکت سازنده گوشی مرتبط است. برخی از افراد که از نسخه های قدیمی تر از اَندروید ۲٫۱ استفاده می کنند، می توانند احتمالا گوشی خود را به این نسخه ارتقا دهند. اما سایر کسانی که از گوشی های آندرویدی که اخیراً روانه بازار شده استفاده می کنند، باید برای داشتن فرویو منتظر به روز رسانی های احتمالی که در ماه های آینده عرضه خواهد شد، باشند.
اندروید Honeycomb
سیستم عاملی برای تبلتها:
رابط کاربری، چیزی است که در این سیستم عامل به کلی متحول شده است و در دمو های منتشر شده از آن هم، رابط کاربری از مواردی است که بسیار روی آن مانور داده شده است. چیزی که امروز فهمیدیم، این بود که آقای ماتیاس دوارت هم نقش بزرگی در طراحی اینترفیس اندروید 3 بازی کرده است. از دید هنری و زیبایی شناسی هم رابط کاربری واقعا حرف های زیادی برای گفتن دارد و اوج زیبایی اندروید را به شما نشان خواهد داد.
نسخه Gingerbread اندروید، بهبود های زیادی را به همراه داشت. هم از نظر فنی سریع تر بود و هم از نظر رابط کاربری پیشرفت کرده بود. باید بدانید که Honeycomb قرار نیست جایگزینی برای نان زنجبیلی باشد. چون بازار هدف این دو نسخه کاملا متفاوت است. نسخه 2.3 برای تلفن های همراه تولید شده در حالی که هانی کام مخصوص تبلت ها است.
نسخه های مختلف اندروید به زبان ساده
موضوع ساده است. شما قطعا از نسخه های مختلف سیستم عامل ویندوز و نام هایشان اطلاع دارید. بعد از ویندوز ۹۸ شاهد ویندوز ۲۰۰۰ و سپس اکس پی بودیم. بعد اش هم ویستا از راه رسید و حالا هم ویندوز ۷ آخرین نسخه ویندوز محسوب میشود.
گوگل هم برای نسخه های متفاوت ات سیستم عامل اش اسم انتخاب می کند. نام کلی همه اندروید است اما بسته به شماره نسخه اش یک اسم نمادین هم برایش انتخاب می کند. جالب است بدانید که این اسم گذاری بر اساس حروف الفبای انگلیسی جلو می رود و اول اسم هر کدام از نسخه ها به ترتیب حروف انگلیسی انتخاب میشود:
نسخه ۲ با حرف E انگلیسی شروع شد: Eclair
بعد نوبت حرف F است: نسخه ۲.۲ Froyo
حالا نوبت G است: ۲.۳ Gingerbread
بنابراین این اسامی نشان دهنده نسخه های مختلف سیستم عامل هستند. حالا چرا گوگل اسم خوراکی ها و دسرها را برای نسخه های مختلف اندروید انتخاب می کند؟ کسی جواب روشنی برایش ندارد! اما به هر حال من دسر را دوست دارم.
کلمه اندروید به معنی ربات انسان نما است. دلیل انتخاب چنین اسمی علاقه فراوان آقای روبین به روبات ها بوده است!
در حال حاضر که این مطلب نوشته می شود بیشتر تلفن های هوشمند اندرویدی جهان از نسخه فرویو استفاده می کنند. و رتبه بعدی متعلق به نسخه 2.1 است.
اندروید 2.3 در عمل به بازار ارایه شده اما هنوز درصد بسیار پایینی از کاربران از آن استفاده می کنند. به طور کلی سیاست گوگل تا به حال به این شکل بوده که جدیدترین نسخه سیستم عامل اش را اول از همه برای تلفن های سری Nexus ارایه می کند. که در مورد این نسخه Nexus S بوده است و حالا برای Nexus One هم ارایه شده است. بعد از مدتی بقیه تلفن ها هم می توانند در صورت داشتن امکانات سخت افزاری مناسب آن را نصب کنند. از آنجایی که اندروید یک سیستم بازمتن است می توان قبل از ارایه رسمی هم آن را روی تلفن تان نصب کنید اما دردسرهای خاص خودش را دارد که به موقع به آن می پردازیم.
در هر صورت شاید برایتان سوال باشد که چرا نسخه 2.3 هنوز برای تلفن اندرویدی شما رسما به بازار نیامده است؟ پاسخ ساده است. شرکت سازنده تلفن برای اینکه سیستم عامل جدید را برای تلفن شما آماده بکند باید صدها ساعت را صرف تست و آماده سازی اش بکند و همین کار وقت و هزینه ی زیادی میبرد. معمولا شرکت ها سعی می کنند توازنی از امکانات و هزینه را در نظر بگیرند. نسخه ۲.۳ نسبت به فرویو تغییرات عمده ای نداشته است بنابراین طبیعی که حتی بعضی شرکت ها صبر کنند تا نسخه بعدی از راه برسد و روی ارتقا به این نسخه وقت نگذارند.
حالا که در مورد نسخه های سری ۲ اندروید صبحت کردیم بد نیست کمی هم در مورد نسخه ۳ صحبت کنیم. این یک سری متفاوت است که در حال حاضر اولین نسخه آن Honeycomb نام دارد. گوگل در ابتدا آن را مخصوص تبلت ها ساخت اما خبرهای جدید که قبلا هم در نارنجی خوانده اید نشان می دهد که گوگل قصد دارد اندروید سری ۲ و ۳ را با هم مخلوط کند.
تا اینجا می دانیم که نسخه ۲.۴ در راه است و این نسخه هم شامل تغییراتی کوچک خواهد بود. اما سوال اینجا است که نسخه ترکیبی اندروید چه شماره ای و چه نام گذاری خواهد داشت؟ پیش بینی می شود گوگل سری جدید را ۴ شماره گذاری کند. اما کی باید منتظر از راه رسیدن اش باشیم؟ احتمالا طی ۶ ماه تا یک سال آینده. بنابراین خیالتان راحت باشد که تا آن موقع اطلاعات لازم را در مورد نسخه های مختلف اندروید دارید.
توضیحی که بتواند به ما در رفع لینک خراب کمک بکند. مثلا چه کیفیتی و چه قسمتی از این سریال مشکل خرابی دارد.