Chng 2.
Cu trc mt chng trnh Android
Hanoi University of Science and Technology
Nguyen Hong Quang 19/8/2012
Content
2.1. Chng trnh Hello World
Phn tch Hello World Gii thiu ADT v chc nng xem Log Phn tch [Link] [Link] v nh ngha Resource Cc Permissions
2.1. Cu trc mt chng trnh
Creating Hello World Program
Project name: HelloAndroid Build Target: Android 4.1 Application name: Hello, Android Package name: [Link] Create Activity: Hello Min SDK Version: 8 (Android 2.2 Froyo)
Running on AVD (Android Virtual Devices) Emulator
Gii thiu ADT
Configure an Android Virtual Device (AVD) for the emulator Create a debug configuration for your project Build the Android project and launch the debug configuration
Debugging Android Applications Using DDMS
Debugging Android Applications Using DDMS
Task management
select individual instances and inspect processes and threads browse files and directories on the emulator or a device
File management
Emulator interaction
send a number of events, such as simulated calls, SMS messages, and location coordinates, to specific emulator instances take screenshots of the current screen Like [Link], but more comfortable
Screen captures
Logging
Cu trc chng trnh HelloWorld
[Link]: where global settings are made. Directory:
res : resources are held drawable: contains actual image files that application can use and reference. layout : holds an XML file, [Link], that is referenced by your application when building its interface assets: contains audio files for streaming and animation assets src : contains all the source files
Phn tch [Link] Global settings
Application manifest file
The manifest defines the structure and metadata of Android application, its components, and its requirements.
uses-sdk: minimum and maximum SDK version uses-configuration: specify each combination of input mechanisms are supported by application. uses-feature: specify which hardware features your application requires (Audio, Bluetooth, Camera, Location, Microphone, NFC, Sensors, Telephony, Touchscreen, USB, Wi-Fi).
Application manifest file
supports-screens:
specify the screen sizes of application declare the user permissions your application requires.
uses-permission:
application:
activity:
specify the metadata for your application (including its title, icon, and theme) An activity tag is required for every Activity within Android application. Must include the main launch Activity and any other Activity that may be displayed.
Cc Permissions [Link]
<uses-permission android:name=[Link].ACCESS_FINE _LOCATION/> <uses-permission android:name=[Link]. BLUETOOTH/> <uses-permission android:name=[Link]. READ_CONTACTS/>
EXTERNALIZING RESOURCES
Externalization of resources
Ideas:
keep non-code resources, such as images and string constants, external to code. ranging from simple values such as strings and colors to more complex resources such as images (Drawables), animations, themes, and menus, layouts easier to maintain, update, and manage. easily define alternative resource values for internationalization and to include different resources to support variations in hardware particularly, screen size and resolution
Advantages:
[Link]
Phn tch [Link]
[Link]
Resources
Application resources are stored under the res folder in your project hierarchy. Each of the available resource types is stored in subfolders, grouped by resource type. Examples: colors, styles, menus, raw,
[Link] and Resource definition
R class file that contains references to each of the resources which include in project. This enables to reference the resources in code, with the advantage of designtime syntax checking.
Using Resources in Code
Using the static R class The R class contains static subclasses for each of the resource types for which defined at least one resource.
For example: the default new project includes the [Link] and [Link] subclasses.
Each of the subclasses within R exposes its associated resources as variables, with the variable names matching the resource identifiers
For example: [Link].app_name or [Link].
Resource types
Simple Values
strings, colors, dimensions, styles, and string or integer arrays [Link], [Link],
Styles and Themes Drawables
bitmaps and NinePatches (stretchable PNG images)
Resource types
Layouts
enable you to decouple your presentation layer from business logic by designing UI layouts in XML rather than constructing them in code
Animations Menus
Design menu layouts in XML