CN115049385A - 一种通过线上服务端保证苹果内购充值到账的方法及系统 - Google Patents
一种通过线上服务端保证苹果内购充值到账的方法及系统 Download PDFInfo
- Publication number
- CN115049385A CN115049385A CN202210571129.2A CN202210571129A CN115049385A CN 115049385 A CN115049385 A CN 115049385A CN 202210571129 A CN202210571129 A CN 202210571129A CN 115049385 A CN115049385 A CN 115049385A
- Authority
- CN
- China
- Prior art keywords
- information
- order
- server
- apple
- idfv
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 37
- 235000021016 apples Nutrition 0.000 title claims abstract description 9
- 244000141359 Malus pumila Species 0.000 title 1
- 241000220225 Malus Species 0.000 claims abstract description 102
- 230000005540 biological transmission Effects 0.000 claims description 27
- 238000012795 verification Methods 0.000 claims description 5
- 238000012545 processing Methods 0.000 description 3
- 238000011161 development Methods 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 239000000047 product Substances 0.000 description 1
- 239000013589 supplement Substances 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/22—Payment schemes or models
- G06Q20/28—Pre-payment schemes, e.g. "pay before"
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/30—Payment architectures, schemes or protocols characterised by the use of specific devices or networks
- G06Q20/32—Payment architectures, schemes or protocols characterised by the use of specific devices or networks using wireless devices
- G06Q20/326—Payment applications installed on the mobile devices
- G06Q20/3267—In-app payments
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/38—Payment protocols; Details thereof
- G06Q20/382—Payment protocols; Details thereof insuring higher security of transaction
- G06Q20/3821—Electronic credentials
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/38—Payment protocols; Details thereof
- G06Q20/389—Keeping log of transactions for guaranteeing non-repudiation of a transaction
Landscapes
- Business, Economics & Management (AREA)
- Engineering & Computer Science (AREA)
- Accounting & Taxation (AREA)
- Strategic Management (AREA)
- Physics & Mathematics (AREA)
- General Business, Economics & Management (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Finance (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Meter Arrangements (AREA)
Abstract
本发明提供了一种通过线上服务端保证苹果内购充值到账的方法,所述方法通过苹果系统提供的identifierForVendor方法获取到苹果应用的应用开发商标识符IDFV;开发者可以通过将IDFV上报给服务端,由服务端控制是否下单以及后续的充值来实现到帐控制。这样让用户在充值之后,能够准确的收到充值内容,提高用户体验。
Description
技术领域
本发明涉及应用开发技术领域,特别是一种通过线上服务端保证苹果内购充值到账的方法及系统。
背景技术
在苹果应用程序中,虚拟游戏币、虚拟商品等内容都是需要通过指定的苹果的系统库StoreKit实现InAppstorePurchase(用于给用户提供应用内购买商品的一个服务)。苹果内购信息验证所使用的服务器与国内服务器的连接存在有一定不稳定的情况,所以会出现多笔未校验成功的充值信息同时存在的情况,那么在特定情况下,就会出现不同账号的虫子信息存在。而在系统库StoreKit与苹果返回的交易信息中,是没有提供与返回任何可以进行透传的信息,即该笔充值信息是无法与充值的账号所匹配上的,那么将会出现充值的时候将游戏币充值到不同的账号,这样极度影响用户体验。
发明内容
为克服上述问题,本发明的目的是提供一种通过线上服务端保证苹果内购充值到账的方法,使得用户在使用苹果内购充值的时候,可以准确的将充值的内容发送到想要的游戏帐号上。
本发明采用以下方案实现:一种通过线上服务端保证苹果内购充值到账的方法,所述方法包括如下步骤:
步骤S1、通过苹果系统提供的identifierForVendor方法获取到苹果应用的应用开发商标识符IDFV;
步骤S2、在请求服务端创建订单的时候,将充值的帐号信息与所述应用开发商标识符IDFV传递给服务端;
步骤S3、服务端在创建订单号的时候,对步骤S2中传递的信息进行判断订单信息并返回成功创建的订单;
步骤S4、通过调用苹果系统库StoreKit对苹果应用进行充值;
步骤S5、苹果手机客户端会异步接受到充值成功返回的凭证,上报该凭证给服务端;
步骤S6、服务端通过上传的凭证找苹果服务器解析后获取到ios设备唯一标识符UniqueVendorIdentifier与所述应用开发商标识符IDFV进行对比,找到对应的订单记录并通过订单中的帐号信息实现充值内容到帐。
进一步的,所述步骤S2中将充值的帐号信息与所述应用开发商标识符IDFV传递给服务端,在传递时采用param参数进行传递,param参数中需要增加IDFV的值、帐号信息与商品id信息。
进一步的,所述步骤S3进一步具体包括:
步骤S31、在接收到传递的信息之后,服务端先使用传递的IDFV从订单表中获取所有存在的订单信息,并从中筛选出所有未完成的订单;
步骤S32、如果未完成的订单中,存在与传递信息相同的订单时,则不创建订单号并同时将创建失败的信息返回给客户端;客户端接收到订单创建失败信息后,将通知玩家无法充值的情况;
步骤S33、如果创建订单成功后,将订单号返回给客户端,同时将订单状态设置为未完成。
进一步的,所述步骤S5进一步具体包括:步骤S51、如果接收到苹果系统库StoreKit返回充值失败的情况,需要上报此时的IDFV与商品id;
步骤S52、在接收到失败信息的时候,将此时的IDFV与商品id信息上报给服务端,服务端将会通过IDFV查询所有未完成的订单信息,并从中筛选出对应商品信息的订单,并将该订单信息状态设置为已完成;
步骤S53、客户端收到上传失败信息成功到服务端的消息时,告诉苹果系统此时也已完成交易事务,防止重复上报;
步骤S54、在接收到成功信息的时候,获取此时苹果系统返回的SKPaymentTransaction对象中的transactionData属性,并将transactionData内容传递给服务端;
步骤S55、在传递给服务端收到接收成功的返回消息之后,告诉苹果系统此时也已完成交易事务,防止重复上报。
进一步的,所述步骤S6进一步具体包括:在上报到服务端的内容中,将transactionData保存起来,以防止丢失,并使用获取到的transactionData内容传递给苹果系统对应凭证信息校验的地址,将获取到校验后的交易内容,将交易内容中的ios设备唯一标识符UniqueVendorIdentifier提取出来,通过提取的ios设备唯一标识符UniqueVendorIdentifier查询订单列表,并找到对应的下单信息,找到对应的订单记录并通过订单中的帐号信息实现充值内容到帐。
本发明还提供了一种通过线上服务端保证苹果内购充值到账的系统,所述系统包括:IDFV获取模块、传递信息模块、创建订单模块、充值模块、充值成功模块、以及解析匹配发货模块;
所述IDFV获取模块,通过苹果系统提供的identifierForVendor方法获取到苹果应用的应用开发商标识符IDFV;
所述传递信息模块,在请求服务端创建订单的时候,将充值的帐号信息与所述应用开发商标识符IDFV传递给服务端;
所述创建订单模块,通过服务端在创建订单号的时候,对传递的信息进行判断订单信息并返回成功创建的订单;
所述充值模块,通过调用苹果系统库StoreKit对苹果应用进行充值;
所述充值成功模块,通过苹果手机客户端异步接受到充值成功返回的凭证,上报该凭证给服务端;
所述解析匹配发货模块,服务端通过上传的凭证找苹果服务器解析后获取到ios设备唯一标识符UniqueVendorIdentifier与所述应用开发商标识符IDFV进行对比,找到对应的订单记录并通过订单中的帐号信息实现充值内容到帐。
进一步的,所述传递信息模块中将充值的帐号信息与所述应用开发商标识符IDFV传递给服务端,在传递时采用param参数进行传递,param参数中需要增加IDFV的值、帐号信息与商品id信息。
进一步的,所述创建订单模块的实现方式进一步具体包括:
步骤S31、在接收到传递的信息之后,服务端先使用传递的IDFV从订单表中获取所有存在的订单信息,并从中筛选出所有未完成的订单;
步骤S32、如果未完成的订单中,存在与传递信息相同的订单时,则不创建订单号并同时将创建失败的信息返回给客户端;客户端接收到订单创建失败信息后,将通知玩家无法充值的情况;
步骤S33、如果创建订单成功后,将订单号返回给客户端,同时将订单状态设置为未完成。
进一步的,所述充值成功模块的实现方式进一步具体包括:步骤S51、如果接收到苹果系统库StoreKit返回充值失败的情况,需要上报此时的IDFV与商品id;
步骤S52、在接收到失败信息的时候,将此时的IDFV与商品id信息上报给服务端,服务端将会通过IDFV查询所有未完成的订单信息,并从中筛选出对应商品信息的订单,并将该订单信息状态设置为已完成;
步骤S53、客户端收到上传失败信息成功到服务端的消息时,告诉苹果系统此时也已完成交易事务,防止重复上报;
步骤S54、在接收到成功信息的时候,获取此时苹果系统返回的SKPaymentTransaction对象中的transactionData属性,并将transactionData内容传递给服务端;
步骤S55、在传递给服务端收到接收成功的返回消息之后,告诉苹果系统此时也已完成交易事务,防止重复上报。
进一步的,所述解析匹配发货模块的实现方式进一步具体包括:在上报到服务端的内容中,将transactionData保存起来,以防止丢失,并使用获取到的transactionData内容传递给苹果系统对应凭证信息校验的地址,将获取到校验后的交易内容,将交易内容中的ios设备唯一标识符UniqueVendorIdentifier提取出来,通过提取的ios设备唯一标识符UniqueVendorIdentifier查询订单列表,并找到对应的下单信息,找到对应的订单记录并通过订单中的帐号信息实现充值内容到帐。
本发明的有益效果在于:在苹果内购项目开发过程中,经常会出现充值信息与下单帐号不匹配的情况,会导致用户充值的帐号收不到充值内容,而没进行成功充值的帐号反而收到了充值内容。本发明则让用户在充值之后,能够准确的收到充值内容,提高用户体验。
附图说明
图1为本发明方法的具体实施方式的流程框图;
图2为本发明系统的具体实施方式的系统框图。
具体实施方式
下面结合附图对本发明做进一步说明。
如图1所示,本发明的一种通过线上服务端保证苹果内购充值到账的方法,所述方法包括如下步骤:
步骤S1、通过苹果系统提供的identifierForVendor方法获取到苹果应用的应用开发商标识符IDFV;
步骤S2、在请求服务端创建订单的时候,将充值的帐号信息与所述应用开发商标识符IDFV传递给服务端;
所述步骤S2中将充值的帐号信息与所述应用开发商标识符IDFV传递给服务端,在传递时采用param参数进行传递,param参数中需要增加IDFV的值、帐号信息与商品id信息。
步骤S3、服务端在创建订单号的时候,对步骤S2中传递的信息进行判断订单信息并返回成功创建的订单;
进一步地,在说叙述的步骤S3阶段,需要进行以下的处理:
步骤S31、如果创建订单之前,发现该IDFV与商品id存在未完成的订单,则直接返回创建订单失败
步骤S32、在订单创建完成之后,将订单设置为未完成状态
步骤S4、通过调用苹果系统库StoreKit对苹果应用进行充值;
步骤S5、苹果手机客户端会异步接受到充值成功返回的凭证,上报该凭证给服务端;
进一步地,在所述步骤S5中,需要进行以下处理:
步骤S51、如果接收到StoreKit返回充值失败的情况,需要上报此时的IDFV与商品id。
步骤S52、在收到步骤S51的请求之后,将对应的订单信息置为已完成订单。
步骤S6、服务端通过上传的凭证找苹果服务器解析后获取到ios设备唯一标识符UniqueVendorIdentifier与所述应用开发商标识符IDFV进行对比,找到对应的订单记录并通过订单中的帐号信息实现充值内容到帐。
进一步地,在所述步骤S6中,对其中的几个特殊情况需要做额外处理,如在找苹果校验时发生超时,保存苹果的应用程序解析后的信息等。在完成到帐之后,将订单信息设置为已完成订单。
下面结合一具体实施例对本发明做进一步说明:
一种通过线上服务端保证苹果内购充值到账的方法,该方法为:
S1、通过苹果系统提供的identifierForVendor方法获取到苹果应用的IDFV
其中所需要用到的系统库有:
1.UIKit.framework
通过系统方法[[[UIDevicecurrentDevice]identifierForVendor]UUIDString]获取到NSString类型的IDFV值;
S2、在请求服务端创建订单的时候,将充值的帐号信息与S1获取到的IDFV传递给服务端;
其中所需要使用到的库有:
AFNetworking
通过[[AFHTTPSessionManager manager]post:url parameters:paramprogress:nilsuccess:^(NSURLSessionDataTask*_Nonnull task,id_NullableresponseObject){}failure:^(NSURLSessionDataTask*_Nullable task,NSError*_Nonnull error){}]实现网络调用。
在传递param参数时,param参数中需要增加IDFV的值、帐号的信息与商品id等必要信息;
S3、服务端在创建订单号的时候,提前针对S2中传递的信息进行判断并返回成功创建的订单;
其中,在接收到S2传递的信息之后,服务端先使用传递的IDFV从订单表中获取所有存在的订单信息,并从中筛选出所有未完成的订单;
其中,如果未完成的订单中,存在与传递信息相同的订单时,则不创建订单号并同时将创建失败的信息返回给客户端;
其中,苹果客户端接收到订单创建失败信息后,将通知玩家无法充值的情况;
另外,如果创建订单成功后,将订单号返回给客户端,同时将订单状态设置为未完成。
S4、通过调用苹果系统库StoreKit实现进行苹果充值;
其中,所需要用到的系统库有:
1.StoreKit.framework
通过[[SKPaymentQueue defaultQueue]addPayment:[SKPaymentpaymentWithProductIdentifier:@””]的方法实现调用苹果自身的充值功能,并通过[[SKPaymentQueuedefaultQueue]addTransactionObserver:self]的方法,实现返回事件的监听。
S5、在S4成功后,客户端会异步接受到充值成功返回的凭证,上报该凭证给服务端。
其中,在设置[[SKPaymentQueue defaultQueue]addTransactionObserver:self]的方法后,将会在paymentQueue:updatedTransactions方法中接收到成功或者失败的信息;
其中,在接收到失败信息的时候,将此时的IDFV与商品信息上报给服务端,服务端将会通过IDFV查询所有未完成的订单信息,并从中筛选出对应商品信息的订单,并将该订单信息状态设置为已完成;
其中,客户端收到上传失败信息成功到服务端的消息时,通过[[SKPaymentQueuedefaultQueue]finishTransaction:]的方法,告诉苹果此时也已完成交易事务,防止重复上报;
另外,在接收到成功信息的时候,获取此时苹果返回的SKPaymentTransaction对象中的transactionData属性,并将transactionData内容传递给服务端;
其中,在传递给服务端收到接收成功的返回消息之后,通过[[SKPaymentQueuedefaultQueue]finishTransaction:]的方法,告诉苹果此时也已完成交易事务,防止重复上报;
S6、服务端通过S5上传的凭证找苹果服务器解析后获取到的UniqueVendorIdentifier与S2中上报的IDFV进行对比;
在S5上报到服务端的内容中,现将transactionData保存起来,以防止丢失,并使用获取到的transactionData内容传递给苹果对应凭证信息校验的地址,将获取到校验后的交易内容,将交易内容中的UniqueVendorIdentifier提取出来,通过提取的UniqueVendorIdentifier查询订单列表,并找到对应的下单信息。
S7、找到S6对应的订单记录并通过订单中的帐号信息实现充值内容到帐。
其中,在订单信息中提取到帐号信息,并调用额外的发货逻辑实现到帐功能,并在到帐之后,将订单设置为已完成状态
进一步的,所述步骤S5进一步具体包括:步骤S51、如果接收到苹果系统库StoreKit返回充值失败的情况,需要上报此时的IDFV与商品id;
步骤S52、在接收到失败信息的时候,将此时的IDFV与商品id信息上报给服务端,服务端将会通过IDFV查询所有未完成的订单信息,并从中筛选出对应商品信息的订单,并将该订单信息状态设置为已完成;
步骤S53、客户端收到上传失败信息成功到服务端的消息时,告诉苹果系统此时也已完成交易事务,防止重复上报;
步骤S54、在接收到成功信息的时候,获取此时苹果系统返回的SKPaymentTransaction对象中的transactionData属性,并将transactionData内容传递给服务端;
步骤S55、在传递给服务端收到接收成功的返回消息之后,告诉苹果系统此时也已完成交易事务,防止重复上报。
进一步的,所述步骤S6进一步具体包括:在上报到服务端的内容中,将transactionData保存起来,以防止丢失,并使用获取到的transactionData内容传递给苹果系统对应凭证信息校验的地址,将获取到校验后的交易内容,将交易内容中的ios设备唯一标识符UniqueVendorIdentifier提取出来,通过提取的ios设备唯一标识符UniqueVendorIdentifier查询订单列表,并找到对应的下单信息,找到对应的订单记录并通过订单中的帐号信息实现充值内容到帐。
如图2所示,本发明还提供了一种通过线上服务端保证苹果内购充值到账的系统,所述系统包括:IDFV获取模块、传递信息模块、创建订单模块、充值模块、充值成功模块、以及解析匹配发货模块;
所述IDFV获取模块,通过苹果系统提供的identifierForVendor方法获取到苹果应用的应用开发商标识符IDFV;
所述传递信息模块,在请求服务端创建订单的时候,将充值的帐号信息与所述应用开发商标识符IDFV传递给服务端;
所述传递信息模块中将充值的帐号信息与所述应用开发商标识符IDFV传递给服务端,在传递时采用param参数进行传递,param参数中需要增加IDFV的值、帐号信息与商品id信息。
所述创建订单模块,通过服务端在创建订单号的时候,对传递的信息进行判断订单信息并返回成功创建的订单;
所述创建订单模块的实现方式进一步具体包括:
步骤S31、在接收到传递的信息之后,服务端先使用传递的IDFV从订单表中获取所有存在的订单信息,并从中筛选出所有未完成的订单;
步骤S32、如果未完成的订单中,存在与传递信息相同的订单时,则不创建订单号并同时将创建失败的信息返回给客户端;客户端接收到订单创建失败信息后,将通知玩家无法充值的情况;
步骤S33、如果创建订单成功后,将订单号返回给客户端,同时将订单状态设置为未完成。
所述充值模块,通过调用苹果系统库StoreKit对苹果应用进行充值;
所述充值成功模块,通过苹果手机客户端异步接受到充值成功返回的凭证,上报该凭证给服务端;
所述充值成功模块的实现方式进一步具体包括:步骤S51、如果接收到苹果系统库StoreKit返回充值失败的情况,需要上报此时的IDFV与商品id;
步骤S52、在接收到失败信息的时候,将此时的IDFV与商品id信息上报给服务端,服务端将会通过IDFV查询所有未完成的订单信息,并从中筛选出对应商品信息的订单,并将该订单信息状态设置为已完成;
步骤S53、客户端收到上传失败信息成功到服务端的消息时,告诉苹果系统此时也已完成交易事务,防止重复上报;
步骤S54、在接收到成功信息的时候,获取此时苹果系统返回的SKPaymentTransaction对象中的transactionData属性,并将transactionData内容传递给服务端;
步骤S55、在传递给服务端收到接收成功的返回消息之后,告诉苹果系统此时也已完成交易事务,防止重复上报。
所述解析匹配发货模块,服务端通过上传的凭证找苹果服务器解析后获取到ios设备唯一标识符UniqueVendorIdentifier与所述应用开发商标识符IDFV进行对比,找到对应的订单记录并通过订单中的帐号信息实现充值内容到帐。
所述解析匹配发货模块的实现方式进一步具体包括:在上报到服务端的内容中,将transactionData保存起来,以防止丢失,并使用获取到的transactionData内容传递给苹果系统对应凭证信息校验的地址,将获取到校验后的交易内容,将交易内容中的ios设备唯一标识符UniqueVendorIdentifier提取出来,通过提取的ios设备唯一标识符UniqueVendorIdentifier查询订单列表,并找到对应的下单信息,找到对应的订单记录并通过订单中的帐号信息实现充值内容到帐。
综上所述,本发明提供的一种通过线上服务端保证苹果内购充值到账的方法及系统,通过将IDFV上报给服务端,由服务端控制是否下单以及后续的充值来实现到帐控制。
以上所述仅为本发明的较佳实施例,凡依本发明申请专利范围所做的均等变化与修饰,皆应属本发明的涵盖范围。
Claims (10)
1.一种通过线上服务端保证苹果内购充值到账的方法,其特征在于:所述方法包括如下步骤:
步骤S1、通过苹果系统提供的identifierForVendor方法获取到苹果应用的应用开发商标识符IDFV;
步骤S2、在请求服务端创建订单的时候,将充值的帐号信息与所述应用开发商标识符IDFV传递给服务端;
步骤S3、服务端在创建订单号的时候,对步骤S2中传递的信息进行判断订单信息并返回成功创建的订单;
步骤S4、通过调用苹果系统库StoreKit对苹果应用进行充值;
步骤S5、苹果手机客户端会异步接受到充值成功返回的凭证,上报该凭证给服务端;
步骤S6、服务端通过上传的凭证找苹果服务器解析后获取到ios设备唯一标识符UniqueVendorIdentifier与所述应用开发商标识符IDFV进行对比,找到对应的订单记录并通过订单中的帐号信息实现充值内容到帐。
2.根据权利要求1所述的一种通过线上服务端保证苹果内购充值到账的方法,其特征在于:所述步骤S2中将充值的帐号信息与所述应用开发商标识符IDFV传递给服务端,在传递时采用param参数进行传递,param参数中需要增加IDFV的值、帐号信息与商品id信息。
3.根据权利要求1所述的一种通过线上服务端保证苹果内购充值到账的方法,其特征在于:所述步骤S3进一步具体包括:
步骤S31、在接收到传递的信息之后,服务端先使用传递的IDFV从订单表中获取所有存在的订单信息,并从中筛选出所有未完成的订单;
步骤S32、如果未完成的订单中,存在与传递信息相同的订单时,则不创建订单号并同时将创建失败的信息返回给客户端;客户端接收到订单创建失败信息后,将通知玩家无法充值的情况;
步骤S33、如果创建订单成功后,将订单号返回给客户端,同时将订单状态设置为未完成。
4.根据权利要求2所述的一种通过线上服务端保证苹果内购充值到账的方法,其特征在于:所述步骤S5进一步具体包括:步骤S51、如果接收到苹果系统库StoreKit返回充值失败的情况,需要上报此时的IDFV与商品id;
步骤S52、在接收到失败信息的时候,将此时的IDFV与商品id信息上报给服务端,服务端将会通过IDFV查询所有未完成的订单信息,并从中筛选出对应商品信息的订单,并将该订单信息状态设置为已完成;
步骤S53、客户端收到上传失败信息成功到服务端的消息时,告诉苹果系统此时也已完成交易事务,防止重复上报;
步骤S54、在接收到成功信息的时候,获取此时苹果系统返回的SKPaymentTransaction对象中的transactionData属性,并将transactionData内容传递给服务端;
步骤S55、在传递给服务端收到接收成功的返回消息之后,告诉苹果系统此时也已完成交易事务,防止重复上报。
5.根据权利要求1所述的一种通过线上服务端保证苹果内购充值到账的方法,其特征在于:所述步骤S6进一步具体包括:在上报到服务端的内容中,将transactionData保存起来,以防止丢失,并使用获取到的transactionData内容传递给苹果系统对应凭证信息校验的地址,将获取到校验后的交易内容,将交易内容中的ios设备唯一标识符UniqueVendorIdentifier提取出来,通过提取的ios设备唯一标识符UniqueVendorIdentifier查询订单列表,并找到对应的下单信息,找到对应的订单记录并通过订单中的帐号信息实现充值内容到帐。
6.一种通过线上服务端保证苹果内购充值到账的系统,其特征在于:所述系统包括:
IDFV获取模块、传递信息模块、创建订单模块、充值模块、充值成功模块、以及解析匹配发货模块;
所述IDFV获取模块,通过苹果系统提供的identifierForVendor方法获取到苹果应用的应用开发商标识符IDFV;
所述传递信息模块,在请求服务端创建订单的时候,将充值的帐号信息与所述应用开发商标识符IDFV传递给服务端;
所述创建订单模块,通过服务端在创建订单号的时候,对传递的信息进行判断订单信息并返回成功创建的订单;
所述充值模块,通过调用苹果系统库StoreKit对苹果应用进行充值;
所述充值成功模块,通过苹果手机客户端异步接受到充值成功返回的凭证,上报该凭证给服务端;
所述解析匹配发货模块,服务端通过上传的凭证找苹果服务器解析后获取到ios设备唯一标识符UniqueVendorIdentifier与所述应用开发商标识符IDFV进行对比,找到对应的订单记录并通过订单中的帐号信息实现充值内容到帐。
7.根据权利要求6所述的一种通过线上服务端保证苹果内购充值到账的方法,其特征在于:所述传递信息模块中将充值的帐号信息与所述应用开发商标识符IDFV传递给服务端,在传递时采用param参数进行传递,param参数中需要增加IDFV的值、帐号信息与商品id信息。
8.根据权利要求6所述的一种通过线上服务端保证苹果内购充值到账的方法,其特征在于:所述创建订单模块的实现方式进一步具体包括:
步骤S31、在接收到传递的信息之后,服务端先使用传递的IDFV从订单表中获取所有存在的订单信息,并从中筛选出所有未完成的订单;
步骤S32、如果未完成的订单中,存在与传递信息相同的订单时,则不创建订单号并同时将创建失败的信息返回给客户端;客户端接收到订单创建失败信息后,将通知玩家无法充值的情况;
步骤S33、如果创建订单成功后,将订单号返回给客户端,同时将订单状态设置为未完成。
9.根据权利要求7所述的一种通过线上服务端保证苹果内购充值到账的方法,其特征在于:所述充值成功模块的实现方式进一步具体包括:步骤S51、如果接收到苹果系统库StoreKit返回充值失败的情况,需要上报此时的IDFV与商品id;
步骤S52、在接收到失败信息的时候,将此时的IDFV与商品id信息上报给服务端,服务端将会通过IDFV查询所有未完成的订单信息,并从中筛选出对应商品信息的订单,并将该订单信息状态设置为已完成;
步骤S53、客户端收到上传失败信息成功到服务端的消息时,告诉苹果系统此时也已完成交易事务,防止重复上报;
步骤S54、在接收到成功信息的时候,获取此时苹果系统返回的SKPaymentTransaction对象中的transactionData属性,并将transactionData内容传递给服务端;
步骤S55、在传递给服务端收到接收成功的返回消息之后,告诉苹果系统此时也已完成交易事务,防止重复上报。
10.根据权利要求6所述的一种通过线上服务端保证苹果内购充值到账的方法,其特征在于:所述解析匹配发货模块的实现方式进一步具体包括:在上报到服务端的内容中,将transactionData保存起来,以防止丢失,并使用获取到的transactionData内容传递给苹果系统对应凭证信息校验的地址,将获取到校验后的交易内容,将交易内容中的ios设备唯一标识符UniqueVendorIdentifier提取出来,通过提取的ios设备唯一标识符UniqueVendorIdentifier查询订单列表,并找到对应的下单信息,找到对应的订单记录并通过订单中的帐号信息实现充值内容到帐。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210571129.2A CN115049385A (zh) | 2022-05-24 | 2022-05-24 | 一种通过线上服务端保证苹果内购充值到账的方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210571129.2A CN115049385A (zh) | 2022-05-24 | 2022-05-24 | 一种通过线上服务端保证苹果内购充值到账的方法及系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115049385A true CN115049385A (zh) | 2022-09-13 |
Family
ID=83159693
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210571129.2A Pending CN115049385A (zh) | 2022-05-24 | 2022-05-24 | 一种通过线上服务端保证苹果内购充值到账的方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115049385A (zh) |
Citations (24)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2006122364A1 (en) * | 2005-05-18 | 2006-11-23 | Mobileglobal Pty Ltd | Transaction device, system and method |
JP2010061544A (ja) * | 2008-09-05 | 2010-03-18 | Ntt Data Corp | ショッピングシステム及びコンピュータプログラム |
CN101720074A (zh) * | 2008-10-09 | 2010-06-02 | 华为技术有限公司 | 充值处理方法与系统、通信装置 |
WO2010130106A1 (zh) * | 2009-05-13 | 2010-11-18 | Hou Wanchun | 用户通过移动电话终端控制支付或转账的方法 |
US20110099082A1 (en) * | 1997-07-08 | 2011-04-28 | Walker Digital, Llc | Purchasing, redemption and settlement systems and methods wherein a buyer takes possession at a retailer of a product purchased using a communication network |
US20120036042A1 (en) * | 2010-08-05 | 2012-02-09 | Roam Data Inc | System and method for checkout and customer data capture in commerce applications |
US20130110678A1 (en) * | 2011-11-02 | 2013-05-02 | Apple Inc. | Purchasing a product in a store using a mobile device |
US20130297425A1 (en) * | 2012-05-04 | 2013-11-07 | Paytel, Inc. | Quick transaction completion using mobile device |
US8706557B1 (en) * | 2013-05-08 | 2014-04-22 | Visa International Service Association | Systems and methods to identify merchants |
CN106203881A (zh) * | 2016-07-20 | 2016-12-07 | 武汉斗鱼网络科技有限公司 | 一种应用内购买的订单处理系统及方法 |
CN106408389A (zh) * | 2016-09-23 | 2017-02-15 | 武汉斗鱼网络科技有限公司 | 一种ios应用内实现支付查询的方法及系统 |
WO2017100988A1 (zh) * | 2015-12-15 | 2017-06-22 | 深圳市银信网银科技有限公司 | 商品订单的生成方法、装置和系统 |
CN106934686A (zh) * | 2017-02-16 | 2017-07-07 | 上海咿呀信息科技有限公司 | 一种自助下单的方法及系统 |
CN107230062A (zh) * | 2017-07-27 | 2017-10-03 | 青岛松立软件信息技术股份有限公司 | 基于产品订购订单的支付方法 |
US20180047079A1 (en) * | 2014-02-14 | 2018-02-15 | Andrew A. Boemi | Mobile device payment system and method |
CN107730371A (zh) * | 2017-11-27 | 2018-02-23 | 北京小米移动软件有限公司 | 创建订单的方法、装置及存储介质 |
US20180232734A1 (en) * | 2017-02-10 | 2018-08-16 | Mastercard International Incorporated | Systems and Methods for Use in Initiating Payment Account Transactions |
CN108520404A (zh) * | 2018-03-10 | 2018-09-11 | 北京酷我科技有限公司 | 一种iOS支付中心策略 |
CN109447758A (zh) * | 2018-11-02 | 2019-03-08 | 北京汉迪移动互联网科技股份有限公司 | 应用内购买的方法和相关装置 |
CN111507724A (zh) * | 2019-01-31 | 2020-08-07 | 上海哔哩哔哩科技有限公司 | 一种支付验证方法及系统 |
CN111784345A (zh) * | 2020-07-21 | 2020-10-16 | 支付宝(杭州)信息技术有限公司 | 支付处理方法、装置、设备及系统 |
CN112200634A (zh) * | 2020-10-19 | 2021-01-08 | 平安国际智慧城市科技股份有限公司 | 订单处理方法、装置、电子设备及存储介质 |
CN112967051A (zh) * | 2021-03-16 | 2021-06-15 | 宝宝巴士股份有限公司 | 一种苹果内购支付的方法及装置 |
US20220394026A1 (en) * | 2020-02-26 | 2022-12-08 | Guangdong University Of Technology | Network identity protection method and device, and electronic equipment and storage medium |
-
2022
- 2022-05-24 CN CN202210571129.2A patent/CN115049385A/zh active Pending
Patent Citations (24)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20110099082A1 (en) * | 1997-07-08 | 2011-04-28 | Walker Digital, Llc | Purchasing, redemption and settlement systems and methods wherein a buyer takes possession at a retailer of a product purchased using a communication network |
WO2006122364A1 (en) * | 2005-05-18 | 2006-11-23 | Mobileglobal Pty Ltd | Transaction device, system and method |
JP2010061544A (ja) * | 2008-09-05 | 2010-03-18 | Ntt Data Corp | ショッピングシステム及びコンピュータプログラム |
CN101720074A (zh) * | 2008-10-09 | 2010-06-02 | 华为技术有限公司 | 充值处理方法与系统、通信装置 |
WO2010130106A1 (zh) * | 2009-05-13 | 2010-11-18 | Hou Wanchun | 用户通过移动电话终端控制支付或转账的方法 |
US20120036042A1 (en) * | 2010-08-05 | 2012-02-09 | Roam Data Inc | System and method for checkout and customer data capture in commerce applications |
US20130110678A1 (en) * | 2011-11-02 | 2013-05-02 | Apple Inc. | Purchasing a product in a store using a mobile device |
US20130297425A1 (en) * | 2012-05-04 | 2013-11-07 | Paytel, Inc. | Quick transaction completion using mobile device |
US8706557B1 (en) * | 2013-05-08 | 2014-04-22 | Visa International Service Association | Systems and methods to identify merchants |
US20180047079A1 (en) * | 2014-02-14 | 2018-02-15 | Andrew A. Boemi | Mobile device payment system and method |
WO2017100988A1 (zh) * | 2015-12-15 | 2017-06-22 | 深圳市银信网银科技有限公司 | 商品订单的生成方法、装置和系统 |
CN106203881A (zh) * | 2016-07-20 | 2016-12-07 | 武汉斗鱼网络科技有限公司 | 一种应用内购买的订单处理系统及方法 |
CN106408389A (zh) * | 2016-09-23 | 2017-02-15 | 武汉斗鱼网络科技有限公司 | 一种ios应用内实现支付查询的方法及系统 |
US20180232734A1 (en) * | 2017-02-10 | 2018-08-16 | Mastercard International Incorporated | Systems and Methods for Use in Initiating Payment Account Transactions |
CN106934686A (zh) * | 2017-02-16 | 2017-07-07 | 上海咿呀信息科技有限公司 | 一种自助下单的方法及系统 |
CN107230062A (zh) * | 2017-07-27 | 2017-10-03 | 青岛松立软件信息技术股份有限公司 | 基于产品订购订单的支付方法 |
CN107730371A (zh) * | 2017-11-27 | 2018-02-23 | 北京小米移动软件有限公司 | 创建订单的方法、装置及存储介质 |
CN108520404A (zh) * | 2018-03-10 | 2018-09-11 | 北京酷我科技有限公司 | 一种iOS支付中心策略 |
CN109447758A (zh) * | 2018-11-02 | 2019-03-08 | 北京汉迪移动互联网科技股份有限公司 | 应用内购买的方法和相关装置 |
CN111507724A (zh) * | 2019-01-31 | 2020-08-07 | 上海哔哩哔哩科技有限公司 | 一种支付验证方法及系统 |
US20220394026A1 (en) * | 2020-02-26 | 2022-12-08 | Guangdong University Of Technology | Network identity protection method and device, and electronic equipment and storage medium |
CN111784345A (zh) * | 2020-07-21 | 2020-10-16 | 支付宝(杭州)信息技术有限公司 | 支付处理方法、装置、设备及系统 |
CN112200634A (zh) * | 2020-10-19 | 2021-01-08 | 平安国际智慧城市科技股份有限公司 | 订单处理方法、装置、电子设备及存储介质 |
CN112967051A (zh) * | 2021-03-16 | 2021-06-15 | 宝宝巴士股份有限公司 | 一种苹果内购支付的方法及装置 |
Non-Patent Citations (2)
Title |
---|
温晓丽;顾裕波;谢振东;袁勇;宋秉麟;曹亚萍;: "城市公共交通电子支付标签化技术应用研究", 科学技术创新, no. 03, 25 January 2020 (2020-01-25) * |
高菲;李响;: "烟草行业信息系统测试回顾与分析", 信息安全与技术, no. 10, 10 December 2010 (2010-12-10) * |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109636504B (zh) | 信息处理方法及装置、电子设备及存储介质 | |
CN111818353B (zh) | 直播交互方法、终端及存储介质 | |
EP3577562A1 (en) | Simulator for system testing | |
CN105023134A (zh) | 寄存柜终端和自动式配送方法以及自助式配送系统 | |
CN106303125B (zh) | 自动充值系统、方法及装置 | |
CN107679844B (zh) | 资源转移的方法、装置和存储介质 | |
CN111080420A (zh) | 一种实现多供应商话费充值匹配的方法、系统及存储介质 | |
US9514449B2 (en) | Advertisement website connecting program, memory medium, information processing device, and server device | |
CN109614131A (zh) | 一种广播设备升级控制系统 | |
CN107330650B (zh) | 一种基于电商平台的商品提货单交易管理系统 | |
CN106780026A (zh) | 一种交易流程时间轴构建方法和系统 | |
US20230409453A1 (en) | Computer and conduit for system testing | |
CN112651795B (zh) | 自动售卖机的出货方法、自动售卖机和可读存储介质 | |
CN115049385A (zh) | 一种通过线上服务端保证苹果内购充值到账的方法及系统 | |
CN107800667A (zh) | 一种信息处理方法及接入处理装置 | |
CN101493922A (zh) | 使用移动通信终端提供移动库存控制服务的方法与系统 | |
US11379808B2 (en) | System and method for use of prepare-proceed workflow to orchestrate operations associated with a media content environment | |
CN102143468A (zh) | 计费、资费更新、提供服务的方法及系统 | |
CN115068956A (zh) | 游戏场景中的支付方法、装置和电子设备 | |
CN111538899B (zh) | 资源信息的推送方法及设备端、服务端 | |
CN115049390A (zh) | 一种提高门店收银可用性的方法 | |
CN106557943A (zh) | 移动试衣间服务系统 | |
CN112801728A (zh) | 农产品交易方法、装置、系统、设备与计算机可读介质 | |
CN111524011A (zh) | 平行链共识确认方法、设备和存储介质 | |
CN110070442A (zh) | 一种还款处理方法、服务器及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |