我试图在我们的应用程序中实现App Invites,但我无法让iOS客户端链接到App Store。他们总是显示Play商店链接。
根据documentation,如果我们在开发人员控制台的项目中有多个iOS客户端ID,我们需要调用 setOtherPlatformsTargetApplication 。问题是,如果我尝试添加我们的iOS应用客户端ID,则永远不会发送电子邮件
.setOtherPlatformsTargetApplication(PROJECT_PLATFORM_IOS,
"104XXXXXXXXXX-i089XXXXXXXXXXXX.apps.googleusercontent.com")
如果我省略此通话,则会发送电子邮件,但会指向Play商店。
无论如何,检查google-services.json只显示一个iOS客户端ID
{
"project_info": {
...
},
"client": [
{
"client_info": {
"package_name": "com.mycompany"
},
"oauth_client": [
...
],
"api_key": [
],
"services": {
"appinvite_service": {
"status": 2,
"other_platform_oauth_client": [
{
"client_id": "XXXXXX-YYYYY.apps.googleusercontent.com",
"client_type": 2,
"ios_info": {
"bundle_id": "com.mycompany.app",
"app_store_id": "123456789"
}
},
{
"client_id": "XXXXXX-JJJJJJJJ.apps.googleusercontent.com",
"client_type": 3
}
]
}
}
},
[
another client info for the debug package name
],
"client_info": [
],
"ARTIFACT_VERSION": "1"
}
我不知道我还能尝试什么,欢迎任何想法
我正在使用AS 2.0预览版9, 2.0.0-alpha9 版本用于 android 和 google-services &# 39; gradle插件。另外,正如documentation中所述,我已将应用插件放在 app / build.gradle 的底部
答案 0 :(得分:1)
问题是我有2个凭据共享相同的 Bundle ID 。
此外,最近添加的(以及 google-services.json 中列出的唯一一个)未被使用。删除后,真正的凭证被添加到json文件中,对 setOtherPlatformsTargetApplication 的调用工作正常。