首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >将Facebook用户与App42链接

将Facebook用户与App42链接
EN

Stack Overflow用户
提问于 2015-07-06 13:34:40
回答 1查看 243关注 0票数 0

我试图用App42连接Facebook用户,我可以登录facebook,但是我不能将用户链接到App42,我得到了一个例外。我使用以下代码:

代码语言:javascript
复制
@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    App42API.initialize(getApplicationContext(), "MY_API_KEY","MY_SECRET_KEY");
    FacebookSdk.sdkInitialize(getApplicationContext());
    callbackManager = CallbackManager.Factory.create();
    setContentView(R.layout.activity_main);
LoginManager.getInstance().logInWithReadPermissions(this, Arrays.asList("public_profile", "user_friends"));
    loginButton = (LoginButton)findViewById(R.id.login_button);
    loginButton.registerCallback(callbackManager, new FacebookCallback<LoginResult>() {
        @Override
        public void onSuccess(LoginResult loginResult) {
            Profile profile = Profile.getCurrentProfile();
            AccessToken token = AccessToken.getCurrentAccessToken();

            String userName = profile.getId();
            String accessToken = token.toString();
            socialService.linkUserFacebookAccount(userName, accessToken, new App42CallBack() {
                public void onSuccess(Object response) {
                    Social social = (Social) response;
                    System.out.println("userName is " + social.getUserName());
                    System.out.println("fb Access Token is " + social.getFacebookAccessToken());
                    String jsonResponse = social.toString();
                }

                public void onException(Exception ex) {
                    System.out.println("Exception Message" + ex.getMessage());
                }
            });

        }

        @Override
        public void onCancel() {

        }

        @Override
        public void onError(FacebookException e) {

        }
    });

}

@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
    super.onActivityResult(requestCode, resultCode, data);
    callbackManager.onActivityResult(requestCode, resultCode, data);
}

我得到了以下信息:

代码语言:javascript
复制
07-06 16:27:16.594    9810-9862/tk.hasankassem.tapo I/System.out﹕ (HTTPLog)-Static: isSBSettingEnabled false
07-06 16:27:16.954    9810-9810/tk.hasankassem.tapo I/System.out﹕ Installation.getSession : /data/data/tk.hasankassem.tapo/files/SESSION: open failed: ENOENT (No such file or directory)
07-06 16:27:16.954    9810-9810/tk.hasankassem.tapo I/System.out﹕ Installation.getUser : /data/data/tk.hasankassem.tapo/files/USER: open failed: ENOENT (No such file or directory)
07-06 16:27:16.964    9810-9868/tk.hasankassem.tapo I/System.out﹕ Exception :com.shephertz.app42.paas.sdk.android.App42Exception: java.lang.IllegalArgumentException: key.length == 0
07-06 16:27:16.964    9810-9868/tk.hasankassem.tapo I/System.out﹕ Exception Messagejava.lang.IllegalArgumentException: key.length == 0
07-06 16:27:16.969    9810-9867/tk.hasankassem.tapo I/System.out﹕ Thread-121146(ApacheHTTPLog):Reading from variable values from setDefaultValuesToVariables
07-06 16:27:16.969    9810-9867/tk.hasankassem.tapo I/System.out﹕ Thread-121146(ApacheHTTPLog):isSBSettingEnabled false
07-06 16:27:16.974    9810-9867/tk.hasankassem.tapo I/System.out﹕ Thread-121146(ApacheHTTPLog):isShipBuild true
07-06 16:27:16.974    9810-9867/tk.hasankassem.tapo I/System.out﹕ Thread-121146(ApacheHTTPLog):SmartBonding Enabling is false, SHIP_BUILD is true, log to file is false, DBG is false
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-07-07 05:21:22

在完成代码之后,我想建议您

  1. 初始化socialService对象后创建App42API对象,如

App42API.initialize(getApplicationContext(),MY_API_KEY,MY_SECRET_KEY);SocialService socialService =App42API.buildSocialService();

  1. 如果要在初始化SDK之前创建SocialService,则会出现以下异常。

Messagejava.lang.IllegalArgumentException: key.length == 0

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/31247275

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档