【问题标题】:Will C++ Builder 10.2 Tokyo support Android 9?C++ Builder 10.2 Tokyo 是否支持 Android 9?
【发布时间】:2019-01-22 12:53:33
【问题描述】:

有关于支持 Android 9 的 C++Builder 10.2 Tokyo 的任何信息吗?我需要编写针对 Android API 28 的应用程序。

table 中列出了当前支持的目标平台。

我知道,如您所见 here,C++Builder 10.3 Rio 支持 Android 9,但我目前无法将 IDE 更改为更新版本。

【问题讨论】:

  • 我很惊讶还有人还在使用 C++ Builder ...;)
  • 您需要 API 28 的具体是什么?如果这是一件小事,那么也许可以在早期的 API 版本中进行模拟?
  • @Someprogrammerdude,我们的一位客户计划购买搭载 Android 9 的设备。我在搭载此版本 Android 的设备上测试了应用程序,但它没有运行。我只看到一条消息,表明此应用程序未针对设备的 API。这是“为了未来”,但做好准备是件好事:)
  • 这似乎更像是一个配置问题,您不允许更高级别的版本。 AFAIK,您可以为您的应用程序指定 API 版本的 范围,也许在您的配置中上限是 27?
  • @Someprogrammerdude,我尝试在 AndroidManifest.xml targetSdkVersion="28" 中编写,但在构建期间它会自动切换回 14。这是 AFAIK,已知问题(请参阅 here)。跨度>

标签: android c++builder rad-studio c++builder-tokyo


【解决方案1】:

支持较新的 Android API(包括 Android 9)所需的基础框架更改太大,无法向后移植到 10.2 Tokyo。这包括两种语言风格 - Delphi 和 C++。

目前,即使是 Delphi Rio(初始版本)也不完全支持 Android 9。这可能会在以后的 Rio 更新和/或后续 10.4 版本中发生变化。

使用 Tokyo 编写的应用程序可以在较新的操作系统版本上运行,但它们将在兼容模式下运行。您可以手动更改 Android Manifest 以针对比默认更高的 API 版本,但您必须实现目标操作系统预期的所有功能和行为。如果你不这样做,这样的应用程序将会崩溃或行为不端。

Android 9 还引入了一些更改,这些更改会影响所有应用程序,无论其目标 API 是什么。这些更改也会对您的应用程序产生影响。 Android 9 Behavior changes: all apps

【讨论】:

  • @感谢您的意见!现在我们将坚持使用低于 28 的 API,但我会阅读您在答案中链接的内容并尝试找出解决方案。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-08-20
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-05-22
相关资源
最近更新 更多