19
Sessão Técnica Portugal GTUG Como fazer boas aplicações para Android Diogo Júnio - @drjunior Bernardo Pina - @bioblink Manuel Silva - @manuelvsc

PT GTUG 1st Technical Tession - Android

Embed Size (px)

Citation preview

Sessão Técnica Portugal GTUG Como fazer boas aplicações para Android

Diogo Júnio - @drjunior Bernardo Pina - @bioblink Manuel Silva - @manuelvsc

GTUG stand for Google Technology Users Group

GTUGs are user groups for people who are

interested in Google's developer technology

What’s a GTUG?

What is Android?

Is a mobile operating system

Run on the Linux kernel Developed by Google and the Open Handset Alliance (a consortium of 48 hardware, software, and telecom companies )

Was announced publicly on 5 November 2007 First mobile device, the G1, was announced on

September 2008

What is Android?

An open source, open platform for mobile development

All the SDK, API and platfrom source is available

No licensing, no app review Replace any system app with your own

Programming Android Applications

Written in Java

Run in Dalvik Virtual Machine (optimized for mobile devices)

Uses its own bytecode, not Java Bytecode

Resources –Hardware Dependent

GSM Bluetooth, 3G, WIFI

Touchscreen, keypad, Trackball

Camera, GPS, Compass and Accelerometer NFC…

Resources –Hardware Independent

Integrated Browser based on WebKit Engine

Graphics 2d and 3d optimized(OpenGL ES 1.0)

SQLite to save structured data

Multimedia support (MPEG4, H.264, MP3, AAC, AMR, JPG, PNG, GIF)

What is an application ? (1/2)

Application package file : myapplication.apk Composed by one or more activities AndroidManifest.xml

Activities - A single screen in your application

Views - Object who know how to draw itself on the screen - ListView, MapView, WebView, TextView, EditText…

What is an application ? (2/2)

Layouts - Views Containers - RelativeLayout, Linearlayout, FrameLayout…

Permissions - Low level access to features(GSM, Internet, GPS, SMS…) - Declared by the developer - User prompt on the market at installation

Services - Background services

Notifications - Receive and react to broadcasted events

How to code ?

Java SDK Android SDK - Android Emulator – Linux, Windows , Mac - Command Line Tools - adb - Android Debug Bridge

Eclipse Eclipse Plugin - ADT

Tools ADT Android Emulator

Android Virtual Device Hierarchy Viewer

Layoutopt Draw 9-Patch Dalvik debug Monitor Service

Android Debug Bridge Android Asset Packaging Tool

Android interface definition language Sqlite3 Traceview

Mksdcard Dx

Ui/Aplication Exerciser Monkey Android

zipalign

User Interface Guidelines Icon Design Guidelines

- The Icon Guidelines describe each kind of icon in detail, with

specifications for the size, color, shading, and other details for making all your icons fit in the Android system.

Activity and Task Design Guidelines - These guidelines describe how activities work, illustrates them

with examples, and describes important underlying principles and mechanisms, such as multitasking, activity reuse, intents, the activity stack, and tasks. It covers this all from a high-level design perspective.

Menu Design Guidelines - These guidelines describe the difference between Options and

Context menus, how to arrange menu items, when to put commands on-screen, and other details about menu design.

http://developer.android.com/guide/practices/ui_guidelines/index.htm l

http://speckyboy.com/2010/05/10/android-app-developers-gui-kits-icons-fonts-and-tools/

Android App Developers GUI Kits, Icons, Fonts and Tools

Android Asset Studio

Android Icon Templates

http://j.mp/androidassetstudio

http://developer.android.com/guide/practices/ui_guidelines/icon_design.html#templatespack

UI Prototyping Stencils

Dashboard

Dashboard - The dashboard pattern serves as a home orientation activity for your users. - It is meant to include the categories or features of your application.

Actionbar

ActionBar - The Action bar gives your users onscreen access to the most frequently used actions in your application. - It works with the Dashboard, as the upper left portion of the Action bar is where we recommend you place a quick link back to the dashboard or other app home screen.

Time to code!!!