Error # 200 Facebook SDK Android

queridos amigos, estoy desarrollando una aplicación con integración de Facebook en Android usando el SDK de Facebook. Mi aplicación sólo debe ser capaz de publicar un enlace. Yo uso este código:

this.req = new Request(session, "me/feed", b, HttpMethod.POST, callback); RequestAsyncTask sendRequest = new RequestAsyncTask(req); sendRequest.execute(); 

Usando este permiso:

 public static final List<String> PERMISSIONS = Arrays .asList("publish_actions" ); 

Y en realidad funciona bien publicar enlaces en mi cuenta de desarrollador. Tan pronto como tomo otra cuenta recibo este mensaje de error:

 (#200) The user hasn't authorized the application to perform this action 

¿Podrías ayudarme? O simplemente dar una pista?

Creo que tu KeyHash que has añadido a tu cuenta de Facebook te permite compartir algún enlace. Para poder publicar algunas cosas en la pared del usuario, tienes que respetar este facebook "mejor práctica": aquí está mi código de producción, que funciona bien:

 private void publishStory(String hash, String title, String user) { 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(getActivity(), PERMISSIONS); session.requestNewPublishPermissions(newPermissionsRequest); return; } Bundle postParams = new Bundle(); postParams.putString("name", title); postParams.putString("caption", "By Recommend Android"); postParams.putString("description", user+" "+"STRONGLY recommends"+" "+title); postParams.putString("link", "http://re.co/"+hash); postParams.putString("picture", "http://re.co/assets/img/useful-exp.png"); Request.Callback callback= new Request.Callback() { public void onCompleted(Response response) { JSONObject graphResponse = response .getGraphObject() .getInnerJSONObject(); String postId = null; try { postId = graphResponse.getString("id"); } catch (JSONException e) { Log.i(TAG, "JSON error "+ e.getMessage()); } FacebookRequestError error = response.getError(); if (error != null) { debug.print("erreur"); } else { debug.print("erreur2"); } } }; Request request = new Request(session, "me/feed", postParams, HttpMethod.POST, callback); RequestAsyncTask task = new RequestAsyncTask(request); task.execute(); } } private boolean isSubsetOf(Collection<String> subset, Collection<String> superset) { for (String string : subset) { if (!superset.contains(string)) { return false; } } return true; } 
  • Error: Detener el error del servidor ADB (código -1) {Instalación de la API - SDK de Android}
  • No se puede instalar SDK Platform 4.0.3
  • Cambiar la ubicación del SDK en Android Studio: espacios en blanco en la ubicación del directorio
  • ¿Cómo consultar canciones en listas de reproducción en Android SDK?
  • No se pudo obtener la URL https://dl-ssl.google.com/android/repository/addons_list-1.xml, razón: La conexión a https://dl-ssl.google.com se rechazó
  • ¿Cómo mostrar selector de fecha para android con solo mes y año campos?
  • R.java no se genera y los archivos AIDL no se compilan en Android SDK 2.3
  • Descargar Android SDK de forma programática
  • ¿Por qué falla esta instalación? (Descarga finalizada con un tamaño incorrecto - eclipse y android SDK manager)
  • ¿Cómo recuperar la versión sdk de Android?
  • Cómo incrementar un contador dentro de un evento de vista de OnClick
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.