Search code examples
androidsdkmessenger

How to share with the android studio messenger SDK


I tried to share with the android studio messenger SDK, but i really don't understand how it works.

I have my messenger app id, and set up in my manifest, installed the SDK with maven.

I added my button with "messenger_button_send_blue_round.xml".

I have my code come from the tutorial with:

ShareToMessengerParams shareToMessengerParams =
    ShareToMessengerParams.newBuilder(contentUri, "image/jpeg")
        .setMetaData("{ \"image\" : \"trees\" }")
        .build();

if (mPicking) {
    MessengerUtils.finishShareToMessenger(this, shareToMessengerParams);
} else {  
    MessengerUtils.shareToMessenger(
        this,
        REQUEST_CODE_SHARE_TO_MESSENGER,
        shareToMessengerParams);
}

I now have 2 question:

1) REQUEST_CODE_SHARE_TO_MESSENGER is always red, i have to change it to "1".

2) How to link the button click to this code ?


Solution

  • Here is my code is use to share on messenger (working great in prod so far):

    public void shareOnMessenger (SbElem sbElem) {
        // COPY TEMP FILE FROM LOCAL APP TO PUBLIC FOLDER
        final String newPath = getNewPathFromSbElem(sbElem);
        final File newFile = new File(newPath);
        final Uri newUri = FileProvider.getUriForFile(this, getString(R.string.file_provider_authority), newFile);
        // HAD TO SET IT TO 1, CAN'T FIND THE PUBLIC NAME ??
        final Integer SHARE_TO_MESSENGER_REQUEST_CODE = 1;
    
        String mimeType = "audio/*";
        ShareToMessengerParams shareToMessengerParams = ShareToMessengerParams.newBuilder(newUri, mimeType).build();
        MessengerUtils.shareToMessenger(this, SHARE_TO_MESSENGER_REQUEST_CODE, shareToMessengerParams);
    }