1.在 build.gradle 文件中,添加如下依赖即可:
dependencies {
implementation 'com.tencent.mm.opensdk:wechat-sdk-android:+' //当前能下载到的最新版本6.8.18
}
2. AndroidManifest.xml中添加<queries> 标签,android11如果不申明,可能使用时报错
<queries> <package android:name="com.tencent.mm" /> </queries>
具体位置
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="...">
<queries>
<package android:name="com.tencent.mm" />
</queries>
.....
</manifest>
由于是新的标签,因此需要升级开发工具,否则会出现编译错误:
1)Android Studio 需要升级至 3.3 及以上,建议升级至 4.0 及以上版本;
2)Android SDK Build-Tools 需要升级至 30 及以上版本;
3)com.android.tools.build:gradle 需要升级至 3.6.0 版本,建议升级至最新的 3.6.4 版本。
3.调用接口:WXLaunchMiniProgram 移动应用跳转到指定小程序:
String appId = "wxd930ea5d5a258f4f"; // 填移动应用(App)的 AppId,非小程序的 AppID
IWXAPI api = WXAPIFactory.createWXAPI(context, appId);
WXLaunchMiniProgram.Req req = new WXLaunchMiniProgram.Req();
req.userName = "gh_d43f693ca31f"; // 填小程序原始id,非小程序的 AppID
//req.path = path; //拉起小程序页面的可带参路径,不填默认拉起小程序首页,对于小游戏,可以只传入 query 部分,来实现传参效果,如:传入 "?foo=bar"。
req.miniprogramType = WXLaunchMiniProgram.Req.MINIPTOGRAM_TYPE_RELEASE;// 可选打开 开发版,体验版和正式版
api.sendReq(req);
4.回调说明:
WXEntryActivity中
public void onResp(BaseResp resp) {
if (resp.getType() == ConstantsAPI.COMMAND_LAUNCH_WX_MINIPROGRAM) {
WXLaunchMiniProgram.Resp launchMiniProResp = (WXLaunchMiniProgram.Resp) resp;
String extraData =launchMiniProResp.extMsg; //对应小程序组件 <button open-type="launchApp"> 中的 app-parameter 属性
}
}
注意点:
1.当前项目的包名需与微信平台注册wxAppid的包名一致;
2.需打包已签名成功的apk验证,否则调用api时会提示校验失败。
以上完成,即可通过App跳转到指定的微信小程序了,如有帮助,记得点赞关注一波~谢谢~