# 从 TotalCross / SuperWaba 迁移

> 血统渊源——哪些保持熟悉，以及 2026 现代化改造中改变/移除了什么。

Source: https://crossfly.dev/zh/docs/migrate/from-totalcross — CrossFly documentation. Full docs as one file: https://crossfly.dev/llms-full.txt

# 从 TotalCross / SuperWaba 迁移

CrossFly 是 SuperWaba/TotalCross SDK 的**现代化演进**，基于 **libGDX/OpenGL** 重写。如果
你了解其前身，模型的大部分会很熟悉——这里的重点是**改变了什么**。

## 哪些保持熟悉
- **通过 `classname` 指定 MainWindow**（主窗口按名称解析并通过反射实例化）。
- **ARGB 颜色 `0xAARRGGBB`**（int）。
- **在代码中装配 UI**（没有标记语言/XML）。
- **UI 单线程模型**——所有 UI 都在同一个线程中。

## 改变了什么（重命名）
| TotalCross（旧） | CrossFly（现） |
|---|---|
| `Settings`（配置/状态） | `Device` / `DeviceConfig` / `LocaleFormats` / `Screen` |
| `phone` 包 | `device` |
| `sql`（JDBC） | `sqlite`（原生 API + SQLite3MC 加密） |
| `Toast` / `ToolTip` | `Hint` |
| `Rect` | `Rectangle` |
| `Color`（类） | `int` ARGB + `ColorUtils` / `UIConstants` |

## 彻底移除了什么
- **轻量持久化** `appSettings` / `storeSettings()`——**已移除**。使用 SQLite 或
  `Device.homeFolder` 中的文件（[指南](/docs/data-and-services/files-and-preferences)）。
- **旧版部署**：`tc.Deploy`、4 个字母的 `applicationId`、`pdb`。
- **已移除的控件/资源**：`Grid`、`Tree`、`TopMenu`、`Accordion`、`Spacer`、`Velocimeter`、
  `Toast`/`ToolTip`（→ `Hint`），以及全部 **PDF / ESC-POS / barcode / 打印机**（条形码现在通过
  摄像头——参见 [摄像头与条形码](/docs/data-and-services/device-camera)）。

## 移植说明
- 你之前读写 `Settings.appSettings` 的地方，创建一个 **SQLite 中的键/值表**。
- `phone.*` → `device.*`；Bluetooth JSR-82/SPP → **BLE/GATT**（`BluetoothManager`，参见
  [Bluetooth BLE](/docs/data-and-services/device-bluetooth-ble)）。
- 日期/时间/货币：按 locale 的格式化现在存在于 **`LocaleFormats`** 中（参见
  [i18n](/docs/best-practices/internacionalizacao)）。

## 另请参阅
- 重命名词典：[术语表（reference）](/docs/reference/glossary)
