Eclipse• Eclipse is a multi-language software development environment comprising an integrated development environment (IDE)• Users can extend its abilities by installing plug-ins written for the Eclipse Platform• It is written mostly in Java
DDMS• Android ships with a debugging tool called the Dalvik Debug Monitor Server (DDMS)• which provides: – port-forwarding services – screen capture on the device – thread and heap information on the device – LogCat process
Android Emulator• What is an Emulator ?• Why should I use it ?• Can I run Eclipse Applications on my device ?
Activity Life Cycle
Activity Life Cycle
Structure of the Manifest File
Manifest File• Manifest presents essential information about the application to the Android system, information the system must have before it can run any of the applications code.• Elements• Attributes• Class names• Multiple values• Resource values• String values
Apps Launcher Activity• The main activity for your app must be declared in the manifest with these parameters.<activity android:name=".MainActivity"> <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter></activity>
Questions You need to Ask• What is AndroidManifest.xml ?• Why there is a .java file in src/ directory ?• What do we put in res/ directory ?• Inside res/ what are these ? – drawable-hdpi/ – layout/ – values/
Values• Android will run on many devices in many regions• Whenever the application runs in a locale for which you have not provided locale-specific text, Android will load the default strings from res/values/strings.xml• Different qualifiers can be used for different locales like res/values-fr
Drawable – What are they?• A Drawable is a general abstraction for "something that can be drawn."• Unlike a View, a Drawable does not have any facility to receive events or otherwise interact with the user.
Types of Event Listeners• onClick() From View.OnClickListener• onLongClick From View.OnLongClickListener• onKey() From View.OnKeyListener• onTouch() From View.OnTouchListener
Supporting Multiple Screens
Supporting Different Screens • Android runs on a variety of devices that offer different screen sizes and densities • System provides APIs that allow you to control your applications UI for specific screen sizes and densities • res/layout/my_layout.xml // layout for normal screen size ("default") • res/layout-small/my_layout.xml // layout for small screen size • res/layout-large/my_layout.xml // layout for large screen size • res/layout-xlarge/my_layout.xml // layout for extra large screen size
Supporting Different Screens• xlarge screens are at least 960dp x 720dp• large screens are at least 640dp x 480dp• normal screens are at least 470dp x 320dp• small screens are at least 426dp x 320dp