Поделиться изображением через Intent (Facebook и компания)Android

Форум для тех, кто программирует под Android
Ответить
Anonymous
 Поделиться изображением через Intent (Facebook и компания)

Сообщение Anonymous »

Я трачу много времени, пытаясь поделиться простым изображением в формате JPEG с помощью намерения поделиться.

Самым важным, как обычно, является Facebook, и, как обычно, он не работает.

Код: Выделить всё

Intent shareIntent = new Intent(Intent.ACTION_SEND);
Uri picUri = Uri.parse("http://someserver.com/somepic.jpg");
shareIntent.setType("image/jpeg");
shareIntent.putExtra(Intent.EXTRA_STREAM, picUri);
shareIntent.putExtra(Intent.EXTRA_TEXT, someString);
startActivity(Intent.createChooser(shareIntent, "some text..."));
Выбор открывается нормально, Facebook также открывается и заставляет меня войти в систему, но затем сообщает, что загрузка не удалась.
Я также пробовал Flicker и Mail, и они все не работают.
Затем я попытался записать изображение в локальный файл и отправить оттуда, тоже не получилось:

Код: Выделить всё

    Drawable dr = ImageLoader.getDrawable(url);
Bitmap bmp = ((BitmapDrawable)dr).getBitmap();
ByteArrayOutputStream stream = new ByteArrayOutputStream();
bmp.compress(Bitmap.CompressFormat.JPEG, 80, stream);
byte[] data = stream.toByteArray();

FileOutputStream ostream;
try {
ostream = this.openFileOutput("pic.jpeg", Context.MODE_WORLD_READABLE);
ostream.write(data);
} catch (Exception e) {
e.printStackTrace();
}

Uri picUri = Uri.fromFile(new File("pic.jpeg"));
shareIntent.putExtra(Intent.EXTRA_STREAM, picUri);
Я понятия не имею, правильно ли я это делаю, раньше этого не делал.

Моей последней попыткой было просто отправить HTML-строку с изображением, включенным в тег img. Но Facebook, похоже, не поддерживает тип «text/html», поэтому это не вариант.
Я уверен, что для этого потребуется всего несколько строк кода. Но какие?

редактировать

Я забыл строку

Код: Выделить всё

shareIntent.putExtra(Intent.EXTRA_STREAM, picUri);
в первом фрагменте кода. Оно было там, когда я пытался, но тоже не помогло.
Слишком долго не спал...

Подробнее здесь: https://stackoverflow.com/questions/997 ... ook-and-co
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Android»