错误:400:您的项目不拥有动态链接域
Posted
技术标签:
【中文标题】错误:400:您的项目不拥有动态链接域【英文标题】:Error: 400: Your project does not own Dynamic Links domain 【发布时间】:2018-04-18 15:40:16 【问题描述】:我正在使用 react-native-firebase 创建动态链接,当我创建标准链接时一切正常,但是当我创建短链接时,它给出了一个错误:“”。任何想法如何解决这个问题?
更新:问题只出现在 android 中,在 ios 中可以正常工作
创建短动态链接的代码:
onClickShare= () =>
const link =
new firebase.links.DynamicLink(redirectLink , Config.FIREBASE_CONFIG.dynamicLink)
.android.setPackageName(Config.ANDROID_PACKAGE_NAME)
.ios.setBundleId(Config.IOS_BUNDLE_ID)
.ios.setAppStoreId(Config.IOS_APP_STORE_ID)
.social.setDescriptionText(description)
.social.setTitle(this.props.event.title)
firebase.links()
.createShortDynamicLink(link, 'SHORT')
.then((url) =>
Share.share(
message: _('shareLinkMessage') + " " + url,
title: _('shareLinkTitle'),
,
// Android only:
dialogTitle: _('shareLinkAndroid'),
)
)
【问题讨论】:
这个 github 问题似乎指向应用程序 ID 不匹配:github.com/firebase/quickstart-ios/issues/393 @Cory 我看到了这个,但是我的应用程序具有相同的应用程序 ID,我在我的应用程序中使用它 @Tometoyou 但我认为问题可能在 google-services.json 文件中,我建议您更新它,看看它是否能解决问题! 是的,就是这样!谢谢:) @Tometoyou 太棒了,很高兴它有效!请为答案投票! 【参考方案1】:如果您收到此类错误,请更新您的 google-services.json
文件!
【讨论】:
【参考方案2】:当您收到此错误时,这意味着您没有将动态链接域添加为 firebase 链接的格式。
您必须遵循以下格式:
在 android/app/src/main/AndroidManifest.xml Activity 内添加:
<!-- Deep linking -->
<meta-data android:name='flutter _deeplinking_enabled'
android:value="true" />
<intent-filter android:autoVerify="true">
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.DEFAULT" />
<category android:name="android.intent.category.BROWSABLE" />
<data android:scheme="http" android:host="<app_name.page.link>" />
<data android:scheme="https" />
</intent-filter>
并在动态链接代码中与该格式同时添加。
【讨论】:
【参考方案3】:如果您的 google-services.json 已经更新,您可能还没有完成 npm install
【讨论】:
以上是关于错误:400:您的项目不拥有动态链接域的主要内容,如果未能解决你的问题,请参考以下文章
Firebase 动态链接 REST API 返回 400 错误请求