iPhone Application Development: Strategies for Efficient Mobile Design and Delivery
By Jim Hahn
()
About this ebook
- Overview and step-by-step development guide with Web Based Applications (the Dash code application)
- Overview and step-by-step development guide using the Native Application Developer (the Xcode application)
- Explaining principles of portability and transferability of systems
Jim Hahn
Jim Hahn, Librarian at the University of Illinois Urbana-Champaign, is an award winning author of articles on mobile computing, has convened national discussion forums for librarians interested in mobile learning and has presented on mobile computing research at international conferences.
Related to iPhone Application Development
Language Arts & Discipline For You
30 Days to a More Powerful Vocabulary: The 500 Words You Need to Know to Transform Your Vocabulary.and Your Life Rating: 4 out of 5 stars4/5The Craft of Research, Fourth Edition Rating: 4 out of 5 stars4/5Writing to Learn: How to Write - and Think - Clearly About Any Subject at All Rating: 4 out of 5 stars4/5Speed Reading: How to Read a Book a Day - Simple Tricks to Explode Your Reading Speed and Comprehension Rating: 4 out of 5 stars4/5500 Beautiful Words You Should Know Rating: 5 out of 5 stars5/5Barron's American Sign Language: A Comprehensive Guide to ASL 1 and 2 with Online Video Practice Rating: 3 out of 5 stars3/5The Lost Art of Handwriting: Rediscover the Beauty and Power of Penmanship Rating: 5 out of 5 stars5/5Grammar 101: From Split Infinitives to Dangling Participles, an Essential Guide to Understanding Grammar Rating: 4 out of 5 stars4/5Show, Don't Tell: How to Write Vivid Descriptions, Handle Backstory, and Describe Your Characters’ Emotions Rating: 5 out of 5 stars5/5Talk Like TED: The 9 Public-Speaking Secrets of the World's Top Minds Rating: 4 out of 5 stars4/5The Dictionary of Obscure Sorrows Rating: 4 out of 5 stars4/5Get to the Point!: Sharpen Your Message and Make Your Words Matter Rating: 5 out of 5 stars5/5On Writing Well, 30th Anniversary Edition: An Informal Guide to Writing Nonfiction Rating: 4 out of 5 stars4/5Verbal Judo, Second Edition: The Gentle Art of Persuasion Rating: 4 out of 5 stars4/5The Elements of Style, Fourth Edition Rating: 5 out of 5 stars5/5Webster's New World: American Idioms Handbook Rating: 5 out of 5 stars5/5Fluent in 3 Months: How Anyone at Any Age Can Learn to Speak Any Language from Anywhere in the World Rating: 3 out of 5 stars3/5The Everything Sign Language Book: American Sign Language Made Easy... All new photos! Rating: 4 out of 5 stars4/5We Need to Talk: How to Have Conversations That Matter Rating: 4 out of 5 stars4/5Talk Dirty Spanish: Beyond Mierda: The curses, slang, and street lingo you need to Know when you speak espanol Rating: 0 out of 5 stars0 ratingsI Will Judge You by Your Bookshelf Rating: 4 out of 5 stars4/5Dirty Sign Language: Everyday Slang from "What's Up?" to "F*%# Off!" Rating: 0 out of 5 stars0 ratingsAs We Speak: How to Make Your Point and Have It Stick Rating: 4 out of 5 stars4/5Summary of Lessons in Chemistry Rating: 3 out of 5 stars3/5The Road Not Taken and other Selected Poems Rating: 4 out of 5 stars4/5Writing Fiction: A Guide to Narrative Craft Rating: 4 out of 5 stars4/5How To Write A Children’s Book Rating: 5 out of 5 stars5/5Wordslut: A Feminist Guide to Taking Back the English Language Rating: 4 out of 5 stars4/5
Reviews for iPhone Application Development
0 ratings0 reviews
Book preview
iPhone Application Development - Jim Hahn
Chandos Information Professional Series
iPhone Application Development
Strategies for efficient mobile design and delivery
Jim Hahn
Table of Contents
Cover image
Title page
Copyright
Dedication
List of figures
Acknowledgements
About the author
Preface
Technology specs
Chapter 1: Framing concepts for the iPhone as media with the historical continuity of computing best practice
What this book is about
Framing concepts
Affordances
Chapter 2: Beginning Dashcode development: remediating an RSS feed to the iPhone
User narrative: how a library patron will use an RSS app
The Dashcode design interface
Provide an RSS feed
Customizing other application attributes
Web Clip
Test and share
Iterating design based on user feedback
Your app is now ready for the iTunes App Store
Consulted
Chapter 3: Basic Dashcode development: creating a Podcast application
User narrative: envisioning how a library patron will use the podcast app
iPhone podcast app design theory
Create a podcast feed
Customize the podcast template
Dashcode workflow step 1: provide podcast
Dashcode workflow step 2: set attributes
Dashcode workflow step 3: design webclip icon
Dashcode workflow step 4: test and share
Iteration based on use: questions to ask users about this app
Consulted
Appendix 3.1 – Using Garageband for podcast creation or modification
Appendix 3.2 – XML stylesheet modification
Chapter 4: Intermediate Dashcode development: video tour iPhone application
User narrative: how a library user will use the Video Tour app
Design theory: further description of a datasource
Customize the layout in canvas view
Dashcode workflow step 1: layout interface
Dashcode workflow step 2: customize data by editing the data source
Bindings of the data source
Dashcode workflow step 3: add handlers and code
Dashcode workflow step 4: design web clip icon
Dashcode workflow step 5: test and share
Iteration based on use: questions to ask users about this app
Consulted
Chapter 5: Designing with Dashcode: using the Custom template
Functional tasks of the custom iPhone app
User narrative: envisioning how a library user will use the infoPoint app1
Dashcode workflow step 1: lay out interface
Dashcode workflow step 2: add handlers and code
Associate a data source with page elements
Iteration based on use
Chapter 6: Designing a Utility application with Dashcode
User narrative: envisioning how a library patron will use the utility app
Dashcode step 1: lay out front side
Dashcode workflow step 2: provide settings
Iterate design
Chapter 7: Introduction to the Xcode module
Software
The Xcode interface
Consulted
Chapter 8: Using the PhoneGap framework within Xcode
The PhoneGap folders
Place your Dashcode files into the PhoneGap WWW folder
Getting the binary onto the iTunes App Store
Setting the Active SDK and Active Configuration for Distribution
Consulted
Chapter 9: The future of the iPhone operating system and future mobile computing devices
Software
Access to software: iTunes App Store integration and the iPad
Hardware of the future
What is next for mobile computing?
Consulted
Appendix 1 A safety framework for mobile computing
Appendix 2 iPhone orientation
Index
Copyright
Chandos Publishing
TBAC Business Centre
Avenue 4
Station Lane
Witney
Oxford OX28 4BN
UK
Tel: + 44 (0) 1993 848726
E-mail: info@chandospublishing.com
www.chandospublishing.com
Chandos Publishing is an imprint of Woodhead Publishing Limited
Woodhead Publishing Limited
80 High Street
Sawston
Cambridge CB22 3JH
UK
www.woodheadpublishing.com
First published in 2011
ISBN:
978 1 84334 582 4
© J. Hahn, 2011
British Library Cataloguing-in-Publication Data.
A catalogue record for this book is available from the British Library.
All rights reserved. No part of this publication may be reproduced, stored in or introduced into a retrieval system, or transmitted, in any form, or by any means (electronic, mechanical, photocopying, recording or otherwise) without the prior written permission of the Publishers. This publication may not be lent, resold, hired out or otherwise disposed of by way of trade in any form of binding or cover other than that in which it is published without the prior consent of the Publishers. Any person who does any unauthorised act in relation to this publication may be liable to criminal prosecution and civil claims for damages.
The Publishers make no representation, express or implied, with regard to the accuracy of the information contained in this publication and cannot accept any legal responsibility or liability for any errors or omissions.
The material contained in this publication constitutes general guidelines only and does not represent to be advice on any particular matter. No reader or purchaser should act on the basis of material contained in this publication without first taking professional advice appropriate to their particular circumstances. Any screenshots in this publication are the copyright of the website owner(s), unless indicated otherwise.
Typeset in the UK by Concerto.
Original artwork designed by Donovan Foote.
Printed in the UK and USA.
Printed in the UK by 4 edge Limited - www.4edge.co.uk
Dedication
For my friend Mia.
List of figures
2.1. Choose the RSS icon for the template used in this chapter. Be sure to select only the ‘develop for mobile safari checkbox’ 18
2.2. Essential components of the Dashcode design screen, marked up using Apple’s terminology 20
2.3. This is the properties window. Here you can input the feed source and customize other attributes of the app 22
3.1. Choose the Podcast icon for the template used in this chapter. Be sure to select only the ‘develop for mobile safari checkbox’ 30
3.2. The app template shows access to three sample episodes of a podcast 34
3.3. The navigator section of the Dashcode window has the content element selected. By selecting this element the changes made in the Inspector tool will be made to the content area of the app 36
4.1. Choose the Browser icon for the template used in this chapter. Be sure to select only the ‘develop for mobile safari checkbox’ 44
4.2. This is the canvas view of the Browser template. It is the basic layout of many mobile websites 48
4.3. This is the browser window the app scrolls to after the ‘Item’ bar is tapped. Note that there are two layers of the browser app 50
4.4. This is what your canvas view will look like after you have dropped the QuickTime video element onto the second level of the browser 54
4.5. The lower portion of the Dashcode window shows the graphical representation of my data model from the previous section 59
4.6. By linking the relational source to your canvas you are creating a binding between the list of ‘Items’ and the data 60
4.7. The portion of your JSON array that is named ‘src’ is the one that gets linked to the QuickTime video element 61
4.8. You can double check the functionality of any app from the simulator. This is especially useful after linking a data source 62
5.1. Choose the Custom icon for the template used in this chapter. Be sure to select only the ‘develop for mobile safari checkbox’ 68
5.2. This is a blank template we are starting from. It is highly customizable and there are many uses beyond the work we will do in this chapter. In other words, this is a template to come back to and experiment with 73
5.3. This should look familiar. The layout resembles portions of the Browser app 75
5.4. This is what the simulator models after I incorporate the data from the JSON array 79
5.5. The JSON data relation is working properly but note that the text is displayed in a manner that still needs formatting changes to be read more easily 79
5.6. I decide to use a more streamlined look and feel in the next iteration of the app 83
5.7. Notice the stop locations now are more easily read by using a list rather than a box for text 83
6.1. Choose the Utility icon for the template used in this chapter. Be sure to select only the ‘develop for mobile safari checkbox’ 86
6.2. This is what the Utility template looks like before we customize it for our library 87
6.3. By the end of the chapter you will have an operational virtual suggestion box for the iPhone 88
6.4. In the bottom portion of the menu you will find the recipient field. This is where you will put in your library’s email account that you want the collections suggestion to go to 92
6.5. This is the reverse side of the app. If you choose to you can modify display attributes here or drop in additional parts 93
7.1. These are the Xcode templates. If you have made heavy use of iPhone apps in the past you should be able to identify which template any given app originated from 99
7.2. This is the Xcode (version 3.2.1) developer environment 102
7.3. The application settings menu of Xcode 106
8.1. This is the iPhone folder found in the downloaded files 116
8.2. The PhoneGap framework is a preconfigured set of files running inside of Xcode. It is essentially a template 117
A2.1. The home screen of the iPhone running the iOS 3. Icons are an important element of mobile design 149
A2.2. The keyboard interface of the iPhone. The user can rotate the device 180 degrees for a slightly larger layout 152
Acknowledgements
I would like to thank Allen Renear for the information modeling foundation course and data abstraction introduction, Michael Twidale for introducing me to rapid prototyping and rapid user studies, David Ward and Robert Slater for the web ideas, and Josh Bishoff and Elizabeth German for programming support. Thanks are also due to Pat Olson and Ryan Cavis who helped greatly with the early iPod research, and the Research and Publication Committee at the University of Illinois Urbana-Champaign Library which funded iPod touch devices for a previous research study. Any inaccuracies in this book are my own.
Screenshots used in this book are from Dashcode and Xcode, modules from the iPhone SDK.
Jim Hahn, Urbana, Illinois, USA
About the author
Jim Hahn earned his M.S. in Library and Information Science from the Graduate School of Library and Information Science at the University of Illinois Urbana-Champaign. His day-to-day focus is on helping first-year and transfer students make the transition to university study at the University of Illinois Urbana-Champaign, where he holds the position of Orientation Services Librarian and Assistant Professor of Library Administration. His recent research focus concerns understanding how library information resources can be provisioned to a student’s handheld device based on position in the library stacks, as well as developing other mobile wayfinding tools for library engagement. Jim is currently the Vice-Chair of the Emerging Technologies Interest Group of the Library and Information Technology Association, a division of the American Library Association.
He can be contacted at: University of Illinois, Undergraduate Library, 1408 W. Gregory Dr., MC – 522, Urbana, IL 61801, USA; e-mail: jimhahn@illinois.edu
Preface
Anyone living in contemporary twenty-first century culture has no doubt witnessed the seemingly near-ubiquitous penetration of mobile computing technology into our everyday lives. Have you ever wondered what exactly everyone is doing so busily occupied on their mobile device? Watch a group of students walk out of a lecture hall and the first thing overwhelmingly any of them will do is to look at their phone. Mobile computing ubiquity is an extremely important opportunity for librarians looking to craft new services.
Despite very impressive proof-of-concept work and mobile websites, we librarians have not really got up to speed, if one considers the possibilities for location-based and context-aware service provision – but we probably could create some really compelling uses for mobile applications that considered the user in the world, if we had a guide for such a thing. The services to be developed are not without precedent; librarians certainly can and do adapt to new service platforms. It is a skill of the trade to be adaptable and pick up new technologies to craft new services. Computing best practice (like the relational model and data independence) and human computing interaction (in rapid prototyping, and rapid evaluation) has something to teach us about this seemingly new venue.
This is a service-oriented book (which is to say, I am always writing with an eye for practical implementations) for librarians seeking to re-engineer services to a specific form of handheld computing technology by way of the iPhone Software Developer Kit (or SDK). It is my hope that in the process of reading this book librarians will begin to envisage something that might truly and authentically be a departure from previously known services a library has been traditionally able to offer users. This book explores first those user tasks which are uniquely suited for the handheld device and develops tools