solicitaste solicitada significa seleccionaste seguido roto recuperar que página puede posible pagina mostrarse mismo haya has esté está esta enlace encontro eliminado disponible dañado cuando contenido como ahora java android authentication fbconnect

java - significa - no se encontro la pagina solicitada facebook



Integración de Facebook en el enlace roto de fbconnect de Android (2)

Parece que la aplicación nativa de Facebook debe ser la versión 2 o superior. Estoy viendo el mismo problema para la versión 1.9.6, y la actualización de la aplicación de Facebook resuelve el problema.

Estoy tratando de implementar la integración de Facebook en mi aplicación de Android y se dispara e inicia sesión en Facebook bien, pero cuando intenta pasar el token de acceso a la aplicación, simplemente devuelve:

La página web en fbconnect: // success # access_token = [ACCESS TOKEN] puede estar temporalmente inactiva o puede haberse movido permanentemente a una nueva dirección web.

Obviamente, donde [ACCESS TOKEN] es una larga secuencia de caracteres.

Compruebo el ID de la aplicación y agregué el hash clave a Facebook. Pero, ¿qué proceso podría haberme perdido?

Código:

public class FacebookActivity extends Activity { private static final String APP_ID = "[MY APP ID]"; private static final String[] PERMISSIONS = new String[] {"publish_stream"}; private static final String TOKEN = "access_token"; private static final String EXPIRES = "expires_in"; private static final String KEY = "facebook-credentials"; private Facebook facebook; private String messageToPost; public boolean saveCredentials(Facebook facebook) { Editor editor = getApplicationContext().getSharedPreferences(KEY, Context.MODE_PRIVATE).edit(); editor.putString(TOKEN, facebook.getAccessToken()); editor.putLong(EXPIRES, facebook.getAccessExpires()); return editor.commit(); } public boolean restoreCredentials(Facebook facebook) { SharedPreferences sharedPreferences = getApplicationContext().getSharedPreferences(KEY, Context.MODE_PRIVATE); facebook.setAccessToken(sharedPreferences.getString(TOKEN, null)); facebook.setAccessExpires(sharedPreferences.getLong(EXPIRES, 0)); return facebook.isSessionValid(); } @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); facebook = new Facebook(); restoreCredentials(facebook); requestWindowFeature(Window.FEATURE_NO_TITLE); setContentView(R.layout.activity_facebook); String facebookMessage = getIntent().getStringExtra("facebookMessage"); if (facebookMessage == null){ facebookMessage = "Test wall post"; } messageToPost = facebookMessage; if (! facebook.isSessionValid()) { loginAndPostToWall(); } else { postToWall(messageToPost); } } public void loginAndPostToWall(){ facebook.authorize(this, APP_ID, PERMISSIONS, new LoginDialogListener()); } public void postToWall(String message){ Bundle parameters = new Bundle(); parameters.putString("message", message); parameters.putString("description", "topic share"); try { facebook.request("me"); String response = facebook.request("me/feed", parameters, "POST"); Log.d("Tests", "got response: " + response); if (response == null || response.equals("") || response.equals("false")) { showToast("Blank response."); } else { showToast("Message posted to your facebook wall!"); } finish(); } catch (Exception e) { showToast("Failed to post to wall!"); e.printStackTrace(); finish(); } } class LoginDialogListener implements DialogListener { @Override public void onComplete(Bundle values) { saveCredentials(facebook); if (messageToPost != null){ postToWall(messageToPost); } } public void onFacebookError(FacebookError error) { showToast("Authentication with Facebook failed!"); finish(); } public void onError(DialogError error) { showToast("Authentication with Facebook failed!"); finish(); } public void onCancel() { showToast("Authentication with Facebook cancelled!"); finish(); } } private void showToast(String message){ Toast.makeText(getApplicationContext(), message, Toast.LENGTH_SHORT).show(); } }

Nuevo en el desarrollo de Android, así que estoy seguro de que es algo simple.


Actualicé la aplicación nativa de Facebook en el dispositivo y todo funciona.