SlideShare a Scribd company logo
Mobile Innovations Prof. Erwin M. Globio, MSIT
APP–Market Fit PLATFORM (Android, Bada, Java, Symbian, Maemo, Blackberry; phone exclusive or open) PHONE BRAND (Samsung, Nokia, Sony, LG, BB, ?) PHONE TYPE (Feature phone, Smartphone) TELCO PLANS (variability of cost structures: voice ; text; data per-kb, per-hr) USERS (who, using which phone, on which telco or plan?)
Criteria for Good Apps Well-defined target market; (link to intangible qualities) Functionality: runs successfully and with ease on Android mobile phones, does what it’s supposed to do;  Uniqueness in its application; doing something out of the common  Creativity in design and in the use of available technologies( UI, graphics, etc) Usefulness in addressing users’ needs and problems, with high potential for adoption by customers  Usability, interface and navigation designed for ease and comfort of user Platform and modular design.
Intangible Qualities of Good Products What is its magnet – why will it attract the user? What is its anchor – what will hold the user to it? Does it have a profit engine for the user – will it make the relationship pay? How is it spiced it up to make for a satisfying customer experience?
Business Models Sale of app Share of telco billings (voice, text, data) Subscription (per-use, per month) % of sales Sponsorship or ads (Paid web hosting – service provider or cloud)
Introduction to Android Development Full of potential to be utilized
Topics to be discussed... Introduction to the Android Platform Overview of the Android SDK in Eclipse Working with the User Interface Working with Data Storage Sharing information between applications Networking Advance phone features Publishing applications Best Practices
Topics to be discussed... Introduction to the Android Platform Overview of the Android SDK in Eclipse Working with the User Interface
What is Android? Android is a software stack for mobile devices  that includes an operating system, middleware and key applications.
What are the features of Android? Application framework Dalvik virtual machine Integrated browser Optimized graphics SQLite Media support GSM Telephony Bluetooth, EDGE, 3G, and WiFi Camera, GPS, compass, and accelerometer Rich development environment
Android Architecture
Working with Android Development Tools (ADT) The Android Development Tools (ADT) plugin for Eclipse adds powerful extensions to the Eclipse integrated development environment.  It gives you access to other Android development tools from inside the Eclipse IDE.  It provides a New Project Wizard It automates and simplifies the process of building your Android application.  It provides an Android code editor that helps you write valid XML for your Android manifest and resource files.  It will even export your project into a signed APK, which can be distributed to users.
Installing ADT To install in Eclipse 3.5 (Galileo) Start Eclipse, then select Help> Install New Software In the Available Software dialog, click Add.... In the Add Site dialog that appears, enter a name for the remote site (for example, "Android Plugin") in the "Name" field. Enter location https://dl-ssl.google.com/android/eclipse/ Back in the Available Software view, you should now see "Developer Tools" added to the list. Select the checkbox next to Developer Tools, which will automatically select the nested tools Android DDMS and Android Development Tools. Click Next.  In the resulting Install Details dialog, the Android DDMS and Android Development Tools features are listed. Click Nextto read and accept the license agreement and install any dependencies, then click Finish.  Restart Eclipse.
What do you get?
Working with Eclipse (New Project)
Working with Eclipse (New Project)
Working with Eclipse (New AVD)
Application Fundamentals  Applications are written using Java  The Android Asset Packaging Tool generates apk (Android Package) files containing the code and any data and resources needed  Each application runs in its own Linux process  Each application has its own VM  Each application has its own user id, permissions are set accordingly
Application Components  A central feature of Android is that one application can make use of elements of other applications (provided those applications permit it)  Android applications don't have a single entry point for everything in the application (no main() function, for example)  They have essential components that the system can instantiate and run as needed
Application Components Activities - An activity presents a visual user interface for one focused endeavor the user can undertake.  Services - A service doesn't have a visual user interface, but rather runs in the background for an indefinite period of time.  Broadcast Receivers - A broadcast receiver is a component that does nothing but receive and react to broadcast announcements  Content Providers - A content provider makes a specific set of the application's data available to other applications. The data can be stored in the file system, in an SQLite database, or in any other manner that makes sense.  Intent - An intent is an Intent object that holds the content of the message
Let’s create our first application
The Application Manifest
The Application Manifest
The Application Manifest
The Application Manifest
The Application Manifest
Looking at the project (Strings.xml)
Looking at the project Layout(main.xml)
Looking at the project (main.java)
Starting with an Activity The main starting point of most applications There is no concept of “main” program Each activity can be executed or invoked at any time One application can have multiple “activities” An example of acrivity would be “Searching for an application in the store” An Activity can have several “Views” or “View Groups” to define its user inteface.
Activity Lifecycle
Activity Source package org.feueac.android; import android.app.Activity; import android.os.Bundle; publicclass Main extends Activity { 	@Override publicvoid onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState);         setContentView(R.layout.main);     } }
What is R.layout.main? <?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>
Views in an Activity The user interface is built using View  and ViewGroup objects Basic units of user interface expression on the Android platform  View class serves as the base for subclasses  ViewGroupclass serves as the base for subclasses called "layouts"
View Hierarchy Activity must call the setContentView()
The different layouts Linear Layout Relative Layout Table Layout Grid View Tab Layout List View
Handling Events in an Activity public class main extends Activity implements OnClickListener Button myButton = (Button) findViewById(R.id.hello_button);myButton.setOnClickListener(this); @Overridepublic void onClick(View v) {}

More Related Content

What's hot

Why is flutter considered the best cross platform framework
Why is flutter considered the best cross platform frameworkWhy is flutter considered the best cross platform framework
Why is flutter considered the best cross platform framework
Pixel Crayons
 
My android
My androidMy android
My android
Prince Bhanwra
 
Questions About Android Application Development
Questions About Android Application DevelopmentQuestions About Android Application Development
Questions About Android Application Development
Adeel Rasheed
 
Best Frameworks for Android App Development in 2022.pdf
Best Frameworks for Android App Development in 2022.pdfBest Frameworks for Android App Development in 2022.pdf
Best Frameworks for Android App Development in 2022.pdf
Marie Weaver
 
Android L
Android LAndroid L
Android L
Nabil Kazi
 
Top 13 Web Development Trends And Predictions For 2015
Top 13 Web Development Trends And Predictions For 2015Top 13 Web Development Trends And Predictions For 2015
Top 13 Web Development Trends And Predictions For 2015
Grey Matter India Technologies PVT LTD
 
Adding advanced Device Capabilities to Android
Adding advanced Device Capabilities to AndroidAdding advanced Device Capabilities to Android
Adding advanced Device Capabilities to Android
Joachim Ritter
 
Imaginea Introduction
Imaginea IntroductionImaginea Introduction
Imaginea Introduction
arun_imaginea
 
Flutter technology Based on Web Development
Flutter technology Based on Web Development Flutter technology Based on Web Development
Flutter technology Based on Web Development
divyawani2
 
Let the community do more than just Apps!
Let the community do more than just Apps!Let the community do more than just Apps!
Let the community do more than just Apps!
Joachim Ritter
 
Extending your apps to wearables - DroidCon Paris 2014
Extending your apps to wearables -  DroidCon Paris 2014Extending your apps to wearables -  DroidCon Paris 2014
Extending your apps to wearables - DroidCon Paris 2014
Paris Android User Group
 
Android Development Basics
Android Development BasicsAndroid Development Basics
Android Development Basics
Prajakta Dharmpurikar
 
Day 2 android internals a quick overview
Day 2 android internals a quick overviewDay 2 android internals a quick overview
Day 2 android internals a quick overviewAhsanul Karim
 
Introduction to Android - Mobile Fest Singapore 2009
Introduction to Android - Mobile Fest Singapore 2009Introduction to Android - Mobile Fest Singapore 2009
Introduction to Android - Mobile Fest Singapore 2009
sullis
 
PT GTUG 1st Technical Tession - Android
PT GTUG 1st Technical Tession - AndroidPT GTUG 1st Technical Tession - Android
PT GTUG 1st Technical Tession - Androiddrjuniornet
 
What Is An SDK?
What Is An SDK?What Is An SDK?
What Is An SDK?
CleverTap
 
Jaipur Bus Finder - An Android-based Application
Jaipur Bus Finder - An Android-based ApplicationJaipur Bus Finder - An Android-based Application
Jaipur Bus Finder - An Android-based Application
AI Publications
 

What's hot (19)

Why is flutter considered the best cross platform framework
Why is flutter considered the best cross platform frameworkWhy is flutter considered the best cross platform framework
Why is flutter considered the best cross platform framework
 
My android
My androidMy android
My android
 
Questions About Android Application Development
Questions About Android Application DevelopmentQuestions About Android Application Development
Questions About Android Application Development
 
Best Frameworks for Android App Development in 2022.pdf
Best Frameworks for Android App Development in 2022.pdfBest Frameworks for Android App Development in 2022.pdf
Best Frameworks for Android App Development in 2022.pdf
 
Android L
Android LAndroid L
Android L
 
Top 13 Web Development Trends And Predictions For 2015
Top 13 Web Development Trends And Predictions For 2015Top 13 Web Development Trends And Predictions For 2015
Top 13 Web Development Trends And Predictions For 2015
 
Adding advanced Device Capabilities to Android
Adding advanced Device Capabilities to AndroidAdding advanced Device Capabilities to Android
Adding advanced Device Capabilities to Android
 
Imaginea Introduction
Imaginea IntroductionImaginea Introduction
Imaginea Introduction
 
Flutter technology Based on Web Development
Flutter technology Based on Web Development Flutter technology Based on Web Development
Flutter technology Based on Web Development
 
Let the community do more than just Apps!
Let the community do more than just Apps!Let the community do more than just Apps!
Let the community do more than just Apps!
 
Sdk technology
Sdk technologySdk technology
Sdk technology
 
Extending your apps to wearables - DroidCon Paris 2014
Extending your apps to wearables -  DroidCon Paris 2014Extending your apps to wearables -  DroidCon Paris 2014
Extending your apps to wearables - DroidCon Paris 2014
 
Android Development Basics
Android Development BasicsAndroid Development Basics
Android Development Basics
 
Day 2 android internals a quick overview
Day 2 android internals a quick overviewDay 2 android internals a quick overview
Day 2 android internals a quick overview
 
Introduction to Android - Mobile Fest Singapore 2009
Introduction to Android - Mobile Fest Singapore 2009Introduction to Android - Mobile Fest Singapore 2009
Introduction to Android - Mobile Fest Singapore 2009
 
PT GTUG 1st Technical Tession - Android
PT GTUG 1st Technical Tession - AndroidPT GTUG 1st Technical Tession - Android
PT GTUG 1st Technical Tession - Android
 
What Is An SDK?
What Is An SDK?What Is An SDK?
What Is An SDK?
 
Android ppt
Android pptAndroid ppt
Android ppt
 
Jaipur Bus Finder - An Android-based Application
Jaipur Bus Finder - An Android-based ApplicationJaipur Bus Finder - An Android-based Application
Jaipur Bus Finder - An Android-based Application
 

Viewers also liked

Modul oop with java application mauludin
Modul oop with java application   mauludinModul oop with java application   mauludin
Modul oop with java application mauludin
Mauludin Ahmad
 
The Game Of Life - Java‘s Siblings and Heirs are populating the Ecosystem
The Game Of Life - Java‘s Siblings and Heirs are populating  the EcosystemThe Game Of Life - Java‘s Siblings and Heirs are populating  the Ecosystem
The Game Of Life - Java‘s Siblings and Heirs are populating the Ecosystem
jexp
 
KC Java Android Talk (March 2011)
KC Java Android Talk (March 2011)KC Java Android Talk (March 2011)
KC Java Android Talk (March 2011)
osake
 
First Steps in Android
First Steps in AndroidFirst Steps in Android
First Steps in Android
Rich Helton
 
Eclipse vs Netbeans
Eclipse vs NetbeansEclipse vs Netbeans
Eclipse vs Netbeans
Mohamed Abd Elwähäb
 
Internet of Things
Internet of ThingsInternet of Things
Internet of Things
Prof. Erwin Globio
 
Google I/O 2013 報告会 Android Studio と Gradle
Google I/O 2013 報告会 Android Studio と GradleGoogle I/O 2013 報告会 Android Studio と Gradle
Google I/O 2013 報告会 Android Studio と Gradle
Keishin Yokomaku
 
PSITE Letter for Prof Globio
PSITE Letter for Prof GlobioPSITE Letter for Prof Globio
PSITE Letter for Prof Globio
Prof. Erwin Globio
 
Solutions to Common Android Problems
Solutions to Common Android ProblemsSolutions to Common Android Problems
Solutions to Common Android Problems
Prof. Erwin Globio
 
iOS Apps Development (SQLite Tutorial Part 2)
iOS Apps Development (SQLite Tutorial Part 2)iOS Apps Development (SQLite Tutorial Part 2)
iOS Apps Development (SQLite Tutorial Part 2)Prof. Erwin Globio
 
Games and Java ME - Have fun and earn some money
Games and Java ME - Have fun and earn some moneyGames and Java ME - Have fun and earn some money
Games and Java ME - Have fun and earn some money
Marcelo Quinta
 
Practical OOP In Java
Practical OOP In JavaPractical OOP In Java
Practical OOP In Java
wiradikusuma
 
Ideas for Writing a Conclusion
Ideas for Writing a ConclusionIdeas for Writing a Conclusion
Ideas for Writing a Conclusionlarchmeany1
 
Android Development: The Basics
Android Development: The BasicsAndroid Development: The Basics
Android Development: The Basics
Mike Desjardins
 

Viewers also liked (20)

Modul oop with java application mauludin
Modul oop with java application   mauludinModul oop with java application   mauludin
Modul oop with java application mauludin
 
The Game Of Life - Java‘s Siblings and Heirs are populating the Ecosystem
The Game Of Life - Java‘s Siblings and Heirs are populating  the EcosystemThe Game Of Life - Java‘s Siblings and Heirs are populating  the Ecosystem
The Game Of Life - Java‘s Siblings and Heirs are populating the Ecosystem
 
KC Java Android Talk (March 2011)
KC Java Android Talk (March 2011)KC Java Android Talk (March 2011)
KC Java Android Talk (March 2011)
 
First Steps in Android
First Steps in AndroidFirst Steps in Android
First Steps in Android
 
Gu iintro(java)
Gu iintro(java)Gu iintro(java)
Gu iintro(java)
 
GUI Programming with Java
GUI Programming with JavaGUI Programming with Java
GUI Programming with Java
 
Eclipse vs Netbeans
Eclipse vs NetbeansEclipse vs Netbeans
Eclipse vs Netbeans
 
Internet of Things
Internet of ThingsInternet of Things
Internet of Things
 
Networking Trends
Networking TrendsNetworking Trends
Networking Trends
 
Google I/O 2013 報告会 Android Studio と Gradle
Google I/O 2013 報告会 Android Studio と GradleGoogle I/O 2013 報告会 Android Studio と Gradle
Google I/O 2013 報告会 Android Studio と Gradle
 
PSITE Letter for Prof Globio
PSITE Letter for Prof GlobioPSITE Letter for Prof Globio
PSITE Letter for Prof Globio
 
Solutions to Common Android Problems
Solutions to Common Android ProblemsSolutions to Common Android Problems
Solutions to Common Android Problems
 
Structured Query Language
Structured Query LanguageStructured Query Language
Structured Query Language
 
iOS Apps Development (SQLite Tutorial Part 2)
iOS Apps Development (SQLite Tutorial Part 2)iOS Apps Development (SQLite Tutorial Part 2)
iOS Apps Development (SQLite Tutorial Part 2)
 
OOP in Java
OOP in JavaOOP in Java
OOP in Java
 
Games and Java ME - Have fun and earn some money
Games and Java ME - Have fun and earn some moneyGames and Java ME - Have fun and earn some money
Games and Java ME - Have fun and earn some money
 
Practical OOP In Java
Practical OOP In JavaPractical OOP In Java
Practical OOP In Java
 
java swing
java swingjava swing
java swing
 
Ideas for Writing a Conclusion
Ideas for Writing a ConclusionIdeas for Writing a Conclusion
Ideas for Writing a Conclusion
 
Android Development: The Basics
Android Development: The BasicsAndroid Development: The Basics
Android Development: The Basics
 

Similar to Introduction to Android Development

Introduction to Android Development Latest
Introduction to Android Development LatestIntroduction to Android Development Latest
Introduction to Android Development LatestProf. Erwin Globio
 
Android terminologies
Android terminologiesAndroid terminologies
Android terminologies
jerry vasoya
 
PPT Companion to Android
PPT Companion to AndroidPPT Companion to Android
PPT Companion to Android
Dharani Kumar Madduri
 
Technology and Android.pptx
Technology and Android.pptxTechnology and Android.pptx
Technology and Android.pptx
muthulakshmi cse
 
Mobile application development
Mobile application developmentMobile application development
Mobile application development
umesh patil
 
Android presentation
Android presentationAndroid presentation
Android presentationImam Raza
 
Getting Started with Android 1.5
Getting Started with Android 1.5Getting Started with Android 1.5
Getting Started with Android 1.5
Gaurav Kohli
 
Nativa Android Applications development
Nativa Android Applications developmentNativa Android Applications development
Nativa Android Applications development
Alfredo Morresi
 
Creating Great Apps with MOTODEV Studio for Android
Creating Great Apps with MOTODEV Studio for AndroidCreating Great Apps with MOTODEV Studio for Android
Creating Great Apps with MOTODEV Studio for Android
Motorola Mobility - MOTODEV
 
architecture of android.pptx
architecture of android.pptxarchitecture of android.pptx
architecture of android.pptx
allurestore
 
Android In A Nutshell
Android In A NutshellAndroid In A Nutshell
Android In A Nutshell
Ted Chien
 
Android platform
Android platform Android platform
Android platform
Rashmi Warghade
 
Sogeti - Android tech track presentation - 24 february 2011
Sogeti - Android tech track presentation - 24 february 2011Sogeti - Android tech track presentation - 24 february 2011
Sogeti - Android tech track presentation - 24 february 2011
Kenneth van Rumste
 
Analysis Of The Original Version Of Java
Analysis Of The Original Version Of JavaAnalysis Of The Original Version Of Java
Analysis Of The Original Version Of Java
Amanda Brady
 
Getting started with android dev and test perspective
Getting started with android   dev and test perspectiveGetting started with android   dev and test perspective
Getting started with android dev and test perspective
Gunjan Kumar
 
Android
AndroidAndroid
Getting started with android programming
Getting started with android programmingGetting started with android programming
Getting started with android programming
PERKYTORIALS
 
Mobile Application Development-Lecture 03 & 04.pdf
Mobile Application Development-Lecture 03 & 04.pdfMobile Application Development-Lecture 03 & 04.pdf
Mobile Application Development-Lecture 03 & 04.pdf
AbdullahMunir32
 
Seminar on android app development
Seminar on android app developmentSeminar on android app development
Seminar on android app development
AbhishekKumar4779
 

Similar to Introduction to Android Development (20)

Introduction to Android Development Latest
Introduction to Android Development LatestIntroduction to Android Development Latest
Introduction to Android Development Latest
 
Android terminologies
Android terminologiesAndroid terminologies
Android terminologies
 
PPT Companion to Android
PPT Companion to AndroidPPT Companion to Android
PPT Companion to Android
 
Technology and Android.pptx
Technology and Android.pptxTechnology and Android.pptx
Technology and Android.pptx
 
Mobile application development
Mobile application developmentMobile application development
Mobile application development
 
Android presentation
Android presentationAndroid presentation
Android presentation
 
Getting Started with Android 1.5
Getting Started with Android 1.5Getting Started with Android 1.5
Getting Started with Android 1.5
 
Nativa Android Applications development
Nativa Android Applications developmentNativa Android Applications development
Nativa Android Applications development
 
Android dev o_auth
Android dev o_authAndroid dev o_auth
Android dev o_auth
 
Creating Great Apps with MOTODEV Studio for Android
Creating Great Apps with MOTODEV Studio for AndroidCreating Great Apps with MOTODEV Studio for Android
Creating Great Apps with MOTODEV Studio for Android
 
architecture of android.pptx
architecture of android.pptxarchitecture of android.pptx
architecture of android.pptx
 
Android In A Nutshell
Android In A NutshellAndroid In A Nutshell
Android In A Nutshell
 
Android platform
Android platform Android platform
Android platform
 
Sogeti - Android tech track presentation - 24 february 2011
Sogeti - Android tech track presentation - 24 february 2011Sogeti - Android tech track presentation - 24 february 2011
Sogeti - Android tech track presentation - 24 february 2011
 
Analysis Of The Original Version Of Java
Analysis Of The Original Version Of JavaAnalysis Of The Original Version Of Java
Analysis Of The Original Version Of Java
 
Getting started with android dev and test perspective
Getting started with android   dev and test perspectiveGetting started with android   dev and test perspective
Getting started with android dev and test perspective
 
Android
AndroidAndroid
Android
 
Getting started with android programming
Getting started with android programmingGetting started with android programming
Getting started with android programming
 
Mobile Application Development-Lecture 03 & 04.pdf
Mobile Application Development-Lecture 03 & 04.pdfMobile Application Development-Lecture 03 & 04.pdf
Mobile Application Development-Lecture 03 & 04.pdf
 
Seminar on android app development
Seminar on android app developmentSeminar on android app development
Seminar on android app development
 

More from Prof. Erwin Globio

Embedded System Presentation
Embedded System PresentationEmbedded System Presentation
Embedded System Presentation
Prof. Erwin Globio
 
BSCS | BSIT Thesis Guidelines
BSCS | BSIT Thesis GuidelinesBSCS | BSIT Thesis Guidelines
BSCS | BSIT Thesis Guidelines
Prof. Erwin Globio
 
Cisco Router Basic Configuration
Cisco Router Basic ConfigurationCisco Router Basic Configuration
Cisco Router Basic ConfigurationProf. Erwin Globio
 
Introduction to iOS Apps Development
Introduction to iOS Apps DevelopmentIntroduction to iOS Apps Development
Introduction to iOS Apps DevelopmentProf. Erwin Globio
 
iOS Apps Development (SQLite Tutorial Part 1)
iOS Apps Development (SQLite Tutorial Part 1)iOS Apps Development (SQLite Tutorial Part 1)
iOS Apps Development (SQLite Tutorial Part 1)Prof. Erwin Globio
 
Introduction to Computer Programming
Introduction to Computer ProgrammingIntroduction to Computer Programming
Introduction to Computer ProgrammingProf. Erwin Globio
 
Android Fragments
Android FragmentsAndroid Fragments
Android Fragments
Prof. Erwin Globio
 
Android Development Tools and Installation
Android Development Tools and InstallationAndroid Development Tools and Installation
Android Development Tools and Installation
Prof. Erwin Globio
 
Java Collections Tutorials
Java Collections TutorialsJava Collections Tutorials
Java Collections Tutorials
Prof. Erwin Globio
 
Action Bar in Android
Action Bar in AndroidAction Bar in Android
Action Bar in Android
Prof. Erwin Globio
 
Resource Speaker
Resource SpeakerResource Speaker
Resource Speaker
Prof. Erwin Globio
 
Guidelines to Qualitative Researches
Guidelines to Qualitative ResearchesGuidelines to Qualitative Researches
Guidelines to Qualitative Researches
Prof. Erwin Globio
 
Lecture on E-Presentation
Lecture on E-PresentationLecture on E-Presentation
Lecture on E-Presentation
Prof. Erwin Globio
 
Thesis Writing
Thesis WritingThesis Writing
Thesis Writing
Prof. Erwin Globio
 

More from Prof. Erwin Globio (20)

Embedded System Presentation
Embedded System PresentationEmbedded System Presentation
Embedded System Presentation
 
BSCS | BSIT Thesis Guidelines
BSCS | BSIT Thesis GuidelinesBSCS | BSIT Thesis Guidelines
BSCS | BSIT Thesis Guidelines
 
Sq lite presentation
Sq lite presentationSq lite presentation
Sq lite presentation
 
Ethics for IT Professionals
Ethics for IT ProfessionalsEthics for IT Professionals
Ethics for IT Professionals
 
Cisco Router Basic Configuration
Cisco Router Basic ConfigurationCisco Router Basic Configuration
Cisco Router Basic Configuration
 
Introduction to iOS Apps Development
Introduction to iOS Apps DevelopmentIntroduction to iOS Apps Development
Introduction to iOS Apps Development
 
Cloud Computing Latest
Cloud Computing LatestCloud Computing Latest
Cloud Computing Latest
 
iOS Apps Development (SQLite Tutorial Part 1)
iOS Apps Development (SQLite Tutorial Part 1)iOS Apps Development (SQLite Tutorial Part 1)
iOS Apps Development (SQLite Tutorial Part 1)
 
A tutorial on C++ Programming
A tutorial on C++ ProgrammingA tutorial on C++ Programming
A tutorial on C++ Programming
 
Overview of C Language
Overview of C LanguageOverview of C Language
Overview of C Language
 
Introduction to Computer Programming
Introduction to Computer ProgrammingIntroduction to Computer Programming
Introduction to Computer Programming
 
Android Fragments
Android FragmentsAndroid Fragments
Android Fragments
 
Android Development Tools and Installation
Android Development Tools and InstallationAndroid Development Tools and Installation
Android Development Tools and Installation
 
Java Collections Tutorials
Java Collections TutorialsJava Collections Tutorials
Java Collections Tutorials
 
Action Bar in Android
Action Bar in AndroidAction Bar in Android
Action Bar in Android
 
Resource Speaker
Resource SpeakerResource Speaker
Resource Speaker
 
Guidelines to Qualitative Researches
Guidelines to Qualitative ResearchesGuidelines to Qualitative Researches
Guidelines to Qualitative Researches
 
Lecture on E-Presentation
Lecture on E-PresentationLecture on E-Presentation
Lecture on E-Presentation
 
Thesis Writing
Thesis WritingThesis Writing
Thesis Writing
 
Project Proposal Guidelines
Project Proposal GuidelinesProject Proposal Guidelines
Project Proposal Guidelines
 

Recently uploaded

PCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase TeamPCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase Team
ControlCase
 
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdfFIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance
 
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdf
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdfSmart TV Buyer Insights Survey 2024 by 91mobiles.pdf
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdf
91mobiles
 
FIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance Osaka Seminar: Overview.pdfFIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance
 
Knowledge engineering: from people to machines and back
Knowledge engineering: from people to machines and backKnowledge engineering: from people to machines and back
Knowledge engineering: from people to machines and back
Elena Simperl
 
How world-class product teams are winning in the AI era by CEO and Founder, P...
How world-class product teams are winning in the AI era by CEO and Founder, P...How world-class product teams are winning in the AI era by CEO and Founder, P...
How world-class product teams are winning in the AI era by CEO and Founder, P...
Product School
 
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
Product School
 
Generating a custom Ruby SDK for your web service or Rails API using Smithy
Generating a custom Ruby SDK for your web service or Rails API using SmithyGenerating a custom Ruby SDK for your web service or Rails API using Smithy
Generating a custom Ruby SDK for your web service or Rails API using Smithy
g2nightmarescribd
 
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
Sri Ambati
 
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Albert Hoitingh
 
Connector Corner: Automate dynamic content and events by pushing a button
Connector Corner: Automate dynamic content and events by pushing a buttonConnector Corner: Automate dynamic content and events by pushing a button
Connector Corner: Automate dynamic content and events by pushing a button
DianaGray10
 
The Art of the Pitch: WordPress Relationships and Sales
The Art of the Pitch: WordPress Relationships and SalesThe Art of the Pitch: WordPress Relationships and Sales
The Art of the Pitch: WordPress Relationships and Sales
Laura Byrne
 
The Future of Platform Engineering
The Future of Platform EngineeringThe Future of Platform Engineering
The Future of Platform Engineering
Jemma Hussein Allen
 
UiPath Test Automation using UiPath Test Suite series, part 4
UiPath Test Automation using UiPath Test Suite series, part 4UiPath Test Automation using UiPath Test Suite series, part 4
UiPath Test Automation using UiPath Test Suite series, part 4
DianaGray10
 
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
DanBrown980551
 
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
Product School
 
Designing Great Products: The Power of Design and Leadership by Chief Designe...
Designing Great Products: The Power of Design and Leadership by Chief Designe...Designing Great Products: The Power of Design and Leadership by Chief Designe...
Designing Great Products: The Power of Design and Leadership by Chief Designe...
Product School
 
Leading Change strategies and insights for effective change management pdf 1.pdf
Leading Change strategies and insights for effective change management pdf 1.pdfLeading Change strategies and insights for effective change management pdf 1.pdf
Leading Change strategies and insights for effective change management pdf 1.pdf
OnBoard
 
When stars align: studies in data quality, knowledge graphs, and machine lear...
When stars align: studies in data quality, knowledge graphs, and machine lear...When stars align: studies in data quality, knowledge graphs, and machine lear...
When stars align: studies in data quality, knowledge graphs, and machine lear...
Elena Simperl
 
Elevating Tactical DDD Patterns Through Object Calisthenics
Elevating Tactical DDD Patterns Through Object CalisthenicsElevating Tactical DDD Patterns Through Object Calisthenics
Elevating Tactical DDD Patterns Through Object Calisthenics
Dorra BARTAGUIZ
 

Recently uploaded (20)

PCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase TeamPCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase Team
 
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdfFIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
 
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdf
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdfSmart TV Buyer Insights Survey 2024 by 91mobiles.pdf
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdf
 
FIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance Osaka Seminar: Overview.pdfFIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance Osaka Seminar: Overview.pdf
 
Knowledge engineering: from people to machines and back
Knowledge engineering: from people to machines and backKnowledge engineering: from people to machines and back
Knowledge engineering: from people to machines and back
 
How world-class product teams are winning in the AI era by CEO and Founder, P...
How world-class product teams are winning in the AI era by CEO and Founder, P...How world-class product teams are winning in the AI era by CEO and Founder, P...
How world-class product teams are winning in the AI era by CEO and Founder, P...
 
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
 
Generating a custom Ruby SDK for your web service or Rails API using Smithy
Generating a custom Ruby SDK for your web service or Rails API using SmithyGenerating a custom Ruby SDK for your web service or Rails API using Smithy
Generating a custom Ruby SDK for your web service or Rails API using Smithy
 
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
 
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
 
Connector Corner: Automate dynamic content and events by pushing a button
Connector Corner: Automate dynamic content and events by pushing a buttonConnector Corner: Automate dynamic content and events by pushing a button
Connector Corner: Automate dynamic content and events by pushing a button
 
The Art of the Pitch: WordPress Relationships and Sales
The Art of the Pitch: WordPress Relationships and SalesThe Art of the Pitch: WordPress Relationships and Sales
The Art of the Pitch: WordPress Relationships and Sales
 
The Future of Platform Engineering
The Future of Platform EngineeringThe Future of Platform Engineering
The Future of Platform Engineering
 
UiPath Test Automation using UiPath Test Suite series, part 4
UiPath Test Automation using UiPath Test Suite series, part 4UiPath Test Automation using UiPath Test Suite series, part 4
UiPath Test Automation using UiPath Test Suite series, part 4
 
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
 
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
 
Designing Great Products: The Power of Design and Leadership by Chief Designe...
Designing Great Products: The Power of Design and Leadership by Chief Designe...Designing Great Products: The Power of Design and Leadership by Chief Designe...
Designing Great Products: The Power of Design and Leadership by Chief Designe...
 
Leading Change strategies and insights for effective change management pdf 1.pdf
Leading Change strategies and insights for effective change management pdf 1.pdfLeading Change strategies and insights for effective change management pdf 1.pdf
Leading Change strategies and insights for effective change management pdf 1.pdf
 
When stars align: studies in data quality, knowledge graphs, and machine lear...
When stars align: studies in data quality, knowledge graphs, and machine lear...When stars align: studies in data quality, knowledge graphs, and machine lear...
When stars align: studies in data quality, knowledge graphs, and machine lear...
 
Elevating Tactical DDD Patterns Through Object Calisthenics
Elevating Tactical DDD Patterns Through Object CalisthenicsElevating Tactical DDD Patterns Through Object Calisthenics
Elevating Tactical DDD Patterns Through Object Calisthenics
 

Introduction to Android Development

  • 1. Mobile Innovations Prof. Erwin M. Globio, MSIT
  • 2. APP–Market Fit PLATFORM (Android, Bada, Java, Symbian, Maemo, Blackberry; phone exclusive or open) PHONE BRAND (Samsung, Nokia, Sony, LG, BB, ?) PHONE TYPE (Feature phone, Smartphone) TELCO PLANS (variability of cost structures: voice ; text; data per-kb, per-hr) USERS (who, using which phone, on which telco or plan?)
  • 3. Criteria for Good Apps Well-defined target market; (link to intangible qualities) Functionality: runs successfully and with ease on Android mobile phones, does what it’s supposed to do;  Uniqueness in its application; doing something out of the common  Creativity in design and in the use of available technologies( UI, graphics, etc) Usefulness in addressing users’ needs and problems, with high potential for adoption by customers  Usability, interface and navigation designed for ease and comfort of user Platform and modular design.
  • 4. Intangible Qualities of Good Products What is its magnet – why will it attract the user? What is its anchor – what will hold the user to it? Does it have a profit engine for the user – will it make the relationship pay? How is it spiced it up to make for a satisfying customer experience?
  • 5. Business Models Sale of app Share of telco billings (voice, text, data) Subscription (per-use, per month) % of sales Sponsorship or ads (Paid web hosting – service provider or cloud)
  • 6. Introduction to Android Development Full of potential to be utilized
  • 7. Topics to be discussed... Introduction to the Android Platform Overview of the Android SDK in Eclipse Working with the User Interface Working with Data Storage Sharing information between applications Networking Advance phone features Publishing applications Best Practices
  • 8. Topics to be discussed... Introduction to the Android Platform Overview of the Android SDK in Eclipse Working with the User Interface
  • 9. What is Android? Android is a software stack for mobile devices that includes an operating system, middleware and key applications.
  • 10. What are the features of Android? Application framework Dalvik virtual machine Integrated browser Optimized graphics SQLite Media support GSM Telephony Bluetooth, EDGE, 3G, and WiFi Camera, GPS, compass, and accelerometer Rich development environment
  • 12. Working with Android Development Tools (ADT) The Android Development Tools (ADT) plugin for Eclipse adds powerful extensions to the Eclipse integrated development environment. It gives you access to other Android development tools from inside the Eclipse IDE. It provides a New Project Wizard It automates and simplifies the process of building your Android application. It provides an Android code editor that helps you write valid XML for your Android manifest and resource files. It will even export your project into a signed APK, which can be distributed to users.
  • 13. Installing ADT To install in Eclipse 3.5 (Galileo) Start Eclipse, then select Help> Install New Software In the Available Software dialog, click Add.... In the Add Site dialog that appears, enter a name for the remote site (for example, "Android Plugin") in the "Name" field. Enter location https://dl-ssl.google.com/android/eclipse/ Back in the Available Software view, you should now see "Developer Tools" added to the list. Select the checkbox next to Developer Tools, which will automatically select the nested tools Android DDMS and Android Development Tools. Click Next. In the resulting Install Details dialog, the Android DDMS and Android Development Tools features are listed. Click Nextto read and accept the license agreement and install any dependencies, then click Finish. Restart Eclipse.
  • 14. What do you get?
  • 15. Working with Eclipse (New Project)
  • 16. Working with Eclipse (New Project)
  • 17. Working with Eclipse (New AVD)
  • 18. Application Fundamentals Applications are written using Java The Android Asset Packaging Tool generates apk (Android Package) files containing the code and any data and resources needed Each application runs in its own Linux process Each application has its own VM Each application has its own user id, permissions are set accordingly
  • 19. Application Components A central feature of Android is that one application can make use of elements of other applications (provided those applications permit it) Android applications don't have a single entry point for everything in the application (no main() function, for example) They have essential components that the system can instantiate and run as needed
  • 20. Application Components Activities - An activity presents a visual user interface for one focused endeavor the user can undertake. Services - A service doesn't have a visual user interface, but rather runs in the background for an indefinite period of time. Broadcast Receivers - A broadcast receiver is a component that does nothing but receive and react to broadcast announcements Content Providers - A content provider makes a specific set of the application's data available to other applications. The data can be stored in the file system, in an SQLite database, or in any other manner that makes sense. Intent - An intent is an Intent object that holds the content of the message
  • 21. Let’s create our first application
  • 27. Looking at the project (Strings.xml)
  • 28. Looking at the project Layout(main.xml)
  • 29. Looking at the project (main.java)
  • 30. Starting with an Activity The main starting point of most applications There is no concept of “main” program Each activity can be executed or invoked at any time One application can have multiple “activities” An example of acrivity would be “Searching for an application in the store” An Activity can have several “Views” or “View Groups” to define its user inteface.
  • 32. Activity Source package org.feueac.android; import android.app.Activity; import android.os.Bundle; publicclass Main extends Activity { @Override publicvoid onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); } }
  • 33. What is R.layout.main? <?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>
  • 34. Views in an Activity The user interface is built using View and ViewGroup objects Basic units of user interface expression on the Android platform View class serves as the base for subclasses ViewGroupclass serves as the base for subclasses called "layouts"
  • 35. View Hierarchy Activity must call the setContentView()
  • 36. The different layouts Linear Layout Relative Layout Table Layout Grid View Tab Layout List View
  • 37. Handling Events in an Activity public class main extends Activity implements OnClickListener Button myButton = (Button) findViewById(R.id.hello_button);myButton.setOnClickListener(this); @Overridepublic void onClick(View v) {}