Deeplink plugin allows processing of iOS application links that enable direct navigation to requested app content.
For Android version, visit https://github.com/cengiz-pz/godot-android-deeplink-plugin .
Follow instructions on the following page to prepare for iOS export:
Follow instructions on the following page to associate your Godot app with your web domain:
There are 2 ways to install the Deeplink
plugin into your project:
- Through the Godot Editor's AssetLib
- Manually by downloading archives from Github
Steps:
- search for and select the
Deeplink
plugin in Godot Editor - click
Download
button - on the installation dialog...
- keep
Change Install Folder
setting pointing to your project's root directory - keep
Ignore asset root
checkbox checked - click
Install
button
- keep
- enable the addon via the
Plugins
tab ofProject->Project Settings...
menu, in the Godot Editor - enable the plugin via the
iOS
section ofProject->Export...
menu, in the Godot Editor
Steps:
- download release archive from Github
- unzip the release archive
- copy to your Godot project's root directory
- enable the addon via the
Plugins
tab ofProject->Project Settings...
menu, in the Godot Editor - enable the plugin via the
iOS
section ofProject->Export...
menu, in the Godot Editor
- Add
Deeplink
nodes to your scene per URL association and follow the following steps:- set the required field on each
Deeplink
nodescheme
host
path prefix
- note that
scheme
,host
, andpath prefix
must all match for a URI to be processed by the app- leave
path prefix
empty to process all paths inhost
- leave
- set the required field on each
- register a listener for the
deeplink_received
signal- process
url
,scheme
,host
, andpath
data from the signal
- process
- alternatively, use the following methods to get most recent deeplink data:
get_link_url()
-> full URL for the deeplinkget_link_scheme()
-> scheme for the deeplink (ie. 'https')get_link_host()
-> host for the deeplink (ie. 'www.example.com')get_link_path()
-> path for the deeplink (the part that comes after host)
- additional methods:
is_domain_associated(a_domain: String)
-> returns true if your application is correctly associated with the given domain on the tested device
adb shell
command can be used to simulate app links as follows:
$> adb shell am start -a android.intent.action.VIEW -c android.intent.category.BROWSABLE -d "https://www.example.com/mydata/path"
- After exporting demo application to an Xcode project, Xcode will require an account to be added.
- Add an account via Xcode->Settings...->Accounts
If your game is not handling your deeplinks, then make sure to revisit the Prerequisites section.
XCode logs are one of the best tools for troubleshooting unexpected behavior. View XCode logs while running your game to troubleshoot any issues.
Refer to Godot's Troubleshooting Guide.
Developed by Cengiz
Original repository: Godot iOS Deeplink Plugin
This section provides information on how to build the plugin for contributors.
- Run
./script/build.sh -A <godot version>
initially to run a full build - Run
./script/build.sh -cgA <godot version>
to clean, redownload Godot, and rebuild - Run
./script/build.sh -ca
to clean and build without redownloading Godot - Run
./script/build.sh -h
for more information on the build script
git submodule add -b main --force --name addon https://github.com/cengiz-pz/godot-deeplink-addon.git addon
- Remove
addon
directory - Run
git submodule update --remote --merge
Library archives will be created in the bin/release
directory.