• 首页
  • Qt文档
  • DTK文档
  • 玲珑文档
  • Qt开发准则

    Qt框架是统信操作系统的主要框架,也是众多开发者的选择。为了避免开发者在系统开发过程中出现各种兼容性问题,因此规定以下开发准则,避免应用产生各种兼容性问题。

    不允许使用Qt的任何私有模块

    随意使用Qt私有模块,将会导致系统更新后,无法保障接口兼容性。开发者需要自行承担由于使用私有模块导致应用不兼容的风险。使用系统的Qt私有模块的应用,一旦被发现,将会有下架可能。

    私有模块检测脚本

    开发者可以通过如下脚本检测是否包含私有模块

    #!/bin/bash
    
    if [[ $1 == "" ]]; then
        echo "Plase set source directory"
        exit -1
    fi
    
    echo "check \"$1\"..."
    find $1 -regex "\(.+\.pro\|.+\.pri\)" | xargs grep -e "QT.*+=.*-private"
    qmake=$?
    find $1 -name CMakeLists.txt | xargs grep -e "Qt5\\w\+PRIVATE_INCLUDE_DIRS"
    cmake=$?
    
    if [[ $qmake == 0 || $cmake == 0 ]]; then
        echo "Warning: found Qt private module!!!"
        exit 1
    fi
    
    exit 0
    

    使用方法如下:

    1. 保存脚本为check_qt_private.sh

    2. chmod +x check_qt_private.sh

    3. ./check_qt_private.sh ~/projects/qt-project-path

    如输出结果中包含:“Warning: found Qt private module!!!”则说明使用到了Qt私有模块,需要移除此项目对私有模块的依赖。否则说明项目未使用到私有模块,则不需要进行任何改动。

    每执行一次只能检测一个项目,如需要对多个项目进行检测,可多次执行次脚本,检查每一次的输出内容即可。