Skip to main content

Qt 5的Android版预览

Comments

原文链接:Eskil Abrahamsen Blomfeldt - Preview of Qt 5 for Android

迁移Qt 4到Android的第一个代码变更(commit)发生在2009年圣诞节,来自于BogDan Vatra的“Android mkspecs and semaphore”。

2010年1月22日,他在“A small step for Qt, a giant leap for android”(Qt的一小步,Android的大飞跃)中提交了一个可以工作的图形系统插件,并且可以在Android设备上真正运行Qt应用程序了。为此他上传了一个视频进行庆祝。

2011年2月20日,他在Necessitas发布了第一个可用的Qt 4的Android版。

在此后的三年多时间里,BogDan和其他朋友一起(还在继续)利用业余时间开发Necessitas项目,并且在去年的11月8日,BogDan同意把他的这一工作带到Qt 5中并且将这一移植提交到了Qt Project中

1月4日,他把Qt 5的Android版的第一个版本提交到一个WIP(正在工作中)分支,最近我们已经把它合并到“dev”分支,这也就是说它将会作为Qt 5.1的一部分发布。

对于这次预览发布,我们主要集中精力在开发人员体验方面,让开发人员可以很容易地在Android设备上运行和测试他们的应用程序。尽管您可以在应用程序商店中发布使用Qt 5.1版的应用程序,但是我们还是建议您等到Qt 5.2版的时候再这样做,因为我们希望投入更多精力来改善这一体验:对于如何部署应用程序提供更多选项,增加更多通用的优化,并且支持更多的Android API,同时允许您使用Java代码或者它们的C++ API映射来扩展您的应用程序,只要您喜欢。

演示程序来了!(译者注:某个地区的网友也许不能访问,原因众所周知。)

第一个是,Qt 5 Cinematic Experience演示程序在以下设备上运行(从左到右):Nexus 4、Asus Transformer Pad TF300T和Nexus 7。Qt 5 Cinematic Experience演示程序现在已经成为了我们在所有展会中的首选演示程序,因为它很好地演示了Qt Quick 2中很多新的图形能力,例如着色器效果(shader effects)、粒子效果(particle effects)和新的PathAnimation以及让60fps成为可能的底层硬件加速SceneGraph架构。

请点击查看视频

在Qt的核心部分之外,我们还支持了QtMultimedia中的QML媒体播放器API。这里是Andy用QML写的一个很不错的视频播放器,在视频之上使用了像素着色器效果,它运行在Asus Transformer TF300上:

请点击查看视频

让我们炫耀一下多点触摸支持,这里是一个运行在Nexus 4上的简单手指绘制演示程序。这里也显示了对于本地菜单的支持:

请点击查看视频

Qt 5中所支持的最低Android API等级是10,也就是Android 2.3.3。这也就是说Qt应用程序可以运行在像Huawei Y100这样价位的机器上:

请点击查看视频

这里是我们现在所完成的部分的一个概览:

  • 支持创建可以运行在Android设备上的Qt Widgets和Qt Quick应用程序
  • 支持Android API等级10(2.3.3版)及以上
  • QtMultimedia中的QML媒体播放器功能
  • QtSensors中的一套常用传感器
  • 当然还有Qt的一些跨平台特性(包括Qt Quick Controls和QtGraphicalEffects)
  • 在Qt Creator 2.7中开发和配置应用程序
  • 从Qt Creator中直接向设备部署一个测试构建

另外,我们将会在较短时间内完成使用Ministro发布工具发布Qt库,这将会允许您在一个设备上让多个应用程序共享一套Qt库,并且这也将是部署使用Qt 5.1的应用程序的主要方式。所有完成的工作这里都已经叙述完毕,大家可以查看我们的wiki来获得更多具体信息。如果哪里错了,请告知我们。您可以在Freenode IRC服务器的#necessitas频道找到我们。

您如果问,下一步呢?您可以帮助我们来做决定。您可以报告您发现的Bug以及您所期望的特性,也可以贡献您的代码。我们将继续完成对Qt 5的Android版的改进,与此同时我们也很期望您的反馈。在这个wiki中,我们还列举了我们验证过可以运行Qt应用程序的设备。如果您在测试之后,为这一列表增加了新的设备(当然还有您所发现的任何问题),我们将非常感激:)

最后:在此感谢BogDan Vatra、Ray Donnelly以及其他在过去几年中为Necessitas 项目作出贡献的朋友们,以及过去几个月中为Qt 5的Android版作出贡献的朋友们。当然也感谢以后将会为这个项目做贡献的每一个人。

Comments

Subscribe to our blog

Try Qt 6.11 Now!

Download the latest release here: www.qt.io/download

Qt 6.11 is now available, with new features and improvements for application developers and device creators.

We're Hiring

Check out all our open positions here and follow us on Instagram to see what it's like to be #QtPeople.