【问题标题】:How to get email from twitter using fabric如何使用fabric从twitter获取电子邮件
【发布时间】:2017-08-04 22:22:15
【问题描述】:

我正在尝试使用织物从 Twitter 获取电子邮件,任何人都可以帮助我如何获取它。我也试过不带面料,但没用。

我的代码如下所示。

    twitterLoginButton.setCallback(new Callback<TwitterSession>() {
                @Override
                public void success(Result<TwitterSession> result) {

                    session = result.data;

                    String username = session.getUserName();
                    Long userid = session.getUserId();

                    Log.d(":: Name ::", session.getUserName());

                    getUserData();
                }

                @Override
                public void failure(TwitterException exception) {

                }
            });
        }

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

        void getUserData() {
        Call<User> call = Twitter.getApiClient(session).getAccountService()
                .verifyCredentials(true, false);
        call.enqueue(new Callback<User>() {
            @Override
            public void success(Result<User> result) {
                User user = result.data;
                String twitterImage = user.profileImageUrl;

                try {
                    Log.d("imageurl", user.profileImageUrl);
                    Log.d("name", user.name);
//                    Log.d("email", user.email);
                    Log.d("des", user.description);
                    Log.d("followers ", String.valueOf(user.followersCount));
                    Log.d("createdAt", user.createdAt);

                    Log.d("::Name ::", user.name);


                    session = Twitter.getSessionManager().getActiveSession();
                    TwitterAuthToken authToken = session.getAuthToken();
                    String token = authToken.token;
                    String secret = authToken.secret;
                    authClient = new TwitterAuthClient();
                    authClient.requestEmail(session, new Callback<String>() {
                        @Override
                        public void success(Result<String> result) {
                            // Do something with the result, which provides the email address
                            Log.d("::::result:::::", result.response + "");
                        }

                        @Override
                        public void failure(TwitterException exception) {
                            // Do something on failure
                        }
                    });


                } catch (Exception e) {
                    e.printStackTrace();
                }
            }

            @Override
            public void failure(TwitterException exception) {

            }
        });
    }

【问题讨论】:

  • 很抱歉打断你,但即使我们可以向 twitter 请求电子邮件,无论采用何种方法,都不确定你是否每次都会收到电子邮件

标签: android twitter twitter-fabric


【解决方案1】:

试试这个。

twitauthobj.requestEmail(twitsessionobj,new Callback<String>() {
                        @Override
                        public void success(Result<String> stringResult) {
                            'You code here'

                        }

                        @Override
                        public void failure(TwitterException e) {

                        }
                    });

您必须检查此添加权限。你检查了吗?

【讨论】:

  • 我更新了我正在使用上述代码的代码,但它显示了与允许共享您的电子邮件地址的对话框,而不是现在,在允许之后仍然没有获得电子邮件地址。
  • 这里有什么权限?在你的情况下apps.twitter.com/app/PROJECT_ID/permissions
  • 你能简单描述一下吗,其实我不知道!
  • 你打开你的账户链接了:apps.twitter.com/app/PROJECT_ID/permissions 吗?
  • 是的,我打开了它,我已经授予了读写权限,还检查了向用户请求电子邮件地址!
猜你喜欢
  • 1970-01-01
  • 2015-09-29
  • 1970-01-01
  • 2016-11-11
  • 1970-01-01
  • 2012-03-26
  • 2012-12-14
  • 1970-01-01
  • 2016-01-22
相关资源
最近更新 更多