gpt4 book ai didi

android - 使用 Android Facebook SDK 发布原始图像数据而不是 URL

转载 作者:塔克拉玛干 更新时间:2023-11-02 23:29:37 24 4
gpt4 key购买 nike

我想知道这是否可能,如果可以的话,我如何才能传输原始图像数据而不是在发布到我的 Facebook 墙上时指定 Web 上图像的 URL?

我目前的工作代码结果如下:

http://1.bp.blogspot.com/-klSLFEmvHy0/TxpPMIay0xI/AAAAAAAAAKQ/iLZv-QtmThc/s1600/fbpost.JPG(抱歉,我没有足够的积分来嵌入图片,所以请打开 URL :-)

这或多或少是我想要的标题、标题、链接等,但我的最终目标是让上面显示的心形图像成为每次用户决定将结果发布到时我的应用程序生成的输出图像Facebook(内容在图像上动态生成)。我不想实现上传某些第三方服务器然后共享该 URL。

我看到周围的人提到这样的代码:

...
byte[] data = null;
Bitmap bi = BitmapFactory.decodeFile(imagePath);
ByteArrayOutputStream baos = new ByteArrayOutputStream();
bi.compress(Bitmap.CompressFormat.JPEG, 100, baos);
data = baos.toByteArray();
params.putByteArray(...

但这似乎是为了将照片直接上传到相册,这也不是我想要的。

到目前为止我的工作代码是:

private void loginAndPostToFacebook() {
mFacebook = new Facebook(FACEBOOK_APP_ID);

mFacebook.authorize(this, new String[] { "publish_stream" }, new DialogListener() {
@Override
public void onComplete(Bundle values) {
postOnWall();
}

@Override
public void onFacebookError(FacebookError error) {
L.t(getString(R.string.error_facebook_error) + ": " + error.getMessage());
}

@Override
public void onError(DialogError e) {
L.t(getString(R.string.error_facebook_error) + ": " + e.getMessage());
}

@Override
public void onCancel() {
}
});
}

public void postOnWall() {
Bundle params = new Bundle();

// Message
params.putString("message", "my msg");

// Name
params.putString("name", "app name");

// Caption
params.putString("caption", "caption");

// Description
params.putString("description", "description");

// Here's where I'd insert my dynamically generated image data...
params.putString("picture", "http://4.bp.blogspot.com/-VaNzm3xMOtk/TxpKzhxpdEI/AAAAAAAAAKI/08Kc5b4HW0Q/s1600/sexometer128x128neutral_icon.png");

// Link
params.putString("link", "http://www.stackoverflow.com");

try {
String response = mFacebook.request("me");
response = mFacebook.request("me/feed", params, "POST");
if (response == null || response.equals("") || response.equals("false")) {
L.t(getString(R.string.error_facebook_error) + ": blank response");
return;
} else if (response.toLowerCase().contains("error")) {
L.t(getString(R.string.error_facebook_error) + ": " + response);
return;
}
} catch(Exception e) {
L.t(getString(R.string.error_facebook_error) + ": " + e.getMessage());
return;
}

L.t(getString(R.string.success_posted_to_facebook));
}

@Override
public void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
if (mFacebook != null) {
mFacebook.authorizeCallback(requestCode, resultCode, data);
}
}

最佳答案

据我了解,您需要先将照片上传到应用程序的相册。如果“no_story”参数为假,它会自动将其发布到墙上。

https://developers.facebook.com/docs/reference/api/user/#photos

关于android - 使用 Android Facebook SDK 发布原始图像数据而不是 URL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8951028/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com