Android APP调起小程序

简介:

刚刚完成今天功能需求而记录的一个工作需求功能:APP调起指定小程序,读者比较喜欢有图看效果,再看内容.本文涉及点比较多,1,微信SDK集成 2,微信小程序开发

640?wx_fmt=gif&tp=webp&wxfrom=5&wx_lazy=

一,需求

1,早上刚做的新需求,从我们客户端跳转到我们产品旗下的指定小程序,即APP拉起指定小程序

bcdf67828f1261a6ff969368db8110b7be600855

备注:其实在4月份上面就提出这个的需求,那时博主翻了一遍微信开放平台,没找到,只能邮件官方,官方给的回复:暂未开放该类接口申请渠道,敬请关注开放平台官网公告信息,感谢支持!

二,知识点范围

默认读者手头有微信开放平台注册账号,移动开发应用,小程序  (有者可跳过第二点,直接进入主题)

读者如没接入过微信SDK(小程序等),可快速浏览微信开放文档
博主简单概述微信开放平台步骤如下:

注册微信开放平台账号:微信开放平台

登录后再管理中心-移动应用-创建移动应用(详细步骤读者看看文档应该比博主理解的更快的)

注意应用的AppId,签名与包名即可(下载微信的获取签名工具,这里博主踩过坑,扶我起来接着写)

三,代码(全)

CallProgramAcitivity页面博主从项目中剥离出来的,单独写了的页面,完全满足需求与功能点
代码如下:

public class CallProgramAcitivity extends AppCompatActivity{

    private Button mBt;

    @Override
    protected void onCreate(@Nullable Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_callprogram);

        mBt = findViewById(R.id.bt);
        mBt.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                String appId = AppConfig.WEIXIN_APP_ID; // 填应用AppId
                IWXAPI api = WXAPIFactory.createWXAPI(CallProgramAcitivity.this, appId);

                WXLaunchMiniProgram.Req req = new WXLaunchMiniProgram.Req();
                req.userName = AppConfig.WEIXIN_XIAOCHENGXU_ID; // 填小程序原始id
                req.path = "/pages/home/home?kx=kxx";                  //拉起小程序页面的可带参路径,不填默认拉起小程序首页
                req.miniprogramType = WXLaunchMiniProgram.Req.MINIPTOGRAM_TYPE_RELEASE;// 可选打开 开发版,体验版和正式版
                api.sendReq(req);
            }
        });
    }
}

页面对应布局activity_callprogram.xml

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
              android:orientation="vertical"
              android:layout_width="match_parent"
              android:layout_height="match_parent">


    <Button
        android:id="@+id/bt"
        android:text="APP调起指定小程序"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"/>


</RelativeLayout>

注意添加微信依赖库   在APP build.gradle
官方文档:微信官方文档

    //wechat 分享登录收藏支付等
    //    compile 'com.tencent.mm.opensdk:wechat-sdk-android-with-mta:+'
    compile 'com.tencent.mm.opensdk:wechat-sdk-android-without-mta:+'

注意  添加文件wxapi   下添加WXEntryActivity

    @Override
    public void onResp(BaseResp baseResp) {
        //2018/8/29 App调起小程序
        if(baseResp.getType() == ConstantsAPI.COMMAND_LAUNCH_WX_MINIPROGRAM) {
            WXLaunchMiniProgram.Resp launchMiniProResp = (WXLaunchMiniProgram.Resp) baseResp;
            String extraData =launchMiniProResp.extMsg; //对应小程序组件 <button open-type="launchApp"> 中的 app-parameter 属性
        }
}



原文发布时间为:2018-10-9

本文来自云栖社区合作伙伴“Android开发中文站”,了解相关信息可以关注“Android开发中文站”。


相关文章
|
15小时前
|
存储 移动开发 API
使用kotlin Jetpack Compose框架开发安卓app, webview中h5如何访问手机存储上传文件
在Kotlin和Jetpack Compose中,集成WebView以支持HTML5页面访问手机存储及上传音频文件涉及关键步骤:1) 添加`READ_EXTERNAL_STORAGE`和`WRITE_EXTERNAL_STORAGE`权限,考虑Android 11的分区存储;2) 配置WebView允许JavaScript和文件访问,启用`javaScriptEnabled`、`allowFileAccess`等设置;3) HTML5页面使用`&lt;input type=&quot;file&quot;&gt;`让用户选择文件,利用File API;
|
20小时前
|
Oracle Java 关系型数据库
Android studio 安装以及第一个程序
Android studio 安装以及第一个程序
|
6天前
|
小程序 前端开发
仿哔哩哔哩视频app小程序模板源码
仿哔哩哔哩视频app小程序模板源码
16 5
仿哔哩哔哩视频app小程序模板源码
|
6天前
|
小程序 前端开发
生活商城app微信小程序模板源码
生活商城app微信小程序模板源码
23 6
|
6天前
|
小程序 前端开发
汽车报价资讯app小程序模板源码
汽车报价资讯app小程序模板源码
14 4
|
7天前
|
小程序 定位技术
预约停车位app小程序模板
简单的手机预约停车位,在线停车位,预约停车管理小程序页面模板。包含:主页、预约停车、预约管理、地图导航等。
9 0
|
8天前
|
小程序 数据可视化 智能硬件
好看的设计------App小程序设计资料,AppUI设计相关资源,up主
好看的设计------App小程序设计资料,AppUI设计相关资源,up主
|
8天前
|
JavaScript Java 测试技术
基于springboot+vue.js+uniapp的高校后勤网上报修系统安卓app附带文章源码部署视频讲解等
基于springboot+vue.js+uniapp的高校后勤网上报修系统安卓app附带文章源码部署视频讲解等
8 0
|
9天前
|
Android开发
Android面试题经典之如何全局替换App的字体
在Android应用中替换字体有全局和局部方法。全局替换涉及在`Application`的`onCreate`中设置自定义字体,并创建新主题。局部替换则可在布局中通过`ResourcesCompat.getFont()`加载字体文件并应用于`TextView`。
20 2
|
10天前
|
机器学习/深度学习 人工智能 文字识别
文本,文字扫描01,OCR文本识别技术展示,一个安卓App,一个简单的设计,文字识别可以应用于人工智能,机器学习,车牌识别,身份证识别,银行卡识别,PaddleOCR+SpringBoot+Andr
文本,文字扫描01,OCR文本识别技术展示,一个安卓App,一个简单的设计,文字识别可以应用于人工智能,机器学习,车牌识别,身份证识别,银行卡识别,PaddleOCR+SpringBoot+Andr