forked from brightsoftdev/EBPurchase
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathAbout In-App Purchase
36 lines (32 loc) · 2.3 KB
/
About In-App Purchase
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
In-App Purchase
准备工作:
1.已有一个能够正常发布的app,其中对应的apple id必须开启in-app purchase的功能。
2.需要购买的功能,服务,道具等必须以in-app-purchase产品的形式上传给app store,当然一个应用可以有多个产品。
3.在选择产品类型的时候一定要根据自身的业务逻辑进行选择。
4.创建好应用对应的产品列表(产品只能在自己的应用中被购买),记录各产品的唯一标识:product id。
5.确保应用的bundle id与itunes中注册产品的那个一样。
购买模式的选择:
一.内置模式:1. 程序通过bundle存储的plist文件得到产品标识符的列表或直接在程序中给出产品标识符的列表。前一种方法较妥,因为添加新产品时可以不修改程序本身。
2. 程序向App Store发送请求,得到产品的信息,如描述和价格等。
3. App Store返回产品本地化信息(根据地区不同)。
4. 程序把返回的产品信息显示给用户(App的store界面)
5. 用户选择某个需购买的产品
6. 程序向App Store发送支付请求
7. App Store处理支付请求并返回交易完成信息。
8. App获取交易完成信息并交付产品内容给用户,即实现业务流程,如添加金币、道具、功能等。当然如果交易失败给出用户提示,或产品已购买也给出提示等。
二.服务器模式:
1. 程序向服务器发送请求,获得一份产品列表。
2. 服务器返回包含产品标识符的列表。
3. 程序向App Store发送请求,得到产品的信息。
4. App Store返回产品信息。
5. 程序把返回的产品信息显示给用户(App的store界面)
6. 用户选择某个产品
7. 程序向App Store发送支付请求
8. App Store处理支付请求并返回交易完成信息。
9. 程序从信息中获得数据,并发送至服务器。
10. 服务器纪录数据,并进行审查。
11. 服务器将数据发给App Store来验证该交易的有效性。
12. App Store对收到的数据进行解析,返回该数据和说明其是否有效的标识。
13. 服务器读取返回的数据,确定用户购买的内容。
14. 服务器将购买的内容传递给程序。
15. 程序完成交付用户购买内容的业务流程。