首页 > 其他分享 >Delphi FMX跨平台框架

Delphi FMX跨平台框架

时间:2024-07-11 15:29:05浏览次数:14  
标签:FMX Delphi IOS 编译 跨平台 组件 Android

 一、前言

       传统老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可以离线安装);

四、案例分享

标签:FMX,Delphi,IOS,编译,跨平台,组件,Android
From: https://blog.csdn.net/qq_37265818/article/details/140351976

相关文章

  • rust跨平台
    目前常见的跨平台方案C++很多公司的跨平台移动基础库基本都有C++的影子,如微信,腾讯会议,还有早期的Dropbox,知名的开源库如微信的Mars等。好处是一套代码多端适配,但是需要大公司对C++有强大的工具链支持,还需要花重金聘请C++研发人员,随着团队人员变动,产品维护成本也不可忽......
  • Delphi LDAP对象管理(用户登录认证、组、组织)
    unitlogin;interfaceusesWindows,Messages,SysUtils,Variants,Classes,Graphics,Controls,Forms,uniGUITypes,uniGUIAbstractClasses,uniGUIClasses,uniGUIRegClasses,uniGUIForm,uniButton,uniGUIBaseClasses,uniEdit,REST.Types,uniMemo,REST.Client,......
  • Go每日一库之7:fsnotify(跨平台文件监听)
    luckzack作者相关精选 Go每日一库之7:fsnotify(跨平台文件监听)关注作者 腾讯云 开发者社区2核2G云服务器82元/年立即购买>文档建议反馈控制台首页学习活动专区工具TVP最新优惠活动 文章/答案/技术大牛搜索发布登......
  • 坚果云与floccus实现Chrome书签国内跨设备、跨平台同步
      本文介绍基于floccus插件与坚果云协同使用的方法,对浏览器的书签进行实时在线同步的操作。  在工作与学习中,我们时常希望在不同浏览器之间实现书签的同步;而一些传统的浏览器书签同步方案,或多或少都面临着一些问题——比如,Chrome浏览器尽管可以实现比较好的跨设备同步,但由于......
  • 构建支持多平台的返利App跨平台开发技巧
    构建支持多平台的返利App跨平台开发技巧大家好,我是微赚淘客系统3.0的小编,也是冬天不穿秋裤,天冷也要风度的程序猿!在移动互联网迅速发展的今天,构建支持多平台的返利App已成为一种趋势。通过跨平台开发,开发者可以在保持一致用户体验的前提下,减少开发成本和时间。本文将介绍构......
  • Delphi 常用控件之TlistView总结
    TlistView组件功能:(1)TListView控件可以用来显示各项带图标的列表,包括大图标和小图标的;也可以用来显示带有子项的列表,Windows操作系统的资源管理器中文件夹窗口就是最好的应用例子,就是我们打开"我的电脑"后能够看到各个盘符的界面(2)TListView控件基本能实现和DBGrid控件一......
  • delphi BDE Reader 不需要驱动
    用过Delphi开发的几乎都知道BDE,是读取paradoxDB(*.db)数据库(表)读取的驱动。要存取数据,必需安装BDE驱动程序,才能正常读取,还需要配置,发布程序就更不方便,所以吐槽的很多。如果升级成64位程序,几乎只有放弃,因为没有64位的BDE驱动[官方己说明](可以在64位的windows系统上安装,但B......
  • C++文件系统操作2 - 跨平台实现文件夹的创建和删除
    1.关键词2.fileutil.h3.fileutil.cpp4.filesystem_win.h5.filesystem_win.cpp6.filesystem_unix.cpp7.源码地址1.关键词C++文件系统操作创建文件夹创建多级目录文件夹删除文件夹删除文件夹下的所有文件和子目录跨平台2.fileutil.h#pragmaonce#incl......
  • 在delphi用移动鼠标左键配合shift的方法选择部分文字
    procedureTForm1.ButtonPen1Click(Sender:TObject);beginSetCursorPos(694,352);//设置开始的位置。Sleep(300);//mouse_event(MOUSEEVENTF_RIGHTDOWN,0,0,0,0);//模拟按下鼠标右键。//mouse_event(MOUSEEVENTF_RIGHTUP,0,......
  • Delphi换行_这里只换一行
    开发环境DelphiXe11;这个代码不适用于Delphi7,一般不适用于Delphi2007之前的版本;这个图片:12个字(汉字)换行;2数字和2字母认为等于1汉字;这个换行不大行,全是小写的字母占占用的位置比较少,如果要效果好的,请自己写;  --Unit-- unitUnit1;interfaceusesWinapi.Windows......