Тестирование биллинга на Android-маркерах Android с фиктивными учетными данными кредитной карты
Я настроил приложение Android для использования модуля биллинга в приложении, как описано в:
http://developer.android.com/guide/market/billing/index.html
Он отлично работает при тестировании с использованием счетов британской команды разработчиков, имеющих реальные кредитные карты, связанные с ними. Тем не менее, часть моей команды разработчиков находится в Китае, а поскольку Google Billing не работает в Китае, они не могут проверить функциональность выставления счетов.
Понятно, что команде неудобно делиться личными данными о карте или личной информацией с другими. Кто-нибудь знает об этом? Во время тестирования можно ли сопоставлять номера фиктивных карт с учетной записью?
Я знаю, что это работает в купеческой песочнице (http://code.google.com/apis/checkout/developer/Google_Checkout_Basic_HTML_Sandbox.html), но я не могу найти эквивалент для тестирования биллинга Android.
Любая помощь/руководство/поддержка будут оценены здесь. Команда Китая сосредоточена на множестве модулей, связанных с опытом после покупки, и это будет серьезно скомпрометировано, если мы не сможем найти обходной путь.
Спасибо!
Ответы
Ответ 1
Чтобы закрыть эту тему, решение, которое я в конечном итоге завершил развертывание, было предоставлено TEK. Я заработал некоторые предоплаченные кредитные карты и привязал их к тестовым счетам. Это уменьшило риск и позволило нашим разработчикам использовать учетные записи.
Я должен указать, что разработчикам в Китае также пришлось подключиться к VPN из Китая, чтобы вывести диалог с биллинговым рынком.
Разработчики/пользователи iPhone вообще не имеют проблемы с VPN.
Спасибо,
Kaiesh
Ответ 2
Update:
Inappbilling library 1.0, выпущенный, чтобы сделать это проще.
Кумар Бибек уже ответил выше: Еще я даю объяснение:
Жестко задайте следующие параметры отладки в потоке закупок запуска, чтобы получить желаемый результат.
- android.test.purchased
- android.test.canceled
- android.test.refunded
-
android.test.item_unavailable *
mHelper.launchPurchaseFlow(Activity.this, "android.test.purchased", 1000, mPurchaseFinishedListener, полезная нагрузка);
Вышеприведенные экраны:
![enter image description here]()
При нажатии кнопки "Купить".
![enter image description here]()
Ответ 3
- android.test.purchased
- android.test.canceled
- android.test.refunded
- android.test.item_unavailable
Используйте эти идентификаторы продуктов, и вы должны получить приглашение поддельной карточки на экране покупки.
Справка:
https://developer.android.com/google/play/billing/billing_testing.html#billing-testing-static
Ответ 4
Как было сказано выше, я смог выполнить тестирование приложения, запустив этот мир кода в своей деятельности.
public class PurchaseTestingActivity extends AppCompatActivtiy implements BillingProcessor.IBillingHandler {
........
purchaseButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
boolean isAvailable = BillingProcessor.isIabServiceAvailable(PrivateAndPublicCardHoldScreen.this);
if (isAvailable) {
BillingProcessor bp = new BillingProcessor(this, "YOUR LICENSE KEY FOR THIS APPLICATION", this);
/// this is the actually product
// bp.purchase(PrivateAndPublicCardHoldScreen.this, "upgrade_to_premium");
//// for testing purposes
bp.purchase(PrivateAndPublicCardHoldScreen.this, "android.test.purchased");
}else{
Toast.makeText(PrivateAndPublicCardHoldScreen.this, "Your device is not supported, please contact us.", Toast.LENGTH_LONG).show();
}
}
});
..........
@Override
public void onProductPurchased(String productId, TransactionDetails details) {
/// handle your app after purchases done
}
@Override
public void onPurchaseHistoryRestored() {
}
@Override
public void onBillingError(int errorCode, Throwable error) {
}
@Override
public void onBillingInitialized() {
}
}
PS: Я использовал эту библиотеку для реализации приложений In App Легкая реализация Android In-app Billing Version 3