一、前言
传统老Delphi人员大部分基本都是C/S端(客户端)开发上手(基于Windows开发),而FMX是Delphi中用于创建跨平台图形用户界面的框架。它允许开发人员使用单个代码库创建适用于多个操作系统的应用程序,如Windows、macOS、iOS和Android。FMX提供了丰富的界面控件和视觉效果,同时还支持触摸输入和多点触控等现代特性。开发人员可以快速轻松地构建漂亮、响应式的跨平台应用程序。最核心部分跨平台,一套代码同条件编译来解决实现不同平台下相关业务功能;
二、FMX框架
自带调用Android、IOS系统api驱动相关事件,方便开发者直接拖拽式完成相关开发,可根据条件编译不同平台发布;
三、学习基础路径
FMX是Delphi xe版本后自带开放框架,通过配置Andriod、Ios的sdk,完成编译不同的平台(Windows、Android、IOS),其相关语法与delphi使用基本一致,其基本组件用法与delphi VCL基本相同,唯一缺点是相关组件偏少,只有基本组件,需要借助第三方的组件来进一步美化;笔者推荐两个常用的组件;
1.FMXUI,开源的相关组件,最小最基础组件,需要复杂或者模块化的内容,可通过基础组件自定义,其自定义程度高;
2.Orangeui,部分有限制(数据显示列表),目前使用其组件内容较少;
ps:由于android的APP由java开发,因此FMX在开发android时也遵循了JAVA的协议,而且是最常见的JNI协议,在JNI中我们知道使用JVM的env接口来对接java内部的各种类;
1、初始阶段
配置Andriod SDK内容,IOS需要相关设备支持;
1.1 创建工程
程序编译:
1、Andriod:可连接真机模拟测试,编译原生APK,其借助Andriod 原生api来处理;
2、IOS版本:可以兼容pc端版本;
3、Windows:跟VCL相同,直接可运行,编译EXE;
2、产品研发阶段
如果对Delphi VCL比较熟悉,则FMX 上手非常容易,能轻松编译出一些简单场景APP内容,但是针对第三方SDK(支付、登录)以及其它相关内容实现,则需要借助jar包来完成,逐步学会如果调用jar来处理相关问题,完善FMX相关app开发;
Ps:目前针对管理类或者特定场景类(可以指定设备)建议Windows、Android实现,如果针对普通用户,建议app研发多些配置功能以满足相关需求,由于不同政策要求不同,IOS上架以及更新周期比较长(Android可以离线安装);