After long research and trying to fix this on my own, I haven't found any acceptable working result.
Following this documentation I'm trying to invite friends to my app. All elements, such as share buttons are working properly.
The only problem are with "Invite to app" dialog. After selecting a friend, the dialog are showing red alert icon and "send" button is turns into "retry" button.
I have tried fix this in many ways - configure my app in FB dev page (like changing app category: game, travel .etc), adding new permission for sharing (but I haven't found, that inviting is required it), using GamesRequests (but my app isn't a game, it's android + canvas app). So I have returned again to AppInviteDialog.
Also, I have trying to use own instance of it, with listeners, instead of static class.
inviteDialog = new AppInviteDialog(this);
inviteDialog.registerCallback(callbackManager, new FacebookCallback<Result>() {
@Override
public void onSuccess(Result result) {
Log.i(TAG, "MainACtivity, InviteCallback - SUCCESS!");
}
@Override
public void onCancel() {
Log.i(TAG, "MainACtivity, InviteCallback - CANCEL!");
}
@Override
public void onError(FacebookException error) {
Log.e(TAG, "MainACtivity, InviteCallback - ERROR! " + error.getMessage());
}
});
And calling it, like in tutorial:
if(AppInviteDialog.canShow()) {
AppInviteContent content = new AppInviteContent.Builder()
.setApplinkUrl(appUrl)
.setPreviewImageUrl(imagePreviewUrl)
.build();
//AppInviteDialog.show(this, content); //static
inviteDialog.show(content); //my instance
}
But all what i get is:
Edit:
After creating link to my app using AppLinks, and using it in the AppInviteDialog, now all works fine. It's a bit confusing, that in documentation not clearly described, what kind of link need to use: "AppLinks link" or just "app link (link to your fb app)".