微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

android – 为什么我的Facebook AppInviteDialog请求没有被目标朋友收到?

简而言之:一切似乎都在客户端工作,但Facebook的目标朋友没有收到任何信息.

这些是具有代码和截图的详细步骤:

AppInviteContent content = new AppInviteConent.Builder()
    .setApplinkUrl("App link url created via the Facebook AppLink creator tool")
    .setPreviewImageUrl("http://www.redacted.com/previewImage.png")
    .build();

appInviteDialog.show(this,content);

这将导致显示一个对话框,其中预览了安装应用程序的链接,以及在顶部输入消息的选项:

然后点击下一步,选择一个或多个朋友,然后点击右上角发送按钮:

结果是一个看似成功的发送:

我附上一个回调,以确保它实际上是一个成功的发送:

appInviteDialog.registerCallback(facebookCallbackManager,new FacebookCallback<AppInviteDialog.Result>() {
    @Override
    public void onSuccess(AppInviteDialog.Result result) {
    Log.d(TAG,"onSuccess result = "+ result.getData().toString()); 
    }

    @Override
    public void onCancel() {}

    @Override
    public void onError(FacebookException e) {
        Log.d(TAG,"onError message = "+ e.getMessage());
    }
});

这打印出“onSuccess result = Bundle [{didComplete = 1}]”

预期结果:朋友收到通知.
实际结果:朋友什么也没收.

一些可能有帮助的信息:

>应用程式仅适用于Android.
>任何平台上都没有收到通知,包括Facebook的Android应用程序.
>应用程序链接网址已被确认工作通过点击它在Facebook的Android应用程序. (它创建一个链接到Google Play商店的弹出式窗口)
>单点登录已启用,用户登录,但根据Facebook上的AppInviteDialog文档不需要.
>试图与目标用户未授权的应用程序,以及已安装该应用程序的用户.相同的结果.
>我使用的Facebook SDK版本是4.0.0

这是令人沮丧的,因为一切似乎都OK,没有办法(我知道)来调试这个问题.

我希望有人可以帮助我,也可以指向正确的方向.

谢谢!

解决方法

好的,原来一切都工作正常.我的错误是假设没有安装应用程序,没有授权的应用程序应该生成推送通知.

创建新的测试用户后,使用当前未安装应用程序的设备,并且该应用程序不得已被用户授权.

所以这里的关键是,如果应用程序安装在目标设备上,即使用户以前没有授权应用程序,也不会生成推送通知.此外,似乎如果用户以前已经授权了应用程序,即使在某些时候它被删除,它也不会生成通知.

所以如果你想测试这个,创建一个全新的测试用户,并登录到您正在测试的平台上的Facebook应用程序,并确保该应用程序未安装在设备上.

我认为,尽管安装了应用程序,它仍然会生成通知,因为多个用户可能正在使用相同的设备,但这似乎是现在.

我会在这里离开这里,以防将来有人遇到类似的问题.

健康长寿·繁荣昌盛!

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐