developing for mobile platforms
play

Developing for Mobile Platforms Media Computing 12 iPhone - PowerPoint PPT Presentation

Developing for Mobile Platforms Media Computing 12 iPhone Application Programming Group The iOS Family Media Computing 13 iPhone Application Programming Group Mobile Device Characteristics Screen size is compact Memory is limited


  1. Developing for Mobile Platforms Media Computing 12 iPhone Application Programming Group

  2. The iOS Family Media Computing 13 iPhone Application Programming Group

  3. Mobile Device Characteristics • Screen size is compact • Memory is limited • Users interact with one screen at a time • Users interact with one application at a time (iPad is changing that) • Onscreen help is minimal • Context is key: task focus, attention split, peripheral use, movement, interaction time Media Computing 14 iPhone Application Programming Group

  4. 10 Golden Rules of Interface Design (see DIS 1) • Avoid errors, help to recover, offer • Keep the interface simple undo • Speak the user’s language • Design clear exits and closed dialogs • Be consistent and predictable • Include help and documentation • Provide feedback • Offer shortcuts for experts • Minimize memory load • Hire a graphics designer Media Computing 16 iPhone Application Programming Group

  5. 10 Golden Rules of Interface Design (see DIS 1) • Avoid errors, help to recover, offer • Keep the interface simple undo • Speak the user’s language • Design clear exits and closed dialogs • Be consistent and predictable • Include help and documentation • Provide feedback • Offer shortcuts for experts • Minimize memory load • Hire a graphics designer Media Computing 18 iPhone Application Programming Group

  6. Life as an App • The iPhone is an app-centric environment • One app per task! • Define the task that users want to accomplish with your app • Do one thing, but do it well • Data is stored per app • Data exchange between some apps is difficult Media Computing 20 iPhone Application Programming Group

  7. Designing the UI • Make it obvious how to use your application • Sort information from top to bottom • Use visual weight for relative importance • Use alignment for groupings or hierarchy Media Computing 21 iPhone Application Programming Group

  8. Designing the UI • Text should always be legible • Avoid inconsistent appearances • Provide fingertip-size targets (44 x 44 points) • Minimize text input Media Computing 22 iPhone Application Programming Group

  9. Interaction Design • Multitouch interaction is still new • Interaction patterns not established yet • Follow Apple’s examples if possible • If you use complex gestures, help the user Media Computing 23 iPhone Application Programming Group

  10. Standard Gestures To press or select a control or item Tap (analogous to a single mouse click). Drag To scroll or pan. Flick To scroll or pan quickly. Swipe In a table-view row, to reveal the Delete button. To zoom in and center a block of content or an image. Double tap To zoom out (if already zoomed in). Pinch open To zoom in. Pinch close To zoom out. In editable text, to display a magnified view for cursor Touch and hold positioning. Media Computing 24 iPhone Application Programming Group

  11. N e w ! i n 3D T ouch i O S 9 • An additional interaction dimension (right click!) • Detects several levels of pressure • Quick Actions • Peek and Pop • Turn keyboard to trackpad • Available for iPhone 6s and 6s Plus • Apple Watch can also detect Force Touch Media Computing 25 iPhone Application Programming Group

  12. N e w ! i n Multitasking on iPad i O S 9 • Slide Over • Split View • Picture in Picture Media Computing 26 iPhone Application Programming Group

  13. Designing the UI • Seven resolutions, three aspect ratios: Resolution Aspect Ratio Classic Retina iPhone 480 x 320 960 x 640 3:2 iPhone 5(S, C) 1136 x 640 16:9 iPhone 6(S) 1334 x 750 16:9 iPhone 6(S) Plus 1920 x 1080 16:9 iPad 1024 x 768 2048 x 1536 4:3 iPad Mini 1024 x 768 4:3 • Device orientation: portrait or landscape • Designing for the iPad requires more than increasing the resolution Media Computing 28 iPhone Application Programming Group

  14. Starting • Apps should start quickly to provide a fluid user experience • Show a launch image that closely resembles the first screen of your app (launch file) • Restore the state of last run (minimize user input) • Delay a login requirement for as long as possible • By default, launch in device’s current orientation • Think carefully before providing an onboarding experience Media Computing 35 iPhone Application Programming Group

  15. Stop • No Quit button or menu item • Be prepared to quit at any time • Program flow interrupted by external events • Incoming phone call • Store state when stopping • Application moved to background • Notify users what feature are unavailable and limiting your app Media Computing 36 iPhone Application Programming Group

  16. Application Styles Productivity Utility Immersive Photos Seadragon Weather Media Computing 37 iPhone Application Programming Group

  17. Productivity Applications • Organizing and managing detailed information • Often organize data hierarchically • Organizing the list, add or remove items • Examples: Contacts, Photos Media Computing 38 iPhone Application Programming Group

  18. Productivity Applications Photos Contacts Reminders Media Computing 39 iPhone Application Programming Group

  19. Utility Applications • Simple task, minimum user input • Customized, visually attractive UI that enhances the displayed information • Data is organized in flattened list of items • Examples: Weather, Stocks Media Computing 40 iPhone Application Programming Group

  20. Utility Applications Weather Elements Stocks Media Computing 41 iPhone Application Programming Group

  21. Immersive Applications • Full-screen, visually rich UI • Focussed on content and user experience • Tends to hide much of the device’s user interface • Custom navigational methods • Examples: Living Earth, Carpenter Media Computing 42 iPhone Application Programming Group

  22. Immersive Applications Living Earth Carpenter Media Computing 43 iPhone Application Programming Group

  23. Games Tiny Wings FlightControl Media Computing 44 iPhone Application Programming Group

  24. iOS Design Themes • Deference .The UI helps users understand and interact with the content, but never competes with it. • Clarity. Text is legible at every size, icons are precise and lucid, adornments are subtle and appropriate, and a sharpened focus on functionality motivates the design. • Depth . Visual layers and realistic motion impart vitality and heighten users’ delight and understanding. Media Computing 45 iPhone Application Programming Group

  25. Media Computing 46 iPhone Application Programming Group

  26. Media Computing 47 iPhone Application Programming Group

  27. Media Computing 48 iPhone Application Programming Group

  28. Media Computing 49 iPhone Application Programming Group

  29. Media Computing 53 iPhone Application Programming Group

  30. Media Computing 56 iPhone Application Programming Group

  31. iOS Architecture: Overview Media Computing 57 iPhone Application Programming Group

  32. Cocoa Touch ? Cocoa Media Core Services Core OS Media Computing 58 iPhone Application Programming Group

  33. Cocoa T ouch Architecture Cocoa Touch UIKit Foundation User interface elements Utility classes Application runtime Collection classes Event handling Object wrappers for system Hardware APIs services Media Computing 59 iPhone Application Programming Group

  34. Some iOS Frameworks Core Data WebKit Bonjour Text Kit Store Kit Core Location GL Kit Core Bluetooth JavaScript Core Event Kit Security Core Audio Scene Kit Sprite Kit Game Center Media Computing 60 iPhone Application Programming Group

  35. watchOS 2 • In watchOS 2 we now have native apps WatchKit • Apps can integrate more closely with the watch • Programmatic access to hardware HealthKit • Digital Crown (WKInterfacePicker) Complications Time • Microphone, Taptic engine, and health sensors • ClockKit allows building custom watch face Complications • WatchConnectivity provides a two-way communication between the watch and the iPhone in real-time Complications Media Computing 61 iPhone Application Programming Group

Recommend


More recommend