Тестирование Android Маркета в приложении с использованием фиктивных учетных данных кредитной карты - PullRequest
24 голосов
/ 20 июля 2011

Я настроил приложение 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.

Любая помощь / руководство / поддержка будет принята здесь. Китайская команда сосредоточена на многих модулях, связанных с опытом после покупки, и это будет серьезно скомпрометировано, если мы не сможем найти обходной путь.

Спасибо!

Ответы [ 4 ]

9 голосов
/ 15 октября 2013

Обновление:
Библиотека приложений Inappbilling 1.0 выпущена, чтобы упростить эту задачу.


Кумар Бибек уже ответил выше: все же я даю объяснение:

Жесткий код следующих параметров отладки в потоке покупок запуска для получения желаемого результата.

  • android.test.purchased
  • android.test.canceled
  • android.test.refunded
  • android.test.item_unavailable *

    mHelper.launchPurchaseFlow (Activity.this, "android.test.purchased", 1000, mPurchaseFinishedListener, payload);

Выше будут отображаться эти экраны:

enter image description here

При нажатии кнопки Купить.

enter image description here

5 голосов
/ 21 июля 2011
  • 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

2 голосов
/ 30 августа 2011

Чтобы закрыть эту ветку - решение, которое я в конечном итоге развернул, было предложено TEK.Я приобрел некоторые предоплаченные кредитные карты и прикрепил их к тестовым аккаунтам.Это снизило риск и позволило нашим разработчикам использовать учетные записи.

Я должен отметить, что разработчикам в Китае также пришлось подключиться к VPN из Китая, чтобы вывести диалог о выставлении счетов на рынке.

Разработчики / пользователи iPhone вообще не имеют проблемы с VPN.

Спасибо, Kaiesh

1 голос
/ 28 декабря 2016

Как ответили другие участники, я смог провести тестирование приложения, запустив этот код в своей деятельности

 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: я использовал эту библиотеку для реализации покупок в приложении Легкая реализация биллинга Android версии 3

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...