Atu*_*lic 21 android facebook facebook-app-requests facebook-invite facebook-invite-friends
我切换到Facebook 4.0以实现Android的AppInviteDialog.我按照这个参考.
出现对话框,我可以选择朋友,邀请他们,我onSuccess()接到电话,但我的朋友没有得到邀请.
我使用了以下applink网址:https://fb.me/****412097*****
虽然我在对话框中看到了应用程序的图像,但没有previewImageURL.
码:
//Inside onCreate -
        callbackManager = CallbackManager.Factory.create();
        mInvititeDialog = new AppInviteDialog(this);
        mInvititeDialog.registerCallback(callbackManager,
                new FacebookCallback<AppInviteDialog.Result>() {
                    @Override
                    public void onSuccess(Result result) {
                        NetworkController.showCustomToast(
                                InviteFriendsActivity.this,
                                "Invitation Sent Successfully!");
                        finish();
                    }
                    @Override
                    public void onCancel() {
                        Log.d("Result", "Cancelled");
                        NetworkController.showCustomToast(
                                InviteFriendsActivity.this, "Cancelled");
                        finish();
                    }
                    @Override
                    public void onError(FacebookException exception) {
                        Log.d("Result", "Error " + exception.getMessage());
                        NetworkController.showCustomToast(
                                InviteFriendsActivity.this,
                                "Error while inviting friends");
                        finish();
                    }
                });
    if (AppInviteDialog.canShow()) {
            AppInviteContent content = new AppInviteContent.Builder()
                            .setApplinkUrl(appLinkUrl).build();
            AppInviteDialog.show(InviteFriendsActivity.this, content);
    }
    @Override
    protected void onActivityResult(int requestCode, int resultCode, Intent data) {
        // TODO Auto-generated method stub
        super.onActivityResult(requestCode, resultCode, data);
        callbackManager.onActivityResult(requestCode, resultCode, data);
    }
以下类似链接没有帮助(即使它们来自ios)
Atu*_*lic 17
好的,事实证明一切都工作正常.我的错误在于假设没有安装应用程序,并且未授权应用程序应生成推送通知.
创建新测试用户后,使用当前未安装应用程序的设备,并且应用程序从未获得用户授权.
因此,关键是如果应用程序安装在目标设备上,则不会生成推送通知,即使用户之前未授权该应用程序也是如此.此外,看起来,如果用户之前已经授权该应用,即使它在某个时候被删除了,它也不会生成通知.
因此,如果要对此进行测试,请创建一个全新的测试用户并登录您正在测试的平台上的Facebook应用程序,并确保该应用程序未安装在设备上.
我认为尽管安装了应用程序,它仍然应该生成通知,因为多个用户可能正在使用相同的设备,但现在看起来就是这样.
我会留下这个,以防万一将来有类似的问题.
健康长寿·繁荣昌盛!
它确实对我有用,但是我不太确定它是否涵盖所有场景并且是完美的解决方案.在此处发布其他用户和建议(如果有).
我正在使用以下代码并且工作正常......但是在邀请朋友之后(如果你已经共享了android应用程序,那么被邀请者必须检查他/她的移动应用程序..)通过浏览器看不到邀请
private CallbackManager sCallbackManager;
public void openDialogInvite(final Activity activity) {
            String AppURl = "https://fb.me/421570...5709";  //Generated from //fb developers
        String previewImageUrl = "http://someurl/13_dp.png";
        sCallbackManager = CallbackManager.Factory.create();
        if (AppInviteDialog.canShow()) {
            AppInviteContent content = new AppInviteContent.Builder()
                    .setApplinkUrl(AppURl).setPreviewImageUrl(previewImageUrl)
                    .build();
            AppInviteDialog appInviteDialog = new AppInviteDialog(activity);
            appInviteDialog.registerCallback(sCallbackManager,
                    new FacebookCallback<AppInviteDialog.Result>() {
                        @Override
                        public void onSuccess(AppInviteDialog.Result result) {
                            Log.d("Invitation", "Invitation Sent Successfully");
                            finish();
                        }
                        @Override
                        public void onCancel() {
                        }
                        @Override
                        public void onError(FacebookException e) {
                            Log.d("Invitation", "Error Occured");
                        }
                    });
            appInviteDialog.show(content);
        }
    }
| 归档时间: | 
 | 
| 查看次数: | 19199 次 | 
| 最近记录: |