I’m wondering if there is a way to open an app when clicking on a link in safari (or other browser) in iOS.
My app posts the name of a location, a screenshot on Twitter/Facebook which also has a link. I need to detect when the user clicks that link if he is on a pc or iOS device. If they’re not on iOS device I want to continue to the linked page otherwise I want to open the app and also take take that location name as a parameter when opening it.
If the app has registered a custom URL scheme the device will open the particular app when it’s asked to open a URL of a particular scheme.
This stems from the
CFBundleURLSchemeskey of your apps infoPlist. Apple’s documentation has all the information you need to get started.See more here at the iOS Programming Guide: Advanced App Tricks under ‘Communicating with Other Apps’ section.
Edit
In order to support the specific functionality of your question you need to go one step deeper.
So – what you’re going to have to do is build some sort of device detection into the page that your first URL points to. On that page, detect the device, then conditionally forward the user onto the second URL that will be the custom URL of your particular app.
It’s possible to do this device detection, and detect if they have the app installed on their device with some of the newer HTML5 features supported by mobile browsers, but your question is themed around opening apps with URLs in iOS and the main native iOS hooks you need to support opening apps (with parameters and all) is in the documentation above.