Jetpack Compose点击Text跳转网页报Type mismatch: Required Context Found Intent错误怎么办
报错原因
这个类型不匹配报错的核心诱因是传参错误:startActivity() 方法要求接收 Context 类型的上下文作为调用主体,你错误地把构建好的跳转 Intent 传入了需要 Context 的参数位,才触发了类型校验失败。
正确实现步骤
- 首先在Composable函数中获取当前页面上下文:
val localContext = LocalContext.current
- 给Text组件绑定点击事件,按正确顺序传参调用跳转方法:
Text( text = "点击跳转指定网站", modifier = Modifier.clickable { // 构建跳转网页的Intent val jumpIntent = Intent(Intent.ACTION_VIEW, Uri.parse("替换为你要跳转的目标网站链接")) // 用context调用startActivity,传入Intent localContext.startActivity(jumpIntent) } )
- 补充注意项:如果目标网站是http明文协议,需要在
AndroidManifest.xml的application节点添加android:usesCleartextTraffic="true"配置,避免安卓高版本拦截请求。
报错截图

内容的提问来源于stack exchange,提问作者peeanti
相关产品推荐
相关产品推荐

