Наши проекты:
Журнал · Discuz!ML · Wiki · DRKB · Помощь проекту |
||
ПРАВИЛА | FAQ | Помощь | Поиск | Участники | Календарь | Избранное | RSS |
[18.97.14.84] |
|
Сообщ.
#1
,
|
|
|
Привет всем.
Не был тут лет 10 Не знаю вообще в правильное ли место я решил задать этот вопрос. Мучаюсь с проверкой покупок. Изначально пробовал на C#.net но там также покупка не валидна, нашел примеры на php, и вроде все правильно делаю но результат не тот что мне нужен, вычисляет как не валидные, хотя данные подсовываю из реальной покупки, правда в sandbox, в примере использовал как давнишние, так и более свежие покупки. Код простой брал от сюда https://www.b4x.com/android/forum/threads/i...fication.91128/ Но вот тут, вроде тот же и попроще https://gist.github.com/menny/1985010#file-...rket_in_app-php function verify_market_in_app($signed_data, $signature, $public_key_base64) { $key = "-----BEGIN PUBLIC KEY-----\n". chunk_split($public_key_base64, 64,"\n"). '-----END PUBLIC KEY-----'; //using PHP to create an RSA key $key = openssl_get_publickey($key); //$signature should be in binary format, but it comes as BASE64. //So, I'll convert it. $signature = base64_decode($signature); //using PHP's native support to verify the signature $result = openssl_verify( $signed_data, $signature, $key, OPENSSL_ALGO_SHA1); if (0 === $result) { return false; } else if (1 !== $result) { return false; } else { return true; } } И в общем все кажется подставляю верно, но не знаю, нужно ли что то настраивать в сервере что бы использовать эти вызовы с ssl, может как то публичный ключ нужно подготовить? Ключ скопипастил из консоли google, но покупка оказывается не валидной, вот тут все тестирую http://redsungame.ru/inapp.php что можно еще проверить? Прикреплённая картинка
|
Сообщ.
#2
,
|
|
|
Фух, разобрался, я вместо оригинального сообщения слал некую фигню. Оригинальное сообщение выглядит совсем по другому!
{"orderId":"GPA.3304-0289-1392-53795","packageName":"air.air.RedSun","productId":"aliens","purchaseTime":1593125225673,"purchaseState":0,"purchaseToken":"lnpcnedfmbfenenjaknijbke.AO-J1OyXhnT-7WmxEAaUb43Wb4M-FhLahLb9Vvj0902QbUHxFAsttjSJyHyx4bsG-Ll-l27lFyPt88TzzDGjZjgJTHXWU6rASNJtafHSZ9UH-6XqDRGjvQ4","acknowledged":true} |