Я следую этому руководству, чтобы создать приложение, которое отправляет изображение в мессенджер Facebook.
String mimeType = "image/png";
Uri contentUri = Uri.parse("android.resource://com.test.test/drawable/foobar");
String metadata = "{ \"name\": \"baz\" }";
ShareToMessengerParams params = ShareToMessengerParams.newBuilder(contentUri, mimeType).setMetaData(metadata).build();
MessengerUtils.shareToMessenger(this, REQUEST_CODE_SHARE_TO_MESSENGER, params);
Код довольно прост и почти идентичен собственному примеру кода Facebook. Изображение правильно отправляется в мессенджер, который распознает мое приложение как оптимизированное и предоставляет кнопку ОТВЕТИТЬ. Однако у меня возникли проблемы с отправкой метаданных. При нажатии кнопки ОТВЕТ все, что должно быть в дополнительном пакете (EXTRA_IS_REPLY
, EXTRA_THREAD_TOKEN
, EXTRA_PARTICIPANTS
), отправляется обратно в приложение, но не метаданные. Любая помощь будет оценена.
Ниже приведен фрагмент из манифеста:
<!-- Activities -->
<activity
android:name=".MainActivity"
android:windowSoftInputMode="stateHidden"
android:label="@string/app_name" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
<intent-filter>
<action android:name="android.intent.action.PICK" />
<category android:name="android.intent.category.DEFAULT"/>
<category android:name="com.facebook.orca.category.PLATFORM_THREAD_20150311"/>
</intent-filter>
<intent-filter>
<action android:name="android.intent.action.PICK" />
<category android:name="android.intent.category.DEFAULT"/>
<category android:name="com.facebook.orca.category.PLATFORM_THREAD_20150314"/>
</intent-filter>
</activity>