(安卓)hbuilder增加自定义插件,App跳转到微信小程序案例

参考官方自定义插件使用方法传送门

开发工具:Android Studio

在这里插入图片描述

1.下载微信SDK
传送门
在这里插入图片描述
2.将jar导入libs包
在这里插入图片描述
在这里插入图片描述
3.写Java,接收前端参数,实现微信小程序跳转
参考微信说明文档传送门
在这里插入图片描述

package io.dcloud.HBuilder.wxapi;

import io.dcloud.common.DHInterface.IWebview;
import io.dcloud.common.DHInterface.StandardFeature;
import io.dcloud.common.util.JSUtil;
import org.json.JSONArray;
import com.tencent.mm.opensdk.modelbiz.WXLaunchMiniProgram;
import com.tencent.mm.opensdk.openapi.IWXAPI;
import com.tencent.mm.opensdk.openapi.WXAPIFactory;

public class MiniProgram extends StandardFeature {
	@SuppressWarnings("deprecation")
	//js同步: boolean launchMini(appId, programId, path="", type="")
	public String launchMini(final IWebview pWebview, JSONArray array) {
		String appId = array.optString(0);
		String programId = array.optString(1);
		String path = array.optString(2);
		int type = array.optInt(3);
		IWXAPI api = WXAPIFactory.createWXAPI(pWebview.getActivity(), appId);
		WXLaunchMiniProgram.Req req = new WXLaunchMiniProgram.Req();
		req.userName = programId; // 填小程序原始id (gh_开头)
		req.path = path;            //拉起小程序页面的可带参路径,不填默认拉起小程序首页
		req.miniprogramType = type;// 可选打开 开发版,体验版和正式版 WXLaunchMiniProgram.Req.MINIPTOGRAM_TYPE_RELEASE
		return JSUtil.wrapJsVar("" + api.sendReq(req), false);
	}
}

5.增补自定义插件
在这里插入图片描述
io.dcloud.HBuilder.wxapi.MiniProgram
为Java类地址

前端:

<!DOCTYPE HTML>
<html>
	<head>
		<meta charset="utf-8" />
		<meta name="viewport" content="initial-scale=1.0, maximum-scale=1.0, user-scalable=no" />
		<meta name="HandheldFriendly" content="true" />
		<meta name="MobileOptimized" content="320" />
		<title>微信小程序跳转测试</title>
	</head>
	<body>
		<div class="button" onclick="openMiniProgram()">打开微信小程序</div>
        <script type="text/javascript">
            function openMiniProgram(){
                plus.bridge.execSync("mini-program", "launchMini", ["wxd930ea5d5a258f4f","gh_d43f693ca31f","","0"]);
            }
        </script>
    </body>
</html>

别忘咯app需要关联微信小程序哦!
在这里插入图片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章