android开机自动打开微信小程序,Android应用启动微信小程序

f81753f17008

项目中需要通过点击APP的一个按钮,直接打开微信指定的微信小程序

一、首先搭建微信开发环境,集成微信SDK

微信SDK下载链接

二、在点击事件中,添加代码

public void onClick(View v){

String appId = "填应用AppId";

IWXAPI api = WXAPIFactory.createWXAPI(context, appId);

WXLaunchMiniProgram.Req req = new WXLaunchMiniProgram.Req();

req.userName = "填小程序原始id";

//req.path = path; //拉起小程序页面的可带参路径,不填默认拉起小程序首页,对于小游戏,可以只传入 query 部分,来实现传参效果,如:传入 "?foo=bar"。

req.miniprogramType = WXLaunchMiniProgram.Req.MINIPTOGRAM_TYPE_RELEASE;// 可选打开 开发版,体验版和正式版

api.sendReq(req);

}

三、在项目 包名/wxapi 下新建一个WXEntryActivity名字不能变,并在AndroidManifest.xml中添加如下代码

android:name=".WXEntryActivity"

android:configChanges="keyboardHidden|orientation|screenSize"

android:exported="true"

android:taskAffinity="包名"

android:theme="@android:style/Theme.Translucent.NoTitleBar" />

四、在WXEntryActivity的onResp(BaseResp resp)回调方法中判断结果

@Override

public void onResp(BaseResp resp) {

if (resp.getType() == ConstantsAPI.COMMAND_LAUNCH_WX_MINIPROGRAM) {

WXLaunchMiniProgram.Resp launchMiniProResp = (WXLaunchMiniProgram.Resp) resp;

String extraData = launchMiniProResp.extMsg; //对应小程序组件 中的 app-parameter 属性

//LogUtils.i("extraData:"+extraData);

//LogUtils.i("errStr:"+launchMiniProResp.errStr);

//LogUtils.i("errCode:"+launchMiniProResp.errCode);

}

}

重点问题