برنامه های کاربردی[۳۳]
اندروید به همراه بسته های مختلفی از جمله email client, SMS program, calendar, maps, browser, contacts, and others ارائه میشود. تمام این برنامه ها با بهره گرفتن از زبان برنامه نویسی جاوا نوشته شده اند.

چارچوب برنامه[۳۴]
با فراهم آوردن پلتفرم توسعه باز[۳۵] اندروید برنامه سازان را قادر کرده است تا برنامه های کاربردی خلاقانه و غنی برای این پلت فرم فراهم سازند. توسعه دهندگان آزادی کامل دارند تا از ویژگیهایی مانند دسترسی به سخت افزار، دسترسی به اطلاعات محلی (موقیت جغرافیایی) اجرای سرویس های پس زمینه[۳۶]، تنظیم زنگ ساعت، اضافه کردن اطلاعیه ها[۳۷]به نوار وضعیت و بسیاری بسیاری دیگر در برنامه هایی که میسازند، استفاده کنند.توسعه دهندگان دسترسی کامل به همان چارچوب APIهایی دارند که برنامه های هسته[۳۸]دارند. معماری برنامه های کاربردی[۳۹]به منظور ساده سازی استفاده مجدد از کامپوننت ها طراحی شده است. هر برنامه ای می تواند قابلیت های خود را در اختیار دیگر برنامه ها قرار دهد و همچنین از قابلیت های دیگر برنامه ها استفاده کند برنامه های زیربنایی، مجموعه ای از سرویس ها و سیستم های زیرند:

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

    • مجموعه قابل گسترشی از Viewها که برای ساخت برنامه های کاربردی استفاده می شوند، مانند lists, grids, text boxes, buttons, and even an embeddable web browser
    • Content Providers، که برنامه ها را قادر میسازد تا به اطلاعات برنامه های دیگر مانند لیست تماس، دسترسی پیدا کنند یا حتی اجازه دسترسی به اطلاعات خود را به برنامه های دیگر دهند.
    • یک مدیر منابع (Resource Manager) اجازه دسترسی به منابعی که کد-برنامه نیستند را فراهم میکند مانند دسترسی به رشته های محلی (localized strings)، تصاویر و فایل های مربوط به طرح برنامه (layout files).
    • یک مدیر اطاعیه (Notification Manager)، که از این طریق برنامه ها را قادر میکند تا هشدارهای خود را در نوار وضعیت نشان دهند.
    • یک مدیر فعالیت (Activity Manager)، که مدیریت چرخه زندگی (lifecycle) برنامه ها را در دست دارد و به نحوه اجرای برنامه ها نظارت میکند.

زمان اجرای اندروید[۴۰]
اندروید شامل مجموعه ای از کتابخانه های اصلی است که اکثر عملکردهای قابل دسترس را با بهره گرفتن از زبان جاوا ممکن میسازد. هر برنامه کاربردی اندروید در فرایند مخصوص به خودش اجرا میشود و دسترسی مخصوص به خود در ارتباط با ماشین مجازی دالویک دارد. این ماشین بگونه ای ساخته شده است که هر دستگاهی (device) میتواند چندین ماشین مجازی را بطور همزمان اجرا کند. هر ماشین مجازی دالویک فایل ها را به فرمت (dex.) اجرا میکند که اینکار باعث بهینه سازی در دستگاه هایی که حافظه پایینی دارند، می شود. این ماشین مجازی مبتنی بر رجیسترهاست و کلاسهایی که توسط کامپایلر جاوا ساخته شده است را اجرا میکند.

[۴۱] کتابخانهها
اندروید شامل مجموعه از کلاسهای ++C/C است که توسط کامپوننت های سیستم اندروید مورد استفاده قرار میگیرند. همچنین استفاده از این قابلیت به توسعه دهندگان نیز داده شده است. بعضی از این کتابخانه های اصلی به این قرارند:
System C library, Media Libraries, Surface Manager, SQLite,….

هسته لینوکس[۴۲]
اندروید متکی بر لینوکس نسخه ۲٫۶ برای انجام سرویس های اصلی مانند security, memory management, process management, network stack و driver model است. این هسته همچنین مانند یک لایه انتزاعیمابین سخت افزار و سایر نرم افزارها عمل میکند.

جدول۴- ۱-لایه­ های سیستم عامل آندروید[۵۱]
فاز اول این گزارش برای جمع­آوری داده ­های آموزشی است. برای اهداف مورد نظر ما در این پروژه، ما نیاز به استفاده از داده ­های شتاب­سنج، حسگر جهت­یابی، همچنین سرویس­های مکان­یابیGPS) ، شبکه (داریم. شتاب­سنج در تلفن­های هوشمند، سه مقدار برای شتاب در واحد m/s2 در امتداد محورهایX ، Yو Z را باز می­گردانند. در شکل ۴-۲ نقشه­ برداری از محورهای جهتی شتاب­سنج در یک دستگاه در حالت استراحت (ساکن) به تصویر کشیده است.

شکل۴- ۱-محورهای شتاب سنج[۱۰]
محور X(جانبی): شتاب­وری (چپ به راست) که برای آن ارزش مثبت بیانگر حرکت به سمت راست در حالی که آنهایی که با منفی نشان داد شده ­اند حرکتی به سمت چپ دارند.
محور Y(طولی): حرکت به جلو مقادیر مثبت و شتاب ­رو به عقب با مقادیر منفی به نمایش گذاشته شده ­اند.
محورZ (عمودی): در این محور شتاب رو به بالا یا رو به پایین است که برای آن، عدد مثبت نشان دهنده حرکاتی مانند برداشتن دستگاه می­باشد.
۴-۴-مجموعه داده ­های برنامه
ما بدنبال طراحی یک برنامه Android برای جمع­آوری اطلاعات از حسگرهای موجود در یک گوشی هوشمند هستیم. این نرم­افزار دسترسی به قطعات سخت­افزاری از طریق بسته­های سخت­افزاری ارائه شده توسط SDK آندروید را فراهم می­سازد. این کار از طریق دسترسی به حسگرها و ذخیره مقادیر جمع­آوری شده از این حسگرها در یک فایلCSV با عنوان زمان مربوطه و تاریخ از زمانی که برنامه برای اولین بار تحت فایل HumanTracingدر کارت SDآغاز شده، انجام می­پذیرد. برای دسترسی به اجزای سخت­افزاری دستگاه مانند شتاب­سنج، حسگر جهت­یابی و GPS ما نیاز به استفاده از عناصر چارچوب برنامه مربوطه که در شکل۴-۱ نشان داده شده داریم. برای دسترسی به مکان بر اساس سرویس­های گفته شده در بخش قبلی ما نیاز به ایجاد یک شی کلاس[۴۳]LocationManager است در حالی که برای حسگرهای دیگر ما نیاز به ایجاد یک شی کلاس SensorManager خواهیم داشت. برای فهمیدن تغییر مقادیر در حسگرها و خدمات مکان­ یابی، SDK اندوریدواسط SensorEventListener و LocationListenerرافراهم کرده است. علاوه بر این کلاس­ها ارائه شده توسط SDK آندروید، ما یک کلاس FileManager خواهیم داشت که عملیات تبادل فایل را ساده­تر و قابل استفاده­تر می­ کند. کلاس­های LocationManager، SensorManager و FileManager در لایه چهارچوب برنامه­ ها با زمینه ­های لازم در زیر توضیح داده شده است.
۴-۵-مدیریت حسگر
این کلاس دسترسی به حسگر­های جاسازی شده در تلفن­های هوشمند را فراهم می­ کند. این کلاس هنگامی که هدف برنامه دسترسی به حسگرهایی مانند جهت­یابی، مجاورت، شتاب­سنج و دما­سنج باشد، می ­تواند مفید واقع گردد. در زیر تنها دو نمونه تابع از توابع مربوط به این کلاس توضیح داده شده است.
۱-حسگر عمومیgetDefaultSensor (نوعint )
یک شی کلاس حسگر را با توجه به نوع آن بازمی­گرداند، مانند مقدار ثابت SENSOR.TYPE_ACCELEROMETER این مقادیر ثابت در حالی که در انواع حسگرها متفاوت هستند ولی در قطعه کد مشابه استفاده می­ شود.
۲- registerListenerبولین بشکل عمومی (SensorEventListener listener, Sensor sensor, int rate)
registerListener شی است برای بدست آوردن سرعت کسب تغییرات حسگر می­باشد. بطور مثال ممکن استدر طول جمع­آوری داده ­ها در یک شی حسگر شتاب­سنج registerListener با نرخ ۲۴ نمونه/ثانیه ثبت شده است.
۴-۶-مدیریت مکان
این کلاس دسترسی به سیستم­های شامل سرویس­های مکان­ یابی را فراهم می­ کند .این سرویس­هابه برنامه ­های کاربردی اجازه به دست آوردن نسخه­های به روز موقعیت جغرافیایی دستگاه و یا هشداربرای یک برنامه مشخص شده در دستگاه تلفن همراه برای ورود به محدوده یک مکان جغرافیایی از قبل مشخص شده را می­ دهند.برنامه جمع­آوری داده ­ها، به­روز­رسانی دوره­ای را در مکان فراهم می­ کند. این نرم­افزار از مدیریت مکان برای دریافت بروز­رسانی اطلاعات محل کاربر در مرحله جمع­آوری داده ­ها استفاده می­ کند.

موضوعات: بدون موضوع  لینک ثابت


فرم در حال بارگذاری ...