加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Java > 正文

java – Re:youtube视频评级api(v3)在模拟器中工作但在真实设备

发布时间:2020-12-15 02:14:12 所属栏目:Java 来源:网络整理
导读:客户端ID,密码等都是正确的.我重新检查了他们.谷歌登录工作,我也获得访问令牌,但当我尝试使用youtube视频评级api时,它在真实设备中提供403禁止错误.但它在模拟器中工作正常.这可能是什么问题?有人可以帮忙吗?任何帮助表示赞赏.谢谢 附:之前我没有使用“gc
客户端ID,密码等都是正确的.我重新检查了他们.谷歌登录工作,我也获得访问令牌,但当我尝试使用youtube视频评级api时,它在真实设备中提供403禁止错误.但它在模拟器中工作正常.这可能是什么问题?有人可以帮忙吗?任何帮助表示赞赏.谢谢

附:之前我没有使用“gc.setScope(”https://www.googleapis.com/auth/youtube.force-ssl“)”代码中的这一行,它也在模拟器中给出相同的禁止错误,但现在我添加了该行并在模拟器中工作,但在实际中给出了403禁止错误设备.

sign.addActionListener((e) -> {
    String clientId = "873649282964-7r6088ua0jhoua2tngpblhf4u8elda55.apps.googleusercontent.com";
    String redirectURI = "https://www.youtube.com/";
    String clientSecret = "_T7cyd-kWQKDzH0ZwiIeq1jr";
    gc = GoogleConnect.getInstance();
    gc.setClientId(clientId);
    gc.setRedirectURI(redirectURI);
    gc.setClientSecret(clientSecret);
    gc.setScope("https://www.googleapis.com/auth/youtube.force-ssl");
    gc.setCallback(new LoginCallback() {
        @Override
        public void loginFailed(String errorMessage) {
            System.out.println("errorMessage");
        }

        @Override
        public void loginSuccessful() {
            System.out.println("login success");
        }
    });
    if (!gc.isUserLoggedIn()) {
        gc.doLogin();
    } else {
        //get the token 
        token = gc.getAccessToken().getToken();
    }
});

Button like = new Button("Like");
likeForm.add(like);

like.addActionListener((e) -> {
    token = gc.getAccessToken().getToken();
    ConnectionRequest cr = new ConnectionRequest() {

        @Override
        protected void readResponse(InputStream input) throws IOException {
            super.readResponse(input);
        }

        @Override
        protected void postResponse() {
            like.setText("Like: " + "ok");
        }
    };
    cr.setPost(true);
    cr.setUrl("https://www.googleapis.com/youtube/v3/videos/rate?id=" + "lIHr4ZVMBoo" + "&rating=like&access_token="+ token);
    System.out.println("geturl " + cr.getUrl());
    cr.setDuplicateSupported(true);     
    NetworkManager.getInstance().addToQueueAndWait(cr);
});

错误日志:

04-15 08:05:10.761: E/GMPM(5344): getGoogleAppId failed with status: 10
04-15 08:05:10.761: E/GMPM(5344): Uploading is not possible. App measurement disabled
04-15 08:06:02.901: E/Volley(2900): [154] BasicNetwork.performRequest: Unexpected response code 403 for https://www.googleapis.com/plus/v1/people/me

解决方法

您将登录错误或成功打印到控制台,而不是显示将在设备上可见的UI.因此,您的登录可能不会成功.

据我所知,谷歌API也需要授权http标头,因为我们使用它here,但如果它在模拟器上工作,我不确定这是什么问题.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读