42. Touch
Audio
Visual
Sensor
Geo
Data
iPhone’s Anatomy
43. Laboratory robot has confirmed with a human
test: Apple’s iPhone touchscreen is by far the
most accurate touch panel on the market
iPhone
Google Nexus One
Motorola Droid
HTC Droid Eris
Palm Pre
BlackBerry Storm 2
Reference: http://www.appleinsider.com/articles/10/03/24/robotic_test_reconfirms_apples_iphone_touchscreen_superiority.html
iPhone’s Anatomy
44. Laboratory robot has confirmed with a human
test: Apple’s iPhone touchscreen is by far the
most accurate touch panel on the market
Reference: http://www.appleinsider.com/articles/10/03/24/robotic_test_reconfirms_apples_iphone_touchscreen_superiority.html
iPhone’s Anatomy
45. MOTO Lab Experiment
7mm robotic “finger” for “medium touch”
4mm robotic “finger” for a “very light
touch”
iPhone’s Anatomy
47. “All touchscreens are
not created equal.”
Screen sensitivity is a combination of
1) hardware component quality
2) design and
3) software integration - Operating System to
ensure responsiveness for the user
iPhone’s Anatomy
48. Resistive VS Capacitive
Touchscreen Technology
49. Resistive Touchscreens
A screen where two thin metallic layers are separated by a
narrow gap. A finger pushing down on the top layer makes
contact with the bottom surface and the point of contact is
computed by the accompanying electronics.
iPhone’s Anatomy
50. Resistive Touchscreens
A screen where two thin metallic layers are separated by a
narrow gap. A finger pushing down on the top layer makes
contact with the bottom surface and the point of contact is
computed by the accompanying electronics.
iPhone’s Anatomy
51. Resistive Touchscreens
A screen where two thin metallic layers are separated by a
narrow gap. A finger pushing down on the top layer makes
contact with the bottom surface and the point of contact is
computed by the accompanying electronics.
iPhone’s Anatomy
53. Capacitive Touchscreens
This capacitive technology responds to the electrical
properties of your skin, not the pressure of your finger
to figure out where you are touching the screen.
iPhone’s Anatomy
54. Capacitive Touchscreens
This capacitive technology responds to the electrical
properties of your skin, not the pressure of your finger
to figure out where you are touching the screen.
iPhone’s Anatomy
55. Resistive VS Capacitive
Touchscreen Technology
56. Resistive VS Capacitive
Touchscreen Technology
57. Resistive VS Capacitive
Touchscreen Technology
58. Web OS VS Native
HTML5 / JS / CSS JAVA Objective-C
Touchscreen Technology
65. Activity Monitor
CPU Sampler
Leaks
Object
Allocations
Core Data
File Activity
UI Recorder
Core Animation
Open GL ES
System Usage
Available Instruments
66. Activity Monitor overall CPU, memory, disk &
Monitor network activity
Precise time-based sampling of CPU
CPU Sampler
usage
Leaks Detects memory leaks
Object
Measures memory usage by class
Allocations
Monitor Core Data activity &
Core Data
performance
Monitor application’s interaction with
File Activity
the file system
Available Instruments
67. Captures & play back UI events to
UI Recorder run exact same sequence of user
interactions
Core Measures Core Animation graphics
Animation performance and resulting CPU load
Measures Open GL ES graphics
Open GL ES
performance and resulting CPU load
Monitors file, network & memory I/O
System Usage
use and duration for each method
Available Instruments
76. iPhone Icon
Promotion
57 x 57 pixel
iPad Icon
512 x 512 pixel 72 x 72 pixel
iPhone App Store Submission
77. 162 ppi 132 ppi
Core Text Framework
Text-rendering & layout
features
Animated text with special
effects
Display Density (pixels per inch)
78. Hardware Software
Prefer saving and
Accelerometer
loading data invisibly
Compass
Without an explicit
Core Location
“save” or “load” option
Wi-Fi
Supports Open GL ES
Bluetooth
2.0 with legacy
Microphone
support for Open GL
headphone socket
ES 1.0
iPad
81. Carrier 10:32 AM
Carrier 10:32 AM
Carrier 3G 10:32 AM
Signal Strength
Carrier
Current Network
Connection
Time
Battery Charge
Status Bar
82. 6
Music Videos Podcasts Search More
9 99 999
Should be present on all
screens
switch between modes &
views
Badges are
superimposed in the tab
bar to inform user of
new items
Tab Bar & Badges
84. Activity indicator for nav bar
on grey background...
Network activity
Display if it takes more
than a couple of seconds
to perform the task
Activity Indicator
85. Back Button Pane Label Button
Optional instructions for this pane
Cancel Pane Label Save
Pane Label Disabled
Groups All Contacts +
Inbox (20) 2 of 50
Display title of current
view
Display buttons that
trigger action to the view
or navigate
Navigation Bar
89. MockApp
mockapp.com/ Google
MockApp Cancel
http://mockapp.com/
MockApp Cancel
Google
Browser Bar
90. Sample search text
Search
Clear Directions Cancel
Start: Current Location
End:
Type a company name or stock ID.
Cancel
Search Cancel
Placeholder text
Bookmarks button & Clear
button
Prompt with descriptive title
above the search bar
Search Bar
91. Primary action
you can also do this
or maybe this
or why not that
Cancel
Delete
Cancel
Selection Or Confirmation Menu
Important or common action
should appear to the top
Destructive action use red button
Action Sheets
94. Main Message
Optional explanation of what a user needs to do
Primary Button
Confirmation Message
Optional explanation of what the system is
asking
Secondary Primary
Confirmation Message
Please enter your password
Optional explanation of what the system is
john@doe.com
asking
Password
Cancel OK
Primary
Use it wisely
Require immediate user attention
Alerts
95. Web20 Expo SF
Sent from iPhone
It supports multiple lines
It supports scrolling
Text Views
96. From: Twitter Hide
To: Dotan Saguy
Everybody is now following you on Twitter!
April 1, 2035 1:33 PM Mark Unread
Display rich HTML content
Web / Email Views
97. Q W E R T Y U I O P
A S D F G H J K L
#+= Z X C V B N M
ABC space @ . return
1 2
ABC
3
DEF
4
GHI
5
JKL
6
MNO
7
PQRS
8
TUV
9
WXYZ
0
+
Keyboards
98. N G A
A B
This is a regular table B Pete Gardener C
D
C
view D E
F
M
E
F Tess Grady G
G H
I
Divided into sections H
I M.J. Grey J
(the letters are the sections) J K
K L
Each row is an item L
M
Jenn Guggenheim M
N
O
of the list N
O H P
P Q
and can contain several Q
Sara Hashimoto
R
R S
data elements (image, text, etc.) S T
T U
O U Em Hirsch V
W
Display lists of items
List is divided into
sections separated by grey
headers
Table Views
99. Unread 29
First Last name mobile
Item to delete or move
Ready to be deleted Delete
Not pressed yet Current status
When pressed it highlights
This is a regular table view
With icons like in
The “more” tab
of the iPod app
Podcasts
Table Views
100. This group has 3 items
This item has been selected
Items highlight briefly when hit
This group has only 1 item
You can insert headers too
This one lets you drill down
This one shows Current status
Segmented controls
Tab One Tab Two Tab Three
Tab One Tab Two Tab Three
Tab One Tab Two Tab Three
Grouped Table Views
101. Bess Ho
home (111) 222-3333
mobile (111) 222-3333
work (111) 222-3333
whatever (111) 222-3333
Text Message Share Contact
You can even insert instructions like these as
well if they’re helpful in this context.
Silent
This item is turned OFF
Ring
This item is turned ON
ON
Grouped Table Views
102. August 03 2007 7 45
September 04 2008 8 46
October 05 2009 9 47 AM
November 06 2010 10 48 PM
December 07 2011 11 49
Sat Oct 3 7 50 28
Sun Oct 4 8 55 29
Today 9 00 AM 0 hours 30 mins
Tue Oct 6 10 05 PM 1 31
Wed Oct 7 11 10 2 32
Date & Time Pickers
103. First & default value
Second value
Third value
Value Picker
104. Tap
~ Single Mouse Click
Swipe
Reveal the delete button
in a table-view row
Drag
Scroll or Pan
Gestures
105. Tap
~ Single Mouse Click
Swipe
Reveal the delete button
in a table-view row
Drag
Scroll or Pan
Gestures
106. Tap
~ Single Mouse Click
Swipe swipe
Reveal the delete button
in a table-view row
Drag
Scroll or Pan
Gestures
107. Tap
~ Single Mouse Click
Swipe
Reveal the delete button
in a table-view row
Drag
Scroll or Pan
Gestures
108. Tap
~ Single Mouse Click
Swipe
Reveal the delete button
in a table-view row
Drag drag
Scroll or Pan
Gestures
109. Double
Tap
Zoom-in / Zoom-out
Touch &
Hold view in
Display a magnified
editable text
Gestures
110. Double
Tap
Zoom-in / Zoom-out
2x
tap
Touch &
Hold view in
Display a magnified
editable text
Gestures
111. Double
Tap
Zoom-in / Zoom-out
2x
tap
Touch &
Hold view in
Display a magnified
touch
and
editable text hold
Gestures
112. Pinch
Close
Zoom-in
Pinch Open
Zoom-out
Gestures
113. Pinch
Close
Zoom-in
pinch close
Pinch Open
Zoom-out
Gestures
114. Pinch
Close
Zoom-in
pinch close
Pinch Open
Zoom-out
pinch open
Gestures
121. Audio Toolbox
Framework
AV Foundation
Framework
OpenAL Framework
Audio Unit Framework
Audio Queue Services
Remote IO Unit
Media Player Framework
iPhone Audio Frameworks
131. Kodak Pearl Module
Dental System
Practice Management Systems
3D & Extraoral Imaging
Intraoral Radiography
Intraoral Digital Image
Intraoral X-ray Image
132. Video Conferencing
Eye Tracking
Iris Scanning
Front-Facing Camera (Future)
140. Accuracy Constants
CCLocation Class
locationManager.desiredAccuracy
is the most important property of
Location Manager. It determines the
amount of power it consumed.
Constant values are to specify the accuracy of a location.
kCLLocationAccuracyBest
Best
kCLLocationAccuracyNearestTenMete
10 Meters
rs
100 Meters
kCLLocationAccuracyHundredMeters
1000 Meters
kCLLocationAccuracyKilometer
3000 Meters
kCLLocationAccuracyThreeKilometers
Core Services Layer: Core Location
141. CLLocation Class
Constants
CCLocationDegrees
Delivers a latitude or longitude value specified in
degrees. Data type is double.
CCLocationSpeed
Delivers the speed at which the device is moving in
meters per second. Data type is double.
Core Services Layer: Core Location
142. CLLocation Class
Constants
CCLocationDirection
Delivers a direction that is measured in degrees
and relative to true north. Data type is double.
North is 0 degrees
East is 90 degrees
South is 180 degrees
Any “-” value indicates an invalid direction
Core Services Layer: Core Location
146. CCLocationManager
Core Location
Create a CCLocationManager object to
get heading by invoking
[CCLocationManager
startUpdatingHeading].
iPhone 3GS contains a magnetometer - a
magnetic field detector. It displays the
raw x, y, and z magnetometer values.
Magnitude of the magnetic field is
computed in strength.
Core Services Layer: Core Location
147. CLLocationManager
Core Location
if (locationManager.headingAvailable == NO) {
self.locationManager = nil; // No compass is
available
} else {
// heading service configuration
locationManager.headingFilter =
kCLHeadingFilterNone;
// setup delegate callbacks
locationManager.delegate = self;
// start the compass
[locationManager startUpdatingHeading];
}
}
Core Services Layer: Core Location
149. CLHeading
Core Location
- (void)locationManager:(CLLocationManager *)manager
didUpdateHeading:(CLHeading *)heading {
// Update the labels with the raw x, y, and z values.
[xLabel setText:[NSString stringWithFormat:@"%.1f",
heading.x]];
[yLabel setText:[NSString stringWithFormat:@"%.1f",
heading.y]];
[zLabel setText:[NSString stringWithFormat:@"%.1f",
heading.z]];
}
MapKit Framework: Class
151. MKAnnotationView
MKMapView
MKPinAnnotationView
MKPlacemark
MKReverseGeocoder
MKUserLocation
MapKit Framework: Class
152. MKReverseGeocoder
MKReverseGeocoder offers
services to convert a map
coordinate (latitude & Longitude)
to info such as country, city, or
street. It works with a network-
based map service to look up
placemark information for a
specified coordinate value.
Cocoa Touch Layer: MapKit Framework
153. MKReverseGeocoder
Each app is limited to amount
of reverse geocoding
Send one reverse-geocoding
request for any one user action
Reuse the results from initial
request
Suggest not to send one
reverse-geocode request per
minute
Cocoa Touch Layer: MapKit Framework
154. MKAnnotationView
MKMapView
MKPinAnnotationView
MKPlacemark
MKReverseGeocoder
MKUserLocation
MapKit Framework: Class
156. MKMapView Class
MKMapType
It delivers the type of map to display.
MKMapTypeStandard
MKMapTypeSatellite
MKMapTypeHybrid
Cocoa Touch Layer: MapKit Framework
157. MKAnnotationView
MKMapView
MKPinAnnotationView
MKPlacemark
MKReverseGeocoder
MKUserLocation
MapKit Framework: Class
167. Google Location
Maps Services
External
Library
Android SDK
168. Google Maps
External Library
Use Google APIs add-on
Download Maps external library
Must register with Google Maps
service
Obtain a Maps API Key
Android SDK
169. AndroidManifest.xml
Declare Maps Library
Request internet permission
Hide title bar
<uses-library
android:name=”com.google.android.maps” />
<uses-permission
android:name=”android.permission.INTERNET” />
<activity android:name=”.HelloMaps”
android:label=”@string/app_name”
android:theme=”@android:style/Theme.NoTitleBar”>
Android SDK
iPhone Tech Day, iPhone Dev Camp, Android Lab, Nokia Workshop, BlackBerry Conference, Palm Developer Day
iPhone was found to have straight and accurate lines, with some weaknesses at the edge of the panel with the light touch. Nexus One, which MOTO said had "solid performance" much like the Droid Eris. Both the Palm Pre and BlackBerry Storm 2 performed well in the medium test, but produced significant signal loss when the very light touch was employed. The poorest performer of the bunch was the Motorola Droid, which featured "significant waviness and stair-stepping," even with the medium touch test. In the light touch, signal drops were extremely common.
"On inferior touchscreens, it&#x2019;s basically impossible to draw straight lines," MOTO reports. "Instead, the lines look jagged or zig-zag, no matter how slowly you go, because the sensor size is too big, the touch-sampling rate is too low, and/or the algorithms that convert gestures into images are too non-linear to faithfully represent user inputs."
Many layers account for the performance of a touchscreen But it all comes down to how well the electronics and the mechanical hardware are integrated.
A projected capacitive touchscreen &#x2014; the kind that&#x2019;s usually used in phones &#x2014; has a glass insulator coated with a transparent conductive layer. The layer is etched into a gridlike pattern. When a finger touches the surface of the screen, it distorts the electrostatic field. That can be measured as a change in capacitance.&#xA0; The location of the touch is computed and it is passed on to a software application that relates the touch into actions for the device.
Smartphone users have no way to measure exactly how well the capacitive sensor system on their phone is actually working. Their perception is based on the feedback they see on the screen, says Hsu. That means a touchscreen could be quite fast and accurate, but if the visual display doesn&#x2019;t keep up, it won&#x2019;t feel smooth or responsive.
That&#x2019;s where an ASIC, or application specific integrated circuit, is needed to measure and amplify the signals. Apple reportedly designed its own ASIC for the iPhone&#x2019;s touchscreen, while most other companies buy an ASIC from one of the touchscreen chipmakers.
Palm tries to tweak the touchscreen through firmware updates.
One reason why Apple&#x2019;s touch sensor is so sensitive to light touch is that the company uses a 12-volt power source for the sensing lines in the touchscreen sensor, versus the 3- to 5-volt power source that most other component manufacturers have. That higher voltage drive takes a toll on the battery life because it uses up more power, but it also translates into more accurate sensing, which means a better touch experience, say researchers at&#xA0;Moto.
JavaScript or HTML5 doesn&#x2019;t support multi-touch events. Sense up to 5 touches. None of JS or HTML5 are designed to handle 5 OnClick events. WebOS also has tough time in playing multiple audio tags simultaneously. JS won&#x2019;t be able to manually release memory. It relies on window onload refresh page to release memory.
JavaScript or HTML5 doesn&#x2019;t support multi-touch events. Sense up to 5 touches. None of JS or HTML5 are designed to handle 5 OnClick events. WebOS also has tough time in playing multiple audio tags simultaneously. JS won&#x2019;t be able to manually release memory. It relies on window onload refresh page to release memory.
Android - not open
Palm - not open
BlackBerry - not open
Nokia - not open
NASA&#x2019;s Ames Research Center NASA Scientist
Silicon sensing chip in micro-board with 64 nanosensors
Detect trace amounts of ammonia, methane, chlorine gas
This zoom lens by Conice attaches to your iPhone via a protective plastic case which snaps onto your iPhone, it can easily be removed when not in use. The lens and case weigh in at 4.69 ounces, which nearly doubles the 4.8 ounce weight of youriPhone, so you will need a steady hand while taking your photos.
Open up External Accessories. Simplify hardware certification. Accept medical applications.