微信SDK开发学习
public class MainActivity extends Activity {
// 应用程序的id,就是在网上开发平台创建应用的appid
public static final String APP_ID = "wx00e5fafe00473016";
// 微信api的访问变量
private IWXAPI iwxapi;
private CheckBox mshareFriends;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
iwxapi = WXAPIFactory.createWXAPI(getApplicationContext(), APP_ID);
// 将appid注册到微信中
iwxapi.registerApp(APP_ID);
mshareFriends = (CheckBox) findViewById(R.id.cb_shareFriends);
}
// 启动微信
public void launch_weixin(View v) {
if (iwxapi.openWXApp()) {
Toast.makeText(getApplicationContext(), "打开微信成功", 3).show();
} else {
Toast.makeText(getApplicationContext(), "打开微信失败", 3).show();
}
}
// 为请求生成一个唯一的表示
private String buildTransaction(final String type) {
return (type == null) ? String.valueOf(System.currentTimeMillis())
: type + System.currentTimeMillis();
}
// 向好友或者朋友圈发送文本
public void send_txt(View v) {
// 创建edittext控件,用于输入文本
final EditText editText = new EditText(getApplicationContext());
editText.setLayoutParams(new LinearLayout.LayoutParams(
LinearLayout.LayoutParams.MATCH_PARENT,
LinearLayout.LayoutParams.WRAP_CONTENT));
editText.setText("用程序分享的默认文本");
AlertDialog.Builder builder = new AlertDialog.Builder(this).setIcon(
R.drawable.ic_launcher).setTitle("共享文本");
// 将edittext与对话框绑定
builder.setView(editText);
builder.setMessage("请输入要分享的文本");
builder.setPositiveButton("分享", new OnClickListener() {
@Override
public void onClick(DialogInterface arg0, int arg1) {
String text = editText.getText().toString();
if (text == null || text.length() == 0) {
return;
}
// 1 创建一个用于封装待分享文本的WXTextObject对象
WXTextObject textObject = new WXTextObject();
textObject.text = text;
// 2创建WXMediaMessage对象,该对象用于android客户端向微信发送数据
WXMediaMessage mediaMessage = new WXMediaMessage();
mediaMessage.mediaObject = textObject;
mediaMessage.description = text;
// 3创建一个用于请求微信客户端的SendMessageToWX.Req对象
SendMessageToWX.Req req = new SendMessageToWX.Req();
req.message = mediaMessage;
req.transaction = buildTransaction("text");
// 发送给朋友还是朋友圈
req.scene = mshareFriends.isChecked() ? req.WXSceneTimeline
: req.WXSceneSession;
// 4 发送给微信客户端
Toast.makeText(getApplicationContext(),
String.valueOf(iwxapi.sendReq(req)), Toast.LENGTH_SHORT)
.show();
}
}).setNegativeButton("取消", null);
AlertDialog dialog=builder.create();
dialog.show();
}
}
微信SDK开发学习的更多相关文章
- 继《关于讯飞语音SDK开发学习》之打包过程中遇到小问题
关于讯飞语音SDK开发学习 使用vs自带打包,具体怎么操作就不说了,网上关于这方面的资料挺多的.例如:winform 打包部署,VS2010程序打包操作(超详细的),关键是桌面上创建快捷方式中的&qu ...
- Kinect for Windows SDK开发学习相关资源
Kinect for Windows SDK(K4W)将Kinect的体感操作带到了平常的应用学习中,提供了一种不同于传统的鼠标,键盘及触摸的无接触的交互方式,在某种程度上实现了自然交互界面的理想,即 ...
- 微信SDK开发——接口接入
园子里面很多关于微信接口开发的文章,Github也一堆的开源代码. 官方文档地址:http://mp.weixin.qq.com/wiki/home/index.html 接下来主要以代码为主,接口说 ...
- C#.NET的微信功能开发学习
对于新手的我来说,我不是申请一个微信公众号认证后进行开发,我是申请一个订阅号,然后通过自己申请的订阅号的公众平台测试号来学习. 一,申请后成功后,打开开发者工具-公众平台测试号 二,进去公众平台测试号 ...
- tobii SDK开发学习
最近实验室用到tobii的眼动仪,从网上了解了下,tobii是瑞典的眼跟踪技术开发商,今年似乎有上市计划,不知道市值多少 买了仪器后试用了下,还算可以,将来配合人体设备开发,不过配套软件还需要花钱买. ...
- 关于讯飞语音SDK开发学习
前奏,浑浑噩噩已经工作一年多,这一年多收获还是挺多的.逛园子应该有两年多了,工作后基本上是天天都会来园子逛逛,园子 里还是有很多牛人写了一些不错的博客,帮我解决很多问题.但是一直没写过博客,归根到底一 ...
- 微信支付开发 c# SDK JSAPI支付开发的流程和微信大坑
微信支付开发流程 1. 开通微信支付功能 省略 2. 下载微信的C#版的微信SDK 下载连接:https://pay.weixin.qq.com/wiki/doc/api/jsapi.php?chap ...
- 微信小程序开发学习资料
作者:初雪链接:https://www.zhihu.com/question/50907897/answer/128494332来源:知乎著作权归作者所有.商业转载请联系作者获得授权,非商业转载请注明 ...
- 微信公众账号 Senparc.Weixin.MP SDK 开发教程 索引
Senparc.Weixin.MP SDK从一开始就坚持开源的状态,这个过程中得到了许多朋友的认可和支持. 目前SDK已经达到比较稳定的版本,这个过程中我觉得有必要整理一些思路和经验,和大家一起分享. ...
随机推荐
- tcpdump 时报ServFail 0/0/1 (97)
ServFail 结合业务应该是dns server fail 0/0/1 1/0/0表示机器号/槽位号/子接口号 ...
- jQuery特效
基础特效 方法 描述 hide() 立即隐藏jQuery对象内的所有元素 hide(time).hide(time, easing) 在指定的时间内以动画方式隐藏jQuery对象内的所有元素,并可选一 ...
- Web SQL数据库
Web SQL数据库:它是一个独立的规范,引入了一组使用SQL操作客户端数据库的API. openDatabase方法:这个方法使用现有的数据库或者新建的数据库创建一个数据库对象.如果数据库存在,op ...
- [Effective JavaScript 笔记] 第9条:始终声明局部变量
如果忘记将变量声明为局部变量,该变量将会隐式地转变为全局变量 function swap(a,i,j){ temp=a[i]; a[i]=a[j]; a[j]=temp; } 尽管该程序没有使用var ...
- Linux 查看系统用户的登录日志
查看用户登录系统的日志 有两类日志记录用户登录的行为,一是记录登录者的数据,一个是记录用户的登录时间 一,记录用户登录数据 /var/log/wtmp日志文件记录用户登录的数据 ...
- python 的编码问题
老是碰到这个问题,决定好好给整理一番思路. 翻阅资料和实践证明,以下论述为真理: 字符串在Python内部的表示是unicode编码,因此,在做编码转换时,通常需要以unicode作为中间编码,即先将 ...
- 通过JS语句判断WEB网站的访问端是电脑还是手机
通过JS语句判断WEB网站的访问端是电脑还是手机,以显示不同的页面! 目录腾讯网的适配代码如何判断访问网站的机器类型-如何判断ipadJS 判断浏览器客户端类型(ipad,iphone,android ...
- Spring源码学习(二)AOP
----ProxyFactoryBean这个类,这是AOP使用的入口---- AOP有些特有的概念,如:advisor.advice和pointcut等等,使用或配置起来有点绕,让人感觉有些距离感,其 ...
- php-fpm启动
2014年6月30日 11:52:17 遇到一个问题,安装了redis.so后无论怎么重启nginx 还是 php-fpm都无法加载redis 最后发现重启php-fpm的参数弄错了 要这样: ./p ...
- Java面向对象的继承
继承也是面向对象的又一重要特性,继承是类于类的一种关系,通俗来说狗属于动物类,那么狗这个类就继承了动物类 java中的继承是单继承的,一个类只能继承与一个父类 子类继承父类之后,子类就拥有了父类的所有 ...