1 / 38

CS5103 Software Engineering

CS5103 Software Engineering. Lecture 08 Android Development II. Last class. Projects Process and Evaluation Requirements Calendar SMS Messenger Contact Manager Book Shelf Android Development I Android system & Emulator Environment Setup. 2. Today’s class. Basic Android Development

Télécharger la présentation

CS5103 Software Engineering

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. CS5103 Software Engineering Lecture 08 Android Development II

  2. Last class Projects Process and Evaluation Requirements Calendar SMS Messenger Contact Manager Book Shelf Android Development I Android system & Emulator Environment Setup 2

  3. Today’s class Basic Android Development Structure of an android project Basic UI Components Activities and Lifecycle Action bars 3

  4. Play with Emulator Set environment variables On the Emulator Android Debug Bridge Telnet Interface 4

  5. Set environment variables Set Android_SDK_Home: %Android_SDK_Home%/.android will be the place all virtual devices stored You may set your sdk directory as Android_SDK_Home Add dirs to PATH env variable Your sdk directory/tools Your sdk directory/platform-tools 5

  6. Structure of an Android Project Source code Generated code Manifest file Resource files 6

  7. Source code & generated code Source code The code you will work on Activities Typically mainly implementing system call backs Generated code The code generated by the system according to your resource files R.java Including references to all fields in resource files Do not edit it 7

  8. Main components of android apps Main Components Activities Services Broadcast Receivers They usually can be executed directly with intents Intents Messages sent and received between components System intents 8

  9. Activities Most important component of an android app An activity is basically everything showed at one time on the screen Like window or frame in the desktop UI applications Explore an app by trigger different activities An activity has its own resource files 9

  10. Manifest file Package name Versions targeted at Activities Intent filters Permissions Uses-permissions Declare permissions 10

  11. Permissions System permissions Network Reading/Writing/Sending/Receiving sms Making/Receiving calls Reading/writing contacts Reading/writing SD cards … http://developer.android.com/reference/android/Manifest.permission.html User defined permissions 11

  12. Resource files Source code The code you will work on Activities Typically mainly implementing system call backs Generated code The code generated by the system according to your resource files R.java Including references to all fields in resource files Do not edit it 12

  13. Resource files Drawable Icons used in the app Layout An xml file describing the layout of an activity Eclipse-ADT provides a graphics layout, and maintain the consistency Menu An xml file describing the menu of an activity 13

  14. Resource files Values Dimensions Strings Styles (color, fonts, etc.) A project usually has multiple value folders for different targeted devices Dimensions for different device size Strings for different languages 14

  15. Today’s class Basic Android Development Play with Emulator Structure of an android project Basic UI Components Activities and Lifecycle Action bars 15

  16. Basic UI Components Views Basic UI component Button, Checkbox, MenuItem, etc. ViewGroup A invisible container that holds views Determines how views are placed in the container LinearLayout, GridLayout, AbsoluteLayout, etc. 16

  17. Views and View Groups 17

  18. Basic UI Components Views Basic UI component Button, Checkbox, MenuItem, etc. ViewGroup A invisible container that holds views Determines how views are placed in the container LinearLayout, RelativeLayout, GridView, ListView 18

  19. Add views/viewgroups to a project All views and view groups can be added by Editing layout resource file of an activity (recommended) Edit the graphics layout Set main attributes Height Width Text / hint 19

  20. Layouts Linear layouts Views are placed in a vertical or horizontal list The default size of views are “wrap_content” You may set weight for views to make them occupy more spaces 20

  21. Layouts Relative layouts Views are placed relative to their neighbors Views are places from top-left corner by default Avoid too much hierarchies 21

  22. Layouts List Views Bind to ListActivity A vertical list of scrollable items Use Adaptor to build and manage items 22

  23. Layouts Grid Views Display items in a two-dimensional scrollable grid Use adaptors to build view and manage items 23

  24. An example of input and display messages 24

  25. Respond to UI components Add the onclick attribute The content of the attribute is the name of method to be executed Access data in the current activity Find view by id Do not forget to set an id for the views you want to get data from 25

  26. Respond to UI components Requirement to the responding method Public Return type is void Has a single parameter: android.view.View Otherwise the system will not be able to call the responding method 26

  27. Start another activity Create a new activity Add it to multiple places (done automatically by eclipse) Source code Manifest file Resource files for the new activity Generate an intent to start the activity 27

  28. Activity life cycles Create Start The activity become fully visible to the user Pause: The activity is partially visible, e.g., pop-up window Resume The activity is fully visible again Stop The activity is hidden Destroy 28

  29. Activity life cycles 29

  30. Menus Menus are by default in the project Each activity has a menu resource file A empty action called settings is listed in the menu Since phone screens are quite small, menu provide a place to put extra buttons that cannot be put onto the screen 30

  31. Add items to menus Add item to the resource file Add ids to each item Implement the method: onOptionsItemSelected(MenuItem item) 31

  32. Today’s class Basic Android Development Play with Emulator Structure of an android project Basic UI Components Activities and Lifecycle Action bars 32

  33. Thanks! 33

  34. Start an emulator In eclipse Go to device manager Click Start In command line emulator –avd ‘virtual device name’ 34

  35. On the emulator Use your keyboard to input text Useful Shortcuts Home -> Home Esc -> back F2 -> Menu Ctrl + F12 -> change orientation Manage Apps Go to menu -> manage apps Operating everything as on a phone 35

  36. Adb interface A very useful tool for controlling emulator adb devices: show all running emulators Install and uninstall apps adb push & pull: transfer data between the host system and the emulator adb logcat: print the system log of the emulator adb shell: access the file system of the emulator Manage files in the virtual device adb shell pm: List all installed apps 36

  37. Telnet interface telnet localhost <port number> Simulate a number of events Phone calls gsm call <number> SMS sms send <number> <“text”> Power level power status charging / not-charging, power capacity <percentage> Set GPS geo fix <longitude> <latitude> 37

  38. Today’s class Basic Android Development Play with Emulator Structure of an android project Basic UI Components Activities and Lifecycle Action bars 38

More Related