博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Android支付接入(三):电信爱游戏支付
阅读量:7071 次
发布时间:2019-06-28

本文共 5765 字,大约阅读时间需要 19 分钟。

原地址:http://blog.csdn.net/simdanfeg/article/details/9011977

注意事项:
1.电信要求必须先启动电信的闪屏界面
2.非网络游戏不允许有Interent权限
3.电信没有提供测试计费点(小于一元的),文中index1是一个真实计费点(2元),支付会进行真实计费
 
[html] 
 
AndroidManifest.xml:      

 

 

MainActivity.java

 

[java] 
 
  1. package com.example.blogfordx;    import android.net.Uri;  import android.os.Bundle;  import android.app.Activity;  import android.content.Intent;  import android.view.View;    public class MainActivity extends Activity {        @Override      protected void onCreate(Bundle savedInstanceState) {          super.onCreate(savedInstanceState);          setContentView(R.layout.activity_main);          findViewById(R.id.button1).setOnClickListener(                  new View.OnClickListener() {                      @Override                      public void onClick(View v) {                          // TODO Auto-generated method stub                          Fiap fiap = new Fiap(MainActivity.this);                          fiap.android_Pay(1);                      }                  });          findViewById(R.id.button2).setOnClickListener(                  new View.OnClickListener() {                      @Override                      public void onClick(View v) {                          // TODO Auto-generated method stub                          // 更多游戏接口                          Uri uri = Uri                                  .parse("http://wapgame.189.cn/c/index.html");                          Intent in = new Intent(Intent.ACTION_VIEW, uri);                          MainActivity.this.startActivity(in);                      }                  });      }    }  EgameSplash.java: [java] view plaincopy package com.example.blogfordx;    import android.app.Activity;  import android.content.Intent;  import android.os.Bundle;    public class EgameSplash extends Activity {      private int count = 0;        @Override      protected void onCreate(Bundle savedInstanceState) {          // TODO Auto-generated method stub          super.onCreate(savedInstanceState);          setContentView(R.layout.splash);          new Thread(new Runnable() {              @Override              public void run() {                  // TODO Auto-generated method stub                  while (count <= 2) {                      count++;                      try {                          Thread.sleep(1000);                      } catch (InterruptedException e) {                          // TODO Auto-generated catch block                          e.printStackTrace();                      }                  }                  Intent intent = new Intent(EgameSplash.this, MainActivity.class);                  startActivity(intent);                  EgameSplash.this.finish();              }          }).start();      }  }  Fiap.java [java] view plaincopy package com.example.blogfordx;    import cn.game189.sms.SMS;  import cn.game189.sms.SMSListener;  import android.app.Activity;  import android.os.Handler;  import android.util.Log;  import android.widget.Toast;    public class Fiap {      private Activity mActivity;      // 是否允许重复计费      private boolean isRepeat;      // 计费点短代码      private String charge_Point;      // 道具名称      private String itemID = "";      // 支付金额      private int coin = 0;        public Fiap(Activity activity) {          mActivity = activity;      }        // index是三种计费点对应的标识      // 此处只有购买200兑换币是可支付的,正式使用时请填写自己的申请的计费点短代码      public void android_Pay(int index) {          switch (index) {            case 0:              // 激活游戏              isRepeat = false;              // 此处计费点填写电信平台申请的计费点的后三位作为计费点索引              charge_Point = "000";              itemID = "激活游戏";              coin = 4;              break;          case 1:              isRepeat = true;              charge_Point = "0211C001271102517996991102517990080115127000000000000000000000000000";              itemID = "购买200兑换币";              coin = 2;              break;          case 2:              isRepeat = true;              charge_Point = "002";              itemID = "购买400兑换币";              coin = 3;              break;            default:              break;          }          fiapHandler.sendEmptyMessage(1);      }        Handler fiapHandler = new Handler() {          public void handleMessage(android.os.Message msg) {              if (msg.what == 1) {                  if (SMS.checkFee(itemID, mActivity, new SMSListener() {                        public void smsOK(String feeName) {                          // 短代发送成功,此处填写支付成功后的逻辑                          Log.i("SMSListener", "模式" + feeName + "已计费完成,关卡已打开.");                          Toast.makeText(mActivity, "支付成功", Toast.LENGTH_LONG)                                  .show();                      }                        public void smsFail(String feeName, int errorCode) {                          // 短代发送失败,不给道具或不放行关卡                          Log.e("SMSListener", "计费失败!模式:[" + feeName + "] 错误码:"                                  + errorCode);                      }                        public void smsCancel(String feeName, int errorCode) {                          Log.e("SMSListener", "用户点击取消!计费点:" + feeName + " 错误码:"                                  + errorCode);                      }                  }, charge_Point, itemID + ",点击确定将会发送一条" + coin + "元短信,不含信息费.",                          "短信已成功发送", isRepeat)) {                      // 已计过费                    }              }          };      };    }

     

 

电信的计费sdk接入完成

你可能感兴趣的文章
Puppet apply命令参数介绍(五)
查看>>
linux系统命令su和su - 区别验证
查看>>
VMware vCloud Director Administration Guide
查看>>
pptpd *** 老是连接不上内网排错
查看>>
图文并茂超详细搭建redis缓存服务器(nginx+tomcat+redis+mysql实现session会话共享)
查看>>
云计算大数据(Hadoop)开发工程师项目实战视频教程(九部分)
查看>>
Verizon:2012年数据破坏调查报告
查看>>
《iPhone与iPad开发实战—iOS经典应用剖析》连载四
查看>>
手动完成输入校验
查看>>
直击Dell World 2014: 戴尔现在挺好的
查看>>
⑨③-不能浪费拥有的年轻资本
查看>>
自定义编译安装python简单笔记。
查看>>
书摘—极致产品
查看>>
5.10-17项目经理考试圆梦提分现场面授行动
查看>>
IT项目中存储设备的选型
查看>>
esxi报错There is no more space for virtual disk--逻辑卷缩减!
查看>>
NFS4中小企业存储实战
查看>>
Windows Server 2012 R2工作文件夹⑨:自动发现设置
查看>>
ActiveReports 6.0 - 高效开发UI
查看>>
VMM2012应用指南之4-向VMM中添加Hyper-V主机与应用服务器
查看>>