こんにちは私はFacebookに画像を投稿するチュートリアルを使用していますが、投稿していません。私が間違っていることを指導してください。私はfacebook.apkをモバイルにインストールしています。私は、Facebookの開発者ガイドに記載されていることを徹底的に行ってきました。ここで画像はアンドロイドアプリによってFacebookに投稿されていません
は誤りです....ここで
public class DummyActivity extends Activity {
Facebook facebook = new Facebook("xxxxxxxxxxxx");
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
facebook.authorize(this, new DialogListener() {
public void onComplete(Bundle values) {
byte[] data = null;
Bitmap bi = BitmapFactory.decodeResource(getResources(), R.drawable.ic_launcher);
ByteArrayOutputStream baos = new ByteArrayOutputStream();
bi.compress(Bitmap.CompressFormat.JPEG, 100, baos);
data = baos.toByteArray();
Bundle params = new Bundle();
params.putString(Facebook.TOKEN, facebook.getAccessToken());
params.putString("method", "photos.upload");
params.putByteArray("picture", data);
AsyncFacebookRunner mAsyncRunner = new AsyncFacebookRunner(facebook);
mAsyncRunner.request(null, params, "POST", new SampleUploadListener(), null);
}
public void onFacebookError(FacebookError error) {}
public void onError(DialogError e) {}
public void onCancel() {}
});
}
@Override
public void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
facebook.authorizeCallback(requestCode, resultCode, data);
}
は、あなたが間違ったparametesを使用している別のクラス、
public class SampleUploadListener implements RequestListener {
public void onComplete(String response, Object state) {
// TODO Auto-generated method stub
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 onIOException(IOException e, Object state) {
// TODO Auto-generated method stub
}
public void onFileNotFoundException(FileNotFoundException e, Object state) {
// TODO Auto-generated method stub
}
public void onMalformedURLException(MalformedURLException e, Object state) {
// TODO Auto-generated method stub
}
public void onFacebookError(FacebookError e, Object state) {
// TODO Auto-generated method stub
}
サーバの応答は何ですか? –
paramsに 'AccessToken'を入れる必要はありません。 –
こんにちは、この行、params.putString(Facebook.TOKEN、facebook.getAccessToken());と言っています。 – Programmer