Commit 5777c2e13d366f663e7b8542122e4d22f38d50a9
1 parent
6ee82922bb
Exists in
master
refactor the name of doc
Showing 2 changed files with 118 additions and 118 deletions Inline Diff
IntegrationGuide.md
1 | ##InlandSDK integration guide | ||
2 | ###本sdk包含登录和支付功能,支付包含微信支付,支付宝支付和银联支付,因此接入前请申请好各支付渠道的参数 | ||
3 | 1.获取gump分配的appid和appkey | ||
4 | 2.导入InlandSDK库工程,并将自己的android工程设置引用此库工程 | ||
5 | 3.配置AndroidManifest.xml,分为3部分 | ||
6 | 1)确保有以下permission: | ||
7 | |||
8 | <uses-permission android:name="android.permission.INTERNET" /> | ||
9 | <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" /> | ||
10 | <uses-permission android:name="android.permission.ACCESS_WIFI_STATE" /> | ||
11 | <uses-permission android:name="android.permission.BLUETOOTH" /> | ||
12 | <uses-permission android:name="android.permission.GET_ACCOUNTS" /> | ||
13 | <uses-permission android:name="android.permission.READ_PHONE_STATE" /> | ||
14 | <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" /> | ||
15 | <uses-permission android:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS" /> | ||
16 | <uses-permission android:name="android.permission.WRITE_SETTINGS" /> | ||
17 | <!-- 以下是银联支付专用 --> | ||
18 | <uses-permission android:name="android.permission.CHANGE_NETWORK_STATE" /> | ||
19 | |||
20 | 2)需要在application内增加如下内容,**微信回调activity必须是 "项目包名.wxapi.WXPayEntryActivity",不可更改,且此activity需继承com.gump.inland.gamesdk.WXPayEntryBaseActivity**: | ||
21 | |||
22 | <activity | ||
23 | android:name="com.gump.inland.gamesdk.PassportBaseActivity" | ||
24 | android:theme="@style/Theme.TransparentWin" > | ||
25 | </activity> | ||
26 | <activity | ||
27 | android:name="com.gump.inland.gamesdk.PaymentActivity" | ||
28 | android:theme="@android:style/Theme.Light.NoTitleBar" > | ||
29 | </activity> | ||
30 | <!-- wx callback 需要根据规则配置,此处请勿直接拷贝--> | ||
31 | <activity | ||
32 | android:name="yourPackageName.wxapi.WXPayEntryActivity" | ||
33 | android:exported="true" > | ||
34 | </activity> | ||
35 | <!-- unionPay --> | ||
36 | <activity | ||
37 | android:name="com.unionpay.uppay.PayActivity" | ||
38 | android:configChanges="orientation|keyboardHidden" | ||
39 | android:excludeFromRecents="true" | ||
40 | android:label="@string/app_name" | ||
41 | android:screenOrientation="portrait" | ||
42 | android:windowSoftInputMode="adjustResize" /> | ||
43 | |||
44 | 3)为入口activity增加以下Intent-filter,**data scheme配置为微信appid**: | ||
45 | |||
46 | <intent-filter> | ||
47 | <action android:name="android.intent.action.VIEW" /> | ||
48 | |||
49 | <category android:name="android.intent.category.DEFAULT" /> | ||
50 | <!-- 此处为微信的appid--> | ||
51 | <data android:scheme="wxdb562d299ac311e0" /> | ||
52 | </intent-filter> | ||
53 | |||
54 | 4.将InlandSDK工程assets目录下的文件拷贝到游戏项目的assets目录下,此处为银联支付使用 | ||
55 | 5.代码接入: | ||
56 | 1)sdk初始化 | ||
57 | |||
58 | InlandSDK.initializeSDK(gumpAPPId, GumpAPPKey); | ||
59 | |||
60 | 2)注册登录状态回调: | ||
61 | |||
62 | Passport.getInstance().registerCallback(new InlandSDKCallback<GumpUser>() { | ||
63 | |||
64 | @Override | ||
65 | public void onSuccess(GumpUser result) { | ||
66 | Logger.d(TAG, "gumpUser:" + result.toString()); | ||
67 | btnLogin.setVisibility(View.GONE); | ||
68 | tvUserInfo.setText(formatUserInfo(result)); | ||
69 | btnPay.setVisibility(View.VISIBLE); | ||
70 | } | ||
71 | |||
72 | @Override | ||
73 | public void onError(InlandSDKException error) { | ||
74 | Logger.d(TAG, "login error:" + error.getMessage()); | ||
75 | } | ||
76 | |||
77 | @Override | ||
78 | public void onCancel() { | ||
79 | Logger.d(TAG, "login be canceled"); | ||
80 | } | ||
81 | }); | ||
82 | |||
83 | 3)执行登录操作 | ||
84 | |||
85 | Passport.getInstance().login(MainActivity.this); | ||
86 | |||
87 | 4)支付操作 | ||
88 | |||
89 | PayRequest payRequest = new PayRequest(); | ||
90 | payRequest.setPrice(1); | ||
91 | payRequest.setProduct("玄冥剑"); | ||
92 | payRequest.setExtOrder("p100201508311730"); | ||
93 | payRequest.setGumpUid(Passport.getInstance().getGumpUser().getUid()); | ||
94 | InlandSDK.purchase(MainActivity.this, payRequest, new PurchaseCallback() { | ||
95 | |||
96 | @Override | ||
97 | public void onPurchaseError(Exception e) { | ||
98 | Logger.w(TAG, "purchase error:" + e.getMessage()); | ||
99 | tvPurchaseResult.setText("purchase occured an error:" + e.getMessage()); | ||
100 | } | ||
101 | |||
102 | @Override | ||
103 | public void onPurchaseSuccess(String gumpTransId, String extOrder) { | ||
104 | Logger.d(TAG, "purchase success:" + gumpTransId + ",extorder:" + extOrder); | ||
105 | tvPurchaseResult.setText("purchase " + gumpTransId + " success,extorder:" + extOrder); | ||
106 | } | ||
107 | |||
108 | @Override | ||
109 | public void onPurchaseCanceled() { | ||
110 | Logger.d(TAG, "purchase be canceled"); | ||
111 | tvPurchaseResult.setText("purchase be canceled"); | ||
112 | } | ||
113 | }); | ||
114 | |||
115 | 5)配置onActivityResult拦截处理,请在activity的onActivityResult方法内增加InlandSDK的处理方法onActivityResult,当此方法返回true时,说明结果已处理,否则说明未对结果进行处理 | ||
116 | |||
117 | if (!InlandSDK.onActivityResult(requestCode, resultCode, data)) | ||
118 | super.onActivityResult(requestCode, resultCode, data); |
guide.md
1 | ##InlandSDK integration guide | File was deleted | |
2 | ###本sdk包含登录和支付功能,支付包含微信支付,支付宝支付和银联支付,因此接入前请申请好各支付渠道的参数 | ||
3 | 1.获取gump分配的appid和appkey | ||
4 | 2.导入InlandSDK库工程,并将自己的android工程设置引用此库工程 | ||
5 | 3.配置AndroidManifest.xml,分为3部分 | ||
6 | 1)确保有以下permission: | ||
7 | |||
8 | <uses-permission android:name="android.permission.INTERNET" /> | ||
9 | <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" /> | ||
10 | <uses-permission android:name="android.permission.ACCESS_WIFI_STATE" /> | ||
11 | <uses-permission android:name="android.permission.BLUETOOTH" /> | ||
12 | <uses-permission android:name="android.permission.GET_ACCOUNTS" /> | ||
13 | <uses-permission android:name="android.permission.READ_PHONE_STATE" /> | ||
14 | <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" /> | ||
15 | <uses-permission android:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS" /> | ||
16 | <uses-permission android:name="android.permission.WRITE_SETTINGS" /> | ||
17 | <!-- 以下是银联支付专用 --> | ||
18 | <uses-permission android:name="android.permission.CHANGE_NETWORK_STATE" /> | ||
19 | |||
20 | 2)需要在application内增加如下内容,**微信回调activity必须是 "项目包名.wxapi.WXPayEntryActivity",不可更改,且此activity需继承com.gump.inland.gamesdk.WXPayEntryBaseActivity**: | ||
21 | |||
22 | <activity | ||
23 | android:name="com.gump.inland.gamesdk.PassportBaseActivity" | ||
24 | android:theme="@style/Theme.TransparentWin" > | ||
25 | </activity> | ||
26 | <activity | ||
27 | android:name="com.gump.inland.gamesdk.PaymentActivity" | ||
28 | android:theme="@android:style/Theme.Light.NoTitleBar" > | ||
29 | </activity> | ||
30 | <!-- wx callback 需要根据规则配置,此处请勿直接拷贝--> | ||
31 | <activity | ||
32 | android:name="yourPackageName.wxapi.WXPayEntryActivity" | ||
33 | android:exported="true" > | ||
34 | </activity> | ||
35 | <!-- unionPay --> | ||
36 | <activity | ||
37 | android:name="com.unionpay.uppay.PayActivity" | ||
38 | android:configChanges="orientation|keyboardHidden" | ||
39 | android:excludeFromRecents="true" | ||
40 | android:label="@string/app_name" | ||
41 | android:screenOrientation="portrait" | ||
42 | android:windowSoftInputMode="adjustResize" /> | ||
43 | |||
44 | 3)为入口activity增加以下Intent-filter,**data scheme配置为微信appid**: | ||
45 | |||
46 | <intent-filter> | ||
47 | <action android:name="android.intent.action.VIEW" /> | ||
48 | |||
49 | <category android:name="android.intent.category.DEFAULT" /> | ||
50 | <!-- 此处为微信的appid--> | ||
51 | <data android:scheme="wxdb562d299ac311e0" /> | ||
52 | </intent-filter> | ||
53 | |||
54 | 4.将InlandSDK工程assets目录下的文件拷贝到游戏项目的assets目录下,此处为银联支付使用 | ||
55 | 5.代码接入: | ||
56 | 1)sdk初始化 | ||
57 | |||
58 | InlandSDK.initializeSDK(gumpAPPId, GumpAPPKey); | ||
59 | |||
60 | 2)注册登录状态回调: | ||
61 | |||
62 | Passport.getInstance().registerCallback(new InlandSDKCallback<GumpUser>() { | ||
63 | |||
64 | @Override | ||
65 | public void onSuccess(GumpUser result) { | ||
66 | Logger.d(TAG, "gumpUser:" + result.toString()); | ||
67 | btnLogin.setVisibility(View.GONE); | ||
68 | tvUserInfo.setText(formatUserInfo(result)); | ||
69 | btnPay.setVisibility(View.VISIBLE); | ||
70 | } | ||
71 | |||
72 | @Override | ||
73 | public void onError(InlandSDKException error) { | ||
74 | Logger.d(TAG, "login error:" + error.getMessage()); | ||
75 | } | ||
76 | |||
77 | @Override | ||
78 | public void onCancel() { | ||
79 | Logger.d(TAG, "login be canceled"); | ||
80 | } | ||
81 | }); | ||
82 | |||
83 | 3)执行登录操作 | ||
84 | |||
85 | Passport.getInstance().login(MainActivity.this); | ||
86 | |||
87 | 4)支付操作 | ||
88 | |||
89 | PayRequest payRequest = new PayRequest(); | ||
90 | payRequest.setPrice(1); | ||
91 | payRequest.setProduct("玄冥剑"); | ||
92 | payRequest.setExtOrder("p100201508311730"); | ||
93 | payRequest.setGumpUid(Passport.getInstance().getGumpUser().getUid()); | ||
94 | InlandSDK.purchase(MainActivity.this, payRequest, new PurchaseCallback() { | ||
95 | |||
96 | @Override | ||
97 | public void onPurchaseError(Exception e) { | ||
98 | Logger.w(TAG, "purchase error:" + e.getMessage()); | ||
99 | tvPurchaseResult.setText("purchase occured an error:" + e.getMessage()); | ||
100 | } | ||
101 | |||
102 | @Override | ||
103 | public void onPurchaseSuccess(String gumpTransId, String extOrder) { | ||
104 | Logger.d(TAG, "purchase success:" + gumpTransId + ",extorder:" + extOrder); | ||
105 | tvPurchaseResult.setText("purchase " + gumpTransId + " success,extorder:" + extOrder); | ||
106 | } | ||
107 | |||
108 | @Override | ||
109 | public void onPurchaseCanceled() { | ||
110 | Logger.d(TAG, "purchase be canceled"); | ||
111 | tvPurchaseResult.setText("purchase be canceled"); | ||
112 | } | ||
113 | }); | ||
114 | |||
115 | 5)配置onActivityResult拦截处理,请在activity的onActivityResult方法内增加InlandSDK的处理方法onActivityResult,当此方法返回true时,说明结果已处理,否则说明未对结果进行处理 | ||
116 | |||
117 | if (!InlandSDK.onActivityResult(requestCode, resultCode, data)) | ||
118 | super.onActivityResult(requestCode, resultCode, data); |