如何使用 RevenueCat 将应用内购买与用户 ID/帐户联系起来?

问题描述

我在我的应用中提供了一份非消耗品列表,我想试用 RevenueCat,希望它能将用户的 ID/帐户(应用内)与他们的应用内购买联系起来。所以我想要的是让用户通过 Firebase 身份验证登录我的应用,并将此帐户与他们的应用内购买绑定在一起,而不会产生别名。因此,如果我以 fb_user_A 身份登录我的应用并进行购买,然后注销并随后以 fb_user_B 身份登录,我不希望 fb_user_B 与 fb_user_A 成为别名,这意味着我不希望 fb_user_A 的购买在 fb_user_B 登录时出现。但是,当我尝试使用 purchaserInfo.getAllPurchasedSkus() 查询购买时,这两个应用内帐户似乎都是别名,因为两个帐户都显示相同的购买(即使我只从一个帐户购买)。我已经实现了以下代码以供参考:

    FirebaseAuth.AuthStateListener listener = firebaseAuth -> {
        FirebaseUser user = firebaseAuth.getCurrentUser();
        if (user != null) {
            Purchases.getSharedInstance().identify(fbUserId,new ReceivePurchaserInfoListener() {
                @Override
                public void onReceived(@NonNull PurchaserInfo purchaserInfo) {
                    System.out.println("User purchaseinfo:"+purchaserInfo.getAllPurchasedSkus());
                }

                @Override
                public void onError(@NonNull PurchasesError error) {
                    System.out.println("Purchase error:"+error.getMessage());
                }
            });
        } 
    };

    FirebaseAuth.getInstance().addAuthStateListener(listener);

不确定我是否遗漏了一些重要步骤,或者是否有可能实现我想要的但真的很感激一些有意义的输入 =)

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)