细节1

想要接入微信,如接入分享微信功能、跳转小程序功能等;首先需要到微信开放平台申请AppId,如何申请在开放平台上的流程很清楚,就不赘述了

但有个细节就是应用包名签名,这个应用包名签名记得是以app有正式签名文件条件下获取的,先打包出release apk,再用签名生成工具输入包名即可获得应用签名

细节2

很多时候为了快速方便的接入,可能微信那么多的文档,比如我这次接入的是拉起微信小程序,但微信开放平台给的文档很简单:

好吧,为了快速接入,我也不管那么多,前面的接入指南都没看就直接写上代码了,出现了以下报错:

E/MicroMsg.SDK.WXApiImplV10: sendReq failed for wechat app signature check failed

最后通过反复折腾,原来是还没有register微信SDK,并且Manifest.xml文件也没配好

  1. AndroidManifest.xml配置
<manifest ....>....<!--    跟微信相关的必须添加--><queries><package android:name="com.tencent.mm" /></queries>.....
</manifest>
  1. 注册SDK
    在app入口界面(比如MainActivity)注册SDK
fun regToWx(context: Context) {// 通过 WXAPIFactory 工厂,获取 IWXAPI 的实例val api = WXAPIFactory.createWXAPI(context, APP_ID)// 将应用的 appId 注册到微信api.registerApp(APP_ID)//建议动态监听微信启动广播进行注册到微信context.registerReceiver(object : BroadcastReceiver() {override fun onReceive(context: Context, intent: Intent) {// 将该 app 注册到微信api?.registerApp(APP_ID)}}, IntentFilter(ConstantsAPI.ACTION_REFRESH_WXAPP))
}

细节3

在包名下创建:WXEntryActivity,继承Activity,实现IWXAPIEventHandler接口
其中的细节
比如app的应用包名为:com.company.test,那么WXEntryActivity则必须建在com.company.test.wxapi的包中,因为有时候遇到了组件化开发/插件化开发时候,会习惯性以模块作为包名,从而导致了包名错误,无法正常使用微信AP
最后再在AndroidManifest.xml中配置:

<activityandroid:name="com.company.test.wxapi.WXEntryActivity"android:exported="true"android:taskAffinity="com.company.test"android:launchMode="singleTop" />

android接入微信API相关细节相关推荐

  1. signaturenonce php,php微信公众平台开发--接入微信API

    1. 接入微信API public function index(){ //获得参数 signature nonce token timestamp echostr //微信服务器发出参数都是以get ...

  2. 关于android接入微信分享(以及app签名 the apk for your currently selected variant(app-release)

    接入微信分享 在微信开放平台按需接入即可. 查看app签名 微信开放平台里资源下载,下载查看app签名工具:Gen_Signature_Android2.apk the apk for your cu ...

  3. Android 接入微信扫码库,实现堪比微信的扫码效果

    对于Android的扫码库,我们平时都会使用ZXing或者ZBar来实现. 但是实际情况是,对于一些环境恶劣的情况下,比如 眩光.昏暗.有污渍等情况下,很难被识别. 即使是在普通情况下,扫码的识别速度 ...

  4. Android接入微信SDK之一:发起微信授权登录

    1.重要的事情首先说! 包名.应用签名.app id 三者都必须和在腾讯上申请的一致!!!否则将不能成功. 包名:就是在腾讯上申请的包名 应用签名:使用微信官网提供的<签名生成工具>(这个 ...

  5. Android接入微信分享视频和图片

    从14年10未毕业开始工作到现在,忍不住想写点东西,就从最近的用的东西写起吧. 首先是分享-微信分享 微信分享 首先要去微信的开发者平台去申请账号,这边注意申请的时候要填写签名的那个Md5值,然后获取 ...

  6. Android接入微信登陆

    首先添加工具包,名字为libammsdk.jar(微信有相应的包下载) 然后在src.main.java.com.****新建一个wxapi的包并存放这两个activity(名字不能更改) WXEnt ...

  7. android接入高德API,生成正式包后,导航页面闪退

    添加如下混淆,可防止,出现问题,记录一下,希望对别人有帮助. #3D 地图 V5.0.0之前: -keep class com.amap.api.maps.{;} -keep class com.au ...

  8. 无线基站定位服务器,android 基站定位api

    android 基站定位api 内容精选 换一换 网络告警需要有确切的发生时间.所在网元.告警名称等信息,且告警能挂载于拓扑数据的网元之上.具体告警数据格式参见API文档.设备之间需要有确定的拓扑关系 ...

  9. Android 接入支付宝支付实现

    接上篇android接入微信支付文章,这篇我们带你来接入支付宝支付服务 简介 首先要说明的是个人感觉接入支付宝比微信简单多了,很轻松的,所以同学们不要紧张~ 当然还是老规矩啦,上来肯定的贴上官网地址, ...

最新文章

  1. 【教程】简易CDQ分治教程学习笔记
  2. IOS审核的各个状态的时间
  3. java 一般方法_一般覆盖Java中的方法
  4. css两栏式布局示例
  5. 功能Java示例 第2部分–讲故事
  6. 时域补零对于DFT谱的影响
  7. Android PopupWindow的使用和分析
  8. ROS学习笔记10(创建一个ROS消息和服务)
  9. Adapter 如果客户需要使用某个类的服务,而这项服务是这个类用一个不同的接口提供的,那么,可以使用适配器模式为客户提供一个期望的接口...
  10. Vue组件相关的知识
  11. 【数学建模】Lingo软件介绍+常用函数总结+样例
  12. 远程移动设备平台STF搭建指南
  13. linux加载打印机驱动程序,Linux下安装HP打印机的驱动程序
  14. 快速消费品行业的营销费用的管理分类
  15. 2020保研夏令营之路——武大网安、北理计算机、中科院信工所六室
  16. 数学笔记——导数5(指数函数和对数函数的导数)
  17. 水文勘测工比赛计算机基本应用,水文勘测工技能大赛参赛感言
  18. python编程火车票_100行Python代码自动抢火车票!
  19. Linux是什么?它是哪个国家开发的
  20. 教你一步解决添加和修改环境变量问题

热门文章

  1. ORA-01017:用户名/口令无效,登录被拒绝(ORA-01017: invalid username/password; logon denied)
  2. 创客教育和Mixly的初步探索
  3. Thinkphp里面设置url伪静态
  4. 计算机械效率的公式怎么读,机械效率
  5. 淘淘商城第67讲——全局异常处理
  6. C语言和设计模式大全(附代码示例)
  7. 【STM32F407VET6开发】第一章 初识Keil及Keil 5安装教程
  8. 分类聚类区别及聚类概述
  9. android 高德地图卡顿,【报Bug】快速反复缩放地图会卡死(plus.maps)
  10. linux中perl的环境变量,在Perl脚本中使用Bash环境变量?