Facebook sdk, androide, pared, poste, línea, rotura
Estoy haciendo una aplicación que está publicando alguna información a su pared de facebook usando facebook sdk para android. Esto funciona, pero no puedo conseguir nuevas líneas en los mensajes. He intentado \n
pero no funciona. ¿Alguna sugerencia?
Aquí está mi código:
- Cómo abrir una aplicación FB con intención y mostrar una página similar en la aplicación FB?
- Cómo aprender qué versión de la aplicación instalada mediante programación en android
- Android - ¿Cómo puedo detectar si el usuario ha decidido compartir con Facebook o Twitter con la intención?
- Cómo obtener el enlace de la aplicación de Facebook si la aplicación no se ha instalado
- URL para abrir la aplicación de facebook en android
Bundle parameters = new Bundle(); String temp = ""; for (int i = 0; i < mArrayAdapter.getCount(); i++){ temp = temp + mArrayAdapter.getItem(i) + "\n"; // Not working } parameters.putString("message", temp); mFacebook.dialog(this, "stream.publish", parameters, new DialogListener());
Gracias,
James Ford
- Facebook Deep Linking no funciona en Android
- Com.android.ide.common.internal.LoggedErrorException con Facebook SDK
- Android Facebook SDK - ¿Cómo iniciar sesión como otro usuario?
- ¿Cómo puedo utilizar la autenticación de Facebook para acceder a mi servicio web desde Android?
- Cómo salir de sesión de forma programática de Facebook SDK 3.0 sin utilizar el botón de inicio de sesión / cierre de sesión de Facebook?
- 'URL del enlace de la aplicación que falta' en la invitación de la aplicación de Facebook
- Autorización para Android Facebook SDK 3.0
- ¿Cómo integrar Google Plus y Facebook Authentication juntos en la misma actividad del proyecto Android?
Hola James he intentado que antes, incluso con código html, pero creo que eso no es posible. La razón, Facebook debe tener un control para evitar espacios en blanco o salto de línea en sus mensajes.
No se permiten nuevas líneas en los mensajes de stream (el hecho de que los hayas visto en el pasado son bugs en facebook).
Hacer uso de JSON para publicar en facebook .. cómo? mira aquí
PASOS: –
Paso 1: – En este enlace u llegará a saber cómo utilizar JSON para configurar el texto a TEXTVIEW.
Paso 2: – Puede ser esto no es ur buscando 🙂 asignar el texto de textview a alguna cadena usando GetText().ToString
Paso 3: – utilizar esta cadena para publicar en el facebook.
Paso 4: – Hice lo mismo después de pasar mucho tiempo en google y finalmente obtuvo el resultado mediante este truco. U puede ver mi post que he publicado durante la prueba aquí
Paso 5: – establecer la visibilidad de este cuadro de texto a usar
tv.setVisibility(View.GONE)
Y ur hecho con su publicación en facebook .. dejar que el facebook y textview manejar cómo manejan los espacios y la nueva línea de caracteres: D
Algún trabajo de codificación para los novatos como yo …
Lo estoy publicando en un clic del botón
1}
tv= (TextView)findViewById(R.id.tv); click=(Button)findViewById(R.id.btn1); click.setOnClickListener(mthdpost);
2) añadir el evento de clic a este botón
private View.OnClickListener mthdpost=new View.OnClickListener() { @Override public void onClick(View v) { try { String json = "{" + " \"name\": \"myName\", " + " \"message\": [\"myMessage1\",\"myMessage2\"]," + " \"place\": \"myPlace\", " + " \"date\": \"thisDate\" " + "}"; /* Create a JSON object and parse the required values */ JSONObject object = (JSONObject) new JSONTokener(json).nextValue(); String name = object.getString("name"); String place = object.getString("place"); String date = object.getString("date"); JSONArray message = object.getJSONArray("message"); String MessageToPost= null; tv.setText("Name: "+ name +"\n\n"); tv.append("Place: "+ place +"\n\n"); tv.append("Date: "+ date +"\n\n"); /*JSONObject attachment = new JSONObject(); attachment.put("Name: ","\n\n"); attachment.put("Place: ","\n\n"); attachment.put("Date: ","\n\n");*/ for(int i=0;i<message.length();i++) { tv.append("Message: "+ message.getString(i) +"\n\n"); //attachment.put("Message: ","\n\n"); } MessageToPost=tv.getText().toString(); postToWall(MessageToPost);// called the method having logic to post on wall and sending the textview text to to post as message } catch (JSONException e) {e.printStackTrace(); } catch(Exception ex) {ex.printStackTrace();} } };
3) método para publicar el mensaje
public void postToWall(String msg){ Log.d("Tests", "Testing graph API wall post"); try { String response = facebook.request("me"); Bundle parameters = new Bundle(); //parameters.putString("message", msg.toString()); parameters.putString("message", msg); parameters.putString("description", "test test test"); response = facebook.request("me/feed", parameters, "POST"); Log.d("Tests", "got response: " + response); if (response == null || response.equals("") || response.equals("false")) { Log.v("Error", "Blank response"); } } catch(Exception e) { e.printStackTrace(); } }
Espero que ayude
Esto funcionó para mí:
StringBuilder messageData = new StringBuilder(title).append('\n') .append('\n').append(message).append('\n').append('\n') .append(description); // Message postParams.putString("message", messageData.toString());
Esto funciona:
Utilice esto:
En lugar de una br o una nueva línea, etc Sólo se puede hacer uno en una fila (es decir, no se puede aumentar el espaciado).
- Vinculación fallando para PCRE cuando se usa la herramienta independiente NDK de Android
- Toggle de la barra de botones de Android