创建新项目

  1. 转到 Google Play 管理中心的 API 权限页面。
  2. 接受《服务条款》。
  3. 点击创建新项目

系统会自动生成 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://类似于/?code=4%2F0AX4XfWicL_0-Q_jdsl_zrX0KfByRhXwOUrHYaY6XbtvQZoswf_Z1CBRzvXgCl9e-RfybZQ&scope=https%3A%2F%2Fwww.googleapis.com%2Fauth%2Fandroidpublisher#/login?redirect=%2Fdashboard

    • 将该代码替换为访问权限和刷新令牌组合,为此,您需要向 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)的更多相关文章

  1. Android Studio 2.2以上支持了Cmake的配置JNI的相关参数

    Android Studio 2.2以上支持了Cmake的配置JNI的相关参数,简化了通过Android.mk配置.并很好的继承了C++的编辑方式.以下是对应的引入第三方so和第三方.cpp文件的路径 ...

  2. Spark 性能相关参数配置详解-任务调度篇

    随着Spark的逐渐成熟完善, 越来越多的可配置参数被添加到Spark中来, 本文试图通过阐述这其中部分参数的工作原理和配置思路, 和大家一起探讨一下如何根据实际场合对Spark进行配置优化. 由于篇 ...

  3. JVM相关参数配置和问题诊断<转>

    原文连接:http://blog.csdn.net/chjttony/article/details/6240457 1.Websphere JVM相关问题诊断: 由JVM引起的Websphere问题 ...

  4. hadoop和spark相关参数的配置

    背景 MapReduce和Spark对外提供了上百个配置参数,用户可以为作业定制这些参数以更快,更稳定的运行应用程序.本文梳理了最常用的一些MapReduce和Spark配置参数. MapReduce ...

  5. Yarn 内存分配管理机制及相关参数配置

    上一篇hive on tez 任务报错中提到了containter内存不足,现对yarn 内存分配管理进行介绍 一.相关配置情况 关于Yarn内存分配与管理,主要涉及到了ResourceManage. ...

  6. 电机噪声之谐波分析(内附simulink中FFT分析的相关参数配置与解析)

    电机噪声之谐波分析(内附simulink中FFT分析的相关参数配置与解析) 目录 电机噪声之谐波分析(内附simulink中FFT分析的相关参数配置与解析) 写在前面 正文 电机噪声 谐波的产生 什么 ...

  7. Nginx一直报504超时,配置相关参数好了

    相关参数:large_client_header_buffers 4 16k;client_max_body_size 30m;client_body_buffer_size 128k;proxy_c ...

  8. google支付回调验证

    原文链接: https://my.oschina.net/lemonzone2010/blog/398736 Google支付问题 20150218,挂机的日本服务器出现google支付被刷单现象,虽 ...

  9. Vue — 微信公众号内置h5支付相关

    首先,在公众号后台配置h5页面地址 开发流程 1.通过配置h5地址,获取code.再通过code,获取openid getOpenid(){ let url = 'https://open.weixi ...

随机推荐

  1. 数据库语法整理及WAF绕过方式

    关系型数据库 关系型数据库:指采用了关系模型来组织数据的数据库. 直白的说就是:关系型数据库最典型的数据结构是表,由二维表及其之间的联系所组成的一个数据组织 当今主流的关系型数据库有:Oracle,M ...

  2. VMware vSphere 7 Update 3 下载

    请访问原文链接:https://sysin.org/blog/vmware-vsphere-7-u3/,查看最新版.原创作品,转载请保留出处. vSphere 7 Update 3 已经宣布可用,即将 ...

  3. Redis缓存穿透、缓存击穿、缓存雪崩的介绍及其解决方案

    首先,来画一张图了解下缓存处理的流程 一.缓存穿透 描述: 缓存穿透是指缓存和数据库中都没有的数据,而用户不断发起请求查询该数据,导致数据库压力过大. 解决方案: 1.接口校验 如鉴权校验.数据合法性 ...

  4. transformers---BERT

    transformers---BERT BERT模型主要包括两个部分,encoder和decoder,encoder可以理解为一个加强版的word2vec模型,以下是对于encoder部分的内容 预训 ...

  5. 初学python-day11 函数3

    函数 1. global关键字 修改全局变量,声明函数内外使用同一个变量 示例: 1 name = 'xiaoming' 2 3 def test(): 4 global name 5 name = ...

  6. javascript-原生-闭包

    1.变量的作用域 前提:这里只全部都通过var创建的变量或对象 1.全局变量:函数外创建变量 var x=10; function test(){ alert("全局变量在test函数中&q ...

  7. 【UE4】GAMES101 图形学作业5:光线与物体相交(球、三角面)

    总览 在这部分的课程中,我们将专注于使用光线追踪来渲染图像.在光线追踪中最重要的操作之一就是找到光线与物体的交点.一旦找到光线与物体的交点,就可以执行着色并返回像素颜色. 在这次作业中,我们要实现两个 ...

  8. Beta阶段第八次会议

    Beta阶段第八次会议 时间:2020.5.24 完成工作 姓名 工作 难度 完成度 ltx 1.修改一下小程序游客模式的风格 轻 80% xyq 1.针对昨天提出的意见对场地申请表格进行修改 中 9 ...

  9. 按照工业标准1英寸=25.4mm,而在电子元件成像领域Sensor尺寸1英寸=16mm。

    按照工业标准1英寸=25.4mm,而在电子元件成像领域Sensor尺寸1英寸=16mm. 我们平常所说的CCD/CMOS的尺寸,实际上是指Sensor对角线的长度,这一点跟我们平常所说的屏幕尺寸是一样 ...

  10. Python课程笔记(二)

    1.格式化输出 print("%d %d %s" % (15, 3.14, 12.8)) 对比C语言 printf("%d,%d,%s",15, 3.14, 1 ...