Introduction to Android Programming 19.3.2013. Content Basic environmental structure Building a...
-
Upload
maurice-marvin-caldwell -
Category
Documents
-
view
226 -
download
2
Transcript of Introduction to Android Programming 19.3.2013. Content Basic environmental structure Building a...
Introduction to Android Programming
19.3.2013
Content
Basic environmental structureBuilding a simple appDebugging
Basic environmental structure
Create a very simple applicationExamine its structureRun it on a real deviceRun it on the emulator
Create a new Android project (File > New > Android Application)
Name that appears
on device
Directoryname
Class toautomatically
create
Javapackage
Androidversion
Set your project:
Project Name: Hello World
Build Target: Select Android
2.1
Application Name: Hello World
Package Name: com.android.test
Create Activity: HelloWorld
Press "Finish"
Project Components
src – your source codegen – auto-generated code (usually
R.java)Included librariesResources– Drawables (like .png images)– Layouts– Values (like strings)
Manifest file
Sourcecode
Auto-generatedcode
UIlayout
Stringconstants
Configuration
Now you have your project created let's write some code!
Your code is located in a file called HelloWorld.java in the src folder.
Your screen layout file is main.xml in the layout directory.
Project files
1 public class HelloAndroid extends Activity {2 /** Called when the activity first created. */3 @Override4 public void onCreate(Bundle savedInstanceState) 5 {6 super.onCreate(savedInstanceState);7 setContentView(R.layout.main);8 }9 }
HelloWorld.javaSourcecode
Inherit from the Activity Class
Set the layout of the view as described in the main.xml layout
Hello World
modify HelloWorld.java
12
XML file
Used to define some of the resources– Layouts (UI)– Strings–Manifest file
res/layout: contains layout declarations of the app, UIs are built according to the layout file
Elements and layouts
ImageButtonEditText
CheckBoxButton
RadioButtonToggleButton
RatingBar
DatePickerTimePicker
SpinnerAutoComplete
GalleryMapViewWebView
Elements and layouts
Types of Layouts
Linear Layout– It organizes controls vertical or horizontal
fashion
Relative Layout,– It organizes controls relative to one
another.
Table Layout– A grid of made up of rows and columns,
where a cell can display a view control
Frame Layout– Frame layouts are the normal layout of
choice when you want to overlap different views stacked on top the other.
Layout
Open main.xml in Layout mode
select main.xml to view/edit the xml markup
Drag a button on to layout
Linear LayoutLinear Layout
Layout
21
main.xml<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android=http://schemas.android.com/apk/res/android android:orientation="vertical" android:layout_width="fill_parent" android:layout_height="fill_parent"> <TextView android:layout_width="fill_parent" android:layout_height="wrap_content" android:text="@string/hello" /></LinearLayout>
TextView, display static text
TextView, display static text
A reference to String resource ‘hello’
A reference to String resource ‘hello’
1 <?xml version="1.0" encoding="utf-8"?>2 <resources>3 <string name="hello">Hello World, HelloAndroid!4 </string>5 <string name="app_name">Hello, Android</string>6 </resources>
strings.xml
In res/valuesstrings.xml
Promotes good programming style
Strings are just one kind of ‘Value’
Manifest File
Contains characteristics about your application
NEED to specify it in manifest file– Have more than one Activity in app,– Services and other components too– Important to define permissions and
external libraries, like Google Maps API
Manifest File – Adding an Activity
1 <?xml version="1.0" encoding="utf-8"?> 2 <manifest 3 xmlns:android="http://schemas.android.com/apk/res/android" 4 package="edu.upenn.cis542" 5 android:versionCode="1" 6 android:versionName="1.0"> 7 <application android:icon="@drawable/icon" 8 android:label="@string/app_name"> 9 <activity android:name=".HelloAndroid"10 android:label="@string/app_name">11 <intent-filter>12 <action 13 android:name="android.intent.action.MAIN" />14 <category 15 android:name="android.intent.category.LAUNCHER"/>16 </intent-filter>17 </activity>18 </application>19 </manifest>
AndroidManifest.xml
Run Hello WorldSelect HelloWorld Project, Run->Run as->Android Application
ADT will start a proper AVD and run HelloWorld app on it
26
You may receive "Android AVD Error" if you have not setup an android emulator
device.
Select yes to setup a new Android Virtual Device
Select "New"
Create newAndroid Virtual Device
• Name: Android 2.1
• Target: Android 2.1 API Level
7• SD card Size:
4000 MiB• Rest as default settings
Press "Create AVD". Be patient it will take a minute to create your new AVD.
Select your new AVD and run your application.
To get it running…
Emulator
On Phone
Should be enabled on phone to use developer features
In the main apps screen select:→ Settings → Applications → Development → USB debugging (needs to be checked)
How to Debug
Log.v(tag, message); Window > Show View > Other > Android
> LogCat
To show a pop-up window:Toast.makeText( getApplicationContext(), message, Toast.LENGTH_LONG).show();
Logcat Information
Log.e("MyTag", "Error message with my own tag");Log.w("dalvikvm", "VM Warning message"); Log.d("MyTag", "Debug message");Log.i("MainActivity","Information message"); Log.v("MyTag", "Verbose message"); Log.f(“Fail", "What a Terrible Failure");
Useful sources
Android Official Site
• http://www.android.com
Android SDK, Tutorial, Concepts and API docs
• http://androidappdocs.appspot.com/index.html
Android Development Community
• http://www.anddev.org/
30 Days Android Apps Development
• http://bakhtiyor.com/category/30-days-of-android-apps/ 36