android 分享小程序到微信,Android 使用友盟分享微信小程序到微信
Android使用友盟分享微信小程序到微信
在友盟官网上看到了相关的API,但是总是无法正常调用,下面记录下自己的处理流程:
引入依赖
implementation 'com.umeng.umsdk:common:2.2.5'
implementation 'com.umeng.umsdk:share-core:7.0.2'
implementation 'com.umeng.umsdk:share-board:7.0.2'
//为支持微信分享的模块
implementation 'com.umeng.umsdk:share-wx:7.0.2'
添加所需权限,创建微信所需的Activity
请在AndroidManifest中添加如下权限
并在AndroidManifest中添加如下代码(需要提前创建好Activity):
android:configchanges="keyboardHidden|orientation|screenSize"
android:exported="true" android:launchmode="singleTask"
android:name=".wxapi.WXEntryActivity"
android:taskaffinity="net.sourceforge.simcpux"
android:theme="@android:style/Theme.Translucent.NoTitleBar">
在你的项目包中创建wxapi包,并创建WXEntryActivity.class
public class WXEntryActivity extends WXCallbackActivity implements IWXAPIEventHandler {
private IWXAPI wxapi= BaseApplication.getInstance().getWxApi();
@Override
protected void onNewIntent(Intent intent) {
super.onNewIntent(intent);
setIntent(intent);
wxapi.handleIntent(intent, this);
}
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
wxapi.handleIntent(getIntent(), this);
}
@Override
public void onReq(BaseReq baseReq) {
LogUtils.d(baseReq:+baseReq.openId);
}
@Override
public void onResp(BaseResp baseResp) {
if (baseResp.getType()==ConstantsAPI.COMMAND_SENDMESSAGE_TO_WX){
finish();
}else if(baseResp.getType()==ConstantsAPI.COMMAND_SENDAUTH){
LogUtils.d(返回授权+baseResp.errCode);
switch (baseResp.errCode) {
case BaseResp.ErrCode.ERR_OK:
LogUtils.d(返回Code:+((SendAuth.Resp) baseResp).code);
EventBus.getDefault().post(new EventMessage(CodeManager.BIND_PHONE,((SendAuth.Resp) baseResp).code));
break;
case BaseResp.ErrCode.ERR_USER_CANCEL:
case BaseResp.ErrCode.ERR_AUTH_DENIED:
case BaseResp.ErrCode.ERR_UNSUPPORT:
break;
}
finish();
}
}
}
由于我在项目中集成了其他微信相关的SDK,读者只用关注这个 WXEntryActivity需要继承 WXCallbackActivity 以及实现 IWXAPIEventHandler 这两个类。
在自定义的 BaseApplication 的 onCreate 方法中需要注册友盟
...
@Override
public void onCreate() {
super.onCreate();
initUmeng();
}
private void initUmeng() {
// 在此处调用基础组件包提供的初始化函数 相应信息可在应用管理 -> 应用信息 中找到 http://message.umeng.com/list/apps
// 参数一:当前上下文context;
// 参数二:应用申请的Appkey;
// 参数三:渠道名称;
// 参数四:设备类型,必须参数,传参数为UMConfigure.DEVICE_TYPE_PHONE则表示手机;传参数为UMConfigure.DEVICE_TYPE_BOX则表示盒子;默认为手机;
// 参数五:Push推送业务的secret 填充Umeng Message Secret对应信息(需替换)
UMConfigure.init(this, 应用在友盟申请的Appkey, Umeng, UMConfigure.DEVICE_TYPE_PHONE, 没有使用推送服务,传空字符串就行);
//开通微信分享 第一个值为app在微信注册时的AppID 第二个值是你们软件注册时的AppSecret
PlatformConfig.setWeixin(wx*************, *******AppSecret****);
}
注意!这里一定要添加开通微信分享的代码,否则点击分享按钮将没有任何反应!!! PlatformConfig.setWeixin("wx*************", "*******AppSecret****");
分享小程序到微信
我将分享逻辑放在弹窗点击事件里
private void showShareDialog(DistributionMyGoodsBean.ListBean listBean) {
//分享
ShareDialog shareDialog = new ShareDialog(mContext, false);
shareDialog.setOnButtonListener(new ShareDialog.OnButtonListener() {
@Override
public void onWeChatClick() {
ToastUtils.showShort(微信分享);
//兼容低版本的网页链接
UMMin umMin = new UMMin(你想要兼容的网页链接,需要带上http://);
// 小程序消息封面图片
umMin.setThumb(new UMImage(mContext, listBean.getImage()));
// 小程序消息title
umMin.setTitle(listBean.getTitle());
//小程序页面路径
umMin.setPath(/pages/小程序对应的页面链接);
//小程序原始id,在微信平台查询
umMin.setUserName(gh_***********);
//设置小程序版本
//预览版
Config.setMiniPreView();
//测试版
Config.setMiniTest();
new ShareAction((Activity) mContext)
.setPlatform(SHARE_MEDIA.WEIXIN)
.withMedia(umMin)
.setCallback(shareListener)
.share();
}
@Override
public void onCircleFriendsClick() {
//小程序目前无法分享小程序到朋友圈
}
});
shareDialog.show();
}
注意:在分享小程序之前是必须要设置小程序的版本的,不然点开微信链接会报错
android 分享小程序到微信,Android 使用友盟分享微信小程序到微信相关推荐
- android友盟分享图标是英文,GitHub - GDMiao/UmengEnclosed: 友盟分享二次封装,现有文字分享、图片分享、网页分享等多种分享功能。...
对友盟分享(Umeng-Share)的功能封装 引言 本文档针对友盟分享(6.9.0)进行了功能封装,完成的对于 文字.图片.网页 分享功能封装,如有其它封装要求请根据本文档的封装思路和友盟分享 ap ...
- Android 友盟分享躺过的几个坑,大坑,坑爹啊
前言:公司上线了一个项目,做Android 客户端集成友盟分享,在做得过程中,遇到了下面3个问题,希望其他小伙伴注意. ( 友盟在线客服 QQ : 800083942 ) 错误1: 1.错误描述 我 ...
- 友盟分享小程序_iOS分享微信小程序
最近项目中遇到了APP分享微信小程序,记录下来问题,希望能帮助到需要的人 项目中的分享集成的是第三方的友盟,我看了下微信官方的sdk和友盟的小程序分享差不多,于是,就先罗列下友盟的分享 1.首先在微信 ...
- android友盟微信分享到朋友圈,2020年友盟分享到微信朋友圈
2020年友盟分享到微信朋友圈 1.我想要对你说出我要说的最深的话语,我不敢,我怕你取笑 7.真心总是无人喜,偏偏套路撩人心 10.钱可以帮穷人思维的人解决温饱,却可以帮富人思维的人制造财富 十七.考 ...
- Android 友盟分享 开发日记
公司项目涉及到分享的部分了,看友盟的平台相当的强大,觉得就用这个了,本以为也就一个上午的事情,哪知道在这个坑里面足足蹲了两天的时间,下面我将详细介绍下友盟分享的具体过程 tip:强烈建议配合开发文档一 ...
- Android 友盟分享,让你后顾无忧,麻麻再也不用担心我的学习。
咱们上回书说道:不用微信SDK也能分享. Android 微信分享,无需那么麻烦. 这次写友盟分享一个是避免微信新版本改动过大,可能导致无法做到Intent跳转界面的分享实现,还有就是不能局限于一个微 ...
- Android 友盟统计 友盟推送 友盟分享快速集成
一.友盟统计 1.首先需要到友盟官网 http://mobile.umeng.com/apps注册并且添加新应用,获得Appkey 2.导入SDK,新版SDK支持Android 6.0,http:// ...
- Canvas绘制Bitmap 友盟分享纯图片至微信好友
1.需求场景 Android开发中,有将带有二维码的纯图片分享给微信需求 ,左是分享一张内容固定图片,右是需求实现图片 目前,我们有一个需求是不同用户报名活动成功后分享出去的图片 ...
- 解决微信登录出现{errcode:40163,errmsg:code been used, hints: [ req_id: jEFDVY4ce-jz9NSA ]} (前提是使用友盟分享)
记录一下,记录一下. (真的想搞洗友盟) 前提是接入友盟分享SDK. 错误信息 {"errcode":40163,"errmsg":"code bee ...
- 友盟分享 QQ分享后,不显示左下角的小图标
友盟分享 QQ分享后,不显示左下角的小图标 根据友盟官方论坛说明 icon是16 * 16的 应用名称是在QQ开发者后台配置的 地址http://op.open.qq.com 以下是截图 1. 申请Q ...
最新文章
- 深入理解CSS盒模型
- 机器学习知识点(十九)矩阵特征值分解基础知识及Java实现
- python rq asyncio_Python 的异步 IO:Asyncio 简介
- 新一代网络模式Web 2.0火爆发展
- lunix下的redis数据库操作——list列表
- 云原生 CI/CD 框架 Tekton 初体验
- ActiveMQ入门教程(一) - JMS和ActiveMQ简介
- Kubernetes应用跨可用区实战
- 【提前批】22届的同学看过来,百度提前批开始啦~
- Android - 获取字符串长度的宽度
- informix mysql_Informix数据库查看数据库大小
- 油/水溶性CdS-ZnS/InP-ZnS/ZnSe-ZnS/CdSe/ZnS量子点的应用
- 计算机启动灯光提示,开机电脑指示灯红色常亮是怎么回事?
- 英文赞美句子,大家应该看看
- 区块链加/解密:对称加密
- 阿里云ecs实例怎么增添到IP白名单和安全组?
- MMKV-Android中的存储框架
- 最近很火的爱心红包教程~可以Biu~发射爱心的微信红包!太有创意啦~
- LeetCode 2021 力扣杯全国秋季编程大赛(第384名)
- html链接到另一个网址,怎么设置超级链接跳到另一个网站