Secrets of an iPhone Developer Brian Robbins Founder, Riptide Games Slides at FITC Mobile – September 14, 2009.

Slides:



Advertisements
Similar presentations
To Make the Teachers Life Easier Gail Lanham Melanie Roberts KYSTE Conference 2013 FREE APPS & WEBSITES.
Advertisements

ICIS-NPDES Plugin Design Preview Webinar ICIS-NPDES Full Batch OpenNode2 Plugin Project Presented by Bill Rensmith Windsor Solutions, Inc. 3/15/2012.
Recruitment Booster.
What’s new in this release? September 6, Milestone Systems Confidential Milestone’s September release 2012 XProtect ® Web Client 1 Connect instantly.
Space Cadet Defender HD CIS 587 Game Evaluation – Ruth Johnson.
ROWAN COUNTY PUBLIC LIBRARY Using iTunes. Objectives Today you will learn how to: Navigate the iTunes interface Add music to the iTunes library Navigate.
Developing for iPhone from start to App Store and Beyond Brian Robbins Founder – Riptide Games Slides:
Tax Refund Calculator iPhone app By:Tuna Erdurmaz Date: 12 th of February 2010 Supervisor: Paul Barry.
UFCFX5-15-3Mobile Device Development iOS Development Review.
Overview E2E Soccer have released a mobile app for the Apple iPhone for coaches and players who use E2E Soccer’s League Centre product. The mobile app.
SOCIAL NETWORKING APP FACEBOOK. WHAT IS FACEBOOK Facebook was created in 2004 by Mark Zuckerburg and was first used on computers. It was one of the first.
1 © 2006 Cisco Systems, Inc. All rights reserved. Session Number Presentation_ID Using the Cisco Technical Support & Documentation Website for Security.
Apps VS Mobile Websites Which is better?. Bizness Apps Survey Bizness Apps surveyed over 500 small business owners with both a mobile app and a mobile.
Practical PC, 7th Edition Chapter 3: Getting Started with Software
Go to our website, and click on the eMedia Catalog link To find books, either click on the advanced search (which I will.
CHC DI Group. What We Will Cover Securing your devices and computers. Passwords. s. Safe browsing for shopping and online banks. Social media.
EZiHosting / /
CS378 - Mobile Computing App Project Overview. App Project Teams of 2 or 3 students Develop an Android application of your choosing subject to instructor.
Working with Configurator OR Fun and games with Configurator Georgia Garling Berkeley Public School
Archdiocese of Baltimore archbalt.powerschool.com/public
Section 1: Introducing Group Policy What Is Group Policy? Group Policy Scenarios New Group Policy Features Introduced with Windows Server 2008 and Windows.
1 Tradedoubler & Mobile Mobile web & app tracking technical overview.
Intro to Medical Apps on the iPhone/iPod Touch/iPad Nancy Clark, M.Ed. Director, Medical Informatics Education Summer
Accessing DynaMed on an iPhone, iPod touch or iPad Tutorial Last updated 9/28/2011.
PRESENTATION 1: 05-SEP-2012 DUNGEONBARD (IOS GAME) Mobile Application Development.
Folio3 IPhone Training Session 1 Presenter: Imam Raza.
ISmart for iDevices Apple iPad/iPhone/iPod By Tamara Ottum, MxCC Librarian Updated by Sandra Couture, MxCC Ed Tech Specialist.
Using Xcode A Beginner’s Tutorial Erin Green. This tutorial will walk you through Xcode, a software development tool for Apple’s iOS applications – We.
3 Star Info is a Professional and top-rated I-Phone Application Development Company in Chennai, Tamilnadu, India. We develop I-Phone App that can help.
Mobile web Sebastian Lopienski IT Technical Forum 29 June 2012.
1 Session Number Presentation_ID © 2002, Cisco Systems, Inc. All rights reserved. Using the Cisco TAC Website for Security and Virtual Private Network.
Trunica Inc. 500 East Kennedy Blvd #300 Tampa, FL Cross Platform Mobile Apps With Cordova and Visual Studio 2015 © Copyright 2015.
IOS APP STORE PRICING MODELS AND LICENSING POLICIES.
User Input in a multi-touch, accelerometer driven, location aware world Brian Robbins President/Founder – Riptide Games Twitter:
Basic Apple Configurator Preferences. Apple Configurator  Preferences…
FriendFinder Location-aware social networking on mobile phones.
FriendFinder Location-aware social networking on mobile phones.
Periscope the Ninja Stuff Tips and Tricks for Maximizing your Broadcasts.
1 © 2006 Cisco Systems, Inc. All rights reserved. Session Number Presentation_ID Using the Cisco Technical Support & Documentation Website for IP Routing.
BYO iPad Program Parent Information Session 3/12/2015.
What’s New in Destiny 11.0 April 9, Follett’s Destiny Team Don Rokusek Program Director Julie Krater Product Manager Julie Krater Product Manager.
Get Your Cocoa On Integrating Objective-C into Unity iPhone Apps Brian Robbins President/Founder – Riptide Games
1 Session Number Presentation_ID © 2002, Cisco Systems, Inc. All rights reserved. Using the Cisco TAC Web Site for Network Security and Virtual Private.
TODAY Android Studio Installation Getting started Creating your 1 st App Beginning to understanding Intents.
Cosc 5/4735 Voice Actions Voice Interactions (API 23+)
Downloading the App 1 Go to the right store. Access the App Store on iOS devices, the Play Store on Android, and for a.
©2015 Check Point Software Technologies Ltd. 1 [Restricted] ONLY for designated groups and individuals CHECK POINT MOBILE THREAT PREVENTION.
MAINTENANCE GAME DESIGN. OBJECTIVES Name and identify the 3 types of maintenance Understand how maintenance was done before the use of networks Understand.
The Alfresco iOS SDK Gi Lee (Zia Consulting) Peter Schmidt (Alfresco)
by Ondrej Rafaj Open source and other useful projects for iPhone / iPad.
THE SOURCE OF 4 TH & MAYOR: CODE, HACKS, TRICKS Jeff Wilcox Senior Software Development Engineer Microsoft SESSION CODE: WPH308 (c) 2011 Microsoft. All.
CSCI 351 – Mobile Applications Development
ROTARY RESOURCES Rotary Club Central, ClubRunner, rotary.org
PC Gameplan Application.
The world’s most advanced mobile platform
Registering And Joining Developer Program
EBSCO eBooks.
Roku Com Link Call (Toll- Free) Visit Our Website
CSCI 351 – Mobile Applications Development
Kenneth Chen CIS 587 September 21, 2016.
Activate and deactivate the HBO go service from IOS 10.2 os.
Microsoft Connect /17/ :55 PM
MonoGame and Windows 8.
intro to notifications in iOS 10
Addison, Joanne, Katherine, SunMi
Background Current Mobile Environment:
ROTARY RESOURCES Rotary Club Central, ClubRunner, rotary.org
IPad 101.
Accessing DynaMed on an iPhone, iPod touch or iPad
Private Cloud Time Attendance System
Presentation transcript:

Secrets of an iPhone Developer Brian Robbins Founder, Riptide Games Slides at FITC Mobile – September 14, 2009

Today Programming – AudioSession – Accelerometer Input – Accelerometer Calibration – Prevent screen darkening – OS 3.0/2.0 compatibility – Anti-Hacking – NSZombieEnabled – Xcode 3.2 Errors / Warnings – Xcode 3.2 Static Analyzer – Demo App Development – Provisioning Profile tips – iTunes Connect – App Submission Tips – Analytics tracking – Score / Networking Tools – iPhone Configuration Utility (iPCU) – Other Useful Tools Brian Robbins - slides available: 14, 2009

Today’s Goal Most useful session you attend Sept 14, 2009Brian Robbins - slides available:

Programming

AudioSession Can use AudioSession APIs – C-based Or AVAudioSession (SDK 3.0) – Obj-C wrapper into same C calls Categories: – Ambient – Games, allows background iPod Music Playback and follows ringer switch – SoloAmbient – Same as ambient, but stops iPod Music Playback so use this if you have your own background music – Playback – Use for audio playback apps – Record & PlayAndRecord – For recording and playback Brian Robbins - slides available: 14, 2009

Accelerometer Input Use an adaptive Low-Pass filter, for better response Full Implementation in the AccelerometerGraph sample application #define FILTERFACTOR0.1 #define ATTENUATION3.0 #define MINSTEP0.02 // Start with the value from a basic low-pass filter basevalue = (newAcceleration * FILTERFACTOR) + (previousValue * (1.0 - FILTERFACTOR)); // Smooth more for small movement to filter out noised = Clamp(ABS(Normalize(basevalue)-Normalize(newAcceleration))/MINSTEP - 1., 0., 1.); // Calculate a proportional factor alpha = (1.-d) * FILTERFACTOR / ATTENUATION + d * FILTERFACTOR; // Use the new factor to offset smoothed values value = newAcceleration * alpha + basevalue * (1. - alpha); Brian Robbins - slides available: 14, 2009

Accelerometer Calibration Map to the user’s starting orientation when doing heavy accelerometer control Do this when action starts, and ideally tell the user Sorry (James) no example Sept 14, 2009Brian Robbins - slides available:

Prevent Screen Darkening Turn on during gameplay Turn off in menus [UIApplication sharedApplication].idleTimerDisabled = YES; Brian Robbins - slides available: 14, 2009

OS 3.0 / 2.0 compatibility Use OS 3.0 features like MPMusicPicker, without requiring OS 3.0 – Why? OS upgrades on iPod Touch is very low 4 technical steps Business rules for behavior Brian Robbins - slides available: 14, 2009

OS 3.0 / 2.0 Compatibility 1.Target > Info > General – Set Framework Linked Library from “Required” to “Weak” 2.Target > Info > Build – Set Base SDK to latest SDK (ie 3.0) 3.Target > Info > Build – Set iPhone OS Deployment Target to oldest SDK (ie 2.1) 4.Check for availability of class before using it – if ([MPMusicPickerController]) Brian Robbins - slides available: 14, 2009

Anti-Hacking Very simple detection, can go a lot more complex NSBundle *bundle = [NSBundle mainBundle]; NSDictionary *info = [bundle infoDictionary]; if ([info != nil) { /* do something */ } Can also look to see if app is encrypted, check size of info.plist, call home, etc. Brian Robbins - slides available: 14, 2009

NSZombieEnabled Executables > Info > Arguments – NSZombieEnabled value YES Good for EXC_BAD_ACCESS BAD for memory!!! Sept 14, 2009Brian Robbins - slides available:

Xcode 3.2 Errors & Warnings Use the tabs to see from last build or all builds Can also group by type instead of by class Brian Robbins - slides available: 14, 2009

Xcode 3.2 Static Analyzer Uses Open Source Clang analyzer Good for memory references and Obj-C coding compliance Freaking awesome! Brian Robbins - slides available: 14, 2009

Live Demo Sept 14, 2009Brian Robbins - slides available:

App Development

Provisioning Profile Tips Make and use a single “wildcard” App ID – Nothing but a single * – Use that for all development and provisioning profiles – Unless you’re doing in-app purchase or Push Notification When adding devices or users make a new Provisioning Profile – ie Riptide_Dev_01, Riptide_Dev_02 Brian Robbins - slides available: 14, 2009

iTunes Connect Release Date – When submit, set it to whatever, probably 1-2 weeks in the future – The moment you get approval set the release date to today – For Updates, leave release date as is when submit Setting to future will remove you from store! – Moment approved, set release date to today Brian Robbins - slides available: 14, 2009

iTunes Connect App Submission Taking ~2 weeks for approval – Every time, even if rejected for app description problem! Plan for keywords, but don’t use competitor names Don’t put pricing in your app description Don’t put keywords in your app title Brian Robbins - slides available: 14, 2009

Analytics Tracking Simple, cheap (free) and very easy to implement PinchMedia is good Other major one is Flurry Analytics Not something you need to pay for! Brian Robbins - slides available: 14, 2009

Score / Networking Good idea, especially for games Use an existing network to borrow traffic/users OpenFeint, ScoreLoop are biggest open ones Plus+ from ngMoCo is picking up steam, but you have to talk to ngMoCo to use it. Brian Robbins - slides available: 14, 2009

iPhone Configuration Utility Search for iPhone Configuration Utility on Apple Site (2.1 latest version) Basically the Xcode Organizer without Xcode Much easier for AdHoc users to install and manage apps Brian Robbins - slides available: 14, 2009

Other Useful Tools MajicRank – AppViz – MobClix for rank tracking – AppShopper for price history – Sept 14, 2009Brian Robbins - slides available:

Recap Programming – AudioSession – Accelerometer Input – Accelerometer Calibration – Prevent screen darkening – OS 3.0/2.0 compatibility – Anti-Hacking – NSZombieEnabled – Xcode 3.2 Errors / Warnings – Xcode 3.2 Static Analyzer – Demo App Development – Provisioning Profile tips – iTunes Connect – App Submission Tips – Analytics tracking – Score / Networking Tools – iPhone Configuration Utility (iPCU) – Other Useful Tools Brian Robbins - slides available: 14, 2009

Questions? Slides at Brian Robbins