Я успешно разместил изображение на стене, используя Uri, но теперь я хочу разместить изображение из папки drawable/assets, это то, что я делаю.
Session session = Session.getActiveSession();
if (session != null){
// Check for publish permissions
List<String> permissions = session.getPermissions();
if (!isSubsetOf(PERMISSIONS, permissions)) {
pendingPublishReauthorization = true;
Session.NewPermissionsRequest newPermissionsRequest = new Session.NewPermissionsRequest(this, PERMISSIONS);
session.requestNewPublishPermissions(newPermissionsRequest);
return;
}
PackageManager m = MainTabActivity.this.getPackageManager();
String s = MainTabActivity.this.getPackageName();
Uri path = Uri.parse("android.resource://"+s+"/"+R.drawable.app_icon);
Bundle postParams = new Bundle();
postParams.putString("message", message+"\n\"App testing (no comments/likes)\"");
postParams.putString("picture", path.getPath());
Request.Callback callback= new Request.Callback() {
public void onCompleted(Response response) {
String postId = null;
try
{
JSONObject graphResponse = response.getGraphObject().getInnerJSONObject();
postId = graphResponse.getString("id");
} catch (JSONException e) {
Log.i(TAG,"JSON error "+ e.getMessage());
}
FacebookRequestError error = response.getError();
if (error != null)
Toast.makeText(getBaseContext(), error.getErrorMessage(),Toast.LENGTH_SHORT).show();
else
Toast.makeText(getBaseContext(), postId, Toast.LENGTH_LONG).show();
}
};
Request request = new Request(session, "me/feed", postParams, HttpMethod.POST, callback);
RequestAsyncTask task = new RequestAsyncTask(request);
task.execute();
}
//Вот как я пытаюсь получить пиктограмму из выпадающей папки Uri path = Uri.parse("android.resource://" + s + "/" +R.drawable.app_icon);
обратный вызов извлекает этот результат {Response: responseCode: 400, graphObject: null, error: {HttpStatus: 400, errorCode: 100, errorType: OAuthException, errorMessage: (# 100) картинка не правильно отформатирована}, isFromCache: false}
что я делаю неправильно?
заранее спасибо
Значение "картинка" должно быть URL. Это не могут быть двоичные данные.