uni-app 5+app不用离线打包实现手机QQ右上角浏览器打开捕获地址

发布于 1周前 作者 yibo5220 来自 Uni-App

uni-app 5+app不用离线打包实现手机QQ右上角浏览器打开捕获地址 需要实现的一个功能:手机QQ内打开网页,右上角使用浏览器打开(已经设置5+app为默认浏览器,scheme 设置了http,https),5+app获取不到QQ的地址(微信的右上角浏览器可以捕获到)

看看有没有哪位老哥能解决这个功能,有偿,留下你的联系方式

下面是scheme获取启动参数的代码,微信没问题,手机QQ不行

document.addEventListener('plusready',function(){
    checkArguments();
},false);

// 判断启动方式
function checkArguments(){
    console.log("plus.runtime.launcher: "+plus.runtime.launcher);
    var args= plus.runtime.arguments;
    alert(args);
}

// 处理从后台恢复
document.addEventListener('newintent',function(){
    console.log("addEventListener: newintent");
    checkArguments();
},false)

2 回复

公司承接项目外包开发、双端(Android,iOS)原生插件开发。
为什么选择我们: 1、1000+项目开发积累,数百种商业模式开发经验,更懂您的需求,沟通无障碍。 2、一年免费技术保障,系统故障或被攻击,2小时快速响应提供解决方案落地。 3、软件开发源码定制工厂,去中间商降低成本,提高软件开发需求沟通效率。 4、纯原生开发,拒绝模板和封装系统,随时更新迭代,增加功能,无需重做系统。 5、APP定制包办软件著作权申请,30天内保证拿到软著证书,知识产权受保护。 6、中软云科技导入严谨的项目管理系统,确保项目准时交付,快速抢占市场商机。 7、软件开发费、维护费、第三方各种费用公开透明,不花冤枉钱,不玩套路。
已有大量双端插件、App、小程序、公众号、PC、移动端、游戏等案例。
行业开发经验:银行、医疗、直播、电商、教育、旅游、餐饮、分销、微商、物联网、零售等
商务QQ:1559653449 商务微信:fan-rising
7x24小时在线,欢迎咨询了解


在uni-app中,5+ App(即使用HBuilderX开发的原生App)通常依赖离线打包来实现更多原生功能。然而,如果你希望在不进行离线打包的情况下,捕获用户在手机QQ右上角浏览器中打开链接时的地址,这个需求实际上是比较具有挑战性的,因为uni-app的WebView组件和原生浏览器之间的交互能力有限,特别是在非离线打包的情况下。

不过,我们可以考虑一些间接的方法,比如通过URL Scheme或者Universal Links(iOS)和App Links(Android)来实现应用间的跳转和数据传递。但请注意,这些方法通常要求用户在浏览器中先访问一个特定的链接,然后该链接会触发应用的打开,并携带相关参数。

以下是一个基于URL Scheme的示例代码,展示如何在uni-app中接收并处理从浏览器传递过来的URL参数:

  1. 配置URL Scheme: 首先,你需要在你的uni-app项目的manifest.json中配置一个URL Scheme。例如:

    "plus": {
      "distribute": {
        "apple": {
          "appid": "YOUR_APPLE_APPID",
          "teamid": "YOUR_TEAMID"
        },
        "android": {},
        "schemes": ["yourappscheme"]  // 配置你的URL Scheme
      }
    }
    
  2. 处理URL参数: 在App的App.vue或相应的页面文件中,你可以通过onLaunchonShow生命周期函数来获取启动参数:

    export default {
      onLaunch: function (options) {
        if (options && options.query) {
          const url = options.query.url;  // 假设URL参数名为'url'
          console.log('Received URL from browser:', url);
          // 处理接收到的URL
        }
      }
    }
    
  3. 生成并分享链接: 然后,你需要生成一个包含特定参数的链接,并分享给用户在QQ等社交应用中打开。例如:

    <a href="yourappscheme://?url=https://example.com">Open in My App</a>
    

当用户点击这个链接时,如果他们已经安装了你的App,系统将会提示用户打开该App,并传递url参数。

然而,这种方法并不能直接捕获用户在QQ右上角浏览器中直接打开链接的行为,而是需要用户主动点击一个预定义的链接。如果你确实需要捕获这种行为,你可能需要考虑使用更复杂的解决方案,比如服务器端重定向、深度链接服务等,或者最终还是需要依赖离线打包来实现更紧密的应用间交互。

回到顶部