External links to load a page from an AppGyver app (aka deep linking)

I’d like to be able to add a feature to my app where a person clicks an external link and it takes them to a specific page within the app.

I believe that this is called deep linking.

One of the ideas that I have is to send a code as a link to allow people to join a group within my app.

It gets complicated because they may or may not have the app installed.

So the process goes something like this …

  1. Send a link to someone’s email
  2. User clicks the link
  3. If they have the app installed on their device, the app starts, they log in, and it takes them to a specific page within the app
  4. If they don’t have the app installed, it prompts them to download the app for their device (Apple App Store or Google Play), and once installed, they create their account, and it takes them to a specific page within the app.

Is this possible with AppGyver? Any ideas on how to implement it?

Much appreciated :sunglasses:

3 Likes

I think all but step 4 should be possible though it’s been a while since I made an app with this feature. I don’t how step 4 could be implemented.

But for the first three steps: You should add URL Scheme in Build service to define the beginning of your link. The built app will then be able to open links starting with that URL. Also, add a new Receive event with Event source App brought to foreground via URL to your Initial page and handle the logic then. You should check the URL from event output and handle directing to specific page yourself in the logic based on that.

2 Likes

Thanks @Tomi_Laakso! I will test this out. Must appreciated :sunglasses:

1 Like

@vereggen have you had a chance to test this out?

I’d like to use the same use case that you stated above.

Then also internally in the app when I push in dynamic text from the backend - use the URL schema to redirect to different pages that gives me more flexibility than a single open-page logic node.

Hey @William_Glass … haven’t gotten to this yet. I have a couple of other features for my app on the priority list. If you discover any nasty surprises or hurdles let me know :slight_smile:

1 Like

@vereggen It works so far to just open up the app once you have the URL Scheme identified and the app is downloaded. I haven’t set up the logic to direct to a specific page yet but will tackle that next.

@William_Glass I’m hoping to do the same. Just for clarity, are you deep linking to your app on iOS? Will it open the app directly, without a prompt?

1 Like

@Mark_Wilson Yes in iOS. It works when the app is installed but got busy with other features so have not explored this further yet.

1 Like

If ‘deep linking’ works in Appgyver, this will be big. Many classified or directory type apps would be perfect.

Hi, I’m trying to accomplish the same. Trying with android, I can open an url like myapp://xxx (or appgyverrn://) and the app will open up. However, I’m not able to intercept the data. I Tried to connect an alert and a debug to the " App brought to foreground via URL" event in Splash Page, in a custom page and in global canvas, but nothing happens, just the app opening. Nothing changes if I use myapp://xxx?asd=1 or myapp://?asd=1 or myapp://asd=1. Any clue?

Hi @Massimo_Barreca ,

I just implemented deeplinking for my app (tested only with appgyver preview app). And it is working for me when I add the event “App brought to foreground via URL” when I put it into global canvas.

appgyverrn://xxx?asd=1 works for me

to receive the value for asd I used formula:
LOOKUP(outputs[“Receive event”].event.params, “asd”)

Hope that helps.

2 Likes

Thanks for sharing thia.

but just wanted to test it on a build, but that does not work.

maybe because the url scheme is not getting saved in the build configuration?

From what I saw, in my build it correctly opens the app if I use the scheme saved in configuration, seems we have opposite problems!

thanks for the information. Do you need to add the url scheme everytime? because when I enter something in it and return to the page it is empty again.