I'm wanting to open up another application on my ipad via a button press in Unity. I know normally I would use Application.OpenURL()
on my button press, but I'm unsure as to what to put in the brackets. This is an application already on the iPad and isn't one I've created.
Has anyone ever done this before? Could you possibly point me in the right direction so I can get this to work? Is it even possible?
The other application needs to support that behaviour, by defining a custom url scheme. The developer needs add an URL Type i.e. "awesomeapp" in Xcode under Targets > Info > URL Types, if he does not support it you can not open the app.
In your Unity app just call
Application.OpenURL("awesomeapp://").
see also this stackoverflow entry: Launch an app from within another (iPhone)
UPDATE 1: how to find a custom URL scheme of 3rd party app
- Download the purchased app via iTunes on OSX
- Go to the [AppName].ipa file on your filesystem
- Rename it to a [AppName].zip so that you can extract it
- Go to "[AppName]/Payload/[AppName].app"
- Right click and select "Show Package Contents"
- Open the Info.plist in Xcode and look for the key URL types or in a text editor for CFBundleURLTypes.
UPDATE 2: iOS 9
For iOS 9 you must whitelist that application in the Info.plist of the Xcode Project:
<key>LSApplicationQueriesSchemes</key>
<array>
<string>awesomeapp</string>
</array>
来源:https://stackoverflow.com/questions/24362381/open-ios-application-from-unity