Transcript JAVA
© Keren Kalif בסיסיandroid פיתוח קרן כליף © Keren Kalif ביחידה זו נלמד: סביבת העבודה לפיתוח לאנדרואיד רכיבי פרוייקט אנדרואיד דוגמא הכוללת thread דוגמא הכוללת תקשורת 2 © Keren Kalif 3 NetBeans -הנחיות להתקנת אנדרואיד ב http://kenai.com/projects/nbandroid/pages/Install © Keren Kalif 4 eclipse - לplugin -התקנת ה :plug-in יש להתקין באקליפס, כדי לפתח לאנדרואיד Add Install New Software Help בתפריט : להעתקה Android Plugin - https://dl-ssl.google.com/android/eclipse/ התקנת האמולטור © Keren Kalif יש להוריד את ה SDK -מהלינק הבא: http://developer.android.com/sdk/index.html יש לפתוח את ה ZIP -של ה SDK -ולהריץ מתוכו את הקובץ SDK Manager.exe לאחר ההתקנה יש לפתוח ולקנפג את המערכת באמצעות ה- :Virtual Devices 5 קינפוג האמולטור שם האמולטור גרסאת מערכת ההפעלה איתה נעבוד גודל כרטיס הזיכרון על האנדרואיד הוירטואלי כיצד יראה המכשיר הוירטואלי (למשל ,גודל המסך) החומרה שיש על המכשיר .עדיף לא להוסיף יותר מדיי כדי לא להכביד. 6 © Keren Kalif הפעלת האמולטור 7 © Keren Kalif קישור האקליפס לעבודה עם האמולטור בתפריט :Windows Preferences יש לבחור את מיקום התיקיה שאליה התקנו את ה SDK -של ה- android 8 © Keren Kalif יצירת פרוייקט android שם הפרוייקט File New Project Android Project הגרסא איתה נעבוד שם האפליקציה שם ה .package -חייב להכיל "". שם ה( activity -הסבר בקרוב) 9 © Keren Kalif הפרוייקט שנוצר משמע זוהי מחלקה שהתוצר שלה הוא חלון 10 © Keren Kalif משאבים )(Resources בפלטפורמת אנדרואיד מקובל שכל מה שאינו קוד של ה BL -יכתב במשאב :תצוגת המסך ,מחרוזת ,תמונה ,קול וכד' אחד היתרונות הוא למשל תמיכה בריבוי שפות :הקוד עובד מול קבועים המקבלים ערכם מקובץ המשאבים ,ועבודה מול שפה שונה גוררת רק החלפת קובץ המשאבים קבצי ה resources -שאינם בינאריים שמורים כ ,XML -ובזמן הקומפילציה רכיב הנקרא Resource Compilerמתרגם אותם לקובץ שנקרא R.javaודרכו ניתן לגשת למשאבים אלו 11 © Keren Kalif הסבר על המנגנון בפיתוח לאנדרואיד אנחנו כותבים את ה UI -בקבצי resourcesשהם למעשה קבצי XML הקומפיילר מתרגם אותם לקובץ R.javaשנוצר תחת הכניסה gen (קיצור ל)generated - 12 © Keren Kalif (Resources) משאבים © Keren Kalif 13 הסבר על ה View -המתקבל הקובץ main.xmlמכיל מידע איך יראה החלון .ה onCreate -מציגה את ה- layoutהמבוקש 14 © Keren Kalif משאבים )(Resources המשאבים מתקמפלים לקובץ :R.java 15 © Keren Kalif יצירה ושימוש ב View -שאנחנו מגדירים השיטה setContentViewמקבלת כפרמטר אובייקט מטיפוס ,Viewכלומר קובץ ה XML -מתורגם לView - ניתן להגדיר מחלקה היורשת מ View -ובכך להציג תוכן משלנו כל רכיב תצוגה יהיה סוג של Viewוכולם יהיו מוכלים בתוך View ראשי 16 © Keren Kalif הדוגמא android_balls :Ball.java מכילה לוגיקה של כדור :BallView.java הינה רכיב שיוצג על המסך ,לכן יורשת מView - דורסת את השיטה onDrawהמציירת את הכדור בפועל על המסך :MainView.java הרכיב המרכזי שיוצג על המסך ,ולכן מכיל את הBallView - בעל תמונת רקע מממש את Runnableכדי להזיז את הכדורים על המסך :BallsActivity.java מאתחלת את ה View -השונים ומקשרת בינהם 17 © Keren Kalif קבצי המשאבים בדוגמא android_balls בקובץ main.xmlאין קוד מאחר ואנחנו משתמשים במחלקת Viewשאנחנו בנינו בקובץ string.xmlיש רק איזכור לapp_name - 18 © Keren Kalif הדוגמא client_chat מגדירה ב main.xml -את כל הרכיבים שיוצגו בחלון המרכזי ניתן idלכל פקד מאחר ונרצה גישה לפקד בהמשך (למשל קריאת כתובת ה ,IP -הפורט או הטקסט) הטקסט על הפקדים לקוח מstrings.xml - הקובץ :AndroidClient.java הוא ה View -המרכזי ולכן יורש מActivity - לוקח קישור לכל הפקדים מה Layout -שצריך לקחת מהם מידע, למשל: ;)setContentView(R.layout.main ה txtIp -הוגדר במשאב main.xmlותורגם ;)findViewById(R.id.txtIp לקובץ .R.java ה Activity -עובד אך ורק מול הקובץ Rוקורא את המשאבים שהוגדרו ב layout -המבוקש. 19 © Keren Kalif הדוגמא client_chat הקובץ ( AndroidClient.javaהמשך): קישור אירועים לכפתורים הגדרת ההתחברות לסרבר לשים לב :כאשר מ thread -רוצים לעדכן שוב את התצוגה ,יש לחזור ל thread -הראשי ,בדיוק כמו ב!SWING - פעולת הצגת הודעה למסךToast.makeToast(…).show() : הקובץ :AndroidManifest.xml כדי לאפשר חיבור לאינטרנט דרך האפליקציה יש להוסיף את השורה: ><uses-permission android:name="android.permission.INTERNET" / 20 © Keren Kalif להריץActivity בחירת איזה : יורץactivity מוגדר איזהAndroidManifest.xml בקובץ © Keren Kalif 21 התקנת האפליקציה על מכשיר הandroid - לאחר קומפילציה ,בתיקייה binיווצר קובץ עם סיומת .apk יש להעבירו למכשיר ,ופשוט להתקין .. 22 © Keren Kalif ביחידה זו למדנו: סביבת העבודה לפיתוח לאנדרואיד רכיבי פרוייקט אנדרואיד דוגמא הכוללת thread דוגמא הכוללת תקשורת © Keren Kalif 23