Android应用内结算订阅验证

时间:2013-04-30 07:46:20

标签: android in-app-purchase in-app-billing subscription

我想在我的服务器上验证订阅,但是当我尝试获取访问令牌时,我收到invalid_grant错误。 我在我的服务器上的php中使用该代码:

$refreshToken = '4/cTphJ...';
$clientId = '1234567.apps.googleusercontent.com';
$clientSecret = '';
$redirectUri = 'https://www.example.com/oauth2callback';

$ch = curl_init();

$url  = 'https://accounts.google.com/o/oauth2/token';

curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, 'grant_type=authorization_code&client_id=' . $clientId . '&client_secret=' . $clientSecret . '&code=' . $refreshToken . '&redirect_uri=' . $redirectUri);

$data = curl_exec($ch);

curl_close($ch);

有什么不对?

修改 当我生成正确的代码,然后我不再得到invalid_grant错误,但现在我收到错误“此开发者帐户不拥有该应用程序”。我的Android应用程序和Google控制台中的新API项目是使用相同的Google帐户创建的,为什么我会看到该错误?

1 个答案:

答案 0 :(得分:0)

这是我的错误。我打电话给那个网址https://accounts.google.com/o/oauth2/auth?scope=https://www.googleapis.com/auth/androidpublisher&response_type=code&access_type=offline&redirect_uri=...&client_id= ...但是我的redirect_uri错了,然后我的代码错了。

我在开发者控制台的设置中发送的电子邮件是错误的。