Android应用中加入微信分享简单方法
作者:junjie 发布时间:2022-06-05 00:17:27
标签:Android,应用,加入,微信,分享
一、申请你的AppID
http://open.weixin.qq.com/
友情提示:推荐使用eclipse打包软件最后一步的MD5值去申请AppID
二、官网下载libammsdk.jar包
http://open.weixin.qq.com/download/?lang=zh_CN
三、将libammsdk.jar复制到工程的libs目录
四、在需要分享的Activity编写代码
private IWXAPI wxApi;
//实例化
wxApi = WXAPIFactory.createWXAPI(this, Constants.WX_APP_ID);
wxApi.registerApp(Constants.WX_APP_ID);
/**
* 微信分享 (这里仅提供一个分享网页的示例,其它请参看官网示例代码)
* @param flag(0:分享到微信好友,1:分享到微信朋友圈)
*/
private void wechatShare(int flag){
WXWebpageObject webpage = new WXWebpageObject();
webpage.webpageUrl = "这里填写链接url";
WXMediaMessage msg = new WXMediaMessage(webpage);
msg.title = "这里填写标题";
msg.description = "这里填写内容";
//这里替换一张自己工程里的图片资源
Bitmap thumb = BitmapFactory.decodeResource(getResources(), R.drawable.share_logo);
msg.setThumbImage(thumb);
SendMessageToWX.Req req = new SendMessageToWX.Req();
req.transaction = String.valueOf(System.currentTimeMillis());
req.message = msg;
req.scene = flag==0?SendMessageToWX.Req.WXSceneSession:SendMessageToWX.Req.WXSceneTimeline;
wxApi.sendReq(req);
}
//在需要分享的地方添加代码:
wechatShare(0);//分享到微信好友
wechatShare(1);//分享到微信朋友圈
五、在你的包名相应目录下新建一个wxapi目录,并在该wxapi目录下新增一个WXEntryActivity类,该类继承自Activity,实现IWXAPIEventHandler接口
/** 微信客户端回调activity示例 */
public class WXEntryActivity extends Activity implements IWXAPIEventHandler {
// IWXAPI 是第三方app和微信通信的openapi接口
private IWXAPI api;
@Override
protected void onCreate(Bundle savedInstanceState) {
api = WXAPIFactory.createWXAPI(this, "这里替换第一步申请的APP_ID", false);
api.handleIntent(getIntent(), this);
super.onCreate(savedInstanceState);
}
@Override
public void onReq(BaseReq arg0) { }
@Override
public void onResp(BaseResp resp) {
LogManager.show(TAG, "resp.errCode:" + resp.errCode + ",resp.errStr:"
+ resp.errStr, 1);
switch (resp.errCode) {
case BaseResp.ErrCode.ERR_OK:
//分享成功
break;
case BaseResp.ErrCode.ERR_USER_CANCEL:
//分享取消
break;
case BaseResp.ErrCode.ERR_AUTH_DENIED:
//分享拒绝
break;
}
}
}
六、配置清单文件AndroidManifest.xml
<activity
android:name=".wxapi.WXEntryActivity"
android:exported="true"
android:screenOrientation="portrait"
android:theme="@android:style/Theme.Translucent.NoTitleBar" />
七、签名打包软件,然后可以测试了


猜你喜欢
- Java中数组初始化和OC其实是一样的,分为动态初始化和静态初始化,动态初始化:指定长度,由系统给出初始化值静态初始化:给出初始化值,由系统
- 如何只返回实体类中的部分字段在实体类上添加注解@JsonInclude(JsonInclude.Include.NON_EMPTY)表示实体
- 使用datatables自带后台查询 前台代码:<!DOCTYPE html><html><head>&
- 前言我通常是不太关心代码的具体实现的,因为我的开发语言很杂,倾向于一些最简单通用的方式去解决。今儿不小心在群里看到一位朋友发了下面的java
- classProgram{ staticvoid Main() {&
- 1.挂起函数挂起函数在Kotlin协程中是一个比较重要的知识点,协程的非阻塞式、Channel、Flow等API都对它有充分的理解才能在学习
- 我们都知道,Android上的界面展示都是通过Activity实现的,Activity实在是太常用了,我相信大家都已经非常熟悉了,这里就不再
- 前言这两天面试了一个物联网公司高级研发,面试题是下面这样子公司领导,部门主管,小组组长,组成员4级,假如有个 疫情预警,先通知组人员(对个人
- 本文介绍spring中自定义缓存resolver,通过自定义resolver,可以在spring的cache注解中增加附加处理。一、概述ca
- 本文大纲本文章将要介绍的内容有以下几点,读者朋友也可先自行思考一下相关问题:线程中断 interrupt 方法怎么理解,意思就是线程中断了吗
- 使用Java的NIO写的一个小的聊天系统,供大家参考,具体内容如下一、服务端/** * 群聊的服端 * * @author :breakpo
- 最近在做一个“温湿度控制”的项目,项目要求通过用户设定的温湿度数值和实时采集到的数值进行比对分析,因为数据的对比与分析是一个通过前端页面控制
- 静态变量静态变量位于栈上,它是一个全局变量,在编译期就已经生成。public class Cow{public static int cou
- 正在尝试分配更低的访问权限?在进行Java编程时会给我们报出如下提示怎么办?这里我们将给大家介绍详细的解决方法。首先,查看,控制台给出的提示
- 目前,比较常用的实现Java导入、导出Excel的技术有两种Jakarta POI和Java Excel直接上代码:一,POIPOI是apa
- 如何解决Mybatis--java.lang.IllegalArgumentException: Result Maps collection already contains value for X这两天因为项目需要整合spring、struts2、mybatis三大框架,但启动的时候总出现这个错误,困扰我好久,在网上找到的答案都不是我
- 如果要监听电池的状态改变,需要动态注册:android.intent.action.BATTERY_CHANGED,收到Action后可以根
- 本文实例为大家分享了Android使用SoundPool播放音效的具体代码,供大家参考,具体内容如下SoundPool(int maxStr
- collection标签的oftype属性能否为java.util.Map基于mybatis-3.4.5.jar版本,结论是可以的。<
- package com.jjinfo.common.util; import java.util.Arrays; import java.u