ubuntu 手机问题,关于库、ubuntu-sdk 和 QML

ubuntu 手机问题,关于库、ubuntu-sdk 和 QML

我正在尝试为 Ubuntu 手机制作一个应用程序,但我有很多问题。

  1. 如果我的应用程序依赖于某个库qxmpp,那么哪种方法更好?将库的本地副本添加到我的应用程序,还是使用系统库将依赖项添加到最终包等?

  2. 我是否必须使用 QML 层来开发我的应用程序?或者我可以使用纯 C++ 吗?

  3. 例如,我根本不喜欢ubuntu-sdk(我不太喜欢 IDE),是否可以自己开发应用程序,然后将其上传到 Ubuntu 商店?

谢谢,如果我的一些问题没有意义,我很抱歉,这是我第一次尝试开发手机平台,我感觉有点迷茫。

答案1

  1. 我没有看到qxmpp所谓的“框架”(它是一个ubuntu-sdk-libs包)。手机上没有安装 xmpp 包。所以,它可能是捆绑副本。

    手机上软件的只读部分称为“OS 映像”。它作为.deb一个整体通过无线方式更新。它由桌面 Ubuntu 的软件包组成。因此,直接的方法是 chroot 到映像中并查看dpkg -l安装了哪些软件包。或者dpkg -l在手机或模拟器上执行此操作。文件说早些时候(13.10)可用的​​库在虚拟包的依赖项中列出ubuntu-sdk-libshttp://packages.ubuntu.com/vivid/ubuntu-sdk-libs。但现在在所有包的列表中搜索可能更有用。

  2. 您不必使用 QML 层。您甚至可以使用 Qt Widgets。但相信我,QML 很棒。它不会以任何方式损害 C++。

  3. 是的,您无需 SDK 即可进行开发。Ubuntu-Touch 应用程序只是为 ARM 编译的常规应用程序(如果qemu-user-static安装了软件包,它甚至可以在桌面上运行)。只有最后一步将其包装到 Click 软件包中。

    它是用 CMake 构建的,因此可以与其他编辑器兼容。我有一个构建文件的示例这里. 通常进行编译并在里面放一个小样板CMakeLists.txt来调用 Click 打包程序。

    您可能会使用 SDK 来生成 chroot。然后代码将在这些 chroot 中编译,并且模拟器可以在其中运行(在 SDK 之外)。

相关内容