1. Google Play 的发布,目前有一些新的要求。按照网上搜索出来的资料去做。没什么问题。这里对我来说有两个要求是需要特别投入一点工作的:
1.1. 目前发布,必须是 AAB 文件而不是 APK 文件;
1.2. 目前发布,必须是 Android API level 30,但 Delphi 10.4.2 只支持到 29;我前面有文章提到如何做。
2. 需要写一份隐私政策文件。
发布后,等了大概一周,才审核通过面市。用 Delphi 开发 APP 面向世界,成功。这个 APP 非常简单,只是为了验证一下 Delphi 开发的 APP 能否正常发布。
这个 APP 非常简单。里面涉及到的技术:
1. 蓝牙 BLE 的功能,使用 Delphi 提供的控件。开发过程中在 Windows 上跑得挺好。在安卓上也工作得挺好。iOS 还没测试过。
2. 多线程。这个 APP 内部我使用了几个线程。
3. 本地的 SQLite 数据库,使用 FireDAC 控件;
4. 界面绑定的本地数据库,使用了 Delphi 的 LiveBindings 框架,没写代码就能让界面和数据库的数据互动。
5. 界面贴图。界面里有一个半圆弧的模拟汽车里程表的一个东西,用来显示温度。采用 TArc 画矢量图发现它有问题:A. 渐变色无法控制,不能调出好看的颜色;B. 居然不圆滑,明显能看出来是折线拼凑。因此,直接用 BMP 的图片贴上去,效果没问题。
5.1. 网上有人提供了代码,将安卓原生的画图代码替换掉 Delphi 的 TArc 来替换 TArc 的实现,看起来不错,但实际使用,如果程序需要多次去重画这个 Arc 会导致程序闪退。因此最终还是采用贴图而不是代码画图的方式。
6. 基于 Delphi FMX 提供的多语言实现,将多种不同语言的提示文字做成 Name = Value 格式的文本文件,用户选择语言时动态加载,运行中动态切换语言。
使用了上述技术后,整个程序的运行速度和稳定性都非常好。程序在测试阶段界面有些卡顿,后来发现是我自己的代码写得有问题导致,改好之后,在手机上运行很流畅。程序也非常稳定,反复测试,长期使用,没有闪退的情况。
使用 Delphi 开发移动程序,还是很实用的,没有任何问题。
国内安卓市场太混乱,该如何发布比较好?如果一大堆市场都要逐个去发布,实在是太麻烦而且太荒谬了。推广 APP 只需要给出一个链接就行,如果每个市场要给出一个链接,岂不是要疯掉?