Does anyone know how to programmatically determine the application IDs of the apps on an iPhone? I.E. to determine what applications have been installed on an iPhone?
+4
A:
You cannot do this without Jailbreaking the phone. Apple 'sandboxes' each app, so it cannot see outside of its box. If you had a particular application in mind, and that application had a URL scheme, you could check to see if that scheme was supported (which would indicate the app was probably installed), but that's as close as you're going to get.
Ben Gottlieb
2009-12-07 04:05:02
Can you explain what you mean by "URL scheme"? In my case I have a particular list of apps that I want to determine whether or not they are on the iPhone.
James Testa
2009-12-07 06:09:28
Looking into this a bit more, it appears that in an application's info.plist, one can add a URL scheme that allows other apps to open that app. If on attemping to open the URL one gets an error, one could determine that that app wasn't there.
James Testa
2009-12-07 21:01:53
actually, in 3.0, UApplication has a -canOpenURL: method that will tell you if that URL scheme is supported.
Ben Gottlieb
2009-12-07 22:34:58