Subir foto / foto / imagen facebook (android)
Estoy usando la biblioteca oficial de Facebook y publico fotos perfectamente. Pero tengo una duda. Cuando publica por primera vez, la imagen aparece en el mensaje por encima de la pared. Pero cuando publica por segunda vez, no crea una nueva publicación, la publicación anterior se edita y dice "2 fotos añadidas".
Si la publicación se encuentra en la parte inferior de la pared y volver a publicar una foto, no veremos ningún mensaje en la parte superior, se publicará en el mensaje interno. Esto será ocultado. ¿Puedes crear una nueva publicación cada vez que subo una foto? ¿Como es posible?
- Subir un archivo grande en varias partes usando OkHttp
- Phonegap: error de transferencia de archivos en Android
- Subir la imagen de android a webservice
- Java.net.UnknownHostException: graph.facebook.com
- Android: cambia el nombre del paquete de la aplicación en vivo
Yo comparto con usted mi código funciona también cualquier persona puede ayudar. Gracias.
Al hacer clic:
mFacebook = new Facebook(APP_ID); mFacebook.authorize(Principal.this, new String[]{ "user_photos,publish_checkins,publish_actions,publish_stream"},new DialogListener() { @Override public void onComplete(Bundle values) { postImageonWall(); } @Override public void onFacebookError(FacebookError error) { } @Override public void onError(DialogError e) { } @Override public void onCancel() { } });
Muro de anuncios:
public void postImageonWall() { byte[] data = null; Bitmap bi = BitmapFactory.decodeFile(fotomontatgeInSD); ByteArrayOutputStream baos = new ByteArrayOutputStream(); bi.compress(Bitmap.CompressFormat.JPEG, 100, baos); data = baos.toByteArray(); Bundle params = new Bundle(); params.putString(Facebook.TOKEN, mFacebook.getAccessToken()); params.putString("method", "photos.upload"); params.putByteArray("picture", data); AsyncFacebookRunner mAsyncRunner = new AsyncFacebookRunner(mFacebook); mAsyncRunner.request(null, params, "POST", new SampleUploadListener(), null); } public class SampleUploadListener extends BaseRequestListener { public void onComplete(final String response, final Object state) { try { // process the response here: (executed in background thread) Log.d("Facebook-Example", "Response: " + response.toString()); JSONObject json = Util.parseJson(response); final String src = json.getString("src"); // then post the processed result back to the UI thread // if we do not do this, an runtime exception will be generated // eg "CalledFromWrongThreadException: Only the original // thread that created a view hierarchy can touch its views." } catch (JSONException e) { Log.w("Facebook-Example", "JSON Error in response"); } catch (FacebookError e) { Log.w("Facebook-Example", "Facebook Error: " + e.getMessage()); } } @Override public void onFacebookError(FacebookError e, Object state) { // TODO Auto-generated method stub } }
Acabo de descubrir que el nuevo diseño de facebook soluciona este problema.
- Retrofit 2 archivo hacia abajo / subir
- Subir archivo grande en segundo plano (el servicio se reinicia cuando la aplicación se cierra)
- Cargar una foto de la biblioteca con el navegador web de Android
- Descarga de imágenes de Android AWS Server
- Cordova FileTransfer Returning Null Error Code
- HttpUrlConnection carga de archivo multipart con ProgressBar
- Android: subir fotos
- Al seleccionar una imagen, la aplicación se reinicia en S3
Intente editar su código como:
mAsyncRunner.request("me/photos", params, "POST", new SampleUploadListener(), null);
private void sharePhotoToFacebook () {Imagen de mapa de bits = BitmapFactory.decodeResource (getResources (), R.drawable.f1);
SharePhoto photo = new SharePhoto.Builder() .setBitmap(image) .build(); SharePhotoContent content = new SharePhotoContent.Builder() .addPhoto(photo) .build(); ShareApi.share(content, null); }
- ¿Cómo llegar a editar evento en el calendario a través de código de programación?
- Obtener fantasía con diseños de botones de menú de Android