Посилання на Github: bit.ly/GitHub-testpayments
Простий додаток для перевірки та реєстрації подій потоку покупок у додатку, розроблений відповідно до стандартних практик виставлення рахунків для додатків, які не запускають власний платіжний сервер (тобто покладаються на API виставлення рахунків Play на пристрої для запитів про продукти та покупки).
Наразі підтримує телефон, Android TV і Wear OS.
Щоб використовувати його, найкраще перевірити цю програму на платіжний потік, який не працює у вашій власній програмі. Якщо це працює в цій програмі, порівняйте свій код із нашим кодом Github або перевірте наші журнали, щоб виявити відмінності; якщо він також не працює в цьому додатку, повідомте нас - це може бути зміна виставлення рахунків Play, яка порушує потік, і нам, можливо, доведеться оновити додаток!
Примітка: усі транзакції в цій програмі призначені лише для тестування. Для транзакцій не буде надано реальних товарів чи послуг. Терміни, які використовуються в додатку (наприклад, «Купити троянду»), призначені лише для демонстрації та не є реальними.
Ціни встановлено на рівні мінімальних, необхідних для виконання вимог Play Console, щоб мінімізувати витрати на тестування за допомогою цієї програми.
Більшість 0,49 доларів США або еквівалент через мінімальні вимоги (можуть відрізнятися в деяких країнах через інші мінімальні вимоги).
Потоки закупівель були перевірені на момент випуску. Він також буде постійно оновлюватися, щоб наздогнати необхідні зміни в платежах, докладаючи всіх зусиль. Більше для перехресної перевірки, якщо ви виявите, що платежі у вашій власній програмі не виконуються з невідомих причин.
Може тестувати продукти, що продаються через програму, а також підписки (не забудьте скасувати це після тестування!). Також надає журнали для відображення подій під час платежу.
Основні деталі реалізації на даний момент:
1. Переконайтеся, що ви обробляєте свої покупки (підтвердьте та споживайте, якщо це можливо), коли ви отримаєте успішну відповідь у onPurchasesUpdated у PurchasesUpdatedListener
2. Переконайтеся, що ви також надсилаєте запит про покупки користувача (queryPurchasesAsync) у викликах onResume() вашої програми (або еквівалент, якщо onResume() не є належним місцем), перевіряйте статус підтвердження кожної покупки та підтверджуйте їх, якщо вони не були успішно підтверджені .
- Також використовуйте витратні матеріали, якщо вони вже підтверджені, але все ще включені у відповідь (це означає, що вони не були використані успішно)
3. Оновіть інтерфейс користувача, щоб відобразити нові зміни відповіді на виставлення рахунків.
4. Майте на увазі, що екрани годинника можуть згаснути досить скоро, потенційно затримуючи onPurchasesUpdated() тощо через те, що програма не працює активно або не отримує події після здійснення платежу. І коли ви активуєте екран, як onPurcahsesUpdated(), так і queryPurchasesAsync() у onResume() можуть спрацьовувати майже одночасно (тому обов’язково перевіряйте умови змагання).
5. Майте на увазі, що покупки, не підтверджені протягом 72 годин, автоматично повертаються.