How To Program An

scacchicgardenΛογισμικό & κατασκευή λογ/κού

13 Δεκ 2013 (πριν από 3 χρόνια και 5 μήνες)

72 εμφανίσεις

How To Program An
iPhone From The
Ground Level

Tom Pletzke

How To Begin The iPhone App
Programming Journey


Acquire a Mac computer system


Cost is $599.00 for Mac mini show below

Apple Developer


Become an Apple Developer


http://developer.apple.com/


Some versions of Internet Explorer might have trouble viewing the
member center once logged in. Use the Firefox browser instead.

Download and Install Xcode


Dev Centers iOS


http://developer.apple.com/


Select the correct version of Xcode for your
operating system

Apple Developers Program
Resources

Concepts for iPhone development


Xcode is an object orientated language


Database design and query


Object classes and methods


Data structures


arrays


XML

The
iPhone App
Adventure


Just purchased and Apple iPhone


Researched how to create an iPhone app


Borrowed a Mac mini


Familiarized myself a little with the Mac operating
system


Sent email to the head of web services at my work place
for ideas on where to start

The
iPhone App Adventure II


Received note from work contact that there was much
information at the developers site


Talked with Nanette S. Poulios and she gave me ideas
like the iTunes University at Stanford University (good
videos there)


Determined that the developers license would be
needed because of the short timeframe of the project.
Purchased Apple developers license

The
iPhone App Adventure III


Downloaded Xcode (4.5GB) and tried to install


Install Failed on disk space. At least 15GB of disk
space is required to download and install Xcode


Apple Help: Disk space can be found by clicking on the
apple in the top left corner. Then select the following
options:


About This Mac


More info


Storage

The
iPhone App Adventure IV


Attached MyBook and cleared space for Xcode
install


Researched a similar app for design ideas

(Tim McGraw)


Met with Jeff Reid (Band Leader) and discussed
the design of the site


Installed Xcode and began researching how it
works

The
iPhone App Adventure V


Successfully created first app called Hello World


Researched the backend database for iPhone called
SQLite


Researched network communications


Web service


GET from web page


Direct database connection


Picked XML as the data format for the web page

Importance of Planning
The
Functionality
and Screen Designs


Meet with the business owners


What is the app purpose?


What would you like the app to do


Discuss preliminary screen design and functionality


User stories are important and should contain
expected results. Expected results can be easily
turned into test cases.


Importance of
a Design Document


The design document is a more detailed
roadmap for the application then what is
normally discussed with your business partner


In the beginning it is just a shell with as much
detail as known at the time


The design document is updated throughout the
project when more detail is available



Lost City Band App Overview


Create an iPhone app for the Lost City Band
that will show information about the band


Band hot news


Band bio


Band events and location


Band web sites


Primary purpose: Advertising

Provisioning


Development Certificate


Distribution Certificate


Registered Devices


Development Provisioning profile


Distribution Provisioning profile

Application Database


SQLite


Tables


Event


Bio


Weblinks


News


Class for Data


Makes data management easier


XML Data Feed


www.lostcityband.com/LostCityData.xml


RSS Feeds are XML in a special format


http://www.reverbnation.com/lostcityband



LostCityData.xml

ReverbNation RSS Feed

Backup


External backup device


External hard drive


Network


Web backup


Save Versions


Mac Time Machine


Versioning


Automatic Backups


Easy Restore

Event Based Processing


Event based process is when an event tells your
application to execute code.


Some examples of events are time set or user
action.


Lost City Band iPhone app uses event
processing for the URL connection, XML data
retrieval, and parse.

The iPhone App Design

iPhone

URL
GET

XML

Parse

Load
Database

Read

Database

View
Display

If successful connection

End

If Connection
not successful
or cache

Searching For Solutions


Google


Start queries with Xcode ...


Books


iOS 5 By Tutorials, Ray Wenderlich


iPhone iOS 5 Development Essentials, Neil Smyth


Review with co
-
workers or other programmers


It is not required that they know Xcode


Videos, YouTube, iTunes University (Stanford)

Applying Solutions


Review solution for potential bad or harmful code


Apply solutions one section at a time and compile
(build) if possible


Use a variable cross reference table



Solution

My Code

dataSetA

eventType

strDate

endDate

foundData

eventFound

Demo: Xcode


Beginning from a template


Moving around Xcode


Building


Simulator or “Real” iPhone for testing


Key features of the Lost City Band app


Database


Screens Layout


Screens: Home, Bio, Events, Weblinks


Debugger


Using with and without variables


Variable Inspection



Submitting To The App Store


Read Apple Developer website instructions to make the
process easier


Distribution Certificate and Profile


Xcode: Change build configuration and archive to
create binaries for submission


Support web site


www.tomcosoftware.com/support/support.htm




Future Enhancements to Lost City
Band App


Separate past band events


Fix map program button to show loading


Link events to ReverbNation RSS feed


Weblinks appear in next window instead of web
launch which leaves the application


Email event option

How To Program An
iPhone From The
Ground Level

Tom Pletzke

Q & A