@Override public void onBillingUnavailable() { listener.onBillingUnavailable(); }
@Override public void unbind() { binder.unbind(); listener.onBillingUnavailable(); }
@Override public void onServiceDisconnected(ComponentName name) { billing = null; binder.unbind(); listener.onBillingUnavailable(); } }
@Override public void bind() { final boolean bound = binder.hasBillingCapabilities(BILLING_INTENT) && binder.bind(BILLING_INTENT, connection, Context.BIND_AUTO_CREATE); // listener.onBillingAvailable() will be invoked later. if (!bound) { listener.onBillingUnavailable(); } }
@Override public void onServiceConnected(ComponentName name, IBinder iBinder) { final IInAppBillingService s = binder.service(iBinder); final Billing b = binder.billing(context.getPackageName(), s); if (b.isBillingSupported()) { billing = b; listener.onBillingAvailable(); } else { binder.unbind(); listener.onBillingUnavailable(); } }
private static void assertSimplePremiumer(@NonNull Binder binder, boolean isBound) { final PremiumerListener listener = mock(PremiumerListener.class); premiumer(listener, binder).bind(); if (isBound) { assertInvokedOnce(listener).onBillingAvailable(); assertInvokedNever(listener).onBillingUnavailable(); } else { assertInvokedNever(listener).onBillingAvailable(); assertInvokedOnce(listener).onBillingUnavailable(); } }
private void assertBound(boolean bound) { assertThat(binder.isBound()).isEqualTo(bound); if (bound) { assertInvokedOnce(listener).onBillingAvailable(); } else { assertInvokedOnce(listener).onBillingUnavailable(); } }
break; case ON_BILLING_UNAVAILABLE: listener.onBillingUnavailable(); break; case ON_SKU_DETAILS:
break; case ON_BILLING_UNAVAILABLE: assertInvokedOnce(listener).onBillingUnavailable(); break; case ON_SKU_DETAILS: