public class MessengerUtils
extends java.lang.Object
Applications should specify the app id in their manifest or call FacebookSdk.setApplicationId(String) } in their application startup path. For
specifying in the manifest, add a meta tag in your <application> tag.
<meta-data android:name="com.facebook.sdk.ApplicationId" android:value="YOUR_APP_ID"/>
When sharing to Messenger, apps should call the shareToMessenger(android.app.Activity, int, com.facebook.messenger.ShareToMessengerParams) method. For example,
ShareToMessengerParams params = ShareToMessengerParams.newBuilder(uri, "image/*")
.setMetaData(metaData)
.build();
MessengerUtils.shareToMessenger(this, REQUEST_CODE_SHARE_TO_MESSENGER, params);
To handle receiving a composer shortcut or reply intent from Messenger, apps should put the
following intent filter in their manifest for the activity that receives the intent:
<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>
When handling the intent, then call getMessengerThreadParamsForIntent(android.content.Intent) to receive the
parameters for messenger. When the user has clicked the Send button to send the content to
Messenger, then call finishShareToMessenger(android.app.Activity, com.facebook.messenger.ShareToMessengerParams) to return the data back to Messenger.| Modifier and Type | Field and Description |
|---|---|
static java.lang.String |
EXTRA_APP_ID |
static java.lang.String |
EXTRA_EXTERNAL_URI |
static java.lang.String |
EXTRA_IS_COMPOSE |
static java.lang.String |
EXTRA_IS_REPLY |
static java.lang.String |
EXTRA_METADATA |
static java.lang.String |
EXTRA_PARTICIPANTS |
static java.lang.String |
EXTRA_PROTOCOL_VERSION |
static java.lang.String |
EXTRA_REPLY_TOKEN_KEY |
static java.lang.String |
EXTRA_THREAD_TOKEN_KEY |
static java.lang.String |
ORCA_THREAD_CATEGORY_20150314 |
static java.lang.String |
PACKAGE_NAME |
static int |
PROTOCOL_VERSION_20150314 |
| Constructor and Description |
|---|
MessengerUtils() |
| Modifier and Type | Method and Description |
|---|---|
static void |
finishShareToMessenger(android.app.Activity activity,
ShareToMessengerParams shareToMessengerParams)
Finishes the activity and returns the media item the user picked to Messenger.
|
static MessengerThreadParams |
getMessengerThreadParamsForIntent(android.content.Intent intent)
When handling an
Intent from Messenger, call this to parse the parameters of the
intent. |
static boolean |
hasMessengerInstalled(android.content.Context context)
Checks whether any version of messenger is installed.
|
static void |
openMessengerInPlayStore(android.content.Context context)
Opens the play store to install Messenger.
|
static void |
shareToMessenger(android.app.Activity activity,
int requestCode,
ShareToMessengerParams shareToMessengerParams)
Starts an intent to share a piece of media on Messenger using the messenger content platform.
|
public static final java.lang.String PACKAGE_NAME
public static final java.lang.String EXTRA_PROTOCOL_VERSION
public static final java.lang.String EXTRA_APP_ID
public static final java.lang.String EXTRA_REPLY_TOKEN_KEY
public static final java.lang.String EXTRA_THREAD_TOKEN_KEY
public static final java.lang.String EXTRA_METADATA
public static final java.lang.String EXTRA_EXTERNAL_URI
public static final java.lang.String EXTRA_PARTICIPANTS
public static final java.lang.String EXTRA_IS_REPLY
public static final java.lang.String EXTRA_IS_COMPOSE
public static final int PROTOCOL_VERSION_20150314
public static final java.lang.String ORCA_THREAD_CATEGORY_20150314
public static void shareToMessenger(android.app.Activity activity,
int requestCode,
ShareToMessengerParams shareToMessengerParams)
activity - the activity sharing the contentrequestCode - a unique request code for Activity.startActivityForResult(android.content.Intent, int)shareToMessengerParams - parameters for what to sharepublic static MessengerThreadParams getMessengerThreadParamsForIntent(android.content.Intent intent)
Intent from Messenger, call this to parse the parameters of the
intent.intent - the intent of the activityMessengerThreadParams or null if this intent wasn't recognized as a request
from Messenger to share.public static void finishShareToMessenger(android.app.Activity activity,
ShareToMessengerParams shareToMessengerParams)
activity - the activity that received the original intent from MessengershareToMessengerParams - parameters for what to sharepublic static boolean hasMessengerInstalled(android.content.Context context)
context - an android contextpublic static void openMessengerInPlayStore(android.content.Context context)
context - an android context.