Starting Development Nasrullah. What you need to begin Android application run with in a Dalvik virtual machine, you can write them on any platform that.

Slides:



Advertisements
Similar presentations
FatMax Licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 2.5 LicenseCreative Commons Attribution-NonCommercial-ShareAlike 2.5.
Advertisements

Android Application Development A Tutorial Driven Course.
Google Android Introduction to Mobile Computing. Android is part of the build a better phone process Open Handset Alliance produces Android Comprises.
Introduction App Dev For Mobile Devices NASRULLAH.
Android architecture overview
Introduction to Android Mohammad A. Gowayyed CS334-Spring 2014.
Objectives Overview Define an operating system
Android Tools & Wireless ADB Αντρέας Λύμπουρας Θεόφιλος Φωκάς Ζαχαρίας Χ’’Λάμπρου.
Windows XP Basics OVERVIEW Next.
All About Android Introduction to Android 1. Creating a New App “These aren’t the droids we’re looking for.” Obi-wan Kenobi 1. Bring up Eclipse. 2. Click.
Filip Debelić What is it? Android is a mobile operating system (OS) based on the Linux kernel and currently developed by Google Android,
DEPARTMENT OF COMPUTER ENGINEERING
ANDROID OPERATING SYSTEM Guided By,Presented By, Ajay B.N Somashekar B.T Asst Professor MTech 2 nd Sem (CE)Dept of CS & E.
V0.01 © 2009 Research In Motion Limited Introduction to Java Application Development for the BlackBerry Smartphone Trainer name Date.
Mobile Application Development
Google Android as a mobile development platform T Internet Technologies for Mobile Computing Olli Mäkinen.
Interpret Application Specifications
Android Programming Beomjoo Seo Sep., 12 CS5248 Fall 2012.
2. Setting Up Your Android Development Environment.
Asst.Prof.Dr.Ahmet Ünveren SPRING Computer Engineering Department Asst.Prof.Dr.Ahmet Ünveren SPRING Computer Engineering Department.
ANDROID PROGRAMMING MODULE 1 – GETTING STARTED
UFCFX5-15-3Mobile Device Development Android Development Environments and Windows.
SET UP COMPUTER ** PLEASE BE AWARE SCREENSHOTS MAY NOT MATCH **
Emerging Platform#4: Android Bina Ramamurthy.  Android is an Operating system.  Android is an emerging platform for mobile devices.  Initially developed.
Android Application Development 2013 PClassic Chris Murphy 1.
Android Introduction Platform Overview.
Mobile Application Development with ANDROID Tejas Lagvankar UMBC 29 April 2009.
About me Yichuan Wang Android Basics Credit goes to Google and UMBC.
Android Software Development
Android Introduction Based on slides made by
© Keren Kalif Intro to Android Development Written by Keren Kalif, Edited by Liron Blecher Contains slides from Google I/O presentation.
@2011 Mihail L. Sichitiu1 Android Introduction Platform Overview.
Android Programming By Mohsen Biglari Android Programming, Part1: Introduction 1 Part1: Introduction By Mohsen Biglari.
Operating system for mobile devices with a Java programming interface. Provides tools, e.g. a compiler, debugger, device emulator, and its own Java Virtual.
Debugging for Android 1 CS440. Debugging for Android  You have three options:  Android Debug Bridge (ADB)  Dalvik Debug Monitor Device (DDMS)  Device.
Android Info mostly based on Pro Android 3.  User Applications  Java Libraries – most of Java standard edition ◦ Activities/Services ◦ UI/Graphics/View.
Copyright© Jeffrey Jongko, Ateneo de Manila University Android.
01. Introduction to Android Prof. Oum Saokosal Master of Engineering in Information Systems, South Korea
ANDROID Presented By Mastan Vali.SK. © artesis 2008 | 2 1. Introduction 2. Platform 3. Software development 4. Advantages Main topics.
DUE Hello World on the Android Platform.
16 Services and Broadcast Receivers CSNB544 Mobile Application Development Thanks to Utexas Austin.
Android for Java Developers Denver Java Users Group Jan 11, Mike
10/10/2015 E.R.Edwards 10/10/2015 Staffordshire University School of Computing Introduction to Android Overview of Android System Android Components Component.
Overview of Android Application Development
Android architecture & setting up. Android operating system comprises of different software components arranges in stack. Different components of android.
ANDROID L. Grewe Components  Java Standard Development Kit (JDK) (download) (latest version)  AndroidStudio.
 Installation of Android Development Environment  Creating the App with OpenGL ES API  Running the App on Emulator Android App Development.
Presented by Christopher Wilkins Jeff Titus Stephan Krach Pablo Bajo.
Chapter 9 Operating Systems Discovering Computers Technology in a World of Computers, Mobile Devices, and the Internet.
TODAY Android Studio Installation Getting started Creating your 1 st App Beginning to understanding Intents.
THE WINDOWS OPERATING SYSTEM Computer Basics 1.2.
Intoduction to Andriod studio Environment With a hello world program.
1 Android Workshop Platform Overview. 2 What is Android?  Android is a software stack for mobile devices that includes an operating system, middleware.
Android operating system N. Sravani M. Tech(CSE) (09251D5804)
Accelerometer based motion gestures for mobile devices Presented by – Neel Parikh Advisor Committee members Dr. Chris Pollett Dr. Robert Chun Dr. Mark.
The Ingredients of Android Applications. A simple application in a process In a classical programming environment, the OS would load the program code.
Android. Android An Open Handset Alliance Project A software platform and operating system for mobile devices Based on the Linux kernel Developed by Google.
Introduction to Android Programming
The Basics of Android App Development Sankarshan Mridha Satadal Sengupta.
DISCOVERING COMPUTERS 2018 Digital Technology, Data, and Devices
Mobile Device Development
Android Mobile Application Development
Android.
CMPE419 Mobile Application Development
CS323 Android Getting Started
Application Development A Tutorial Driven Course
Korea Software HRD Center
Android Platform, Android App Basic Components
Emerging Platform#3 Android & Programming an App
CMPE419 Mobile Application Development
Presentation transcript:

Starting Development Nasrullah

What you need to begin Android application run with in a Dalvik virtual machine, you can write them on any platform that supports the developer tools. Microsoft Windows Mac OS X or later Linux

Installation

To get started you need to download and install the following The Android SDK Java Development kit (5 or 6) You can download jdk 6.0 from here e/downloads/index.html

Download and installing SDK Android development home page You need atleast on SDK platform,you can do this,you can do this by on Windows by running SDK Setup.exe.

Step 3:- You have to download eclipse with ADT plug-in To download the eclipse

Using the eclipse plugin The ADT plugin for elipse simplifies your Android development by integrating the development tools directly into IDE,

Installing ADT Plug-in

If you are behind a firewall (such as a IBA firewall), make sure that you have properly configured your proxy settings in Eclipse. In Eclipse, you can configure proxy information from the main Eclipse menu in Window >Preferences > General > Network Connections.

Window > Preferences> Android modify your ADT preferences in Eclipse to point to the Android SDK directory:(very important)

Creating your first Android Application

The template “Iba_World, created by the wizard overrides the onCreate method to call the setContentView,which lays our her interface by inflating a layout resource.

The resource of an android project are stored in res folder of your project hierarchy,which includes drawables,layouts,values. The ADT Plugin interprets these resources to provide design time access to them through R variable

Defining your UI in XML and inflating it is the preferred way of implementing your user interfaces, as it neatly decouples your application logic from your UI design. To get access to your UI elements in code,you add identifier attributes to them in the XML definition. You can then use the findViewById method to return a reference to each nameditem.

TextView text = (TextView) findViewById(R.id.myTextView); How to access it into the code

Android Application Component

Important Android Compnents(Activity)1 Activity represents the presentation layer of an Android application. A simplified (and slightly incorrect) description is that an Activity is a a screen which the user sees.. An Android application can have several activities and it can be switched between them during runtime of the application.

Important android components Views are user interface widgets, e.g. buttons or text fields. The base class for all Views is android.view.View. The layout of the Views is managed by subclasses of type android.view.ViewGroups. Views often have attributes which can be used to change their appearance and behavior.

Important android compnents(services) Services perform background tasks without providing an UI. They can notify the user via the notification framework in Android.

Important android compnents(ContentProvider) ContentProvider provides an structured interface to data. Via a ContentProvider your application can share data with other applications. Android contains an SQLite database which is frequently used in conjunction with a ContentProvider to persists the data of the ContentProvider.

Important android compnents(Intents Intents are asynchronous messages which allow the application to request functionality from other components of the Android systen, e.g. from Services or Activities. An application can call a component directly (explicit intent) or ask the Android system to evaluate registered components for a certain Intents (implicit intents). For example the application could implement sharing of data via an Intent and all components which allow sharing of data would be available for the user to select. Applications register themselves to an intent via an IntentFilter. Intents allow to combine loosely coupled components to perform certain tasks.

Important android compnents(BroadcastReceiver) BroadcastReceiver can be registered to receives system messages and Intents. BroadcastReceiver will get notified by the Android system if the specified situation happens. For example a BroadcastReceiver could get called once the system completed its boot process or if a phone call is received.

Important android compnents(widgets) Widgets are interactive components which are primary used on the Android homescreen. They typically display some kind of data and allow the user to perform actions via them. For example a Widget could display a short summary of new s and if the user select a it could start the application with the selected

You need Android SDK and JDK(java development kit) to build Android Applications. Android code is written with java syntax, before it can be run,your project must first be translated into Dalvik byte code. SDK download includes all the libraries, full documentation and sample applications, Android emulator and Dalvik Debug Monitoring Service(DDMS) to help debug them.

Types of Android Applications 1.Foreground:- an application that is usefull when it is in the foreground and is effectively suspended when it is not visible.Games and map mashups are common examples. 2.Background:- These applications run silently in the background with very little user input.They often listen for messages and actions caused by the hardware,system,or other applications, rather than rely on the user interaction

Continued 3.Intermittent:- often you want to create the application that react to user input but is still usefull when it is not active in the foreground,Chat and apps are typical examples.these applications are generally a union of visible activities and invisible background services.

Continued 4.Widgets in some circumstances your application my entirely consists of a widget component.using widgets,you can create interactice visual compnents that users can add to their home screens,widgets only applications are used to display dynamic information such as battery levels,weather froecast or the date and time

Developing for mobile devices Compared to desktops and notebook computers mobile devices have relatively 1.Low processing power 2.Limited Ram 3.Limited permanent storage capacity 4.Small screen with low resolution 5.High cost associated with data transfer 6.Slow data trasfer rate with low latency 7.Unreliable data connections 8.Limited battery life

Be efficient :- mobile devices are valued by their small size and long battery life over potential improvement in processor speed This means that you always need to optimize your code so that it runs quickly and responsively. Code efficiency is a big topic in software engineering. Efficiency is important for resource-constrained environments like mobile devices.

Expect limited capacity :- Advances in Flash memory and solid-state disks have led to a dramatic increase in mobile-device storage capacities. Android applications must be installed on the internal memory. You should carefully consider how you store your application data.To make life easier you can use the Android database and content providers to persist,reuse and share large quantities of data Don’t leave files on the file system or records in database when they are no longer needed.

Design for small screens:- The small sizes and protability of mobiles are a challenge for creating good interfaces.Write your applications knowing that users will ofter only glance at the small screen.Make your application intuitive and easy to use by reducing the number of controls and putting the most important information front and center.Graphical controls are an excellent means of displaying of information in a way that is easy to understand.

Continued: rather than a screen full of text with lots of buttons and text-entry boxes,use colors,shapes and graphics to convey the information. If you are planning to include touch-screen support,you ‘ll need to consider how touch input is going to affect your interface design,so make sure,your views are big enough to support interaction using a finger on the screen.

Expect Low speeds,High Latency:- when you are developing your internet based applications,it is best to assume that the internnet connection would be slow,intermittent,and expensive,with unlimited 3G plans and citywide wi-fi,this is changing,but design for worst case ensures that you always deliver a high standard uer experience. This means making sure that your application can handle losing (or not finding) a data connction.

At What Cost:- some of the more powerful features on your mobile can come at price.Services like SMS,some location based services and data transfer can sometimes incur an additional tariff from your service provider. Costs associated with functionality in your application be minimized and the users be aware when an action they perform might result in their being charged Minimize the interaction costs by doing the following Trasferring as little data as possible Caching data and GPS results to eliminate redundant or repetitive lookups. Stopping all data transfers and GPS updates when your activity is not visible in the foreground and if they are being used to update the UI Keeping the refresh/update rates for data transfer (and location lookups) as low as practicable

Continued:- Scheduling big updates or transfer at “ off- peak” times using alarams Respecting the user’s preferenced for backgound data transfer. The best solution is to use a lower quality option that comes at a lower cost.

Android Emulator The android emulator is a perfect tool for testing and debugging your application, Emulator is an implementation of Dalvik virtual machine,making it a valid platform for running android application as any android phone.u ADT PLUG-IN integrates the emulator into the Eclipse To execute the emulator,you need to create the virtual device. Emulator doesn’t implement all the mobile hardware features supported by the android,it does not implement the camera,vibration,LEDs,actual phone calls,the accelometer,USB connections,audio capture,or battery charge level

Short cuts for emulator Alt+Enter maximizes the emulator. Nice for demos. Ctrl+F11 changes the orientation of the emulator. F8 turns network on / off.

Dalvik Debug Monitor Service The emulator let you see how your application will look,behave and interact, but to really see what’s happening under the surface you need the Dalvik Debug Monitoring Service, The DDMS is a powerful debugging tool that lets you interrogate active processes,view the stack and heap,watch and pause active threads and explore the file system of any connected Android device

Android Debugging Bridge The communication with the emulator or your Android device might have problems. This communication is handled by the Android Debug Bridge (adb). Eclipse allows to reset the adb in case this causes problems. Select therefore the DDMS perspective via Window → Open Perspective → Other → DDMS