配置Google支付相关参数(client_id, client_secret, refresh_token)
1. 登陆Google开发者账号,点击左边API权限

创建新项目
- 转到 Google Play 管理中心的 API 权限页面。
- 接受《服务条款》。
- 点击创建新项目。
系统会自动生成 Google Cloud 项目,并将其关联到您的 Google Play 管理中心。
2. 配置服务账号
转到 Google Play 管理中心的 API 权限页面,点击服务帐号下的创建新的服务帐号。

在创建帐号的过程中,您需要向自己的服务帐号授予对 Cloud 项目的访问权限,这样它才能显示在 Google Play 管理中心内。

点击Google cloud platform创建,先将Google play项目和自动创建的cloud platform项目绑定

然后点击创建服务账号

填入名称即可,其他都是可选。
完成后可以下载密钥保管到电脑上

在 Google Play 管理中心创建服务帐号后,点击完成。API 权限页面的“服务帐号”部分会自动刷新,您的服务帐号将随即列出。

点击授予访问权,为服务帐号提供执行相关操作所需的权限。此时,您应该能够通过服务帐号访问 Google Play Developer API。如需了解详情,请参阅针对服务器对服务器应用使用 OAuth 2.0。
3. 创建OAuth客户端
在创建 OAuth 客户端之前,您需要为产品配置品牌信息。
转到 Google Play 管理中心的 API 权限页面。点击 OAuth 客户端下的配置 OAuth 权限请求页面。由于我已经配置了相关信息,这里就没有显示配置客户端而是创建客户端。

配置产品的品牌信息。完成配置后,点击刷新 OAuth 权限请求信息。此部分会相应更新,您不会再看到与品牌信息有关的消息。
然后再创建客户端

- 创建好了之后查看客户端id和客户端密钥即client_id和client_secret

- 其中的重定向url可以问后端要
在 Google Play 管理中心创建 OAuth 客户端后,点击完成。API 权限页面的 OAuth 客户端部分会自动刷新,您的 OAuth 客户端将随即列出。
有时新的 OAuth 客户端不会立即显示在页面上。在这种情况下,请点击刷新 OAuth 客户端。新 OAuth 客户端的详细信息会以列表形式显示在此页面上。
4. 获取您的开发者 ID
有些 API 需要您提供 Google Play 管理中心开发者 ID。这是在创建您的 Google Play 开发者帐号时分配的一个长号码。您可以在 Google Play 管理中心内几乎任何页面(例如 API 权限页面)的网址中找到您的开发者 ID。
以 Google Play 管理中心的网址为例:
https://play.google.com/console/developers/1234567890123456789/api-access
在以上网址中,开发者 ID 为
1234567890123456789。注意:当应用从一个 Google Play 开发者帐号转移到另一个 Google Play 开发者帐号时,与该应用关联的开发者 ID 将会发生变化。这意味着,转移完成后,在该应用的 API 调用中,您将必须使用新的 Google Play 开发者帐号的开发者 ID。
5. 生成刷新令牌(refresh_token)
先使用你的Google play账号登陆后,转到以下uri:
https://accounts.google.com/o/oauth2/auth?scope=https://www.googleapis.com/auth/androidpublisher&response_type=code&access_type=offline&redirect_uri=...&client_id=...
将上一步填写的重定向uri和client_id填入
注意:
redirect_uri参数必须与使用客户端 ID 注册的值完全匹配,包括末尾的反斜杠(如果有)。看到系统提示时,请选择允许访问。
- 如果有多个账号,选择你的开发者账号

浏览器将使用
code参数重定向到您的重定向 URI,该参数类似于4/eWdxD7b-YSQ5CNNb-c2iI83KQx19.wp6198ti5Zc7dJ3UXOl0T3aRLxQmbwI在之后的uri中找到code
将该代码替换为访问权限和刷新令牌组合,为此,您需要向
https://accounts.google.com/o/oauth2/token发送 POST 请求,并设置以下字段:grant_type=authorization_code
code=<the code from the previous step>
client_id=<the client ID token created in the APIs Console>
client_secret=<the client secret corresponding to the client ID>
redirect_uri=<the URI registered with the client ID>
然后使用postman

成功响应后,获得refresh_token
{
"access_token" : "ya29.ZStBkRnGyZ2mUYOLgls7QVBxOg82XhBCFo8UIT5gM",
"token_type" : "Bearer",
"expires_in" : 3600,
"refresh_token" : "1/zaaHNytlC3SEBX7F2cfrHcqJEa3KoAHYeXES6nmho"
}
注意,只有第一次请求会返回refresh_token,请妥善保管
然后,在后台将内购所需要的client_id,client_secret,refresh_token一一配置,大功告成~
参考文章
https://blog.csdn.net/chenglinlin526/article/details/78086127
https://developers.google.com/android-publisher/getting_started?hl=zh-cn
https://developers.google.com/android-publisher/authorization
配置Google支付相关参数(client_id, client_secret, refresh_token)的更多相关文章
- Android Studio 2.2以上支持了Cmake的配置JNI的相关参数
Android Studio 2.2以上支持了Cmake的配置JNI的相关参数,简化了通过Android.mk配置.并很好的继承了C++的编辑方式.以下是对应的引入第三方so和第三方.cpp文件的路径 ...
- Spark 性能相关参数配置详解-任务调度篇
随着Spark的逐渐成熟完善, 越来越多的可配置参数被添加到Spark中来, 本文试图通过阐述这其中部分参数的工作原理和配置思路, 和大家一起探讨一下如何根据实际场合对Spark进行配置优化. 由于篇 ...
- JVM相关参数配置和问题诊断<转>
原文连接:http://blog.csdn.net/chjttony/article/details/6240457 1.Websphere JVM相关问题诊断: 由JVM引起的Websphere问题 ...
- hadoop和spark相关参数的配置
背景 MapReduce和Spark对外提供了上百个配置参数,用户可以为作业定制这些参数以更快,更稳定的运行应用程序.本文梳理了最常用的一些MapReduce和Spark配置参数. MapReduce ...
- Yarn 内存分配管理机制及相关参数配置
上一篇hive on tez 任务报错中提到了containter内存不足,现对yarn 内存分配管理进行介绍 一.相关配置情况 关于Yarn内存分配与管理,主要涉及到了ResourceManage. ...
- 电机噪声之谐波分析(内附simulink中FFT分析的相关参数配置与解析)
电机噪声之谐波分析(内附simulink中FFT分析的相关参数配置与解析) 目录 电机噪声之谐波分析(内附simulink中FFT分析的相关参数配置与解析) 写在前面 正文 电机噪声 谐波的产生 什么 ...
- Nginx一直报504超时,配置相关参数好了
相关参数:large_client_header_buffers 4 16k;client_max_body_size 30m;client_body_buffer_size 128k;proxy_c ...
- google支付回调验证
原文链接: https://my.oschina.net/lemonzone2010/blog/398736 Google支付问题 20150218,挂机的日本服务器出现google支付被刷单现象,虽 ...
- Vue — 微信公众号内置h5支付相关
首先,在公众号后台配置h5页面地址 开发流程 1.通过配置h5地址,获取code.再通过code,获取openid getOpenid(){ let url = 'https://open.weixi ...
随机推荐
- Jmeter压测学习3---通过正则表达式提取token
上一个随笔记录的是用json提取器提取token,这个随笔记录用正则表达式提取token 一.添加正则表达式 登录右击添加->后置处理器->正则表达式提取器 正则提取器参数说明: 要检查的 ...
- GKCTF 2021 Reverse Writeup
前言 GKCTF 2021所以题目均以开源,下面所说的一切思路可以自行通过源码对比IDA进行验证. Github项目地址:https://github.com/w4nd3r-0/GKCTF2021 出 ...
- heoi2020树
_ _01trie树合并 _ _ 在考场上一直想用数据结构维护,还花了好长时间算 $(a+1)^(b+1)$,现在看来当时好像在犯傻........ 异或有个神奇的工具是 01trie 树,此题就用此 ...
- ThreadLocal概念以及使用场景
ThreadLocal概念以及使用场景 根据自身的知识深度,这里只限于自己使用和学习的知识点整理,原理的解释还需要再沉淀. 该文章从项目开发中举例,希望能帮助到各位,不了解ThreadLocal的朋友 ...
- python中dump与dumps实现序列化
前言 使用中如果我们想把python可识别对象的dict类型的数据通过str类型写入文件或者存入变量中就需要用到dump与dumps 详解 dump 1.新建个dict文件,然后将dict文件存入一个 ...
- 深入理解Java虚拟机之类加载机制篇
概述 虚拟机把描述类的数据从 Class 文件加载到内存中,并对数据进行校验.转换解析和初始化,最终形成可以被虚拟机直接使用的Java类型,就是虚拟机的类加载机制. 在Java语言里面,类型的 ...
- 2021北航敏捷软工Beta阶段评分与总结
概述 Beta 阶段评分,按照之前的规则,主要组成部分为: 博客部分,基于 Beta 阶段博客的评分(每篇正规博客 10 分,每篇 Scrum5 分,评定方式类比往年) 评审部分,基于 Beta 阶段 ...
- (二)、Docker 快速入门
文档:https://docs.docker.com/install/linux/docker-ce/centos/ 中文文档:https://docs.docker-cn.com/engine/in ...
- 六个好习惯让你的PCB设计更优(转)
PCB layout工程师每天对着板子成千上万条走线,各种各样的封装,重复着拉线的工作,也许很多人会觉得是很枯燥无聊的工作内容.看似软件操作搬运工,其实设计人员在过程中要在各种设计规则之间做取舍,兼顾 ...
- 你知道怎么从jar包里获取一个文件的内容吗
目录 背景 报错的代码 原先的写法 编写测试类 找原因 最终代码 背景 项目里需要获取一个excle文件,然后对其里的内容进行修改,这个文件在jar包里,怎么尝试都读取不成功,但是觉得肯定可以做到,因 ...