### **SDK接入文档**
~~~
简介:本文主要介绍SDK接入文档
~~~
* * * * *
**一、SDK文件说明**
![](https://box.kancloud.cn/2016-06-21_57691e6409bf9.png)
SDK包含的三个文件夹
libs目录为接入sdk需要导入的jar包
paysdk.jar(基本)
libammsdk.jar(微信用)
alipaySdk-20160120.jar(支付宝用)
xutillibrary.jar(http与图片加载框架)
wxapi微信回掉专用目录。
res 目录 sdk资源文件目录
![](https://box.kancloud.cn/2016-06-21_57691e643081f.png)
Libs目录包含的文件
![](https://box.kancloud.cn/2016-06-21_57691e6441cf3.png)
Armeabi下文件
**二、 SDK使用步骤**
以下以Eclipse为开发IDE进行范例说明:
准备:需要安装jdk和eclipse下配置安卓sdk;
没有安装的需要网上查找相关教程。
1、导入项目
开发者将项需要集成sdk的项目导入eclipse。
2、添加SDK文件
将SDK文件添加到项目指定目录
SDK文件夹目录
(1.)添加libs和res目录
复制libs,res两个文件夹,粘贴到项目根目录覆盖。
覆盖之后,项目原有libs目录和res目录对应多了sdk的libs目录和res目录中的内容。
为了避免重复,sdk资源文件命名多以mch_前缀,并且命名偏长。
lib文件下的所有文件如下:
res下的所有文件如下:
如果sdk的libs目录和res目录下的所有文件都拷贝到项目的libs目录和res目录下对应的目录中;添加libs和res目录成功。
(2.)导入jar包
一般情况下,jar包拷贝到libs目录会自动导入jar包;
如果没有自动导入的话,请打开libs目录;
选中paysdk.jar,libammsdk.jar,alipaySdk-20160120.jar;
右击 -> build path -> add to build path;导入成功。
成功导入
(3.)添加wxapi目录
打开src目录下程序主包名所在目录;
拷贝wxapi文件夹到该目录;
打开WXPayEntryActivity.java,修正WXPayEntryActivity.java所在的包;
WXPayEntryActivity不报错;wxapi目录添加成功。
添加wxapi之后
3、修改清单文件
文件位置
(1.)添加权限
打开项目AndroidManifest.xml文件,在mainfest内application外添加以下代码:
`<uses-permission android:name="android.permission.READ_PHONE_STATE" /> <uses-permission
android:name="android.permission.WRITE_EXTERNAL_STORAGE" /> <uses-permission
android:name="android.permission.READ_EXTERNAL_STORAGE" /> <uses-permission
android:name="android.permission.INTERNET" /> <uses-permission
android:name="android.permission.ACCESS_NETWORK_STATE" /> <uses-permission
android:name="android.permission.ACCESS_WIFI_STATE" /> <uses-permission
android:name="android.permission.SYSTEM_ALERT_WINDOW" />`
(2.)添加activity声明:
复制以下代码到application节点里面。
~~~
<activity
android:name="com.mchsdk.paysdk.activity.ChoosePayActivity"
android:launchMode="singleTop"
android:screenOrientation="portrait" > </activity> <activity
android:name="com.mchsdk.paysdk.activity.PTBPayResultActivity"
android:launchMode="singleTop"
android:screenOrientation="portrait" > </activity> <activity
android:name=".wxapi.WXPayEntryActivity"
android:exported="true"
android:launchMode="singleTop"
android:screenOrientation="portrait"
android:theme="@android:style/Theme.Translucent" > </activity> <activity
android:name="com.mchsdk.paysdk.activity.MCPacksActivity"
android:launchMode="singleTop"
android:screenOrientation="portrait" > </activity> <activity
android:name="com.mchsdk.paysdk.activity.MCPersonalInfoActivity"
android:launchMode="singleTop"
android:screenOrientation="portrait" > </activity> <activity
android:name="com.mchsdk.paysdk.activity.MCChangePasswordActivity"
android:launchMode="singleTop"
android:screenOrientation="portrait" > </activity> <activity
android:name="com.mchsdk.paysdk.activity.MCMoneyRecordActivity"
android:launchMode="singleTop"
android:screenOrientation="portrait" > </activity> <activity
android:name="com.mchsdk.paysdk.activity.MCAddPtbMoneyActivity"
android:launchMode="singleTop"
android:screenOrientation="portrait" > </activity> <activity
android:name="com.mchsdk.paysdk.activity.MCBindPhoneActivity"
android:launchMode="singleTop"
android:screenOrientation="portrait" > </activity> <activity
android:name="com.alipay.sdk.app.H5PayActivity"
android:configChanges="orientation|keyboardHidden|navigation"
android:exported="false"
android:screenOrientation="behind"
android:windowSoftInputMode="adjustResize|stateHidden" > </activity> <activity
android:name="com.alipay.sdk.auth.AuthActivity"
android:configChanges="orientation|keyboardHidden|navigation"
android:exported="false"
android:screenOrientation="behind" > </activity>
~~~
<service android:name="com.mchsdk.paysdk.server.MCHFloatService" >
</service>
<activity
android:name="com.mchsdk.paysdk.activity.MCForgetPasswordActivity"
android:screenOrientation="portrait" >
</activity>
调用SDK接口
(1) 登录功能使用
~~~
import com.mchsdk.paysdk.MCApiFactory;
import com.mchsdk.paysdk.IGPUserObsv;
/**
~~~
* 登录回调接口
~~~
*/
private IGPUserObsv mUserObsv = new IGPUserObsv() {
@Override
public void onFinish(GPUserResult result) {
switch (result.getmErrCode()) {
case GPUserResult.USER_RESULT_LOGIN_FAIL:
writeLog("登录回调:登录失败");
break;
case GPUserResult.USER_RESULT_LOGIN_SUCC:
//登陆账户
String accountNo = result.getAccountNo();
writeLog("登录回调:登录成功");
break;
}
}
};
/**
~~~
* 接口调用
~~~
*/
MCApiFactory.getMCApi().startlogin(context,mUserObsv);
~~~
(2)支付掉的方法:
~~~
import com.mchsdk.paysdk.MCApiFactory;
import com.mchsdk.paysdk.entity.OrderInfo;
import com.mchsdk.paysdk.payCallback;
// 支付结果回调
public payCallback payCallback = new payCallback() {
public void callback(int result) {
if (result == 1) {
//支付成功
return;
}
}
};
~~~
// 支付接口调用
~~~
OrderInfo o = new OrderInfo();
//物品价格,单位分。
o.setAmount(1);
//游戏交易唯一ID,确定玩家信息,透传给游戏方
o.setExtendInfo("");
//物品描述
o.setProductDesc("");
//物品名称,微信支付时,此物品名称不能有中文
o.setProductName("12");
MCApiFactory.getMCApi().pay(MainActivity.this, getFragmentManager(), o, payCallback);
~~~
支付参目前默认用这个OrderInfo这个类传递
(3)悬浮窗
Sdk2.0.0添加悬浮窗系统,如个人中心等功能。
显示悬浮窗的Activity添加如下内容:
~~~
@Override
protected void onStart() {
MCApiFactory.getMCApi().floatingIsClose = false;
super.onStart();
}
@Override
protected void onResume() {
super.onResume();
MCApiFactory.getMCApi().startFloating(MainActivity.this);
}
@Override
protected void onPause() {
MCApiFactory.getMCApi().floatingIsClose = true;
super.onPause();
}
@Override
protected void onStop() {
super.onStop();
if (MCApiFactory.getMCApi().floatingIsClose) {
MCApiFactory.getMCApi().stopFloating(MainActivity.this);
}
}
~~~
三、测试
以上步骤检查无误后,可以clean项目之后调试进行初步测试。
- 1 溪谷软件介绍
- 1.1 溪谷软件是做什么的?
- 1.2 为什么选择溪谷软件?
- 1.3 如何获得技术支持
- 1.4 关注我们
- 2 新手入门
- 2.1 手游联运平台是什么?
- 3 安装程序
- 3.1 安装前工作
- 3.1.1 服务器配置
- 3.1.2 短信申请
- 3.1.3 微信(威富通)申请
- 3.1.4微信(官方)支付申请
- 3.1.5 支付宝(官方)申请
- 3.1.6 云存储申请
- 3.2 安装中工作
- 3.2.1 服务端搭建教程
- 3.2.2 SDK客户端配置流程
- 3.2.3 函数要求说明
- 3.3 安装后工作
- 3.3.1 接口配置说明教程
- 3.3.2 测试流程说明
- 3.3.3 后台支持浏览器
- 4 SDK对接说明
- 4.1 接入流程
- 4.2 SDK对接问题
- 4.3 逻辑流程
- 4.4 接入文档
- 4.5 原包上线
- 5 常见问题
- 管理后台常见问题
- 后台默认账号密码是什么?
- 安装好,运行程序报错?
- 上传文件时报错?
- 后台,用户都无法登录?
- 后台上传图片能删除吗?
- SDK对接常见问题
- SDK充值成功验证返回失败?
- SDK运行提示网络异常?
- SDK接口无法打开?
- PC官网常见问题
- 如何删除官网APP下载悬浮窗?
- PC官网充值的平台币在哪使用?
- 手机注册,验证码图片不显示?
- 手机注册收不到短信验证码?
- 推广后台常见问题
- APP助手常见问题
- APP助手如何搭建?
- 3.3.2 系统图片尺寸说明
- IOS SDK demo--安装使用教程
- 6 二次开发参考
- 模板说明
- 控制器
- 接口问题
- 数字字典