Firebase Invitations Error - Link not working

1k Views Asked by At

I'm trying to get Firebase invitations working. I've followed the instructions here.

The code that fires off the invitation process is as follows

        AppInviteInvitation.IntentBuilder intentBuilder = new AppInviteInvitation.IntentBuilder(LanguageManager.getString("title-Invitation"))
                .setMessage(LanguageManager.formatString("message-INVITATION_{game-name}", ScribbleGame.getGame().getDisplayName()))
                .setEmailSubject(LanguageManager.formatString("title-TRY_{game_name}", ScribbleGame.getGame().getDisplayName()))
                .setEmailHtmlContent(emailHtml);

        application.startActivityForResult(intentBuilder.build(), ActivityResultConstants.REQUEST_INVITE);

The email contains a link inserted using the %%APPINVITE_LINK_PLACEHOLDER%% tag. The invitations are sent as expected.

I've tried both with and without deep links. Without deep links, I get a URL like this, which doesn't work and returns a 404 error.

https://plus.google.com/appinvite/131189621476-3ec41294-23ea-47e7-81d7-9a5fd004de6e

With deep links, I get a URL like this, which doesn't work and returns a 500 error.

https://sfqj5.app.goo.gl/i/131189621476-b6d8a1cf-81b4-4318-90d0-c32ee1a945e1

I've done a lot of digging but have failed to establish why the links aren't working.

3

There are 3 best solutions below

3
On

In my case I have to set deep link while build invitation intent. I use default link, which I got from firebase console.

cant upload screenshot for some reason, so it's link to imgur

2
On

Put setDeepLink() method in Intent builder. It solved my error.

val intent = AppInviteInvitation.IntentBuilder(getString(R.string.invite_friends_title))
                                .setMessage(getString(R.string.invite_friends_message))
                                .setDeepLink(Uri.parse("https://"))
                                .setOtherPlatformsTargetApplication(
                                        AppInviteInvitation.IntentBuilder.PlatformMode.PROJECT_PLATFORM_IOS,
                                        "311303977939-11h8u454au9q1ts1mleiat83v2r2cd5n.apps.googleusercontent.com")
                                .build()
0
On

I got the same 404 error and finally fix it by calling AppInviteInvitation.IntentBuilder.setDeepLink().

For details, please visit https://firebase.google.com/docs/invites/android

Even you are using play-services-appinvite, you still have to add your project to Firebase and get the deeplink uri from firebase console. Following step 1, 2 and 3 of "Before you begin", it works for my apps.