Wie lade ich Videos mit Facebook Android SDK 4.x auf Facebook hoch?
Ich versuche mein Facebook SDK von 3.20 auf 4.x zu ändern. Der Video-Upload wird mit dem neuen SDK unterbrochen.
Hier ist der Code, der in 3.20 funktioniert:
Request request = Request.newUploadVideoRequest(session, new File(videoPath), callback);
Bundle params = request.getParameters();
params.putString("title", albumName);
params.putString("description", " #SomeTag");
request.setParameters(params);
request.executeAsync();
Hier sind die verschiedenen Dinge, die ich mit dem neuen SDK 4.x ausprobiert habe. Aber jedes Mal bekomme ich den gleichen Fehler:
{FacebookServiceException: httpResponseCode: 500, facebookErrorCode: 6000, facebookErrorType: FacebookApiException, Nachricht: Beim Hochladen Ihrer Videodatei ist ein Problem aufgetreten. Bitte versuchen Sie es mit einer anderen Datei erneut.}
1.
AccessToken accessToken = AccessToken.getCurrentAccessToken();
GraphRequest request = GraphRequest.newPostRequest(accessToken, "me/videos", null, callback);
Bundle params = request.getParameters();
params.putString("file_url", videoPath);
params.putString("title", albumName);
File videoFile = new File(videoPath);
ParcelFileDescriptor descriptor = ParcelFileDescriptor.open(videoFile, ParcelFileDescriptor.MODE_READ_ONLY);
params.putParcelable("source", descriptor);
params.putString("description", " #SomeTag");
request.setParameters(params);
request.executeAsync();
2.
AccessToken accessToken = AccessToken.getCurrentAccessToken();
GraphRequest request = GraphRequest.newPostRequest(accessToken, "me/videos", null, callback);
Bundle params = request.getParameters();
params.putString("file_url", videoPath);
params.putString("title", albumName);
byte[] byteVideo = getFileByteArray(videoPath);
params.putByteArray("source", byteVideo);
params.putString("description", " #SomeTag");
request.setParameters(params);
request.executeAsync();
3
AccessToken accessToken = AccessToken.getCurrentAccessToken();
GraphRequest request = GraphRequest.newPostRequest(accessToken, "me/videos", null, callback);
Bundle params = request.getParameters();
params.putString("file_url", videoPath);
params.putString("title", albumName);
params.putString("source", "{video-data}");
params.putString("description", " #SomeTag");
request.setParameters(params);
request.executeAsync();
Ich würde mich über jede Hilfe freuen. Ich habe auch kein Beispiel für das Hochladen von Videos von Facebook für das neue SDK gefunden.