Monday, February 1, 2010

New Features Spotted with Apple's 3.2 SDK


The SDK supports a lot of new functionality, which provides interesting hints as to features the iPad may support either when it ships seven weeks from now, or in a future model. The developer behind great projects like Action Menu, ProSwitcher, and Inspell - Ryan Petrich, has shared the guts of the iPhone 3.2 SDK as to what's built in.

Possible support for a Java, Virtual Machine, and a Handwriting Keyboard - are fairly unexpected. Petrich also notes some support for doing things that have heretofore been jailbreak-only, like adding items to the Select/Cut/Copy/Paste callout (which you can do on the iPhone using Action Menu) and spellcheck/correction on input fields (which can be done with Inspell).

The full list of features provided by Petrich -
  • Support for Kerberos and NegotiateV2 HTTP authentication schemes
  • CoreText framework for advanced typography support
  • A simplified API for formatted text
  • Built-in regular expression engine now accessible to developers
  • Much richer Movie player API
  • Richer CoreAnimation properties (layers can have shadows and effects; effects can be rasterized for speed)
  • Text layers for optimized drawing of formatted text
  • Simplified Beizer path drawing API (formerly a private API)
  • User-accessible filesystem and built in view controllers for accessing them (note: applications that access files directly and not through controller probably won't be approved)
  • Simplified gesture recognizer API (available in 3.0 as a private API; some of us have been using this already ;)
  • Simple CoreGraphics PDF-creation API
  • Ability for applications to add custom items to the select/cut/copy/paste menu (similar to what my ActionMenu does)
  • Spell-checker in text fields and web views with support for multiple languages, grammar checking (English-only), address book integration, user added words and SDK access (via AppleSpell; similar to what my Inspell product does)
  • Custom keyboard views; hardware keyboard (possibly via USB: USBKeyboardLayouts.plist or Bluetooth?)
  • Support for querying attached screens (AppStore-permitted external display support?)
  • Simplified zoom support for standard scroll views
  • SpringBoard maintains orientation
  • Support for hardware media keys (not sure what this is)
  • Ability to set the desktop background (private)
  • The beginnings of file upload support in Safari
  • iPad codename: Wildcat ([[UIDevice currentDevice] isWildcat])
  • Legacy code from iPhone 1.x is still around :P (if stripped out, could save some RAM for memory-constrained devices)
  • Swipe and flick gestures on keyboard
  • Split-view and popover styles
  • Handwriting keyboard is being prototyped
  • "Book" view controller
  • "Peripheral views" are being prototyped (not 100% sure what this is, but appears to be plugins that hardware vendors can inject into all applications?)
  • Possible integrated Java Virtual Machine (in the public frameworks path, but only for Simulator?)
  • Support for DMG and other disk image formats (in the public frameworks path?)
  • Printer support is being prototyped
  • Speech Synthesis is mentioned in public headers (is currently a private API)
  • Slideshow integration with iLife
  • USB Host for transferring images is being prototyped (perhaps Wildcat only? supports PTP only currently)
  • Ads are being tested for the integrated maps application
  • MobileStorageMounter (ability to mount mobile storage?)
  • Included dictionaries: Apple Dictionary, New Oxford American Dictionary, Oxford American Writer's Thesaurus, Shogakukan Daijisen, Shogakukan Progressive English-Japanese Japanese-English Dictionary, and Shogakukan Ruigo Reikai Jiten
In its review of the 3.2 SDK, potential support for a video camera and the ability to accept or decline a video conference, and also to flip a video feed have been noted. This last feature points out, a front-facing camera: which is an omission that was mentioned by many as a significant disappointment when the iPad was announced. The SDK would also support playing a video feed in full screen mode or in a corner of the screen. Some form of multitasking will be supported, or at least a "multitasking-like" functionality like the suspend/resume method used by the iPod app and exploited by apps like Backgrounder.

No comments:

Post a Comment

Note: Only a member of this blog may post a comment.