
Publisher
cengizpz
iOS Deeplink Plugin
Deeplink plugin allows processing of iOS application links that enable direct navigation to requested app content. Installation Steps: - 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 - enable the addon via the Plugins tab of Project->Project Settings... menu, in the Godot Editor - enable the plugin via the iOS section of Project->Ex...
This plugin has been mirrored from the Godot Asset Library.
The plugin author is in no way affiliated with Gadget.
If you are the author of this plugin and would like this mirror removed, please contact support@gadgetgodot.com.
Deeplink Plugin
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 .
Prerequisites
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 domaster:
Installation
There are 2 ways to install the Deeplink plugin into your project:
- Through the Godot Editor's AssetLib
- Manually by downloading archives from Github
Installing via AssetLib
Steps:
- search for and select the
Deeplinkplugin in Godot Editor - click
Downloadbutton - on the installation dialog...
- keep
Change Install Foldersetting pointing to your project's root directory - keep
Ignore asset rootcheckbox checked - click
Installbutton
- keep
- enable the addon via the
Pluginstab ofProject->Project Settings...menu, in the Godot Editor - enable the plugin via the
iOSsection ofProject->Export...menu, in the Godot Editor
Installing manually
Steps:
- download release archive from Github
- unzip the release archive
- copy to your Godot project's root directory
- enable the addon via the
Pluginstab ofProject->Project Settings...menu, in the Godot Editor - enable the plugin via the
iOSsection ofProject->Export...menu, in the Godot Editor
Usage
- Add
Deeplinknodes to your scene per URL association and follow the following steps:- set the required field on each
Deeplinknodeschemehostpath prefix
- note that
scheme,host, andpath prefixmust all match for a URI to be processed by the app- leave
path prefixempty to process all paths inhost
- leave
- set the required field on each
- register a listener for the
deeplink_receivedsignal- process
url,scheme,host, andpathdata from the signal
- process
- invoke the
initialize()method at startup - 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_domaster_associated(a_domaster: String)-> returns true if your application is correctly associated with the given domaster on the tested device- ! this method is not supported on iOS !
iOS Export
- Make sure that the scene that contains your Deeplink nodes is selected in the Godot Editor when building and exporting for iOS
- Close other scenes to make sure
- Deeplink nodes will be searched in the scene that is currently open in the Godot Editor Android export requires several configuration settings.
File-based Export Configuration
In order to enable file-based export configuration, an export.cfg file should be placed in the addons/DeeplinkPlugin directory. The export.cfg configuration file may contain multiple deeplink configurations. The scheme and host properties are mandatory for each deeplink configuration.
The following is a sample export.cfg file:
[Deeplink1]
scheme = "https"
host = "www.example.com"
[Deeplink2]
scheme = "https"
host = "www.example2.com"
Node-based Export Configuration
If export.cfg file is not found or file-based configuration fails, then the plugin will attempt to load node-based configuration.
During iOS export, the plugin searches for Deeplink nodes in the scene that is open in the Godot Editor. If none found, then the plugin searches for Deeplink nodes in the project's master scene. Therefore;
- Make sure that the scene that contains the
Deeplinknode(s) is selected in the Godot Editor when building and exporting for Android, or - Make sure that your Godot project's master scene contains an
Deeplinknode(s).
Running demo
- After exporting demo application to an Xcode project, Xcode will require an account to be added.
- Add an account via Xcode->Settings...->Accounts
Troubleshooting
Unhandled Deeplinks
If your game is not handling your deeplinks, then make sure to revisit the Prerequisites section.
XCode logs
XCode logs are one of the best tools for troubleshooting unexpected behavior. View XCode logs while running your game to troubleshoot any issues.
Troubleshooting guide
Refer to Godot's Troubleshooting Guide.
Credits
Developed by Cengiz
Based on: Godot iOS Plugin Template
Original repository: Godot iOS Deeplink Plugin
Contribution
This section provides information on how to build the plugin for contributors.
Prerequisites
Build
- Run
./script/build.sh -Ainitially to run a full build - Run
./script/build.sh -cgAto clean, redownload Godot, and rebuild - Run
./script/build.sh -cato clean and build without redownloading Godot - Run
./script/build.sh -cb -z4.0to clean and build plugin without redownloading Godot and package in a zip archive as version 4.0 - Run
./script/build.sh -hfor more information on the build script
Install Script
- Run
./script/install.sh -t -zinstall plugin to a Godot project. - Example
./script/install.sh -t demo -z bin/release/DeeplinkPlugin-v4.0.zipto install to demo app.
Git addon submodule
Creating
git submodule add -b master --force --name addon https://github.com/cengiz-pz/godot-deeplink-addon.git addon
Updating
- Remove
addondirectory - Run
git submodule update --remote --merge
Libraries
Library archives will be created in the bin/release directory.