作者热门文章
- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
创建动态链接
DynamicLink dynamicLink = FirebaseDynamicLinks.getInstance().createDynamicLink()
.setLink(Uri.parse("http://shaharapp.in/"))
.setDynamicLinkDomain("https://cuh8g.app.goo.gl/")
// Open links with this app on Android
.setAndroidParameters(new DynamicLink.AndroidParameters.Builder().build())
// Open links with com.example.ios on iOS
.buildDynamicLink();
dynamicLinkUri = dynamicLink.getUri();
在此之后,我得到一个长的动态链接。将此 dynamicLinkUri 传递给 shortLinkTask
Task<ShortDynamicLink> shortLinkTask = FirebaseDynamicLinks.getInstance().createDynamicLink()
.setLongLink(dynamicLinkUri)
.buildShortDynamicLink();
shortLinkTask.addOnCompleteListener(new OnCompleteListener<ShortDynamicLink>() {
@Override
public void onComplete(@NonNull Task<ShortDynamicLink> task) {
if (task.isSuccessful()) {
Uri shortLink = task.getResult().getShortLink();
link_txt.setText(shortLink.toString());
}
else {
ViewGroup container = (ViewGroup) findViewById(R.id.snackbar_layout);
Snackbar.make(container, "error", Snackbar.LENGTH_SHORT).show();
}
}
});
这个任务没有完成,调试后我得到了这个
com.google.android.gms.common.api.ApiException: 7: Bad Request class com.google.android.gms.common.api.ApiException
最佳答案
您获得的长链接是什么?我建议尝试长链接并确保链接正常工作。
此外,将 &d=1
附加到长链接。这样的链接将导航到显示可能的错误/警告的调试页面。
查看您的代码,失败的一个可能原因是域的格式。参见示例 https://firebase.google.com/docs/dynamic-links/android/create .域应该是只包含域的字符串,没有 https 方案:
.setDynamicLinkDomain("abc123.app.goo.gl")
关于android - ShortDynamicLink 没有为动态链接生成短链接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45783907/
创建动态链接 DynamicLink dynamicLink = FirebaseDynamicLinks.getInstance().createDynamicLink()
我是一名优秀的程序员,十分优秀!