iPhone OS / SDK 3.0
Nachdem gestern ja das neue iPhone OS vorgestellt wurde, habe ich mir dieses gleich einmal näher angeschaut (allerdings werde ich es nicht so schnell installieren, da die meisten der neuen Features für meine Applikationen jetzt nicht wirklich wesentlich von Bedeutung sind – ich hab zwar schon ein paar Ideen, aber das reicht glaub ich wenn ich das implementiere wenn alles andere schon fertig ist).
Bei der Übersicht der neuen Features wären mir die folgenden Dinge aufgefallen:
- Bluetooth Kommunikation zwischen den Geräten
- Zugriff auf über das Dock angeschlossene Hardware (ich hab die dazugehörige ExternalAccessory API aber noch nicht wirklich durchblickt)
- CoreData (ich werd das zwar nicht so schnell verwenden, aber prinzipiell ist das ganz nett, und könnte möglicherweise das Synchen zwischen iPhone- und Desktop-Applikationen erleichtern bzw. auf einfache Weise auf beiden Seiten die gleichen Datenrepräsentation ermöglichen)
- CoreLocation erlaut Turn-by-Turn Anweisungen (allerdings nicht in Google Maps, aber ich vermute dass damit TomTom & Co demnächst im AppStore verfügbar sein wird)
- Push notifications (ich glaub zwar nicht das ich die so schnell brauchen werde, aber auf dieser Basis dürfte demnächst eine Meebo-Applikation erscheinen)
- Notes Sync (ich verwende zwar mittlerweile Things, aber das ist trotzdem schon lange überfällig)
Eine detaillierte Liste an API Änderungen ist (für Developer) auch verfügbar – die ist wirklich recht lang. Die interessantesten sind dabei:
- CoreFoundation: NSPredicate wurde hinzugefügt. Letztens habe ich mich über dessen Fehlen geärgert, weil das Filtern von UITableViews mit NSPredicate einfacher wäre als ohne. Ein entsprechendes Beispiel wird es früher oder später hier im UITableView Tutorial geben (sobald ich dieses erstellt habe).
- GameKit ist meiner Meinung nach ein bisschen komisch benannt, weil das nicht nur für Spiele interessant ist:
The GKPeerPickerController class provides a standard user interface to allow a user to connect their iPhone to another user’s iPhone. The user can select between local Bluetooth connections and internet connections.
- MapKit erlaubt es Google Maps in eigene Applikationen einzubauen.
- UIKit hat einige interessante Erweiterungen erfahren: einige Navigationselemente lassen sich nun leicht transparent schalten.
- UITableView: reloadRowsAtIndexPaths:withRowAnimation:, reloadSectionIndexTitles, reloadSections:withRowAnimation: erlauben es bei Anpassungen an der DataSource nur die relevanten Abschnitte neu zu laden, sodass nicht mehr die ganze UITableView neu geladen werden muss.
- UITableViewCell: hier sind einige der bisher vorhandenen (und zu verwendenden) Properties inzwischen deprecated (so ist statt .text inzwischen .textLabel und .detailTextLabel zu verwenden)
Ansonsten sind mir jetzt für Developer keine wesentlichen Änderungen aufgefallen (zumindest nicht in Bereichen mit denen ich mich inzwischen beschäftigt habe).
Ich bin mir zwar nicht ganz sicher, inwieweit man das überhaupt veröffentlichen darf, da auf der Developer-Seite steht:
iPhone SDK 3.0 and iPhone OS 3.0 beta are pre-release software and are considered Apple Confidential Information. Any information Apple collects is subject to the terms of the Apple privacy policy.