1

我的应用程序正在使用谷歌应用程序邀请框架(pre firebase 版本),电子邮件邀请中的链接工作正常,用户点击链接,应用程序打开并检索到深层链接但是当用户通过 SMS 嵌入式链接发送时打开 Play 商店?用户点击打开应用但没有链接?

好像 SMS 链接无法在电子邮件所在的用户设备上看到应用程序,有什么想法吗?

有点像我错过了 SMS 打开应用程序的权限?

链接检索的清单摘录:

<!-- deep link retrieval for appInvites -->
        <intent-filter >
            <action android:name="android.intent.action.VIEW" />

            <category android:name="android.intent.category.DEFAULT" />
            <category android:name="android.intent.category.BROWSABLE" />

            <data
                android:host="uid"
                android:scheme="AppName" />
        </intent-filter>

和我的邀请生成器代码:

Intent intent = new AppInviteInvitation.IntentBuilder("Invite Friends")
                    .setMessage("Come join us")
                    .setCallToActionText("Join me!")
                    .setDeepLink(Uri.parse("AppName://uid/" + uid))
                    .build();
            startActivityForResult(intent, 1);

更新:尝试打开 SMS 邀请 URL 时,我似乎收到以下消息:

XMLHttpRequest 无法加载https://play.google.com/log?format=json。“Access-Control-Allow-Origin”标头的值“ http://play.google.com ”不等于提供的来源。

这似乎抛弃了推荐并简单地打开了游戏商店?

谢谢。

4

1 回答 1

2

好的,

解决了这个问题,结果证明它是一个设备/消息应用程序问题。三星较新的消息应用程序(andoird L & M 上的默认 SMS 应用程序)在内部处理 URL(使用三星自己的浏览器?)而不是通过即 Chrome。结果是这个内部浏览器似乎丢失了深层链接(从 logcat 错误中可以看出,内部浏览器和 Play 商店域之间存在某种 CORS 问题:XMLHttpRequest cannot load https://play.google.com/ log?format=json。“Access-Control-Allow-Origin”标头的值“ http://play.google.com ”不等于提供的来源)。

我在一个新的关系上测试了应用程序邀请,并且邀请发送深层链接没有问题,在同一台三星设备(我基于这篇文章的设备)上测试,仅使用环聊作为默认短信引擎和 presto,邀请深层链接处理没问题.

所以现在要了解三星在他们的消息应用程序中使用深度链接做了什么。

希望能为您节省一些时间来得出这个结论,花了我一段时间!

于 2016-09-26T13:52:53.493 回答