尝试将照片发布到用户墙时,我收到了UnknownHostException。 这是我的代码:
byte[] data = null;
Bitmap bi = BitmapFactory.decodeResource(getResources(), aDrawableId);
ByteArrayOutputStream baos = new ByteArrayOutputStream();
bi.compress(Bitmap.CompressFormat.JPEG, 70, baos);
data = baos.toByteArray();
Bundle parameters = new Bundle();
parameters.putByteArray("picture", data);
Log.i(getClass().toString(), parameters.toString());
AsyncFacebookRunner mAsyncRunner = new AsyncFacebookRunner(this.facebook);
String method = String.format("me/photos?access_token=%s", this.facebook.getAccessToken());
mAsyncRunner.request(method, parameters, "POST", new FacebookRequestListener(), null);
我的AndroidManifest文件的权限:
<uses-permission android:name="android.permission.CAMERA" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
之前我遇到了与以下问题相同的问题,并使用第二个答案(最高投票一个)纠正了错误:
Post message to facebook wall from android fb sdk always error
我在logcat中得到的唯一消息是:
10-26 15:29:16.425: E/Facebook(5342): java.net.UnknownHostException: graph.facebook.com
你们对如何解决这个问题有什么想法吗?我在Galaxy S2设备上运行应用程序。
答案 0 :(得分:1)
我不确定这是否能解决你得到的错误,但我注意到了一些事情:
documentation(在照片连接下)声明图片参数名为 source (而不是图片使用)。
facebook sdk将访问令牌添加到api请求中,因此您不需要这样做(您可以查看source。我不认为它应该是POST请求的问题,但是如果你使用GET,则sdk会在路径中添加“?”,在你的情况下,你最终会得到其中的两个。
您是否设法找到了问题?