为什么我的代码无法从android将照片上传到Facebook上?
我已经成功地将Facebook sdk集成到我的应用程序中。 现在我要在Facebook上分享一张照片。为此,我使用以下代码:为什么我的代码无法从android将照片上传到Facebook上?,android,facebook,Android,Facebook,我已经成功地将Facebook sdk集成到我的应用程序中。 现在我要在Facebook上分享一张照片。为此,我使用以下代码: facebook.authorize(DrawingActivity.this, new String[]{ "user_photos,publish_checkins,publish_actions,publish_stream"},new DialogListener() { @Overrid
facebook.authorize(DrawingActivity.this, new String[]{ "user_photos,publish_checkins,publish_actions,publish_stream"},new DialogListener() {
@Override
public void onComplete(Bundle values) {}
@Override
public void onFacebookError(FacebookError error) {}
@Override
public void onError(DialogError e) {}
@Override
public void onCancel() {}
});
byte[] data = null; Bitmap bi = BitmapFactory.decodeFile(APP_FILE_PATH + "/myAwesomeDrawing.png");
ByteArrayOutputStream baos = new ByteArrayOutputStream();
bi.compress(Bitmap.CompressFormat.JPEG, 100, baos);
data = baos.toByteArray();
Bundle params = new Bundle();
params.putString("method", "photos.upload");
params.putByteArray("picture", data);
AsyncFacebookRunner mAsyncRunner = new AsyncFacebookRunner(facebook);
mAsyncRunner.request(null, params, "POST", new SampleUploadListener(), null);
另一个代码是:
@Override
public void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
facebook.authorizeCallback(requestCode, resultCode, data);
}
public class SampleUploadListener extends BaseRequestListener {
public void onComplete(final String response, final Object state) {
try {
// process the response here: (executed in background thread)
Log.d("Facebook-Example", "Response: " + response.toString());
JSONObject json = Util.parseJson(response);
final String src = json.getString("src");
// then post the processed result back to the UI thread
// if we do not do this, an runtime exception will be generated
// e.g. "CalledFromWrongThreadException: Only the original
// thread that created a view hierarchy can touch its views."
} catch (JSONException e) {
Log.w("Facebook-Example", "JSON Error in response");
} catch (FacebookError e) {
Log.w("Facebook-Example", "Facebook Error: " + e.getMessage());
}
}
public void onFacebookError(FacebookError e, Object state) {
// TODO Auto-generated method stub
}
}
现在,我不知道为什么我不能在facebook上上传照片?根据你想做什么,你需要给这行代码指定一个目标(第一个空):
mAsyncRunner.request(null, params, "POST", new SampleUploadListener(), null);
例如,如果您试图在“当前用户”墙上发布帖子,它应该如下所示:
mAsyncRunner.request("me/posts", params, "POST", new SampleUploadListener(), null);
您需要正确的权限才能执行此操作:至少发布\u流
请参见好的,那么我应该写什么?“我/帖子”或“我”或“帖子”?我仍然无法第一次发布照片。但是当我第二次按下fecebook按钮时。它将发布照片。@alextsc:我无法发布照片。但是当我第二次点击facebook按钮时,它会发布照片。大家好,有人能告诉我为什么在这一行“facebook.Authority(DrawingActivity.this,新字符串[]{”用户照片,发布签入,发布操作,发布流“},新对话侦听器(){”即使在导入android facebook sdk之后???@android_murali:请把问题放在堆栈上并给出链接。