На главную
ПРАВИЛА FAQ Помощь Участники Календарь Избранное RSS
msm.ru
Модераторы: Hsilgos
  
> Сервер проверки inapp android
Привет всем.
Не был тут лет 10 :rolleyes:

Не знаю вообще в правильное ли место я решил задать этот вопрос.
Мучаюсь с проверкой покупок. Изначально пробовал на 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

ExpandedWrap disabled
    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

что можно еще проверить?

Прикреплённая картинка
Прикреплённая картинка
Фух, разобрался, я вместо оригинального сообщения слал некую фигню. Оригинальное сообщение выглядит совсем по другому!


{"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}
1 пользователей читают эту тему (1 гостей и 0 скрытых пользователей)
0 пользователей:


Рейтинг@Mail.ru
[ Script Execution time: 0,0714 ]   [ 22 queries used ]   [ Generated: 8.08.20, 03:26 GMT ]