Android APP调起小程序流程源码+实例解析

2023-05-16

Android APP调起小程序流程源码+实例解析

刚刚完成的一个工作需求功能:APP调起指定小程序,读者比较喜欢有图看效果,再看内容.本文涉及点比较多,1,微信SDK集成 2,微信小程序开发 ,博主后面有充裕的时间会详细对这些知识点做详细文章(目前不足之处,读者多多包含) ,继上篇Android APP间授权登录(无需SDK类似微信登录)(源码+解析),

文章目录

  • Android APP调起小程序流程源码+实例解析
    • 一,需求
    • 二,知识点范围
    • 三,调起小程序核心代码(全)
    • 四结尾

Android 调起指定小程序

一,需求


1,早上刚做的新需求,从我们客户端跳转到我们产品旗下的指定小程序,即APP拉起指定小程序
这里写图片描述
备注:其实在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 属性
        }
}

四结尾

   欢迎各位读者斧正,粉,点赞,这是博主新开专门记录工作中的功能点,如有不当之处,希望读者不吝赐教
,衷心感谢看到结尾的道友,谢谢!
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Android APP调起小程序流程源码+实例解析 的相关文章

  • 消息队列的重要技术讲解

    一 什么是消息队列 xff1f 消息队列不知道大家看到这个词的时候 xff0c 会不会觉得它是一个比较高端的技术 xff0c 反正我是觉得它好像是挺牛逼的 消息队列 xff0c 一般我们会简称它为MQ Message Queue xff0c
  • [android nfc] onNewIntent 中 无法获取 tag, 或者 intent.extras 为空, 或者 intent.action 为空

    在做android nfc 场景的时候 大方向上有2种 foreground 调度系统enableReaderMode api foreground 调度系统 发现android12下无法获取tag信息 经过排查 原因如下 在 androi
  • linux系统常用命令列举

    Linux系统入门 Linux特点 开源多用户 xff1a 系统可以在保证各个用户之间的安全 xff0c 隐私多任务 xff1a 良好的界面 xff1a Linux同时支持两种环境 xff0c 字符界面 图形化界面支持多种平台 xff1a
  • linux 常用命令

    查看所有分区 du sh window 想查看进程的端口号有这样几个方法 1 使用netstat ano查看所有连接和监听端口 xff0c 以及每个连接相关的进程ID 2 使用进程管理器查看进程PID 默认情况下可能不显示PID xff0c
  • android 11 Setting panel的一次源码分析

    Android 11 Setting panel的一次源码分析 Android 11关于Wi Fi的开关等设置 xff0c 不允许用户直接调用 xff0c 需要从panel设置 启动代码如下 xff1a val panelIntent 61
  • nginx与ftp服务器出现403错误

    默认的yum安装 ftp的路径是在 etc vsftpd xff0c 这时候通过上面创建的 用户从 FTP登陆后 进入 home目录就可以查看到ftpuser文件夹 上图这里有个小细节就是在Linux中 xff0c 创建一个文件时 xff0
  • 高通Android平台硬件调试之Camera篇

    之前一段时间有幸在高通android平台上调试2款camera sensor xff0c 一款是OV的5M YUV sensor xff0c 支持jpeg out xff0c 同时也支持AF xff0c 调试比较比较简单 xff0c 因为别
  • 7 计算机组成原理第五章 中央处理器 数据通路

    文章目录 1 数据通路的功能和基本结构单总线1 1 数据通路的功能1 2 数据通路 基本结构单总线 2 数据通路 CPU内部单总线方式2 1 三种结构之间数据传送方式2 2 CPU内部单总线方式 例题 3 专用通路3 1 专用数据通路方式3
  • Python 记录日志简单好用,功能齐全(Loguru)

    Loguru 一个能彻底解放你的日志记录器 它即插即用 xff0c 具备多种方式滚动日志 自动压缩日志文件 定时删除等功能 除此之外 xff0c 多线程安全 高亮日志 日志告警等功能也不在话下 下面就给大家介绍一下这个强大工具的基本使用方法
  • linux设备驱动——andriod平台wlan驱动II——给军爷的答案

    转自 http wsqhs spaces live com c11 BlogPart BlogPart 61 blogview amp c 61 BlogPart amp partqs 61 amonth 3d4 26ayear 3d200
  • Linux 下 如何打 PATCH 及制作 DIFF

    Linux下patch的制作和应用 因为在u boot移植过程中 xff0c 有几处通用文件要修改 xff0c 如果每次都要手动修改就太麻烦了 制作补丁可以解决这个问题 学习资料的收集比较简单 xff0c 方法一类似于这种初级问题网上资料非
  • LINUX GIT 使用

    git show HEAD git show HEAD git show HEAD git show HEAD git diff 486ec madplay player c git diff 4863 856f git diff 4863
  • LINUX 输入子系统分析

    1 输入子系统架构Overview 输入子系统 xff08 Input Subsystem xff09 的架构如下图所示 输入子系统由 输入子系统核心层 xff08 Input Core xff09 xff0c 驱动层和事件处理层 xff0
  • Linux Kernel and Android 休眠与唤醒

    Table of Contents 简介 国际化 版本信息 对于休眠 suspend 的简单介绍 Linux Suspend 的流程 相关的文件 准备 冻结进程 让外设进入休眠 Resume Android 休眠 suspend 涉及到的文
  • 浅析linux下键盘设备工作和注册流程

    span style color 000000 a href http qgjie456 blog 163 com blog m 61 0 span style font size 6 http qgjie456 blog 163 com
  • linux内核信号处理

    信号是操作系统中一种很重要的通信方式 近几个版本中 信号处理这部份很少有大的变动 我们从用户空间的信号应用来分析Linux内核的信号实现方式 一 信号有关的数据结构 在task struct中有关的信号结构 struct task stru
  • win7和ubuntu双系统,直接进入windows启动项选择菜单,而不进入grub的解决方案。

    一 Ubuntu 采用 grub 引导 xff0c 首先要将 grub 引导去掉 xff0c 重建 windows mbr 引导 xff0c 下载 MbrFix exe 并将它放到 C 盘根目录 xff08 其他目录也可 xff09 xff
  • 带你搞明白Zookeeper选举机制

    没什么 xff0c 搞不明白别打我就行 xff0c 初学者如有问题请及时指正 xff01 在上一篇文章我们有介绍3种server角色 xff1a Leader Follower以及Observer xff08 不参加选举 xff09 xff
  • windows远程linux桌面

    TigerVNC是一个高性能 平台无关的虚拟网络计算 xff08 Virtual Network Computing xff0c VNC xff09 实现 xff0c 是一个客户端 服务器应用程序 xff0c 允许用户在远程机器上启动并与图
  • 循环队列的介绍与实现

    文章目录 1 循环队列定义2 循环队列基本操作3 循环队列代码实现4 补充 1 循环队列定义 循环队列 xff1a 即顺序存储的队列 xff0c 是为了避免 假溢出 而利用 运算符将队列首尾相接连成一个环状的队列 xff0c 称为循环队列

随机推荐

  • AndroidStudio4.1 升级Kotlin插件不生效问题

    背景 xff0c 在使用SAM转换写Livedata observe 的第二个参数时 xff0c 发现AS报红 xff0c 但编译不出错 xff0c 功能也能正常运行 然后就尝试升级Kotlin插件 AndroidStudio4 1 默认带
  • 一个中科大差生的8年程序员工作总结

    今年终于从大菊花厂离职了 xff0c 离职前收入大概60w不到吧 xff0c 在某乎属于比较差的 xff0c 今天终于有空写一下自己的职场故事 xff0c 也算是给自己近8年的程序员工作做个总结复盘 近8年有些事情做对了 xff0c 也有更
  • 如何一步一步成为一个领域专家

    经常有人问我 xff0c 为什么有的人工作10年仍然平台无奇 xff0c 而有的人只用3年时间 xff0c 就已经脱颖而出 xff0c 成绩斐然 我说 xff0c 是呀 xff0c 有些参加工作多年却仍然只会复制粘贴简单业务代码 xff0c
  • 如何一步一步建立自己的技术影响力

    很多朋友是不是有这样的经历 xff0c 当我们还是一个菜鸟的时候 xff0c 团队里总有1 2个技术大拿 xff0c 每当有技术问题大家争论不休 xff0c 团队成员讨论的面红耳赤 xff0c 技术大牛实在看不下去 xff0c 掐灭手中的烟
  • 一个老程序员的一些职场经验分享

    有一些关于职场的经验 xff0c 当然有一些是以前总结过的 xff0c 现在归类总结一下 xff0c 上半部分是通用职场 xff0c 下半部分是程序员专用 一 通用职场经验 1 xff09 很多人认为事情做得多 xff0c 事情做得好就能晋
  • 第2章 第一个Spring Boot项目

    开发工具选择 工欲善其事必先利其器 xff0c 我们进行Java项目开发 xff0c 选择一个好的集成开发工具 xff08 IDE xff09 对提高我们的开发调试效率有非常大的帮助 这里我们选择大名鼎鼎的IDEA xff0c 它全称 In
  • 第8章 使用注解的方式整合MyBatis 入门详解

    目录 注解方式和配置文件方式的优缺点 使用注解方式整合MyBatis 添加依赖 配置application properties文件 在启动类上添加apperScan注解 创建mapper接口和实体类目录 添加实体类 测试验证 添加参数 直
  • 第9章 Spring Boot整合JPA 与 JpaRepository 基础方法介绍

    参考文章 xff1a 第1章 Spring Boot到底是什么 xff1f 陈小房的博客 CSDN博客 第2章 第一个Spring Boot项目 陈小房的博客 CSDN博客 第3章 Spring Boot项目配置详解 陈小房的博客 CSDN
  • 新手程序员快速升职项目经理(程序员小故事1)

    xff08 刚编的小故事 xff0c 希望对新入门的程序员有所帮助 xff09 英雄 无用武之地 小谢今年从XX大学计算机专业毕业 xff0c 和很多大学生不一样 xff0c 小谢在学校没有将时间用于开黑玩游戏 谈恋爱 xff0c 而是将时
  • Windows鼠标右键添加cmd

    1 win 43 R 打开windows运行 2 在文本框输入regedit 搜索 3 在HKEY CLASSES ROOT当中找到Folder 4 在Folder中找到shell 5 右键shell新建项cmdPrompt 6 点击cmd
  • MIPS指令与MIPS汇编语言

    文章目录 1 MIPS简介2 MIPS指令系统的特点3 MIPS寄存器4 MIPS指令格式4 1 R Type型指令4 2 l Type型指令4 3 J Type型指令4 4 三类指令小结 5 MIPS例题6 MIPS过程调用6 1 过程调
  • 一加7Pro(oneplus 7Pro)和一加三安装kali nethunter

    准备条件 xff1a 一台一加7Pro手机谷歌的adb和fastboot工具集 工具包名称 xff1a platform tools氧OS线刷包 10 3 0版本 twrp 非官方版本magiskDisable Dm Verity Forc
  • 如何解除Chrome无法安装第三方插件的限制(无法从该网站加载扩展程序和用户脚本)

    2018年6月谷歌宣布将废除 Chrome 扩展的内联安装方式 xff08 inline installation xff09 所以说 xff0c 自Chrome 67版本开始 xff0c 谷歌调整Chrome的插件安装策略 xff0c 只
  • 【STM32】HAL库——定时器溢出中断

    经过多次调试 xff0c 我发现Proteus 8的仿真效果并不是很理想 xff0c 所以接下来的例程将改用STM32F103RCT6单片机实物进行讲解 前期准备 xff1a STM32CubeMXSTM32RCT6核心板IDE Keil
  • 【Hexo】GitHub_Page绑定阿里云域名

    前言 对于使用GitHub Pages的小伙伴来说 xff0c GitHub自带的xxx github io网址 xff0c 很容易被挡掉 xff0c 就像这样 我猜大概率是因为这种网址没有证书 没备案之类的 xff0c 导致浏览器检测不安
  • No cached version of com.android.tools.build:aapt2:3.3.2-5309881 available for offline mode.

    No cached version of com android tools build aapt2 3 3 2 5309881 available for offline mode 处理 xff1a gradlew assemble 清理
  • Android H5 webView加载过程黑屏优化处理

    Android H5 webView加载过程黑屏优化处理 一 问题 H5内嵌页面时 xff0c 用webView加载过程中出现黑屏 xff1a 优化处理 xff0c 在setWebViewClient的onPageStarted和onPag
  • 【无标题】

    Android ADB相关使用 Android ADB相关使用 获取手机安卓系统版本 xff1a adb shell getprop ro build version release获取手机SDK版本 xff1a shell getprop
  • Android APP间授权登录(无需SDK类似微信登录)(源码+解析)

    Android APP间授权登录 无需SDK类似微信登录 源码 43 解析 文章目录 Android APP间授权登录 无需SDK类似微信登录 源码 43 解析 前言一 需求二 A应用 调用者 业务代码与布局三 B应用 授权应用 业务代码
  • Android APP调起小程序流程源码+实例解析

    Android APP调起小程序流程源码 43 实例解析 刚刚完成的一个工作需求功能 APP调起指定小程序 读者比较喜欢有图看效果 再看内容 本文涉及点比较多 1 微信SDK集成 2 微信小程序开发 博主后面有充裕的时间会详细对这些知识点做