我正在设置应用程序订阅 (Java),我知道在验证所有内容后,我必须确认购买并授予权利。在我的应用程序中,一旦订阅得到验证,屏幕应该会变为确认屏幕。我正在使用导航组件来处理应用程序中的所有导航。但是我不确定在确认后如何引用当前视图:
private void handlePurchases(List<Purchase> purchases) {
for (Purchase purchase: purchases) {
// If item is purchased
if (purchase.getPurchaseState() == Purchase.PurchaseState.PURCHASED) {
// verify
// Acknowledge
if (!purchase.isAcknowledged()) {
AcknowledgePurchaseParams acknowledgePurchaseParams = AcknowledgePurchaseParams.newBuilder()
.setPurchaseToken(purchase.getPurchaseToken())
.build();
billingClient.acknowledgePurchase(acknowledgePurchaseParams, ackPurchase);
}
}
}
}
AcknowledgePurchaseResponseListener ackPurchase = new AcknowledgePurchaseResponseListener() {
@Override
public void onAcknowledgePurchaseResponse(@NonNull BillingResult billingResult) {
if (billingResult.getResponseCode() == BillingClient.BillingResponseCode.OK) {
// update shared preferences
Navigation.findNavController(view).navigate(R.id.action_subscribeFragment_to_confirmationFragment);
}
}
};
如您所见,为了获得 navController,我需要访问视图,但如何在 AcknowledgePurchaseResponseListener 中做到这一点?