Android 应用配置跳转微信小程序

根据微信开发者文档,实现微信小程序跳转需要获取小程序提供的Scheme URL。官方文档说要通过html动态跳转,经过测试发现,WebView无法识别该Scheme,最终通过Intent方式成功实现跳转。以下是实现代码:

kotlin 复制代码
class MainActivity : ComponentActivity() {
    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setContent {
            WeChatMiniProgramLauncher()
        }
    }
}

@Composable
fun WeChatMiniProgramLauncher() {
    val context = LocalContext.current
    var launchStatus by remember { mutableStateOf<String?>(null) }

    LaunchedEffect(Unit) {
        try {
            val schemeUrl = "weixin://dl/business/?appid=*APPID*&path=*PATH*&query=*QUERY*&env_version=*ENV_VERSION*"
            context.startActivity(
                Intent(Intent.ACTION_VIEW, Uri.parse(schemeUrl))
            )
        } catch (e: ActivityNotFoundException) {
            launchStatus = "请安装微信客户端"
        } catch (e: Exception) {
            launchStatus = "打开失败: ${e.message}"
        }
    }

    Box(
        modifier = Modifier.fillMaxSize(),
        contentAlignment = Alignment.Center
    ) {
        launchStatus?.let { status ->
            Text(
                text = status,
                color = MaterialTheme.colorScheme.error
            )
        } ?: Text("正在打开微信小程序...")
    }
}

注意:此实现需要使用小程序的明文Scheme URL,需要确保小程序已开启相关权限。

自 2023 年 12 月 19 日起,对URL Scheme进行升级,详细调整说明可见《URL Scheme 和 URL

Link优化公告》。改动点概览如下:

  1. 支持开发者在原有加密 URL Scheme 后面拼接参数;

  2. 新增明文 URL Scheme,开发者无需调用接口可自行拼接生成明文Scheme;

  3. 取消 URL Scheme 一人一链的限制,支持同一条连接被多名用户访问;

  4. 每个小程序每天 URL Scheme 和 URL Link 总打开次数上限为300万。

相关推荐
從南走到北1 天前
JAVA代泊车接机送机服务代客泊车系统源码支持小程序+APP+H5
java·开发语言·微信小程序·小程序
诸神黄昏EX1 天前
Android Build系列专题【篇四:编译相关语法】
android
木易 士心1 天前
组织架构树形选择组件使用说明(Vue3 + UniApp)
微信小程序·钉钉·notepad++
软件技术员1 天前
微信小程序电子测宅堪墓风水罗盘
微信小程序·小程序
future_studio1 天前
聊聊 Unity(小白专享、C# 小程序 之 播放器)
unity·小程序·c#
Q_Q5110082851 天前
python+uniapp基于微信小程序的旅游信息系统
spring boot·python·微信小程序·django·flask·uni-app·node.js
雨白1 天前
优雅地处理协程:取消机制深度剖析
android·kotlin
leon_zeng01 天前
更改 Android 应用 ID (ApplicationId) 后遭遇记
android·发布
小Tomkk1 天前
Rokid 开发空间小程序 实战
3d·小程序·rokid·jsar
说私域1 天前
基于多模态AI技术的传统行业智能化升级路径研究——以开源AI大模型、AI智能名片与S2B2C商城小程序为例
人工智能·小程序·开源