我尝试使用Firebase邀请发送邀请。当从联系人中选择一封电子邮件时,Firebase表示已发送邀请,但从未收到该电子邮件。
在控制台上可以配置SHA1认证。
返回的错误代码始终为RESULT_OK,AppInviteInvitation.getInvitationIds返回的邀请数正确无误。
SDK在gradle上使用最新版本10.0.1进行更新,如文档中所述。
创建邀请的代码是:
Intent intent = new AppInviteInvitation.IntentBuilder(title)
.setMessage(msg)
.setCallToActionText(callToActionText)
.setOtherPlatformsTargetApplication(AppInviteInvitation.IntentBuilder.PlatformMode.PROJECT_PLATFORM_IOS, IOS_CLIENT_ID)
.build();
有什么想法吗?
答案 0 :(得分:2)
我遇到了同样的问题而且我设法解决了这个问题,虽然我不确定哪一步确实有帮助。
值得指出的是,在我的情况下,当我删除方法调用时,电子邮件已完美发送:
.setOtherPlatformsTargetApplication(...)
采用了以下步骤:
为Firebase Android项目设置添加了SHA-256哈希值(来自调试和发布密钥库):
keytool -exportcert -keystore path-to-debug-or-production-keystore -list -v
已更新google-services.json
已从Firebase Android项目设置下载并添加到应用程序根目录(使用GoogleServicesJson Build Action for Xamarin)。因此,该文件包含以下内容:
...
"appinvite_service": {
"status": 2,
"other_platform_oauth_client": [
{
"client_id": "1234567890-specified_ios_client_id.apps.googleusercontent.com",
"client_type": 2,
"ios_info": {
"bundle_id": "ios.app.bundle.id",
"app_store_id": "9876543210"
}
},
...
]
}
...
指定的client_id
在.setOtherPlatformsTargetApplication(...)
方法调用和google-services.json
Firebase Invites之前已经针对iOS项目进行了调整,但无论如何我都不知道它是否对Android有帮助。
答案 1 :(得分:0)
删除.setOtherPlatformsTargetApplication(...)
允许Android再次发送邀请。
在iOS上收到邀请时,他们可以正常打开链接:
它们无法正常工作: