我在我的应用程序中提供了一个非消耗性产品列表,我想试用 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);
不确定我是否错过了一些重要步骤,或者是否有可能实现我想要的,但真的很感激一些有意义的输入 =)