Qt for Android的新特性

本文翻译自:What's New with Qt for Android
原文作者:Assam Boudjelthia,Qt公司高级软件开发工程师
校审:York Chen


Qt 5.15 LTS和Qt for Android

由于很多开发人员在使用Qt for Android,因此我们希望对开发人员的体验进行改善。在最新的Qt 5.15.0中,我们修改了Android的文档。新文档有很多关于如何最大限度地利用Qt for Android的新内容,更详细地解释了如何扩展Qt以支持更高级的特性并增强与Android API的集成。


文档中改进的主要内容包括:

  • 扩展Qt应用程序以使用自定义的Java类或资产和打包结构。
  • Android Native Development Kit (NDK)和Qt之间的依赖版本管理。
  • 如何以多种方式与Android服务交互。
  • 如何在Android上构建和使用OpenSSL。OpenSSL库之间的依赖性支持所有Qt版本,括QMake和CMake。

在相同的上下文中,许多Qt示例中存在诸如布局、缩放或权限等问题,现都已被修复。Qt 5.15.0 Qt Android Extra附带了一个新的代码示例 Qt Java Native Interface Messenger (Qt JNI Messenger)。这个示例演示了在Android中使用Qt时最重要的主题之一,即JNI通信。说明了Java和Qt之间调用方法和交换数据的工作流程,这个示例用作Qt和Android双向桥接的起点。

为了确保与Android正确集成,Android原生文件对话框现在可以默认用于打开文件和保存操作。原生文件对话框还使用了Android的“content”文件模式,并进行了额外的异常检查,这在过去偶尔会导致一些崩溃。AndroidManifest.xml不再设置minSdkVersion和targetSdkVersion值。相反,您可以使用build.gradle 文件进行设置。Android Studio会在清单文件中提供关于设置SDK版本的警告。更多信息,请参考 Manifest(清单)文档。
更改的完整列表,请参阅Platform Changes in Qt 5.15.0

 


Qt Creator 4.12

Qt Creator的最新版本为Android开发带来了实质性的改进。Qt Creator现在可以自动设置Android SDK,这是为Android应用程序构建和运行Qt的主要模块。它会提示您安装开发所需的软件包。此外,借助Qt Creator,在应用程序中使用OpenSSL现在变得更简单,允许为库设置本地路径,并且可以通过kit设置,在任何项目中使用它。


Qt for Android的一个基本特性是缺乏对Qt和NDK版本的管理。过去,Qt Creator在给定的时间只能有一个有效的NDK,这在处理多个Qt版本和项目时会很麻烦。Qt for Android的版本依赖于不同的NDK版本,开发者需手动选择、切换到正确的版本。这就是为什么我们引入了一种方法来管理多个Qt版本,并将每个版本与适当的NDK版本相结合。Qt Creator使用通用的配置文件来跟踪它。此外,还可以根据需要定制NDK路径。

我们还做了一些其他的改变,包括Android工具包的示例列表,其中展示了在Android设备上经过测试并且可以运行的示例。比如,默认情况下不显示的示例包含一些在安卓上可能不被支持的特性或模块,现在这些示例默认是隐藏的。同时,改进了 AVD Manager的UI设计和一些功能,有利于灵活创建AVD,以及选择 Manifest Editor的图标。


更改的完整列表,请参阅 Qt Creator Android 4.12的更改

 


展望未来

为了更好地服务Qt移动用户,我们将推出更多支持Android的更新。我们将创建更多的示例、文档和功能,为Android的轻松、高级开发铺平道路。请继续关注Qt for Android。


要访问Qt for Android上的所有新特性,请通过我们的下载页面下载最新版本或,通过维护工具进行更新。