I'm getting a UnknownHostException when trying to post a photo to the user wall. Here is my code:
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);
The permissions on my AndroidManifest file:
<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" />
I had the same problem as the following question before and I correct using the second answer (the top voted one):
Post message to facebook wall from android fb sdk always error
The only message I get in logcat is:
10-26 15:29:16.425: E/Facebook(5342): java.net.UnknownHostException: graph.facebook.com
Do you guys have any ideas on how to solve this? I'm running the app on a stock Galaxy S2 device.
I'm not sure if this will fix the error you get, but a few things I noticed:
The documentation (under the Photos connection) states the the picture parameter is named source (and not picture as you used).
The facebook sdk adds the access token to the api requests, so you don't need to do that (you can look at the source. I don't think that it should be a problem for POST requests, but if you use GET then the sdk adds "?" to the path, and in your case you'll end up with two of those.
Have you managed to find the problem?
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With