Как обмениваться фотографиями с помощью CAPTION через Android?
Я хотел бы поделиться фотографией с заголовком, предварительно заполненным из моего приложения, с помощью намерения поделиться, на facebook.
Я знаю, как делиться фотографиями или как делиться текстом, но как я могу поделиться ими вместе?
Пример кода
Intent shareCaptionIntent = new Intent(Intent.ACTION_SEND);
shareCaptionIntent.setType("image/*");
//set photo
shareCaptionIntent.setData(examplePhoto);
shareCaptionIntent.putExtra(Intent.EXTRA_STREAM, examplePhoto);
//set caption
shareCaptionIntent.putExtra(Intent.EXTRA_TEXT, "example caption");
shareCaptionIntent.putExtra(Intent.EXTRA_SUBJECT, "example caption");
startActivity(Intent.createChooser(shareCaptionIntent,getString(R.string.share)));
Если тип набора до image/*
, тогда фотография загружается без предваряемой надписи. Если он установлен на text/plain
, то только надпись будет загружена без фотографии.....
Я предполагаю, что проблема в том, что приложение Android Facebook не ищет Intent.EXTRA_TEXT
, когда оно фильтрует ACTION_SEND
Intent с типом image/*
для загрузки фотографий. Таким образом, эта проблема может быть решена, если приложение Android Facebook ищет это значение, и если оно присутствует, добавьте его в качестве заголовка изображения.
![Share caption via Android Intent]()
Ответы
Ответ 1
Добавьте эту строку в существующие коды:
shareCaptionIntent.putExtra(Intent.EXTRA_TITLE, "my awesome caption in the EXTRA_TITLE field");
Четких различий между EXTRA_TITLE, EXTRA_SUBJECT и EXTRA_TEXT нет. Таким образом, нет четкого протокола обмена. Мы всегда могли попробовать их всех.: -)
Ответ 2
Эта проблема кажется давней "функцией" приложения facebook. Это обращение с намерениями никогда не было в полностью функциональном состоянии.
Проверьте ссылки на http://forum.developers.facebook.net/viewtopic.php?id=93900
Это нужно повысить с помощью разработчиков в facebook. Уверенность в том, что они скрываются за клиентским API, а не фиксирует очевидное, работает против них.