1***@163.com
1***@163.com
  • 发布:2024-12-28 15:11
  • 更新:2024-12-30 11:26
  • 阅读:169

【报Bug】iOS 购买订阅类内购收到的 transactionReceipt 全部是第一个购买项目的

分类:uni-app

产品分类: uniapp/App

PC开发环境操作系统: Mac

PC开发环境操作系统版本号: 15.2

HBuilderX类型: 正式

HBuilderX版本号: 4.43

手机系统: iOS

手机系统版本号: iOS 18

手机厂商: 苹果

手机机型: iPhone XR

页面类型: vue

vue版本: vue2

打包方式: 云端

项目创建方式: HBuilderX

操作步骤:

先购买一个非续期订阅内购, 然后再次购买

预期结果:

购买成功后返回的 transactionIdentifier 和根据返回的 transactionReceipt 中解析出来的值一致

实际结果:

第二次及以后购买的 订阅类 内购 返回的 transactionReceipt 解析出来的 transactionIdentifier 始终是第一次购买的 transactionIdentifier

transactionReceipt 不正确

bug描述:

uni.requestPayment({  
                provider: 'appleiap',  
                orderInfo: {  
                    productid,  
                    username,  
                    quantity: 1,  
                    manualFinishTransaction: true  
                },  
                success: (transaction) => {  
                    console.log(transaction.transactionIdentifier);  
                    console.log(transaction.transactionReceipt);  
                               }  
)

productid 传订阅类内购 productid
收到的 transactionReceipt 解析出来的 transactionId 和 返回的transactionIdentifier不是一个 (始终是第一个购买的订阅项目)

2024-12-28 15:11 负责人:无 分享
已邀请:
1***@163.com

1***@163.com (作者)

{  
    "payment": {  
        "username":"xxxx",  
        "productid": "xxxx",  
        "quantity": "1"  
    },  
    "transactionDate": "2024-12-28 14:38:13",  
    "transactionIdentifier": "2000000817695191",  
    "transactionReceipt": "MII...",  
    "transactionState": "1",  
    "errMsg": "requestPayment:ok"  
}

transactionReceipt 和实际 transactionIdentifier 不一致

解析方式参考苹果给出的sdk app-store-server-library-java

1***@163.com

1***@163.com (作者)

要回复问题请先登录注册