Mobile Developer's Guide to the Galaxy

Total Page:16

File Type:pdf, Size:1020Kb

Mobile Developer's Guide to the Galaxy Don’t Panic MOBILE DEVELOPER’S GUIDE TO THE GALAXY U PD A TE D & EX TE ND 12th ED EDITION published by: Services and Tools for All Mobile Platforms Enough Software GmbH + Co. KG Sögestrasse 70 28195 Bremen Germany www.enough.de Please send your feedback, questions or sponsorship requests to: [email protected] Follow us on Twitter: @enoughsoftware 12th Edition February 2013 This Developer Guide is licensed under the Creative Commons Some Rights Reserved License. Editors: Marco Tabor (Enough Software) Julian Harty Izabella Balce Art Direction and Design by Andrej Balaz (Enough Software) Mobile Developer’s Guide Contents I Prologue 1 The Galaxy of Mobile: An Introduction 1 Topology: Form Factors and Usage Patterns 2 Star Formation: Creating a Mobile Service 6 The Universe of Mobile Operating Systems 12 About Time and Space 12 Lost in Space 14 Conceptional Design For Mobile 14 Capturing The Idea 16 Designing User Experience 22 Android 22 The Ecosystem 24 Prerequisites 25 Implementation 28 Testing 30 Building 30 Signing 31 Distribution 32 Monetization 34 BlackBerry Java Apps 34 The Ecosystem 35 Prerequisites 36 Implementation 38 Testing 39 Signing 39 Distribution 40 Learn More 42 BlackBerry 10 42 The Ecosystem 43 Development 51 Testing 51 Signing 52 Distribution 54 iOS 54 The Ecosystem 55 Technology Overview 57 Testing & Debugging 59 Learn More 62 Java ME (J2ME) 62 The Ecosystem 63 Prerequisites 64 Implementation 67 Testing 68 Porting 70 Signing 71 Distribution 72 Learn More 4 75 Windows Phone 75 The Ecosystem 76 Implementation 82 Testing And Analytics 82 Distribution 84 Learn More 86 Windows 8 86 Prerequisites 87 Implementation 92 Distribution 93 Learn More 95 Going Cross-Platform 95 Key Differences Between Mobile Platforms 100 Cross-Platform Strategies 104 Cross-Platform App Frameworks 109 Cross-Platform Game Engines 112 Web Technologies 114 HTML5 115 Fragmentation Needs Adapation 119 Testing Web Technologies 121 Learn More 123 Accessibility 125 Accessible Android Apps 126 Accessible BlackBerry Apps 126 Accessible iOS Apps 127 Accessible Symbian / Qt Apps 127 Accessible Windows Phone & Windows 8 Apps 128 Accessible Mobile Web Apps 130 Enterprise Apps, Strategy And Development 131 Strategy 133 Device And Application Management In The Enterprise 135 Mobile Enterprise Application Platforms (MEAPs) 136 Security In Enterprise Apps 138 Mobile Analytics 139 Getting Started 140 Deciding What To Measure 140 Defining How To Measure 142 Adjusting Your Code 143 Handling the results 143 Privacy 144 Learn More 146 Implementing Rich Media 147 Streaming vs. Local Storage 149 Progressive Download 149 Media Converters 151 Implementing Location-Based Services 152 How To Obtain Positioning Data 153 Mapping Services 154 Implementing Location Support On Different Platforms 156 Tools For LBS Apps 158 Near Field Communication (NFC) 160 NFC Modes Of Operation 162 Current uses of NFC 163 Implementation of NFC 165 Implementing Haptic Vibration 165 Design Considerations 167 iOS 167 Android 169 BlackBerry 10 169 Windows 8 171 Implementing Augmented Reality 171 AR Usage Scenarios in Mobile 173 Tracking 174 Augmented Reality SDKs 177 AR Developing 101 181 Application Security 182 Threats to Your Applications 183 Protecting Your Application 187 Best Practices 188 Tools 189 Learn More 190 The Bottom Line 192 Testing Your Application 192 Testability: The Biggest Single Win 193 Test-Driven Development 194 Unit Testing 195 Testing Through The Five Phases of an App's Lifecycle 200 Interactive Testing 203 Test Automation 206 Beware Of Specifics 208 Monetization 208 Pay Per Download 211 In-App Payment 212 Mobile Advertising 213 Revenue Sharing 214 Indirect Sales 214 Component Marketplace 216 Choosing your Monetization Model 218 Appstores 221 What Can You Earn? 222 Learn More 224 Epilogue 225 About the Authors 8 Prologue It has been exactly four years now since we published the first version of this guide. In the prologue of that first guide, we said: "The most important issues for mobile developers are for sure fragmentation and distribution". Although the mobile ecosystem’s landscape has seen massive changes since then, we still think this holds true. And it keeps changing: This 12th edition probably introduces more changes than any other release before. To reflect recent shifts in the market, we decided to remove the dedicated chapters about Qt and bada and replace them with new, platform-independent chapters which cover key technologies such as Augmented Reality, Ana- lytics and Prototyping. Additionally, the general introduction chapter has been significantly expanded and now provides a comprehensive, updated overview on the ever changing mobile world. All other chapters have, of course, also been revised and updated. You will hardly find a more objective and up-to-date guide that teaches you how to get started as an app provider or developer, and how to lift your existing mobile offering to the next level. What happened in the mobile industry since our last release? Apple released iPhone 5 with great success, Android became the clear global leader in smartphone systems, and Microsoft released both Windows 8 and Windows Phone 8. Mark Zuck- erberg criticized Facebook's own HTML5 approach and found massive usage growth after turning to native apps. Then there was Canonical presenting Ubuntu for mobile phones. Finally, BlackBerry surprised us developers with love songs and released the BlackBerry 10 OS. Prologue I We will establish a bi-annual release cycle from now on. So expect the 13th edition around October 2013. If you are missing content, want to get involved one way or the other, or know of potential sponsors for the project: Get in touch via [email protected]. This is an open community project and we invite all of you to push it even further forward. We are looking forward to hearing from you! Robert + Marco / Enough Software Bremen, February 2013 Prologue II The Galaxy of Mobile: An Introduction Welcome to the world of mobile development, a world where former giants stumble and new stars are born on a seemingly regular basis. The focus of this book is on developing mobile apps, which includes a number of phases including: planning & specifica- tion, prototyping & design, implementation, internal testing & deployment, deployment to an app store, discovery by users, installation, use and feedback. Ultimately, we want our users Robert Virkus & Marco Tabor & Matos Kapetanakis & Matos Tabor Robert Virkus & Marco to enjoy using our apps and to give us positive ratings to BY encourage other users to do likewise. Keep reading to learn how to develop apps for the major platforms. Should this be the first time that you have con- sidered getting involved, we advise against further delay as the world is moving speedily towards mobile becoming the predominant form of computing and others will surely bypass you if you wait too long. While developing mobile apps has some commonalities with developing other software it has specific characteristics. We will cover some of these next. Topology: Form Factors and Usage Patterns You have to differentiate between smart phones, tablets and feature phones. Each form factor poses its own usability chal- lenges; for instance, a tablet demands different navigation than a phone. TV systems are getting more traction as another form factor for mobile developers. The Galaxy of Mobile: An Introduction 1 Android usage patterns, of course, differ from those on iOS, which also differ from those for Windows Phone apps, et cetera. You should, therefore, refrain from providing the identi- cal experience on all form factors or even all your target smartphone systems. Otherwise, you risk delivering a mediocre service to some sections of your target user base. Star Formation: Creating a Mobile Service There are several ways to realize a mobile service: — App — Website — SMS, USSD1 and STK2 App Apps run directly on the device. You can realize them as native, web-based or hybrid apps. Native Apps A native app is programmed in a platform specific language with platform specific APIs. It is typically purchased, down- loaded and upgraded through the platform specific central app store. Native apps usually offer the best performance, the deep- est integration and the best overall user experience compared to other options. However, native development is often also the most complex development option. 1 en.wikipedia.org/wiki/USSD 2 en.wikipedia.org/wiki/SIM_Application_Toolkit The Galaxy of Mobile: An Introduction 2 Web Apps A web app is based on HTML5, JavaScript and CSS and does not rely on any app store. It is a locally stored mobile site that tries to emulate the look-and-feel of an app. A famous example for a web app is the Financial Times app which left the app store in order to keep all subscriber revenue to themselves for the web world; inversely, the web-based Facebook iOS app was revamped into native app in order to dramatically improve its performance and usability. There are several web app frameworks available to build a native wrapper around it so that you can publish them in app stores, e.g. Phonegap3. Hybrid Apps A hyped controversy circles around whether native or web apps are the future. For many mobile app developers, this controversy does not really exist any longer as a hybrid approach to app development has become quite common place: An app can use native code for enhanced performance and integration of the app with the platform while using a webview together with HTML5-based content for other parts of the same app. A hybrid app makes 3 www.phonegap.com 3 use of native and web technologies. Parts of it behave as a native app, while other parts are powered by web technologies. These parts can use Internet connectivity to offer up-to-date content. While this could be viewed as a drawback, the use of web technologies enables developers to display up-to-date content without the need to re-submit the application to app stores.
Recommended publications
  • June 7, 2010 ANALYSIS of the FTC's DECISION NOT to BLOCK
    June 7, 2010 ANALYSIS OF THE FTC’S DECISION NOT TO BLOCK GOOGLE’S ACQUISITION OF ADMOB Randy Stutz and Richard Brunell* Introduction On May 21, 2010, after months of investigation, the Federal Trade Commission (FTC) announced that it would not challenge Google’s $750 million acquisition of AdMob, a mobile advertising network and mobile ad solutions and services provider.1 In this white paper, we present AAI’s analysis of the FTC’s decision. The FTC found that, but for recent developments concerning Apple, the acquisition “appeared likely to lead to a substantial lessening of competition in violation of Section 7 of the Clayton Act.” According to the FTC, Google and AdMob “currently are the two leading mobile advertising networks, and the Commission was concerned about the loss of head-to-head competition between them.” The companies “generate the most revenue among mobile advertising networks, and both companies are particularly strong in … performance ad networks,” i.e. those networks that sell advertising by auction on a “per click” or other direct response basis. Without necessarily defining a relevant market, the Commission apparently saw a likelihood of unilateral anticompetitive effects, as it found “each of the merging parties viewed the other as its primary competitor, and that each firm made business decisions in direct response to this perceived competitive threat.” Yet, Apple’s acquisition of the third largest mobile ad network, Quattro Wireless, in December 2009, and its introduction of its own mobile advertising network, iAd, as part of its iPhone applications package, convinced the FTC that the anticompetitive effects of the acquisition “should [be] mitigate[d].” The Commission “ha[d] reason to believe that Apple * Randy Stutz is a Research Fellow and Richard Brunell is the Director of Legal Advocacy of the American Antitrust Institute (AAI), a non-profit research and advocacy organization devoted to advancing the role of competition in the economy, protecting consumers, and sustaining the vitality of the antitrust laws.
    [Show full text]
  • Product ID Product Type Product Description Notes Price (USD) Weight (KG) SKU 10534 Mobile-Phone Apple Iphone 4S 8GB White 226.8
    Rm A1,10/F, Shun Luen Factory Building, 86 Tokwawan Road, Hong Kong TEL: +852 2325 1867 FAX: +852 23251689 Website: http://www.ac-electronic.com/ For products not in our pricelist, please contact our sales. 29/8/2015 Product Price Weight Product Type Product Description Notes SKU ID (USD) (KG) 10534 mobile-phone Apple iPhone 4S 8GB White 226.8 0.5 40599 10491 mobile-phone Apple iPhone 5s 16GB Black Slate 486.4 0.5 40557 10497 mobile-phone Apple iPhone 5s 16GB Gold 495.6 0.5 40563 10494 mobile-phone Apple iPhone 5s 16GB White Silver 487.7 0.5 40560 10498 mobile-phone Apple iPhone 5s 32GB Gold 536.3 0.5 40564 11941 mobile-phone Apple iPhone 6 128GB Gold 784.1 0.5 41970 11939 mobile-phone Apple iPhone 6 16GB Gold 622.8 0.5 41968 11936 mobile-phone Apple iPhone 6 16GB Silver 633.3 0.5 41965 11942 mobile-phone Apple iPhone 6 16GB Space Grey 618.9 0.5 41971 11940 mobile-phone Apple iPhone 6 64GB Gold 705.4 0.5 41969 11937 mobile-phone Apple iPhone 6 64GB Silver 706.7 0.5 41966 11943 mobile-phone Apple iPhone 6 64GB Space Grey 708 0.5 41972 11963 mobile-phone Apple iPhone 6 Plus 128GB Silver 917.9 1 41991 11955 mobile-phone Apple iPhone 6 Plus 16GB Gold 755.3 1 41983 11961 mobile-phone Apple iPhone 6 Plus 16GB Silver 731.6 1 41989 11958 mobile-phone Apple iPhone 6 Plus 16GB Space Grey 735.6 1 41986 11956 mobile-phone Apple iPhone 6 Plus 64GB Gold 843.1 1 41984 11962 mobile-phone Apple iPhone 6 Plus 64GB Silver 841.8 1 41990 11959 mobile-phone Apple iPhone 6 Plus 64GB Space Grey 840.5 1 41987 12733 mobile-phone ASUS ZenFone 2 ZE550ML Dual SIM
    [Show full text]
  • July 23, 2020 the Honorable William P. Barr Attorney General United
    July 23, 2020 The Honorable William P. Barr Attorney General United States Department of Justice 950 Pennsylvania Avenue, NW Washington, DC 20530 Dear Attorney General Barr: We write to raise serious concerns regarding Google LLC’s (Google) proposed acquisition of Fitbit, Inc. (Fitbit).1 We are aware that the Antitrust Division of the Department of Justice is investigating this transaction and has issued a Second Request to gather additional information about the acquisition’s potential effects on competition.2 Amid reports that Google is offering modest, short-term concessions to overseas enforcers to avoid a full-scale investigation of the transaction in Europe,3 we write to urge the Division to continue with its efforts to conduct a thorough and comprehensive review of this proposed merger and to take any and all enforcement action warranted by the law and the evidence. It is no exaggeration to say that Google is under intense antitrust scrutiny across the globe. As you know, the company has been under investigation for potential anticompetitive conduct across a number of product markets by the Department and numerous state attorneys general, as well as by a number of foreign competition enforcers, some of which are also reviewing the proposed Fitbit acquisition. Competition concerns about Google are widespread and bipartisan. Against this backdrop, in November 2019, Google announced its proposed acquisition of Fitbit for $2.1 billion, a staggering 71 percent premium over Fitbit’s pre-announcement stock price.4 Fitbit—which makes wearable technology devices, such as smartwatches and fitness trackers— has more than 28 million active users submitting sensitive location and health data to the company.
    [Show full text]
  • Tasosuunnittelu Source Engine -Pelimoottorilla
    Tasosuunnittelu Source Engine -pelimoottorilla Viestintä 3D-visualisointi Opinnäytetyö 31.5.2009 Arttu Mäki Kulttuurialat Koulutusohjelma Suuntautumisvaihtoehto Viestintä 3D-visualisointi Tekijä Arttu Mäki Työn nimi Tasosuunnittelu Source Engine -pelimoottorilla Työn ohjaaja/ohjaajat Kristian Simolin Työn laji Aika Numeroidut sivut + liitteiden sivut Opinnäytetyö 31.5.2009 31 TIIVISTELMÄ Opinnäytetyön tutkimuksen kohteena selvitettiin ja ratkaistiin yleisiä ongelmia ja haasteita liittyen Valve Softwaren kehittämään, Source Engine –pelimoottorilla toimivaan tasosuunnit- teluohjelmaan ja sen käyttöön. Työ käy läpi tärkeimmät suunnitteluun liittyvät työtavat geometrian rakentamisesta valaistuksen määrittämiseen. Työnä esitellään Valve Softwarelle 2008 keväällä myyty projekti ”Fastlane”, josta tuli yksi virallisista kartoista Team Fortress 2 – moninpeliin. Tasosuunnittelulla tarkoitetaan kentän rakentamista alkuperäisten suunnitelmien perusteella aina toimivaksi pelikentäksi asti. Kenttään rakennetaan pelimekaaniset elementit, valaistus, mallit ja äänet. Opinnäytetyössä on tarkasteltu pelisuunnittelun historiaa, yritysten taustaa, sekä käyty läpi käytettävän ohjelmiston työkalut ja toiminnot. Työssä on käytetty apuna laajaa valikoimaa eri lähdemateriaaleja koskien taso- ja pelisuun- nittelua ja käyty läpi tapauskohtaisesti se, miten voitaisiin selvitä prosessista mahdollisim- man tehokkaasti hyödyntäen Valve Softwaren tarjoamia monipuolisia työkaluja. Teos/Esitys/Produktio Säilytyspaikka Metropolia Ammattikorkeakoulu Avainsanat tasosuunnittelu,
    [Show full text]
  • State of the Enterprise Tablet Market
    A SUPPLEMENT TO MOBILE ENTERPRISE MAGAZINE • Impact of BYoD State of the Enterprise on TaBlets • acceptance Tablet Market In the EnterprIse The New Age of True Mobile Computing • OS TrenDs The major technology trends of cloud computing and tablets are intersecting to upset the balance of legacy computing environments. RESEARCH PaRTNER SPONSORED BY STATE OF THE ENTERPRISE TABLET MARKET TABLE OF State of the Enterprise Tablet Market CONTENTS IN ADDITIon to ‘BYOT’— 1 IN 5 COMPANIES ISSUING TABLETS TO EMPLOYEES BY CHRIS HAZELTON, RESEARCH DIRECTOR MOBILE & WIRELESS, 451 RESEARCH T3 Impact of BYOD on Tablets The enterprise is experiencing Data is sourced from two recent sur- massive changes as the major veys. The first is from ChangeWave Re- T5 Corporate Demand technology trends of cloud search, a service of 451 Research, lever- for Tablets computing and tablets are inter- aging 25,000 highly qualified business, secting to upset the balance of legacy technology and medical professionals T5 Acceptance computing environments. The tablet is who are in a variety of roles in a broad in the Enterprise the perfect window into cloud services – cross section of vertical markets such as shifting computing from a single device software, telecom, healthcare, energy, T6 Use of Tablets to multiple devices based on user choice hardware, manufacturing and retail. by Role and need, with storage and processing The second source is from 451 Re- of data moving to the cloud. The cloud search’s "2012 Enterprise Mobility Sur- T8 Operating Systems enables device-independent computing, vey," which was done in partnership Trends with access to content from anywhere, with Mobile Enterprise.
    [Show full text]
  • Comparison of GUI Testing Tools for Android Applications
    Comparison of GUI testing tools for Android applications University of Oulu Department of Information Processing Science Master’s Thesis Tomi Lämsä Date 22.5.2017 2 Abstract Test automation is an intriguing area of software engineering, especially in Android development. This is since Android applications must be able to run in many different permutations of operating system versions and hardware choices. Comparison of different tools for automated UI testing of Android applications is done in this thesis. In a literature review several different tools available and their popularity is researched and the structure of the most popular tools is looked at. The two tools identified to be the most popular are Appium and Espresso. In an empirical study the two tools along with Robotium, UiAutomator and Tau are compared against each other in test execution speed, maintainability of the test code, reliability of the test tools and in general issues. An empirical study was carried out by selecting three Android applications for which an identical suite of tests was developed with each tool. The test suites were then run and the execution speed and reliability was analysed based on these results. The test code written is also analysed for maintainability by calculating the lines of code and the number of method calls needed to handle asynchrony related to UI updates. The issues faced by the test developer with the different tools are also analysed. This thesis aims to help industry users of these kinds of applications in two ways. First, it could be used as a source on what tools are over all available for UI testing of Android applications.
    [Show full text]
  • A Resource Guide for Transitioning Your Class Online
    A Resource Guide for Transitioning Your Class Online SPECIAL REPORT MAGNA PUBLICATIONS CONTENTS Education Initiatives: A Mashup of Emergency A Checklist for Moving Your Resources and Other Great Course Online 03 Tips 13 How Teaching Online Can Eight Steps for a Smoother Improve Your Face-to-Face Transition to Online Teaching 05 15 Classes Five Ways to Foster Seven Ways to Facilitate Creativity in Your Online Effective Online Discussions 07 Classroom 19 Online Discussions: Would Simple Animation for Your Changing the Environment Courses 09 23 Help? What Do Students Really Want from Online Instruc- 11 tors? Education Initiatives: A Mashup of Emergency Resources and Other Great Tips Faculty Focus n response to COVID-19, we’ve seen in- links to educational resources from all over the structors and universities from around the world. Iworld come together to compile numer- ous resources and lists. Although we’ve only 4. Mandy Berry: A Facebook Post on skimmed the surface, we believe the following Remote Teaching links provide insight on different perspectives A public Facebook post from Amanda Berry, that institutions and staff are currently go- an assistant professor of literature at American ing through. From transitioning to an online University. course to fostering a productive conversation with your students, these resources shed light 5. Resources for Disruptions on education initiatives we hope you find use- A list of resources compiled by Ollie Dreon ful during this time of uncertainty. on his blog pertaining to transitioning to online teaching and coping with education initiatives 1. Remote Teaching Strategies— during this time of disruption.
    [Show full text]
  • Sailfish OS Interview Questions and Answers Guide
    Sailfish OS Interview Questions And Answers Guide. Global Guideline. https://www.globalguideline.com/ Sailfish OS Interview Questions And Answers Global Guideline . COM Sailfish OS Job Interview Preparation Guide. Question # 1 Tell us what you know about Sailfish OS? Answer:- Sailfish is a Linux-based mobile operating system developed by Jolla in cooperation with the Mer project and supported by the Sailfish Alliance. It is to be used in upcoming smartphones by Jolla and other licencees. Although it is primarily targeted at mobile phones, it is also intended to support other categories of devices. Read More Answers. Question # 2 Explain Sailfish OS Components? Answer:- Jolla has revealed its plans to use the following technologies in Sailfish OS: The Mer software distribution core A custom built user interface HTML5 QML and Qt Read More Answers. Question # 3 Do you know about Sailfish OS software availability? Answer:- Sailfish will be able to run most applications that were originally developed for MeeGo and Android, in addition to native Sailfish applications. This will give it a large catalogue of available apps on launch. Considering upon Jolla's declarations that Sailfish OS is be able to use software from following platforms Sailfish (natively created + ported like from Qt, Symbian, MeeGo - developers have reported that porting a Qt written software with Sailfish SDK takes a few hours only) Android applications are directly running in Sailfish OS. They are compatible as they are in third-party Android stores, with no needed modification (in most cases). MeeGo (because of backward compatibility thanks to MeeGo code legacy included in the Mer core) Unix and Linux (as Sailfish is Linux then using such a software is possible, especially RPM packages, either in terminal/console mode or with limitations implying from using Sailfish UI, if not ported and adjusted) HTML5 Read More Answers.
    [Show full text]
  • If Google Is a 'Bad' Monopoly, What Should Be Done?
    If Google Is A 'Bad' Monopoly, What Should Be Done? Google Inc. is currently subject to antitrust investigations by state attorneys general in the United States, as well as antitrust authorities in the European Union. Google and its allies have mounted a vigorous public defense, arguing that Google’s activity should be immune from antitrust scrutiny or that imposing a remedy on Google would transform antitrust enforcers into some kind of undesirable “software regulatory agency,” which would threaten innovation in the Internet. These arguments are reminiscent of the claims made 20 years ago that antitrust analysis was too outdated to apply to high-tech industries. That argument was rejected then, and it should be rejected now. Exclusionary conduct by a dominant firm can distort fair competition in high-tech markets, Samuel Miller just as in more traditional markets. Antitrust remedies can, and should, be imposed to make sure that a dominant company does not improperly keep rivals out of its markets or improperly strengthen its dominant position, to the detriment of consumers and innovation. EU Competition Commissioner Joaquin Almunia rejected Google’s original proposals to resolve claims of anti-competitive conduct in July 2013, and is currently considering a revised proposal submitted by Google. So what remedy proposals would make sense? This article will outline potential antitrust remedies that may appropriately be imposed upon Google, assuming antitrust authorities or courts determine that Google has violated the antitrust laws. What Is an Illegal Monopoly? A company violates Section 2 of the Sherman Act when it acquires or maintains or “monopoly power” in a relevant market by “exclusionary” conduct.
    [Show full text]
  • Flash®, Flex®, and Air® Development for Mobile Devices
    ffirs.indd ii 12/09/11 7:52 PM BEGINNING FLASH®, FLEX®, AND AIR® DEVELOPMENT FOR MOBILE DEVICES INTRODUCTION . xxi CHAPTER 1 An Introduction to Flash, Flex, and AIR . .1 CHAPTER 2 Getting Started . 35 CHAPTER 3 Building AIR Applications for Android, BlackBerry, and iOS Devices . 67 CHAPTER 4 Touch, Multitouch, and Gestures . .101 CHAPTER 5 Developing for Multiple Screen Sizes . 131 CHAPTER 6 Debugging Applications . .177 CHAPTER 7 Working with the Filesystem . 199 CHAPTER 8 Working with Data . 239 CHAPTER 9 Working with Audio and Video . 289 CHAPTER 10 Utilizing Device Features . 315 INDEX . 359 ffirs.indd i 12/09/11 7:52 PM ffirs.indd ii 12/09/11 7:52 PM BEGINNING Flash®, Flex®, and AIR® Development for Mobile Devices ffirs.indd iii 12/09/11 7:52 PM ffirs.indd iv 12/09/11 7:52 PM BEGINNING Flash®, Flex®, and AIR® Development for Mobile Devices Jermaine G. Anderson John Wiley & Sons, Inc. ffirs.indd v 12/09/11 7:52 PM Beginning Flash®, Flex®, and AIR® Development for Mobile Devices Published by John Wiley & Sons, Inc. 10475 Crosspoint Boulevard Indianapolis, IN 46256 www.wiley.com Copyright © 2012 by John Wiley & Sons, Inc., Indianapolis, Indiana Published simultaneously in Canada ISBN: 978-0-470-94815-6 ISBN: 978-1-118-19334-1 (ebk) ISBN: 978-1-118-19335-8 (ebk) ISBN: 978-1-118-19336-5 (ebk) Manufactured in the United States of America 10 9 8 7 6 5 4 3 2 1 No part of this publication may be reproduced, stored in a retrieval system or transmitted in any form or by any means, electronic, mechanical, photocopying, recording, scanning or otherwise, except as permitted under Sections 107 or 108 of the 1976 United States Copyright Act, without either the prior written permission of the Publisher, or authorization through payment of the appropriate per-copy fee to the Copyright Clearance Center, 222 Rosewood Drive, Danvers, MA 01923, (978) 750-8400, fax (978) 646-8600.
    [Show full text]
  • Defining the Digital Services Landscape for the Middle East
    Defining the Digital Services landscape for the Middle East Defining the Digital Services landscape for the Middle East 1 2 Contents Defining the Digital Services landscape for the Middle East 4 The Digital Services landscape 6 Consumer needs landscape Digital Services landscape Digital ecosystem Digital capital Digital Services Maturity Cycle: Middle East 24 Investing in Digital Services in the Middle East 26 Defining the Digital Services landscape for the Middle East 3 Defining the Digital Services landscape for the Middle East The Middle East is one of the fastest growing emerging markets in the world. As the region becomes more digitally connected, demand for Digital Services and technologies is also becoming more prominent. With the digital economy still in its infancy, it is unclear which global advances in Digital Services and technologies will be adopted by the Middle East and which require local development. In this context, identifying how, where and with whom to work with in this market can be very challenging. In our effort to broaden the discussion, we have prepared this report to define the Digital Services landscape for the Middle East, to help the region’s digital community in understanding and navigating through this complex and ever-changing space. Eng. Ayman Al Bannaw Today, we are witnessing an unprecedented change in the technology, media, and Chairman & CEO telecommunications industries. These changes, driven mainly by consumers, are taking Noortel place at a pace that is causing confusion, disruption and forcing convergence. This has created massive opportunities for Digital Services in the region, which has in turn led to certain industry players entering the space in an incoherent manner, for fear of losing their market share or missing the opportunities at hand.
    [Show full text]
  • Game Development for Computer Science Education
    Game Development for Computer Science Education Chris Johnson Monica McGill Durell Bouchard University of Wisconsin, Eau Bradley University Roanoke College Claire [email protected] [email protected] [email protected] Michael K. Bradshaw Víctor A. Bucheli Laurence D. Merkle Centre College Universidad del Valle Air Force Institute of michael.bradshaw@ victor.bucheli@ Technology centre.edu correounivalle.edu.co laurence.merkle@afit.edu Michael James Scott Z Sweedyk J. Ángel Falmouth University Harvey Mudd College Velázquez-Iturbide [email protected] [email protected] Universidad Rey Juan Carlos [email protected] Zhiping Xiao Ming Zhang University of California at Peking University Berkeley [email protected] [email protected] ABSTRACT cation, including where and how they fit into CS education. Games can be a valuable tool for enriching computer science To guide our discussions and analysis, we began with the education, since they can facilitate a number of conditions following question: in what ways can games be a valuable that promote learning: student motivation, active learning, tool for enriching computer science education? adaptivity, collaboration, and simulation. Additionally, they In our work performed prior to our first face-to-face meet- provide the instructor the ability to collect learning metrics ing, we reviewed over 120 games designed to teach comput- with relative ease. As part of 21st Annual Conference on ing concepts (which is available for separate download [5]) Innovation and Technology in Computer Science Education and reviewed several dozen papers related to game-based (ITiCSE 2016), the Game Development for Computer Sci- learning (GBL) for computing. Hainey [57] found that there ence Education working group convened to examine the cur- is \a dearth of empirical evidence in the fields of computer rent role games play in computer science (CS) education, in- science, software engineering and information systems to cluding where and how they fit into CS education.
    [Show full text]