小米开发者平台SDK接入

1. 创建项目

小米开发者平台SDK接入_第1张图片

2.在Activity中添加两个按钮,“登录”和“充值”

小米开发者平台SDK接入_第2张图片

3.在AndroidManifest.xml中添加如下权限
    
     "android.permission.WRITE_EXTERNAL_STORAGE" />
     "android.permission.READ_PHONE_STATE" />
     "android.permission.ACCESS_NETWORK_STATE" />
     "android.permission.INTERNET"  />
     "android.permission.ACCESS_WIFI_STATE"  />
     "android.permission.MOUNT_UNMOUNT_FILESYSTEMS" />
     "android.permission.GET_TASKS"  />
     "android.permission.SYSTEM_ALERT_WINDOW" />

4.将小米SDK中的MiGameCenterSDKService.apk 放入项目的assets文件夹中,将SDK_TY_3.0.0.jar 放入项目的libs文件夹中
小米开发者平台SDK接入_第3张图片


5.在MainActivity.java的onCreate中对SDK进行初始化
//在类中添加如下变量
Button login;
Button pay;
public  static  MiAppInfo appInfo;
//在onCreate中初始化SDK
appInfo =  new  MiAppInfo();
appInfo.setAppId( 2698 );                                      //这是测试用Id
appInfo.setAppKey( "1a45711e-bef6-e2bb-70d9-5044de552c71" );   //这是测试用Key
appInfo.setAppType(MiGameType.online);
appInfo.setPayMode(PayMode.custom);
MiCommplatform.Init( this , appInfo);

6.如果使用测试Id和Key,需要更改包名,打开AndroidManifest.xml,更改如下
package = "com.example.migamecenrtersdkdemo.online"

7.更改包名后报错,重新引入R即可



8.添加登录按钮响应,调用miLogin,并在MainActivity中添加OnLoginProcessListener接口
//添加OnLoginProcessListener接口
public  class  MainActivity  extends  Activity  implements  OnLoginProcessListener
//login按钮响应
login = (Button)findViewById(R.id.button1);
login.setOnClickListener( new  OnClickListener()
{
     @Override
     public  void  onClick(View arg0) 
     {
         MiCommplatform.getInstance().miLogin(MainActivity. this , MainActivity. this );
     }
});

9.实现OnLoginProcessListener接口中的finishLoginProcess方法
@Override
public  void  finishLoginProcess( int  code, MiAccountInfo arg1) {
       switch ( code )
        
         case  MiErrorCode.MI_XIAOMI_GAMECENTER_SUCCESS: 
             // 登陆成功 
             break ;
         case  MiErrorCode.MI_XIAOMI_GAMECENTER_ERROR_LOGIN_FAIL: 
             // 登陆失败 
             break
         case  MiErrorCode.MI_XIAOMI_GAMECENTER_ERROR_CANCEL: 
             // 取消登录
             break
         case  MiErrorCode.MI_XIAOMI_GAMECENTER_ERROR_ACTION_EXECUTED: 
             //登录操作正在进行中 
             break
         default
             // 登录失败 
             break
        
}

10.运行程序,可以通过小米帐号登录了
小米开发者平台SDK接入_第4张图片


11.添加充值,首先初始化订单信息和用户信息
//订单信息
final  MiBuyInfoOnline online =  new  MiBuyInfoOnline();
online.setCpOrderId(UUID.randomUUID().toString());    //订单号唯一(不为空)
online.setCpUserInfo(  "cpUserInfo"  );                 //此参数在用户支付成功后会透传给CP的服务器 
online.setMiBi(  100  );                                //必须是大于1的整数, 10代表10米币,即10元人民币(不为空)
  
//用户信息※必填※
final  Bundle mBundle =  new  Bundle();
mBundle.putString( GameInfoField.GAME_USER_BALANCE,  "1000"  );       //用户余额
mBundle.putString( GameInfoField.GAME_USER_GAMER_VIP,  "vip0"  );     //vip 等级
mBundle.putString( GameInfoField.GAME_USER_LV,  "20"  );              //角色等级
mBundle.putString( GameInfoField.GAME_USER_PARTY_NAME,  "猎人"  );    //工会,帮派
mBundle.putString( GameInfoField.GAME_USER_ROLE_NAME,  "meteor"  );   //角色名称
mBundle.putString( GameInfoField.GAME_USER_ROLEID,  "123456"  );      //角色id
mBundle.putString( GameInfoField.GAME_USER_SERVER_NAME,  "峡谷"  );   //所在服务器

12.添加pay按钮响应
//pay按钮响应
pay = (Button)findViewById(R.id.button2);
pay.setOnClickListener( new  OnClickListener(){
     @Override
     public  void  onClick(View v) {
         MiCommplatform.getInstance().miUniPayOnline(MainActivity. this , online, mBundle, 
                 new  OnPayProcessListener(){
                     @Override
                     public  void  finishPayProcess( int  arg0) {
                         switch (arg0)
                         {
                         case  MiErrorCode.MI_XIAOMI_GAMECENTER_SUCCESS: 
                              // 购买成功
                              break ;
                         case  MiErrorCode.MI_XIAOMI_GAMECENTER_ERROR_PAY_CANCEL:
                              // 取消购买 
                              break ;
                         case  MiErrorCode.MI_XIAOMI_GAMECENTER_ERROR_PAY_FAILURE: 
                              // 购买失败
                              break ;
                         case  MiErrorCode.MI_XIAOMI_GAMECENTER_ERROR_ACTION_EXECUTED:
                              //操作正在进行中 
                              break ;
                         default  :
                              // 购买失败
                              break
                         }    
                     }});
     }});

13.运行程序,首先登录,然后点击充值,接入成功!


小米开发者平台SDK接入_第5张图片
小米开发者平台SDK接入_第6张图片

你可能感兴趣的:(Android)