49
برنامهسی نوی در اندرویددامچیمیر با اسی ارشد مهندسیجوی کارشنا دانشعاتوری اط فناستمهای سینهای چند رسا و گفتاری صوتیگنالهای هوشمند سیه پردازش آزمایشگا مهندسیانشکده د و فناوری کامپیوترعات اطنشگاه دا امیرکبیر صنعتی( یک تهران پلی تکن)

برنامه نویسی در اندروید

Embed Size (px)

DESCRIPTION

 

Citation preview

Page 1: برنامه نویسی در اندروید

درنویسی برنامه

اندروید

امیر بادامچی چند رسانه ای سیستم های –فناوری اطالعات دانشجوی کارشناسی ارشد مهندسی

آزمایشگاه پردازش هوشمند سیگنال های صوتی و گفتاری

اطالعاتکامپیوتر و فناوری دانشکده مهندسی

( پلی تکنیک تهران)صنعتی امیرکبیر دانشگاه

Page 2: برنامه نویسی در اندروید

عناوین مطالبمروری بر اندروید

معماری و نسخه های مختلف اندروید

نصب و راه اندازی شبیه ساز و ابزارهای برنامه نویسی

نوشتن یک برنامه تست

چرخه اجرای برنامه ها

واسط کاربری اندروید

امیر بادامچی –برنامه نویسی در اندروید 2

Page 3: برنامه نویسی در اندروید

مروری بر اندرویدمعرفی

ویژگی ها و خصوصیات

رقباهدف و بازار

امیر بادامچی –برنامه نویسی در اندروید 3

Page 4: برنامه نویسی در اندروید

اندروید چیست؟مجموعه نرم افزاری شامل سیستم عامل، میان افزار و برنامه های کاربردی

برای تلفن همراه و تبلت

امیر بادامچی –برنامه نویسی در اندروید 4

Page 5: برنامه نویسی در اندروید

اهمیت اندرویدکد منبع باز

هسته بر پایه لینوکس

پشتیبانی از پردازنده های مختلف

پشتییانی از تمامی تکنولوژی های اتصالی

از انواع فرمت های چند رسانه ایپشتیبانی

پشتیبانی از کتابخانه های مختلف

پشتیبانی از مالتی تسکینگ

رابط کاربری مناسب

مالتی تاچپشتیبانی از

امیر بادامچی –برنامه نویسی در اندروید 5

Page 6: برنامه نویسی در اندروید

تاریخچه اندروید توسط گوگل و 2007ارائه اولین نسخه در سال Open Handset Alliance

امیر بادامچی –برنامه نویسی در اندروید 6

Page 7: برنامه نویسی در اندروید

Open Handset Alliance شرکت معتبر 47گروهی متشکل از

امیر بادامچی –برنامه نویسی در اندروید 7

Page 8: برنامه نویسی در اندروید

Open Handset Alliance شرکت معتبر 47گروهی متشکل از

امیر بادامچی –برنامه نویسی در اندروید 8

Page 9: برنامه نویسی در اندروید

رقیبان اندروید

امیر بادامچی –برنامه نویسی در اندروید 9

Page 10: برنامه نویسی در اندروید

معماری و نسخه های مختلف اندرویدمعماری اندروید و الیه های مختلف آن

نسخه های اندروید و تغییرات آنها

کتابخانه های مختلف

امیر بادامچی –برنامه نویسی در اندروید 10

Page 11: برنامه نویسی در اندروید

معماری اندروید

امیر بادامچی –برنامه نویسی در اندروید 11

Page 12: برنامه نویسی در اندروید

معماری اندرویدبرنامه های کاربردی

امیر بادامچی –برنامه نویسی در اندروید 12

Page 13: برنامه نویسی در اندروید

معماری اندرویدچارچوب برنامه های کاربردی

سهولت و قابلیت استفاده مجدد از مولفه ها

دسترسی کامل همانند برنامه های اصلی

امکان جایگزینی مولفه ها

امیر بادامچی –برنامه نویسی در اندروید 13

Page 14: برنامه نویسی در اندروید

معماری اندرویدچارچوب برنامه های کاربردی

14

Feature Role

View System

Used to build an application, including lists, grids, text boxes, buttons, and embedded web browser

Content Provider

Enabling applications to access data from other applications or to share their own data

Resource Manager

Providing access to non-code resources (localized strings, graphics, and layout files)

Notification Manager

Enabling all applications to display customer alerts in the status bar

Activity Manager

Managing the lifecycle of applications and providing a common navigation backstack

امیر بادامچی –برنامه نویسی در اندروید

Page 15: برنامه نویسی در اندروید

معماری اندرویدکتابخانه ها

مجموعه ای از کتابخانه ها به زبانC وC++

امیر بادامچی –برنامه نویسی در اندروید 15

Page 16: برنامه نویسی در اندروید

معماری اندرویدزمان اجرا

کتابخانه های اصلی و توابع جاوا

امیر بادامچی –برنامه نویسی در اندروید 16

Page 17: برنامه نویسی در اندروید

معماری اندروید اجرازمان

ماشین مجازیDalvik

محیطی برای اجرای برنامه ها

چندین ماشین مجازی

امیر بادامچی –برنامه نویسی در اندروید 17

Page 18: برنامه نویسی در اندروید

معماری اندرویدهسته لینوکس

واسط سخت افزار و الیه های باالتر

امیر بادامچی –برنامه نویسی در اندروید 18

Page 19: برنامه نویسی در اندروید

نسخه های اندروید v1.5 cupcake

v1.6 donut

v2.0/2.1 Eclair

V2.2 Froyo

امیر بادامچی –برنامه نویسی در اندروید 19

Page 20: برنامه نویسی در اندروید

نسخه های اندروید V2.3 ginger bread

v 3.0 Honeycomb

4.0 Ice Cream Sandwich

امیر بادامچی –برنامه نویسی در اندروید 20

Page 21: برنامه نویسی در اندروید

نصب و راه اندازی شبیه ساز و ابزارهای برنامه نویسی

معرفی و نصب ابزارهای پیش نیاز وAndroid SDK

نصب و راه اندازی شبیه ساز

نویسیمعرفی، نصب و آماده سازی محیط برنامه

امیر بادامچی –برنامه نویسی در اندروید 21

Page 22: برنامه نویسی در اندروید

معرفی و نصب ابزارهای پیش نیاز

ابزارهای مورد نیاز

برنامهEclipse

Android SDK

Android Development Tools (ADT)

امیر بادامچی –برنامه نویسی در اندروید 22

Page 23: برنامه نویسی در اندروید

معرفی و نصب ابزارهای پیش نیاز

ابزارهای مورد نیاز

برنامهEclipse

امیر بادامچی –برنامه نویسی در اندروید 23

Page 24: برنامه نویسی در اندروید

معرفی و نصب ابزارهای پیش نیاز

ابزارهای مورد نیاز

برنامهEclipse

Android SDK

دریافت از آدرسhttp://developer.android.com

امیر بادامچی –برنامه نویسی در اندروید 24

Page 25: برنامه نویسی در اندروید

معرفی و نصب ابزارهای پیش نیاز

ابزارهای مورد نیاز

برنامهEclipse

Android SDK

Android Development Tools (ADT)

از طریقEclipse و آدرسhttps://dl-ssl.google.com/android/eclipse/

دانلودADT و نصب درEclipse

امیر بادامچی –برنامه نویسی در اندروید 25

Page 26: برنامه نویسی در اندروید

معرفی و نصب ابزارهای پیش نیاز

ابزارهای مورد نیاز

برنامهEclipse

Android SDK

Android Development Tools (ADT)

امیر بادامچی –برنامه نویسی در اندروید 26

Page 27: برنامه نویسی در اندروید

معرفی و نصب ابزارهای پیش نیاز

اضافه کردن آدرس دو شاخه زیر به متغیر Path

android-sdk-windows

platform-tools

امیر بادامچی –برنامه نویسی در اندروید 27

Page 28: برنامه نویسی در اندروید

نوشتن یک برنامه تست

. . .

TextView tv = new TextView(this);

tv.setText("Hello, Android");

. . .

امیر بادامچی –برنامه نویسی در اندروید 28

Page 29: برنامه نویسی در اندروید

چرخه اجرای برنامه هاهر برنامه شامل یک یا چند مولفه هست

یک مولفه می تواند یکی از موارد زیر باشد:

Activity

Service

broadcast receiver

content provide

امیر بادامچی –برنامه نویسی در اندروید 29

Page 30: برنامه نویسی در اندروید

چرخه اجرای برنامه هامهمترین کاربرد

برقراری تماس

ارسال پیامک

اولویت برنامه های کاربر

امیر بادامچی –برنامه نویسی در اندروید 30

Page 31: برنامه نویسی در اندروید

چرخه اجرای برنامه ها

امیر بادامچی –برنامه نویسی در اندروید 31

Start End Active / Inactive Visible / Invisible

Page 32: برنامه نویسی در اندروید

چرخه اجرای برنامه هاحالت های یک برنامه

Active

Paused

Stop

Destroyed

امیر بادامچی –برنامه نویسی در اندروید 32

Page 33: برنامه نویسی در اندروید

چرخه اجرای برنامه هامتدها

onCreate()

onStop()

onDestroyed()

onStart()

onRestart()

onResume()

onPause()

امیر بادامچی –برنامه نویسی در اندروید 33

Page 34: برنامه نویسی در اندروید

واسط کاربری اندروید کالسView

Layout چیست؟

انواعLayoutها

امیر بادامچی –برنامه نویسی در اندروید 34

Page 35: برنامه نویسی در اندروید

Viewکالس بلوکی برای مولفه های رابط کاربری View

محیطی بر روی صفحه برای رسمlayout

امیر بادامچی –برنامه نویسی در اندروید 35

Page 36: برنامه نویسی در اندروید

Layout چیست؟ مولفه های رابط کاربری و ارتباط آنها

فرمتXML

امیر بادامچی –برنامه نویسی در اندروید 36

Page 37: برنامه نویسی در اندروید

Layoutابزارهایی برای ایجاد Eclipse ADT UI Designer

DroidDraw

Asset Studio

امیر بادامچی –برنامه نویسی در اندروید 37

Page 38: برنامه نویسی در اندروید

Layoutانواع Linear

Relative

Table

Absolute

Frame

امیر بادامچی –برنامه نویسی در اندروید 38

Page 39: برنامه نویسی در اندروید

Linear Layout تمامی فرزندان در یک جهت

android:orientation عمودیVertical

افقیhorizontal

امیر بادامچی –برنامه نویسی در اندروید 39

Page 40: برنامه نویسی در اندروید

Linear Layout ( ادامه). . . ویژگی ها

orientation

fill model

weight

gravity

padding

margin

امیر بادامچی –برنامه نویسی در اندروید 40

Page 41: برنامه نویسی در اندروید

Linear Layout ( ادامه). . . ویژگی ها

weight

امیر بادامچی –برنامه نویسی در اندروید 41

Page 42: برنامه نویسی در اندروید

Linear Layout ( ادامه). . . ویژگی ها

gravity

امیر بادامچی –برنامه نویسی در اندروید 42

android:gravity="center"

android:layout_gravity="center"

Page 43: برنامه نویسی در اندروید

Linear Layout ( ادامه). . . ویژگی ها

padding

margin

امیر بادامچی –برنامه نویسی در اندروید 43

Page 44: برنامه نویسی در اندروید

Relative Layout ویژگی ها

layout_alignParentTop

layout_alignParentBottom

layout_alignParentLeft

layout_alignParentRight

layout_centerInParent

layout_centerHorizontal

layout_centerVertical

امیر بادامچی –برنامه نویسی در اندروید 44

Page 45: برنامه نویسی در اندروید

Table Layout ویژگی ها

layout_width

layout_height

orientation

stretchColumns

امیر بادامچی –برنامه نویسی در اندروید 45

Page 46: برنامه نویسی در اندروید

منابع http://www.android.com

http://www.kamalan.com

Slides of Victor Matos

Slides of Mihail L. Sichitiu

Slides of Tee Meng Kem and Sun Jian

امیر بادامچی –برنامه نویسی در اندروید 46

Page 47: برنامه نویسی در اندروید

منابع بیشتر developer.android.com

kamalan.com

google.com

and-roid.ir

امیر بادامچی –برنامه نویسی در اندروید 47

Page 48: برنامه نویسی در اندروید

تشکردکتر جابر کریم پور

دکتر محمد مهدی همایون پور

اعضای آزمایشگاه پردازش هوشمند سیگنال های صوتی و گفتاری

حاضرین در کارگاه

امیر بادامچی –برنامه نویسی در اندروید 48

Page 49: برنامه نویسی در اندروید

پرسش و پاسخ

امیر بادامچی –برنامه نویسی در اندروید 49

ceit.aut.ac.ir/~badamchi

[email protected]