8. Snapshot of Current Hardware Samsung Smart TV Sony Google TV Logitech Revue Android Phones RIM PlayBook Apple iPad2/iPhone4 Android Tablets Palm Pre 2 2011 AIR 2.5 Available FP 10.1 Available FP 10.1 Available FP 10.3/AIR 2.7 Available FP 10.1/AIR 2.5 Available AIR 2.7 Available FP 10.3/AIR 2.7 Available FP 10.1/FP 10.3 4
11. RIM AIR update coming soonAndroid Phones Android Tablets iOS Devices RIM PlayBook Available AIR 2.7 - runtime Available AIR 2.7 - runtime Available AIR 2.7* - captive Available AIR 2.5* - runtime 5
12. AIR Profiles Capabilities “mobileDevice” Profile “desktop” Profile NativeWindow PDF, Printing Context Menu Notification AS2 VM DRM WebKit renderMode=GPU Accelerometer cacheAsBitmapMatrix Orientation SystemIdleMode Camera Roll SQLite Fullscreen Mode File System Networking* TLF Rendering Camera/Microphone* DRM AS2 VM http://bit.ly/aOlHQ3 “tv” Profile * May be present
14. AIR Current Packagers 8 Compiling Packagers adt – Desktop, Android, TV, & iOS Creates: .air, .exe, .dmg, .apk, .ipa pfi - iDevice uses Packager for iPhone Creates: .ipa Now part of adt(since AIR 2.6) blackberry-airpackager– PlayBook Creates: .bar
15. How Packaging AIR apps for iOS Works ADT .ipa SWF Assets Runtime is cross compiled down to ARM instructions and is part of each application. ActionScript Captive runtime – Application includes runtime (compiled in) This is a highly requested feature for Android.
16. App Platforms Tools Development Package & Deploy On Device Debugging Project Types *-app.xml Persist State blackberry-tablet.xml 10
17. Using Capabilities to Develop for Different Devices Capabilities.screenDPI Capabilities.screenResolutionX Capabilities.screenResolutionY Multitouch.supportedGestures Multitouch.supportsGestureEvents Multitouch.supportsTouchEvents Geolocation.isSupported Accelerometer.isSupported
18. Using Multitouch and Gestures MultitouchInputMode.GESTURES – Gestures Multitouch.supportedGestures Multitouch.supportedGestureEvents MultitouchInputMode.TOUCH_POINT - Raw Touch Point Multitouch.supportedTouchEvents Can build your own gesture library with raw data points? http://gestureworks.com/ - Commercial Product
23. IP in the multicast range - 224.0.0.0 to 239.255.255.255 with 224.0.0.0/225 for special use (http://www.iana.org/assignments/multicast-addresses/multicast-addresses.xml)
38. How much UI guidelines is platform specific? Debate on Platform specific UI vs same look and feel across devices AIR Current Work Native text inputs More virtual keyboard control Current Limitations Components or Skins addressing all the UI paradigms Mix and Match Address Android Back button vs other platforms that have no back button Each little UI component specific guideline might not make sense. Content and Branding big drivers 25
40. Text in Mobile StyleableTextField in Flex 4.5 mobile theme extends TextField Non-TLF/FTE TextField with supporting styles: textAlign, fontFamily, fontWeight, fontStyle, color, fontSize, textDecoration, textIndent, leading, letterSpacing Mobile apps are discouraged from using RichText or RichEditableText Spark Label uses TLF, so if you are embedding fonts you either have to embed twice (embedAsCFF=true embedAsCFF=false) Or use TextInput and TextArea, takes some tweaking of a skin to make it just display text and lined up right. 27