Beginning Android 4. Games Development. Mario Zechner. Robert Green

Save this PDF as:
 WORD  PNG  TXT  JPG

Size: px
Start display at page:

Download "Beginning Android 4. Games Development. Mario Zechner. Robert Green"

Transcription

1 Beginning Android 4 Games Development Mario Zechner Robert Green

2 Contents Contents at a Glance About the Authors Acknowledgments Introduction iv xii xiii xiv Chapter 1: Android, the New Kid on the Block... 1 A Brief History of Android 2 Fragmentation 3 The Role of Google 4 The Android Open Source Project 4 The Android Market 4 Challenges, Device Seeding, and Google I/O 5 Android's Features and Architecture 6 The Kernel 7 The Runtime and Dalvik 7 System Libraries 8 The Application Framework 9 The Software Development Kit 10 The Developer Community 11 Devices, Devices, Devices! 12 Hardware 12 The Range of Devices 14 Compatibility Across All Devices 19 Mobile Gaming Is Different 20 A Gaming Machine in Every Pocket 20 Always Connected 21 Casual and Hardcore 22 Big Market, Small Developers 22 Summary 23 Chapter 2: First Steps with the Android SDK 25 Setting Up the Development Environment 25 Setting Up the JDK 26 Setting Up the Android SDK 26 V

3 CONTEXTS Installing Eclipse 28 Installing the ADT Eclipse Plug-In 28 A Quick Tour of Eclipse 30 Helpful Eclipse Shortcuts 32 Hello World, Android Style 33 Creating the Project 33 Exploring the Project 34 Writing the Application Code 36 Running and Debugging Android Applications 39 Connecting a Device 39 Creating an Android Virtual Device 39 Running an Application 41 Debugging an Application 44 LogCatand DDMS 48 Using ADB 50 Summary 51 Chapter 3: Game Development Genres: To Each One's Taste 54 Casual Games 54 Puzzle Games 56 Action and Arcade Games 58 Tower-Defense Games 61 Innovation 62 Game Design: The Pen Is Mightier Than the Code 63 Core Game Mechanics 64 A Story and an Art Style 66 Screens and Transitions 67 Code: The Nitty-Gritty Details 73 Application and Window Management 74 Input 75 File I/O 79 Audio 79 Graphics 84 The Game Framework 97 Summary 105 Chapter 4: Android for Game Developers 107 Defining an Android Application: The Manifest File 108 The <manifest> Element 109 The <application> Element 110 The <activity> Element 111 The <uses-permission> Element, 113 The <uses-feature> Element 114 The <uses-sdk> Element 116 Android Game Project Setup in Ten Easy Steps 117 Market Filters 119 Defining the Icon of Your Game 119 Android API Basics 121 vl

4 CONTENTS Creating a Test Project 121 The Activity Life Cycle 125 Input Device Handling 132 File Handling 152 Audio Programming 158 Playing Sound Effects 159 Streaming Music 163 Basic Graphics Programming 167 Best Practices 192 Summary 193 Chapter 5: An Android Game Development Framework 195 Plan of Attack 195 The AndroidFilelO Class 196 AndroidAudio, AndroidSound, and AndroidMusic: Crash, Bang, Boom! 197 Androidlnput and AccelerometerHandler 202 AccelerometerHandler: Which Side Is Up? 202 CompassHandler 204 The Pool Class: Because Reuse Is Good for You! 205 KeyboardHandler: Up, Up, Down, Down, Left, Right 207 Touch Handlers 211 Androidlnput: The Great Coordinator 219 AndroidGraphics and AndroidPixmap: Double Rainbow 221 Handling Different Screen Sizes and Resolutions 221 AndroidPixmap: Pixels for the People 226 AndroidGraphics: Serving Our Drawing Needs 227 AndroidFastRenderView: Loop, Stretch, Loop, Stretch 231 AndroidGame: Tying Everything Together 234 Summary 238 Chapter 6: Mr. Norn Invades Android 239 Creating the Assets 239 Setting Up the Project 241 MrNomGame: The Main Activity 242 Assets: A Convenient Asset Store 242 Settings: Keeping Track of User Choices and High Scores 243 LoadingScreen: Fetching the Assets from Disk 246 The Main Menu Screen 247 The HelpScreen Class(es) 251 The High-Scores Screen 253 Rendering Numbers: An Excursion 253 Implementing the Screen 255 Abstracting 257 Abstracting the World of Mr. Norn: Model, View, Controller 258 The GameScreen Class 270 Summary 277 Chapter 7: OpenGL ES: A Gentle Introduction 279 What is OpenGL ES and Why Should I Care? 279 The Programming Model: An Analogy 280 Vii

5 Projections Normalized Device Space and the Viewport Matrices The Rendering Pipeline Before We Begin GLSurfaceView: Making Things Easy Since 2008 GLGame: Implementing the Game Interface Look Mom, I Got a Red Triangle! Defining the Viewport Defining the Projection Matrix Specifying Triangles Putting It Together Specifying Per Vertex Color Texture Mapping: Wallpapering Made Easy Texture Coordinates Uploading Bitmaps Texture Filtering Disposing of Textures A Helpful Snippet Enabling Texturing Putting It Together A Texture Class Indexed Vertices: Because Re-use is Good for You Putting It Together A Vertices Class Alpha Blending: I Can See Through You 329 More Primitives: Points, Lines, Strips, and Fans 2D Transformations: Fun with the Model-View Matrix World and Model Space Matrices Again An Initial Example Using Translation More Transformations Optimizing for Performance Measuring Frame Rate The Curious Case of the Hero on Android 1.5 What's Making My OpenGL ES Rendering So Slow? v Removing Unnecessary State Changes 349 Reducing Texture Size Means Fewer Pixels to be Fetched Reducing Calls to OpenGL ES/JNI Methods The Concept of Binding Vertices InClosing Summary Chapter 8:2D Game Programming Tricks '. 356 Before We Begin 357 In the Beginning... There Was the Vector, 358 Working with Vectors 359 A Little Trigonometry 361 Implementing a Vector Class Vlil

6 CONTENTS A Simple Usage Example 366 A Little Physics in 2D 371 Newton and Euler, Best Friends Forever 371 Force and Mass 372 Playing Around, Theoretically 373 Playing Around, Practically 374 Collision Detection and Object Representation in 2D 378 Bounding Shapes 379 Constructing Bounding Shapes 381 Game Object Attributes 383 Broad-Phase and Narrow-Phase Collision Detection 384 An Elaborate Example 391 A Camera in 2D 404 The Camera2D Class 407 An Example, 409 Texture Atlas: Because Sharing Is Caring 410 An Example 412 Texture Regions, Sprites, and Batches: Hiding OpenGL ES 416 The TextureRegion Class 417 The SpriteBatcher Class, 418 Sprite Animation 427 The Animation Class 428 An Example 429 Summary 433 Chapter 9: Super Jumper: A 2D OpenGL ES Game. 435 Core Game Mechanics 435 A Backstory and Art Style 436 Screens and Transitions 437 Defining the Game World 438 Creating the Assets 441 The Ul Elements 441 Handling Text with Bitmap Fonts 443 The Game Elements 445 Texture Atlas to the Rescue 447 Music and Sound 448 Implementing Super Jumper 449 The Assets Class 450 The Settings Class 453 The Main Activity 454 The Font Class 456 GLScreen 457 The Main Menu Screen 458 The Help Screens 461 The High-Scores Screen 463 The Simulation Classes 466 The Game Screen 481 The WorldRenderer Class 489 Ix

7 CONTENTS To Optimize or Not to Optimize 492 Summary 493 Chapter 10: OpenGL ES: Going 3D 495 Before We Begin 495 Vertices in 3D 496 Vertices3: Storing 3D Positions 496 An Example 498 Perspective Projection: The Closer, the Bigger 502 Z-buffer: Bringing Order into Chaos 505 Fixing the Last Example 506 Blending: There's Nothing Behind You 507 Z-buffer Precision and Z-fighting 510 Defining 3D Meshes 511 A Cube: Hello World in 3D 512 An Example 514 Matrices and Transformations Again, 517 The Matrix Stack 518 Hierarchical Systems with the Matrix Stack 520 A Simple Camera System 527 Summary 531 Chapter 11:3D Programming Tricks 533 Before We Begin 533 Vectors in 3D 534 Lighting in OpenGL ES 538 How Lighting Works 538 Light Sources 540 Materials 541 How OpenGL ES Calculates Lighting: Vertex Normals 542 In Practice 542 Some Notes on Lighting in OpenGL ES 556 Mipmapping 557 Simple Cameras 561 The First-Person or Euler Camera 562 A Euler Camera Example 565 A Look-At Camera 571 Loading Models 573 The Wavefront OBJ Format 573 Implementing an OBJ Loader 574 Using the OBJ Loader 579 Some Notes on Loading Models 579 A Little Physics in 3D 580 Collision Detection and Object Representation in 3D 581 Bounding Shapes in 3D 581 Bounding Sphere Overlap Testing 582 Game0bject3D and DynamicGameObject3D 583 Summary 584 X

8 CONTENTS Chapter 12: Droid Invaders: The Grand Finale 587 Core Game Mechanics 587 A Backstory and Art Style 589 Screens and Transitions 590 Defining the Game World 591 Creating the Assets 593 The Ul Assets 593 The Game Assets 594 Sound and Music 596 Plan of Attack 596 The Assets Class 597 The Settings Class 600 The Main Activity 601 The Main Menu Screen 602 The Settings Screen 604 The Simulation Classes 607 The Shield Class 608 The Shot Class 608 The Ship Class 609 The Invader Class 611 The World Class 614 The GameScreen Class 620 TheWorldRender Class 626 Optimizations 632 Summary 633 Chapter 13: Publishing Your Game A Word on Testing 635 Becoming a Registered Developer 636 Signing Your Game's APK 637 Putting Your Game on the Market 642 Uploading Assets 643 Product Details 644 Publishing Options 644 Publish! 645 Marketing 645 The Developer Console 645 Summary 646 Chapter 14: What's Next? 647 Getting Social 647 Location Awareness 647 Multiplayer Functionality 648 OpenGL ES 2.0 and More 648 Frameworks and Engines 648 Resources on the Web 650 Closing Words 651 Index 653 xl

Advance Android Application Development (8W-A3D)

Advance Android Application Development (8W-A3D) Apps to be Developed/Build: Advance Android Application Development (8W-A3D) Basic Calculator App Multi-page Login App Custom Drop-down Menu Search App (in App Search) Employee Database App Audio Player

More information

Practical Android Projects Lucas Jordan Pieter Greyling

Practical Android Projects Lucas Jordan Pieter Greyling Practical Android Projects Lucas Jordan Pieter Greyling Apress s w«^* ; i - -i.. ; Contents at a Glance Contents --v About the Authors x About the Technical Reviewer xi PAcknowiedgments xii Preface xiii

More information

LibGDX játék fejlesztése és publikálása Google Play-en. Vörös Viktor, NNG

LibGDX játék fejlesztése és publikálása Google Play-en. Vörös Viktor, NNG LibGDX játék fejlesztése és publikálása Google Play-en Vörös Viktor, NNG Outline 1. Cross-platform játékfejlesztés LibGDX használatával 2. Kihívások a. különböző képernyőméretek kezelése b. irányítás c.

More information

Android. Lecture 1. Learning Android Marko Gargenta. Tuesday, February 26, 13

Android. Lecture 1. Learning Android Marko Gargenta. Tuesday, February 26, 13 Android Lecture 1 Learning Android Marko Gargenta Final Project Jan/Feb: ARM March: Android Apr: Final project Complexity Sense the world Analysis Service delivery Hands-on A fun project built-up through

More information

Image Processing and Computer Graphics. Rendering Pipeline. Matthias Teschner. Computer Science Department University of Freiburg

Image Processing and Computer Graphics. Rendering Pipeline. Matthias Teschner. Computer Science Department University of Freiburg Image Processing and Computer Graphics Rendering Pipeline Matthias Teschner Computer Science Department University of Freiburg Outline introduction rendering pipeline vertex processing primitive processing

More information

Professional Android Application Development

Professional Android Application Development Course Outline: Professional Android Application Development 1. Introduction to Android Overview of Android and Android SDK History of Android Android Features Development 2. Android Architecture Overview

More information

Production of Game Content for Mobile Phones based on Android Operating System

Production of Game Content for Mobile Phones based on Android Operating System Available Online at www.ijcsmc.com International Journal of Computer Science and Mobile Computing A Monthly Journal of Computer Science and Information Technology ISSN 2320 088X IMPACT FACTOR: 5.258 IJCSMC,

More information

GPU Architecture. Michael Doggett ATI

GPU Architecture. Michael Doggett ATI GPU Architecture Michael Doggett ATI GPU Architecture RADEON X1800/X1900 Microsoft s XBOX360 Xenos GPU GPU research areas ATI - Driving the Visual Experience Everywhere Products from cell phones to super

More information

ANDROID INTRODUCTION TO ANDROID

ANDROID INTRODUCTION TO ANDROID ANDROID JAVA FUNDAMENTALS FOR ANDROID Introduction History Java Virtual Machine(JVM) JDK(Java Development Kit) JRE(Java Runtime Environment) Classes & Packages Java Basics Data Types Variables, Keywords,

More information

Lecture 1 Introduction to Android

Lecture 1 Introduction to Android These slides are by Dr. Jaerock Kwon at. The original URL is http://kettering.jrkwon.com/sites/default/files/2011-2/ce-491/lecture/alecture-01.pdf so please use that instead of pointing to this local copy

More information

CS 528 Mobile and Ubiquitous Computing Lecture 2: Android Introduction and Setup. Emmanuel Agu

CS 528 Mobile and Ubiquitous Computing Lecture 2: Android Introduction and Setup. Emmanuel Agu CS 528 Mobile and Ubiquitous Computing Lecture 2: Android Introduction and Setup Emmanuel Agu What is Android? Android is world s leading mobile operating system Google: Owns Android, maintains it, extends

More information

Game Development in Android Disgruntled Rats LLC. Sean Godinez Brian Morgan Michael Boldischar

Game Development in Android Disgruntled Rats LLC. Sean Godinez Brian Morgan Michael Boldischar Game Development in Android Disgruntled Rats LLC Sean Godinez Brian Morgan Michael Boldischar Overview Introduction Android Tools Game Development OpenGL ES Marketing Summary Questions Introduction Disgruntled

More information

«compl*tc IDIOT'S GUIDE. Android App. Development. by Christopher Froehlich ALPHA. A member of Penguin Group (USA) Inc.

«compl*tc IDIOT'S GUIDE. Android App. Development. by Christopher Froehlich ALPHA. A member of Penguin Group (USA) Inc. «compl*tc IDIOT'S GUIDE Android App Development by Christopher Froehlich A ALPHA A member of Penguin Group (USA) Inc. Contents Part 1: Getting Started 1 1 An Open Invitation 3 Starting from Scratch 3 Software

More information

ANDROID APPS DEVELOPMENT FOR MOBILE AND TABLET DEVICE (LEVEL I)

ANDROID APPS DEVELOPMENT FOR MOBILE AND TABLET DEVICE (LEVEL I) ANDROID APPS DEVELOPMENT FOR MOBILE AND TABLET DEVICE (LEVEL I) Who am I? Lo Chi Wing, Peter Lecture 1: Introduction to Android Development Email: Peter@Peter-Lo.com Facebook: http://www.facebook.com/peterlo111

More information

Shader Model 3.0. Ashu Rege. NVIDIA Developer Technology Group

Shader Model 3.0. Ashu Rege. NVIDIA Developer Technology Group Shader Model 3.0 Ashu Rege NVIDIA Developer Technology Group Talk Outline Quick Intro GeForce 6 Series (NV4X family) New Vertex Shader Features Vertex Texture Fetch Longer Programs and Dynamic Flow Control

More information

Introduction to Computer Graphics

Introduction to Computer Graphics Introduction to Computer Graphics Torsten Möller TASC 8021 778-782-2215 torsten@sfu.ca www.cs.sfu.ca/~torsten Today What is computer graphics? Contents of this course Syllabus Overview of course topics

More information

Beginning Android Programming

Beginning Android Programming Beginning Android Programming DEVELOP AND DESIGN Kevin Grant and Chris Haseman PEACHPIT PRESS WWW.PEACHPIT.COM C Introduction Welcome to Android xii xiv CHAPTER 1 GETTING STARTED WITH ANDROID 2 Exploring

More information

Jordan Jozwiak November 13, 2011

Jordan Jozwiak November 13, 2011 Jordan Jozwiak November 13, 2011 Agenda Why Android? Application framework Getting started UI and widgets Application distribution External libraries Demo Why Android? Why Android? Open source That means

More information

Reminders. Lab opens from today. Many students want to use the extra I/O pins on

Reminders. Lab opens from today. Many students want to use the extra I/O pins on Reminders Lab opens from today Wednesday 4:00-5:30pm, Friday 1:00-2:30pm Location: MK228 Each student checks out one sensor mote for your Lab 1 The TA will be there to help your lab work Many students

More information

An Introduction to Android

An Introduction to Android An Introduction to Android Michalis Katsarakis M.Sc. Student katsarakis@csd.uoc.gr Tutorial: hy439 & hy539 16 October 2012 http://www.csd.uoc.gr/~hy439/ Outline Background What is Android Android as a

More information

01. Introduction of Android

01. Introduction of Android 01. Introduction of Android Goal Understand the concepts and features of the Android Install the complete Android development environment Find out the one-click install Android development environment

More information

Recent Advances and Future Trends in Graphics Hardware. Michael Doggett Architect November 23, 2005

Recent Advances and Future Trends in Graphics Hardware. Michael Doggett Architect November 23, 2005 Recent Advances and Future Trends in Graphics Hardware Michael Doggett Architect November 23, 2005 Overview XBOX360 GPU : Xenos Rendering performance GPU architecture Unified shader Memory Export Texture/Vertex

More information

l What is Android? l Getting Started l The Emulator l Hello World l ADB l Text to Speech l Other APIs (camera, bitmap, etc)

l What is Android? l Getting Started l The Emulator l Hello World l ADB l Text to Speech l Other APIs (camera, bitmap, etc) today l What is Android? l Getting Started l The Emulator l Hello World l ADB l Text to Speech l Other APIs (camera, bitmap, etc) l Other: Signing Apps, SVN l Discussion and Questions introduction to android

More information

Example Connection between USB Host and Android

Example Connection between USB Host and Android Example connection between USB Host and Android Example Connection between USB Host and Android This example illustrates the connection between Board ETMEGA2560-ADK and Android through Port USB Host. In

More information

Mobility Introduction Android. Duration 16 Working days Start Date 1 st Oct 2013

Mobility Introduction Android. Duration 16 Working days Start Date 1 st Oct 2013 Mobility Introduction Android Duration 16 Working days Start Date 1 st Oct 2013 Day 1 1. Introduction to Mobility 1.1. Mobility Paradigm 1.2. Desktop to Mobile 1.3. Evolution of the Mobile 1.4. Smart phone

More information

060010702 Mobile Application Development 2014

060010702 Mobile Application Development 2014 Que 1: Short question answer. Unit 1: Introduction to Android and Development tools 1. What kind of tool is used to simulate Android application? 2. Can we use C++ language for Android application development?

More information

Android Development. Lecture AD 0 Android SDK & Development Environment. Università degli Studi di Parma. Mobile Application Development

Android Development. Lecture AD 0 Android SDK & Development Environment. Università degli Studi di Parma. Mobile Application Development Android Development Lecture AD 0 Android SDK & Development Environment 2013/2014 Parma Università degli Studi di Parma Lecture Summary Android Module Overview The Android Platform Android Environment Setup

More information

Table of Contents. Adding Build Targets to the SDK 8 The Android Developer Tools (ADT) Plug-in for Eclipse 9

Table of Contents. Adding Build Targets to the SDK 8 The Android Developer Tools (ADT) Plug-in for Eclipse 9 SECOND EDITION Programming Android kjj *J} Zigurd Mednieks, Laird Dornin, G. Blake Meike, and Masumi Nakamura O'REILLY Beijing Cambridge Farnham Koln Sebastopol Tokyo Table of Contents Preface xiii Parti.

More information

Workshop on Android and Applications Development

Workshop on Android and Applications Development Workshop on Android and Applications Development Duration: 2 Days (8 hrs/day) Introduction: With over one billion devices activated, Android is an exciting space to make apps to help you communicate, organize,

More information

1. Introduction to Android

1. Introduction to Android 1. Introduction to Android Brief history of Android What is Android? Why is Android important? What benefits does Android have? What is OHA? Why to choose Android? Software architecture of Android Advantages

More information

Programming 3D Applications with HTML5 and WebGL

Programming 3D Applications with HTML5 and WebGL Programming 3D Applications with HTML5 and WebGL Tony Parisi Beijing Cambridge Farnham Köln Sebastopol Tokyo Table of Contents Preface ix Part I. Foundations 1. Introduction 3 HTML5: A New Visual Medium

More information

An Introduction to Android. Huang Xuguang Database Lab. Inha University 2009.11.2 Email: xuguanghuang@yahoo.cn

An Introduction to Android. Huang Xuguang Database Lab. Inha University 2009.11.2 Email: xuguanghuang@yahoo.cn An Introduction to Android Huang Xuguang Database Lab. Inha University 2009.11.2 Email: xuguanghuang@yahoo.cn Outline Background What is Android? Development for Android Background Internet users and Mobile

More information

The "Eclipse Classic" version is recommended. Otherwise, a Java or RCP version of Eclipse is recommended.

The Eclipse Classic version is recommended. Otherwise, a Java or RCP version of Eclipse is recommended. Installing the SDK This page describes how to install the Android SDK and set up your development environment for the first time. If you encounter any problems during installation, see the Troubleshooting

More information

DEVELOPING MOBILE APPLICATIONS USING ANDROID

DEVELOPING MOBILE APPLICATIONS USING ANDROID ISSN 2229-5518 2300 DEVELOPING MOBILE APPLICATIONS USING ANDROID M.VARUN KUMAR, S.THIRUMALINI, S.RAJESH KUMAR, N.VANISRI, PULIDINDI VENUGOPAL School of Information Technology &VITBS VIT University,Vellore-632014

More information

Android Development. Lecture 1b Android SDK & Development Environment

Android Development. Lecture 1b Android SDK & Development Environment Android Development Lecture 1b Android SDK & Development Environment This work is licensed under a Creative Commons Attribution NonCommercialShareAlike 4.0 International License. Marco Picone, Ph.D. marco.picone@unipr.it

More information

Issues in Android on Mobile Platform and Their Resolution

Issues in Android on Mobile Platform and Their Resolution Issues in Android on Mobile Platform and Their Resolution 1 Monika A. Ganpate, 2 Dipika R. Shinde 1, 2 Institute of Management and Computer Studies, Thane (West), India, University of Mumbai, India Abstract:

More information

Tutorial on Basic Android Setup

Tutorial on Basic Android Setup Tutorial on Basic Android Setup EE368/CS232 Digital Image Processing, Spring 2015 Windows Version Introduction In this tutorial, we will learn how to set up the Android software development environment

More information

Computer Graphics. Lecture 1:

Computer Graphics. Lecture 1: Computer Graphics Thilo Kielmann Lecture 1: 1 Introduction (basic administrative information) Course Overview + Examples (a.o. Pixar, Blender, ) Graphics Systems Hands-on Session General Introduction http://www.cs.vu.nl/~graphics/

More information

Graduate presentation for CSCI 5448. By Janakiram Vantipalli ( Janakiram.vantipalli@colorado.edu )

Graduate presentation for CSCI 5448. By Janakiram Vantipalli ( Janakiram.vantipalli@colorado.edu ) Graduate presentation for CSCI 5448 By Janakiram Vantipalli ( Janakiram.vantipalli@colorado.edu ) Content What is Android?? Versions and statistics Android Architecture Application Components Inter Application

More information

Programmable graphics pipeline. Adapted from Suresh Venkatasubramanian UPenn

Programmable graphics pipeline. Adapted from Suresh Venkatasubramanian UPenn Programmable graphics pipeline Adapted from Suresh Venkatasubramanian UPenn Lecture Outline A historical perspective on the graphics pipeline Dimensions of innovation. Where we are today Fixed-function

More information

Beginning BlackBerry 7

Beginning BlackBerry 7 Beginning BlackBerry 7 Development Robert Kao Dante Sarigumba With Anthony Rizk and Kevin Michaluk Apress* Contents Contents at a Glance About the Authors About the Technical Reviewer Acknowledgments iv

More information

Università Degli Studi di Parma. Distributed Systems Group. Android Development. Lecture 1 Android SDK & Development Environment. Marco Picone - 2012

Università Degli Studi di Parma. Distributed Systems Group. Android Development. Lecture 1 Android SDK & Development Environment. Marco Picone - 2012 Android Development Lecture 1 Android SDK & Development Environment Università Degli Studi di Parma Lecture Summary - 2 The Android Platform Android Environment Setup SDK Eclipse & ADT SDK Manager Android

More information

Introduction to Android

Introduction to Android Introduction to Android Android Smartphone Programming Matthias Keil Institute for Computer Science Faculty of Engineering October 19, 2015 Outline 1 What is Android? 2 Development on Android 3 Applications:

More information

COURSE CONTENT. GETTING STARTED Select Android Version Create RUN Configuration Create Your First Android Activity List of basic sample programs

COURSE CONTENT. GETTING STARTED Select Android Version Create RUN Configuration Create Your First Android Activity List of basic sample programs COURSE CONTENT Introduction Brief history of Android Why Android? What benefits does Android have? What is OHA & PHA Why to choose Android? Software architecture of Android Advantages, features and market

More information

Introduction to Android Development. Jeff Avery CS349, Mar 2013

Introduction to Android Development. Jeff Avery CS349, Mar 2013 Introduction to Android Development Jeff Avery CS349, Mar 2013 Overview What is Android? Android Architecture Overview Application Components Activity Lifecycle Android Developer Tools Installing Android

More information

Android (Basic + Advance) Application Development

Android (Basic + Advance) Application Development Android (Basic + Advance) Application Development You will learn how to create custom widgets, create animations, work with camera, use sensors, create and use advanced content providers and much more.

More information

Board also Supports MicroBridge

Board also Supports MicroBridge This product is ATmega2560 based Freeduino-Mega with USB Host Interface to Communicate with Android Powered Devices* like Android Phone or Tab using Android Open Accessory API and Development Kit (ADK)

More information

Fahim Uddin http://fahim.cooperativecorner.com email@fahim.cooperativecorner.com. 1. Java SDK

Fahim Uddin http://fahim.cooperativecorner.com email@fahim.cooperativecorner.com. 1. Java SDK PREPARING YOUR MACHINES WITH NECESSARY TOOLS FOR ANDROID DEVELOPMENT SEPTEMBER, 2012 Fahim Uddin http://fahim.cooperativecorner.com email@fahim.cooperativecorner.com Android SDK makes use of the Java SE

More information

Android Developer Fundamental 1

Android Developer Fundamental 1 Android Developer Fundamental 1 I. Why Learn Android? Technology for life. Deep interaction with our daily life. Mobile, Simple & Practical. Biggest user base (see statistics) Open Source, Control & Flexibility

More information

Introduction to Android

Introduction to Android Introduction to Android Poll How many have an Android phone? How many have downloaded & installed the Android SDK? How many have developed an Android application? How many have deployed an Android application

More information

Islamic University of Gaza. Faculty of Engineering. Computer Engineering Department. Mobile Computing ECOM 5341. Eng. Wafaa Audah.

Islamic University of Gaza. Faculty of Engineering. Computer Engineering Department. Mobile Computing ECOM 5341. Eng. Wafaa Audah. Islamic University of Gaza Faculty of Engineering Computer Engineering Department Mobile Computing ECOM 5341 By Eng. Wafaa Audah June 2013 1 Setting Up the Development Environment and Emulator Part 1:

More information

Cookbook. Flash ios Apps. Christopher Caleb. 100 practical recipes for developing ios apps with Flash Professional and Adobe AIR PUBLISHING MUMBAI

Cookbook. Flash ios Apps. Christopher Caleb. 100 practical recipes for developing ios apps with Flash Professional and Adobe AIR PUBLISHING MUMBAI Flash ios Apps Cookbook 100 practical recipes for developing ios apps with Flash Professional and Adobe AIR Christopher Caleb PUBLISHING BIRMINGHAM - MUMBAI Preface 1 Chapter 1: Getting Started with ios

More information

Game Programming with DXFramework

Game Programming with DXFramework Game Programming with DXFramework Jonathan Voigt voigtjr@gmail.com University of Michigan Fall 2006 The Big Picture DirectX is a general hardware interface API Goal: Unified interface for different hardware

More information

Android Programming and Security

Android Programming and Security Android Programming and Security Dependable and Secure Systems Andrea Saracino andrea.saracino@iet.unipi.it Outlook (1) The Android Open Source Project Philosophy Players Outlook (2) Part I: Android System

More information

Shader Model 3.0, Best Practices. Phil Scott Technical Developer Relations, EMEA

Shader Model 3.0, Best Practices. Phil Scott Technical Developer Relations, EMEA Shader Model 3.0, Best Practices Phil Scott Technical Developer Relations, EMEA Overview Short Pipeline Overview CPU Bound new optimization opportunities Obscure bits of the pipeline that can trip you

More information

Android Application Development

Android Application Development Android Application Development Self Study Self Study Guide Content: Course Prerequisite Course Content Android SDK Lab Installation Guide Start Training Be Certified Exam sample Course Prerequisite The

More information

Creating and Using Databases for Android Applications

Creating and Using Databases for Android Applications Creating and Using Databases for Android Applications Sunguk Lee * 1 Research Institute of Industrial Science and Technology Pohang, Korea sunguk@rist.re.kr *Correspondent Author: Sunguk Lee* (sunguk@rist.re.kr)

More information

Running Android Applications on BlackBerry 10 developer.blackberry.com/android

Running Android Applications on BlackBerry 10 developer.blackberry.com/android Running Android Applications on BlackBerry 10 developer.blackberry.com/android James Dreher Application Development Consultant BlackBerry Developer Relations Overview BB Runtime for Android Apps Upcoming

More information

Android Mobile App Building Tutorial

Android Mobile App Building Tutorial Android Mobile App Building Tutorial Seidenberg-CSIS, Pace University This mobile app building tutorial is for high school and college students to participate in Mobile App Development Contest Workshop.

More information

Pro Windows Phone 7. Development. Rob Cameron

Pro Windows Phone 7. Development. Rob Cameron Pro Windows Phone 7 Development Rob Cameron Contents Contents at a Glance About the Author About the Technical Reviewer Acknowledgments. Introduction iv xii xiii xiv xv Chapter 1: Introduction to Windows

More information

Beginning Facebook. Development. Game Apps. Wayne Graham. Apress*

Beginning Facebook. Development. Game Apps. Wayne Graham. Apress* Beginning Facebook Game Apps Development Wayne Graham Apress* Contents Contents at a Glance... About the Author About the Technical Reviewer Acknowledgments Introduction iv x xi xii xiii Chapter 1: First

More information

3D Android game Hide-n-Seek

3D Android game Hide-n-Seek International Journal of Computer Sciences and Engineering Open Access Technical Paper Volume-4, Issue-4 E-ISSN: 2347-2693 3D Android game Hide-n-Seek Sanket Tilotkar 1, Mehul Makwana 2, Siraj Sayyed 3

More information

Mobile App Design and Development

Mobile App Design and Development Mobile App Design and Development The course includes following topics: Apps Development 101 Introduction to mobile devices and administrative: Mobile devices vs. desktop devices ARM and intel architectures

More information

Mali Ecosystem. Right Tools to do the Right Things Anand Patel, Ecosystem Marketing

Mali Ecosystem. Right Tools to do the Right Things Anand Patel, Ecosystem Marketing Mali Ecosystem Right Tools to do the Right Things Anand Patel, Ecosystem Marketing Mali Ecosystem Mali Ecosystem Benefits UI : Demanding on the GPU User interfaces exploit the ARM Mali GPU Overlay and

More information

Android Development. Marc Mc Loughlin

Android Development. Marc Mc Loughlin Android Development Marc Mc Loughlin Android Development Android Developer Website:h:p://developer.android.com/ Dev Guide Reference Resources Video / Blog SeCng up the SDK h:p://developer.android.com/sdk/

More information

Android Development Tools for Eclipse

Android Development Tools for Eclipse Android Development Tools for Eclipse Sanjay Shah Khirulnizam Abd Rahman Chapter No. 1 "Installing Eclipse, ADT, and SDK" In this package, you will find: A Biography of the author of the book A preview

More information

Development. SriSeshaa Technologies. Table of Contents

Development. SriSeshaa Technologies. Table of Contents SriSeshaa Technologies Development Table of Contents SriSeshaa Android Development... 2 Introduction to Android... 3 SriSeshaa Capabilities... 3 SriSeshaa Android Case Studies... 5 Privacy Guard... 5 Backup

More information

Технологии Java. Android: Введение. Кузнецов Андрей Николаевич. Санкт-Петербургский Государственный Политехнический Университет

Технологии Java. Android: Введение. Кузнецов Андрей Николаевич. Санкт-Петербургский Государственный Политехнический Университет Технологии Java Android: Введение Санкт-Петербургский Государственный Политехнический Университет Кузнецов Андрей Николаевич 1 2 Архитектура ОС Android See http://www.android-app-market.com/android-architecture.html

More information

Android Application Development. Daniel Switkin Senior Software Engineer, Google Inc.

Android Application Development. Daniel Switkin Senior Software Engineer, Google Inc. Android Application Development Daniel Switkin Senior Software Engineer, Google Inc. Goal Get you an idea of how to start developing Android applications Introduce major Android application concepts Walk

More information

Computer Graphics on Mobile Devices VL SS2010 3.0 ECTS

Computer Graphics on Mobile Devices VL SS2010 3.0 ECTS Computer Graphics on Mobile Devices VL SS2010 3.0 ECTS Peter Rautek Rückblick Motivation Vorbesprechung Spiel VL Framework Ablauf Android Basics Android Specifics Activity, Layouts, Service, Intent, Permission,

More information

Computer Graphics (CS 543) Lecture 1 (Part 1): Introduction to Computer Graphics

Computer Graphics (CS 543) Lecture 1 (Part 1): Introduction to Computer Graphics Computer Graphics (CS 543) Lecture 1 (Part 1): Introduction to Computer Graphics Prof Emmanuel Agu Computer Science Dept. Worcester Polytechnic Institute (WPI) What is Computer Graphics (CG)? Computer

More information

Android and OpenGL. Android Smartphone Programming. Matthias Keil. University of Freiburg

Android and OpenGL. Android Smartphone Programming. Matthias Keil. University of Freiburg Android and OpenGL Android Smartphone Programming Matthias Keil Institute for Computer Science Faculty of Engineering 16. Dezember 2013 Outline 1 OpenGL Introduction 2 Displaying Graphics 3 Interaction

More information

Running a Program on an AVD

Running a Program on an AVD Running a Program on an AVD Now that you have a project that builds an application, and an AVD with a system image compatible with the application s build target and API level requirements, you can run

More information

Examples. Pac-Man, Frogger, Tempest, Joust,

Examples. Pac-Man, Frogger, Tempest, Joust, Examples Arcade Games Missile il Command, Space Invaders, Breakout, Centipede, Pac-Man, Frogger, Tempest, Joust, Important Traits: Easy-to-learn simple controls Move objects around the screen Single-screen

More information

Android Setup Phase 2

Android Setup Phase 2 Android Setup Phase 2 Instructor: Trish Cornez CS260 Fall 2012 Phase 2: Install the Android Components In this phase you will add the Android components to the existing Java setup. This phase must be completed

More information

An Introduction to Android Application Development. Serdar Akın, Haluk Tüfekçi

An Introduction to Android Application Development. Serdar Akın, Haluk Tüfekçi An Introduction to Android Application Serdar Akın, Haluk Tüfekçi ARDIC ARGE http://www.ardictech.com April 2011 Environment Programming Languages Java (Officially supported) C (Android NDK Needed) C++

More information

OpenGL ES 2.0 on the iphone 3G S Dan Ginsburg

OpenGL ES 2.0 on the iphone 3G S Dan Ginsburg OpenGL ES 2.0 on the iphone 3G S Dan Ginsburg On June 8 th, 2009 at the Apple Worldwide Developer Conference (WWDC) the new iphone 3G S was announced. Apple confirmed that this new generation of iphone

More information

Android App Development. Will Tinguely Jonah Burke

Android App Development. Will Tinguely Jonah Burke Android App Development Will Tinguely Jonah Burke About Me I am 18 years old A senior at PLHS and KING TeC s app/java developer I have been developing in.net for about 6 years and java for 5 I currently

More information

SECOND EDITION. HTML5 Canvas. Steve Fulton and Jeff Fulton. Koin. Sebastopol. Tokyo. Beijing. Farnham. Cambridge

SECOND EDITION. HTML5 Canvas. Steve Fulton and Jeff Fulton. Koin. Sebastopol. Tokyo. Beijing. Farnham. Cambridge Koin Sebastopol SECOND EDITION HTML5 Canvas Steve Fulton and Jeff Fulton Beijing Cambridge Farnham Tokyo Table of Contents Preface xv 1. Introduction to HTML5 Canvas 1 What Is HTML5? 2 The Basic HTML5

More information

Getting started with Android and App Engine

Getting started with Android and App Engine Getting started with Android and App Engine About us Tim Roes Software Developer (Mobile/Web Solutions) at inovex GmbH www.timroes.de www.timroes.de/+ About us Daniel Bälz Student/Android Developer at

More information

Mobile Game and App Development the Easy Way

Mobile Game and App Development the Easy Way Mobile Game and App Development the Easy Way Developed and maintained by Pocketeers Limited (http://www.pocketeers.co.uk). For support please visit http://www.appeasymobile.com This document is protected

More information

for Java developers Building Mobile Applications Introduction 1 Building Mobile Applications

for Java developers Building Mobile Applications Introduction 1 Building Mobile Applications Introduction Building Mobile Applications for Java developers Information in this document, including URL and other Internet Web site references, is subject to change without notice. Unless otherwise noted,

More information

CS378 -Mobile Computing. Android Overview and Android Development Environment

CS378 -Mobile Computing. Android Overview and Android Development Environment CS378 -Mobile Computing Android Overview and Android Development Environment What is Android? A software stack for mobile devices that includes An operating system Middleware Key Applications Uses Linux

More information

Android Programming. Høgskolen i Telemark Telemark University College. Cuong Nguyen, 2013.06.18

Android Programming. Høgskolen i Telemark Telemark University College. Cuong Nguyen, 2013.06.18 Høgskolen i Telemark Telemark University College Department of Electrical Engineering, Information Technology and Cybernetics Cuong Nguyen, 2013.06.18 Faculty of Technology, Postboks 203, Kjølnes ring

More information

Porting Android* Apps to Windows 8* - Overview. Objective

Porting Android* Apps to Windows 8* - Overview. Objective Porting Android* Apps to Windows 8* - Overview Objective Developers looking to port their existing Android apps to the new Windows 8 Platform face several challenges. In this article we will provide an

More information

Bachelor of Games and Virtual Worlds (Programming) Subject and Course Summaries

Bachelor of Games and Virtual Worlds (Programming) Subject and Course Summaries First Semester Development 1A On completion of this subject students will be able to apply basic programming and problem solving skills in a 3 rd generation object-oriented programming language (such as

More information

Java game programming. Game engines. Fayolle Pierre-Alain

Java game programming. Game engines. Fayolle Pierre-Alain Java game programming Game engines 2010 Fayolle Pierre-Alain Plan Some definitions List of (Java) game engines Examples of game engines and their use A first and simple definition A game engine is a (complex)

More information

TEACHING GRAPHICS PROGRAMMING ON MOBILE DEVICES

TEACHING GRAPHICS PROGRAMMING ON MOBILE DEVICES TEACHING GRAPHICS PROGRAMMING ON MOBILE DEVICES Michael Werner Department of Computer Science and Networking Wentworth Institute of Technology Boston, MA 02115 617-989-4143 wernerm@wit.edu ABSTRACT This

More information

Architecture and 2D Graphics. John Laird

Architecture and 2D Graphics. John Laird Arcade Games: Architecture and 2D Graphics John Laird September 13, 2010 Examples Arcade Games Missile il Command, Space Invaders, Breakout, Centipede, Pac-Man, Frogger, Tempest, Joust, Game Definition

More information

Basic Android Setup. 2014 Windows Version

Basic Android Setup. 2014 Windows Version Basic Android Setup 2014 Windows Version Introduction In this tutorial, we will learn how to set up the Android software development environment and how to implement image processing operations on an Android

More information

ANDROID PROGRAMMING - INTRODUCTION. Roberto Beraldi

ANDROID PROGRAMMING - INTRODUCTION. Roberto Beraldi ANDROID PROGRAMMING - INTRODUCTION Roberto Beraldi Introduction Android is built on top of more than 100 open projects, including linux kernel To increase security, each application runs with a distinct

More information

Performance Analysis and Optimization

Performance Analysis and Optimization Performance Analysis and Optimization ARM Mali GPU Performance Counters in ARM DS-5 Streamline Performance Analyzer Lorenzo Dal Col Senior Software Engineer, ARM 1 Agenda Introduction to ARM DS-5 and Streamline

More information

Specialized Android APP Development Program with Java (SAADPJ) Duration 2 months

Specialized Android APP Development Program with Java (SAADPJ) Duration 2 months Specialized Android APP Development Program with Java (SAADPJ) Duration 2 months Our program is a practical knowledge oriented program aimed at making innovative and attractive applications for mobile

More information

AMD GPU Tools for games development

AMD GPU Tools for games development AMD GPU Tools for games development Holger Gruen European Developer Relations AMD Graphics Products Group holger.gruen@amd.com Material for many slides was provided by J. Zarge and S. Sowerby from the

More information

Silverlight for Windows Embedded Graphics and Rendering Pipeline 1

Silverlight for Windows Embedded Graphics and Rendering Pipeline 1 Silverlight for Windows Embedded Graphics and Rendering Pipeline 1 Silverlight for Windows Embedded Graphics and Rendering Pipeline Windows Embedded Compact 7 Technical Article Writers: David Franklin,

More information

Lecture 6: Polygon rendering and OpenGL

Lecture 6: Polygon rendering and OpenGL Lecture 6: Polygon rendering and OpenGL 3-Dimensional Objects Bounded by Planar Surfaces (Facets) Y 4 8 Z 5 6 1 2 3 7 X NUMERICAL TOPOLOGICAL DATA DATA Points Lines Faces 1. [0,0,0] 1. 1>>2 1,2,4,4 2.

More information

Evolution of the Programmable Graphics Pipeline

Evolution of the Programmable Graphics Pipeline Evolution of the Graphics Pipeline Lecture 2 Original Slides by: Suresh Venkatasubramanian Updates by Joseph Kider Course Roadmap Graphics Pipeline (GLSL) GP (GLSL) Briefly Computing (CUDA, OpenCL) Choose

More information

Gideros Mobile Game Development

Gideros Mobile Game Development Gideros Mobile Game Development Arturs Sosins Chapter No. 1 "Setting Up the Environment" In this package, you will find: A Biography of the author of the book A preview chapter from the book, Chapter NO.1

More information

Issues of Hybrid Mobile Application Development with PhoneGap: a Case Study of Insurance Mobile Application

Issues of Hybrid Mobile Application Development with PhoneGap: a Case Study of Insurance Mobile Application DATABASES AND INFORMATION SYSTEMS H.-M. Haav, A. Kalja and T. Robal (Eds.) Proc. of the 11th International Baltic Conference, Baltic DB&IS 2014 TUT Press, 2014 215 Issues of Hybrid Mobile Application Development

More information

Kamel Lajili, Aaron Ardiri, Johan Larsby RIM. Technical Briefing on BlackBerry 10 Apps Development

Kamel Lajili, Aaron Ardiri, Johan Larsby RIM. Technical Briefing on BlackBerry 10 Apps Development Kamel Lajili, Aaron Ardiri, Johan Larsby RIM Technical Briefing on BlackBerry 10 Apps Development Cascades Johan Larsby Kookor Staffan Lincoln Designer Starship Settings Demo 2 Quotes Demo 3 Weather

More information