小编Joa*_*him的帖子

为什么目标朋友没有收到我的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);
Run Code Online (Sandbox Code Playgroud)

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

截图

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

截图

结果是看似成功的发送:

截图

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

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());
    }
});
Run Code Online (Sandbox Code Playgroud)

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

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

一些可能有用的信息:

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

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

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

谢谢!

android facebook facebook-graph-api

11
推荐指数
1
解决办法
5243
查看次数

为什么 Google 图片服务在提供我的 WEBP 图像时将其转换为 JPG?

我有许多带有 alpha 的 PNG 图像,我已使用 XnConvert 将它们转换为 WEBP。转换本身进行得很顺利,并且 Alpha 通道保持不变,直到上传到BlobStore

在上传到 blobstore 之前,它看起来像这样:
前

之后看起来像这样:

后

它由服务 URL 作为 JPG 提供,因此 Alpha 通道被删除。在 App Engine 控制台的 BlobStore 查看器中,它已将内容类型设置为 application/octet-stream,即使上传的文件具有 .webp 文件扩展名。

根据Images API 文档,应该支持 WEBP。

上传图像时我根本没有做任何花哨的事情:

List<BlobKey> blobs = blobstoreService.getUploads(req).get("file");
BlobKey blobKey = blobs.get(0);

ImagesService imagesService = ImagesServiceFactory.getImagesService();
ServingUrlOptions servingOptions = ServingUrlOptions.Builder.withBlobKey(blobKey);
String servingUrl = imagesService.getServingUrl(servingOptions);
Run Code Online (Sandbox Code Playgroud)

EDIT:

这是一个服务 url 示例: 示例服务 url

我尝试使用Chrome和 Android 客户端访问它。这是用于在 Android 客户端中访问它的代码,尽管我认为它不相关:

    URL url = new URL(Assets.getServingUrl(resourceName));

    URLConnection connection = url.openConnection(); …
Run Code Online (Sandbox Code Playgroud)

google-app-engine android blobstore webp

4
推荐指数
1
解决办法
2040
查看次数