Originally Posted by Kman42
This is typical of apple's way of doing things: add a new technology and make it work with their own apps, then open it up to developers. But I wonder how it would work with third party apps. How would it know which weather app to use or which to-do app? Would you have to manage some complex registry of apps and their functions, like old-school web browsers and plugins?
No registry (or anything close, praise the Lord)!
iOS and OS X have APIs and Frameworks to access things like contacts, maps, etc. Some of these are Private Frameworks (like Siri, and Siri's hooks into other apps).
The APIs for Private Frameworks are undocumented as are the Private Frameworks, themselves.
For Public APIs, Apple provides documentation, examples, and often sample code. The Public Frameworks Header text files can be displayed to allow a developer granular access to the minute details of the Public Framework.
The Private Frameworks provide no such header files.
But the Private Frameworks have to exist on the development systems and the devices themselves.
Savvy, hackers are able to reverse engineer the existent Private Framework files and generate representative header files.
From these, and typical/standard ways that Apple uses Frameworks, hacker developers can determine how to use these Private Frameworks in their apps.
However, Apps submitted to the App Store are tested/validated -- and any app found using a Private Framework will be rejected.