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.