4***@qq.com
4***@qq.com
  • 发布:2020-07-16 16:55
  • 更新:2023-06-28 17:31
  • 阅读:4958

怎么从安卓原生跳转到uniapp指定页面

分类:uni-app
  Intent intent = new Intent(context, PandoraEntry.class);//要跳转的页面  
   intent.putExtra("aaaa", "原生打开uniapp");//传递的数据  
  startActivity(intent);  

这个代码可以跳转到uniapp,那怎么跳转到指定的uniapp页面

2020-07-16 16:55 负责人:无 分享
已邀请:
g***@qq.com

g***@qq.com - 个人承接PHP、uniapp项目,有案例,联系QQ 305475422

找到解决方案了吗?

7***@qq.com

7***@qq.com

唤醒之后带参数跳转就行 var getpara = plus.runtime.arguments; console.log(getpara)

Vicente

Vicente

我用uni-pp离线打包,如何从原生跳转到uni-app中?
Intent intent = new Intent(context, PandoraEntry.class); 这里的PandoraEntry.class应该替换成什么?谢谢

c***@163.com

c***@163.com

请问找到解决办法了么?

c***@126.com

c***@126.com

解决了吗

w***@163.com

w***@163.com

跳转到PandoraEntry的时候带参跳转,用plus.runtime.arguments接收
https://ask.dcloud.net.cn/question/22224

a***@163.com

a***@163.com

原生插件里面:

                        val intent = Intent(activity, PandoraEntry::class.java)  
                        intent.putExtra("name", "from native")  
                        startActivity(intent)

Uniapp的App.vue,在onShow中监听:

let lastAppShare = '';  
export default {  
    onShow: async function() {  
            if(plus.runtime.arguments && lastAppShare != plus.runtime.arguments){  
                lastAppShare = plus.runtime.arguments;  
                let appArgs = JSON.parse(lastAppShare);  
                if(appArgs){  
                    console.log('receive args from native:', appArgs);  
                }  
            }  
    }  
}

在App.vue的onShow中处理,可以保证不管应用是否启动,只要进入前台,都能立即执行原生传的参数。如果在其他页面,如/pages/index/index.vue首页监听的话,如果应用已启动,且未处于首页,传过来的参数就不会被立刻执行。
plus.runtime.arguments参数读取一次后不会自动消失,且只读,所以需要每次判断下和上次处理的是否一样,一样则认为已经处理过

  • 3***@qq.com

    startActivity(intent)方法前还要加一句代码:intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);不然不成功。

    2024-05-24 17:12

小金家的沐沐

小金家的沐沐

增加个思路,看了推送的插件。

近安卓原生思路
1.Notifactiion的时候,PentenItnent封装成广播,点击消息之后发送广播

  1. uniapp增加监听器,广播接收到消息把消息通过这个监听器返回到uniapp中,在uniapp中去跳转

要回复问题请先登录注册