Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Speaker Deck
PRO
Sign in
Sign up
for free
Adapting iOS8
Aviel Lazar
July 15, 2014
Technology
0
150
Adapting iOS8
Guidelines, gotchas and some cool stuff to consider when making your app ready for iOS8
Aviel Lazar
July 15, 2014
Tweet
Share
Other Decks in Technology
See All in Technology
smzksts
0
220
stakaya
1
590
hamadakoji
0
1.1k
tdys13
4
3.4k
ymas0315
0
150
110y
3
690
soachr
1
150
hecateball
1
12k
line_developers
PRO
0
1.9k
ocise
0
120
greymd
0
600
yokatsuki
1
190
Featured
See All Featured
frogandcode
127
20k
ammeep
656
54k
brettharned
93
3k
skipperchong
7
660
sachag
267
17k
akmur
252
19k
hursman
106
9.2k
hatefulcrawdad
257
17k
shpigford
165
19k
tammielis
237
23k
tanoku
258
24k
paulrobertlloyd
71
3.6k
Transcript
Adapting iOS 8 Aviel Lazar @aviellazar TLV iOS Developers
Meetup
Your iOS7 apps • Work! • Don’t look deprecated •
And yet…
Privacy Permissions Attack
Permissions Attack #1 Camera
Always vs. While in Use Permissions Attack #2 Location
Permissions Attack #3 • Permission Required – NEW: Local Notifications – Push
Notifications • No Permission Needed: – Silent Push Notifications • Gotcha: New API! registerUserNotificationSettings:notificationSettings
Best Practices • Prompt in context • Specify the purpose
• NEW: Privacy settings link !UIApplicationOpenSettingsURLString" " http://techcrunch.com/2014/04/04/the-right-way-to-ask-users-for-ios-permissions/
Push Notifications
In App Purchases • Ask to Buy feature of Family
Sharing – New transaction state – Deferred
• Payment is neither purchased or failed – Further update will
be received – Indeterminate time • Meanwhile – Allow the user to use the app – Repurchase allowed Deferred Transaction
Keyboard Height Accessory View Displayed Above that
Condensing Bars
UI Adaptivity • Canvas Space vs. Orientation • Regular vs.
Compact
UI Adaptivity
UI Adaptivity • UITraitsCollection – horizontalSizeClass – verticalSizeClass – displayScale – userInterfaceIdiom
UI Adaptivity • Adaptive View Controller - UITrairtsEnviorment – UIPresentationController
• Popover • AlertsView,ActionSheet • Search • Custom – UISplitViewController • Adaptive Image Assets " [UIImage named: ”Cart” " inBundle: nil " compatibleWithTraitCollection: self.traitCollection]"
UI Adaptivity Gotcha • [[UIScreen mainScreen] bounds] – Is now orientation
aware!
UITableView Dynamic Text Support
UITableView Cells • rowHeight • Delegate • Self Sizing Cells
(Dynamic Type) – Auto Layout – sizeThatFits: is height for width – table.View.rowHeight =44 (gotcha) – tableView.estimatedRowHeight = 44
WKWebView • It’s the Safari WebView – Multi Process ,
Gestures, Fast JavaScript • Powerful integration for Hybrid Apps: • Navigation Delegate • User scripts • Script Messages – JSON" – window.webkit.messageHandlers.<name>.postMessage();"
WKWebView
Modern Objective - C • instanacetype – (instancetype)initWithFrame:(CGRect)frame; " •
Properties vs. method notations ! !"
iTunes Connect • iTunes Connect Analytics – App Page Views
– Website Links – Campaign Links • App Bundles – Only for paid apps – Complete my bundle
App Previews • 30 Seconds • Shows UI/Functionality • Easily
Capture - OS X Yosemite and iOS 8 • Can Do: – Narrations • Don’t Do: – Hands – Prices – Copyright infringement
Hidden Gems & More… • Localization – XCode will Import/Export
XLIFF files – Previews (RTL support) • Instruments – Network profiling
Thank You We’re Hiring! aviel@chegg.com