目录
目录README.md

kylin-app-manager

编译

sudo apt install g++ cmake extra-cmake-modules qtbase5-dev libkf5windowsystem-dev libkf5config-dev libspdlog-dev -y
cd kylin-app-manager
cmake -S . -B build
cd build
make -j8

debian 打包

sudo apt install devscripts
cd kylin-app-manager
debuild

项目结构说明

kylauncher

对外提供 D-Bus 接口,接口说明

  • bool LaunchApp(const QString &desktop)

    • 打开指定 dekstop 文件对应的应用
    • desktop.desktop 文件名称或者绝对路径均可
    • 打开成功返回 true
  • bool LaunchApp(const QString &name, const QStringList &args)

    • 打开指定的应用,尝试以加速的形式打开该应用
    • name:应用的名称,需是决定路径
    • args:应用的启动参数
    • 打开成功返回 true

kyinit

负责打开应用和加速,打开指定 .desktop 应用时通过调用 gio 相关的接口打开应用,打开指定二进制或者脚本路径的应用则通过 fork 来打开

应用启动加速

当调用接口 LaunchApp(const QString &name, const QStringList &args) 时,kyinit 尝试以加速的形式启动应用,如果加速打开失败,则以正常的方式打开应用

kyinit 提前链接好了 Qt 相关的库,因此打开 Qt 应用时,只需应用本身再链接其它库即可,以达到加速启动的效果。 应用需要进行适配,只需修改 CMakeLists.txtmain 函数即可

首先,找到kyinit

find_package(KyInit 0.0.1 REQUIRED)

然后,替换

add_executable(myexe ${myexe_SRCS})
target_link_libraries(myexe ...)

add_kyinit_executable(myexe ${myexe_SRCS})
target_link_libraries(kyinit_myexe ...)

main函数

extern "c" kymain(...)
关于
9.2 MB
邀请码
    Gitlink(确实开源)
  • 加入我们
  • 官网邮箱:gitlink@ccf.org.cn
  • QQ群
  • QQ群
  • 公众号
  • 公众号

©Copyright 2023 CCF 开源发展委员会
Powered by Trustie& IntelliDE 京ICP备13000930号