tauri2 程序如何拿到启动参数?例如-toen

因为有个需求,需要将cocos项目编译为web项目,然后使用我的pakeplus再将这个web项目打包为跨平台桌面应用,而且这个应用启动的时候,需要添加额外的启动参数,在程序中拿到这个启动参数,然后开始对接业务逻辑,就像抖音小玩法一样,需要将这个程序在直播伴侣中打开,直播伴侣会通过路径参数传递一个token进来

实现的代码如下:

    let args: Vec<String> = std::env::args().collect();
    println!("Application started with arguments: {:?}", args);
    // 判断args每一项是不是包含=,是的话,将=前面的作为key,=后面的作为value,否则作废
    let url_params = args
        .iter()
        .map(|arg| {
            if arg.contains("=") {
                let parts = arg.split('=').collect::<Vec<&str>>();
                (parts[0], parts[1])
            } else {
                ("exec", arg.as_str())
            }
        })
        .collect::<Vec<(&str, &str)>>();
    println!("url_params: {:?}", url_params);

但是在开发环境中是没有办法调试的,需要打包为测试包或者发布后编译包,然后使用命令行启动这个程序,例如我的程序:

然后就可以在项目中拿到这个参数了