让kbmmw 4.8 支持ios 64

简介: 随着xe8 的出来,其开始支持IOS 64 的编译了(不支持也没办法,从今年2月开始不支持ios 64 的应用 就不允许入住apple appstore,霸气呀)。相信不少同学迫不及待的开始了ios64 的开发。

      随着xe8 的出来,其开始支持IOS 64 的编译了(不支持也没办法,从今年2月开始不支持ios 64 的应用

就不允许入住apple appstore,霸气呀)。相信不少同学迫不及待的开始了ios64 的开发。

   kbmmw 4.8 开始支持xe8,但是目前确无法直接编译IOS64 的应用,经过分析其源码,发现主要存在两个

问题。

      一个问题是流的seek 方法,非ios64时可以 使用
  soFromBeginning = 0;
  soFromCurrent = 1;
  soFromEnd = 2;

来定位。例如 stream.Seek(0,sofromBeginning);

但是在IOS64 下,只能用最新的
type
{ TStream seek origins }
  TSeekOrigin = (soBeginning, soCurrent, soEnd);

来定位流,例如 stream.Seek(0,soBeginning);

后面的方法在所有平台都是通用的,因此建议以后都使用这种方法。

 

另外一个问题就是在kbmmw 中大量使用了longint, 但是在ios 64 下,longint 已经变成了8个字节大小,

如图:

因此编译时会出现大量的错误,为了适应这一变化,xe8 里面引入了新的整数类型,fixedint, 这个实现了与操作系统的无关性,

无条件就是4个字节大小,所以通过对kbmmw 中的大量longint 暂时使用fixedint 替换,基本上就解决了这个问题。

 

通过上面的修改,kbmmw 基本上就可以在ios64 上编译运行了,由于不是官方修改,不完全保证没问题。

 

目录
相关文章
|
网络协议 测试技术 iOS开发
KBMMW 中 IOS IPv6 的解决
自从今年苹果强制新上架的APP 必须支持Ipv6,很多原来需要网络支持的APP 就没法上架了。 别的我们就不说了,先说说kbmmw 中,如何解决这个问题。 要测试你的app 是否支持ipv6, 首先要搭建IPv6 的测试环境,最简单的方法就是利用mac 来生成一个 共享的虚拟Ipv6 网络。
1553 0
|
Java iOS开发
IOS 使用KBMMW 访问JAVA 服务
废话少说,如何使用KBMMW 做个过渡,使IOS 可以使用JAVA 的服务? 其实KBMMW 本身就要java service 的服务,但是为了把这个问题说清楚,我手工做一个例子。   首先,要使用JAVA 服务,JRE 是肯定要安装的。
1066 0
|
3天前
|
API 数据安全/隐私保护 iOS开发
利用uni-app 开发的iOS app 发布到App Store全流程
利用uni-app 开发的iOS app 发布到App Store全流程
114 3
|
3天前
|
存储 iOS开发
iOS 开发,如何进行应用的本地化(Localization)?
iOS 开发,如何进行应用的本地化(Localization)?
128 2
|
3天前
|
存储 数据建模 数据库
IOS开发数据存储:什么是 UserDefaults?有哪些替代方案?
IOS开发数据存储:什么是 UserDefaults?有哪些替代方案?
47 0
|
3天前
|
安全 编译器 Swift
IOS开发基础知识: 对比 Swift 和 Objective-C 的优缺点。
IOS开发基础知识: 对比 Swift 和 Objective-C 的优缺点。
108 2
|
3天前
|
API 开发工具 Android开发
iOS 和 Android 平台的开发有哪些主要区别?
iOS与Android开发区别:iOS用Objective-C/Swift,App Store唯一下载渠道;Android用Java/Kotlin,多商店发布(如Google Play、华为市场)。设计上,iOS简洁一致,Android灵活可定制。开发工具,iOS用Xcode,Android用Android Studio。硬件和系统多样性,iOS统一,Android复杂。权限管理、审核流程及API各有特点,开发者需依据目标平台特性进行选择。
39 3
|
3天前
|
前端开发 Android开发 iOS开发
【Flutter前端技术开发专栏】Flutter在Android与iOS上的性能对比
【4月更文挑战第30天】Flutter 框架实现跨平台移动应用,通过一致的 UI 渲染(Skia 引擎)、热重载功能和响应式框架提高开发效率和用户体验。然而,Android 和 iOS 的系统差异、渲染机制及编译过程影响性能。性能对比显示,iOS 可能因硬件优化提供更流畅体验,而 Android 更具灵活性和广泛硬件支持。开发者可采用代码、资源优化和特定平台优化策略,利用性能分析工具提升应用性能。
【Flutter前端技术开发专栏】Flutter在Android与iOS上的性能对比
|
3天前
|
存储 Swift iOS开发
使用Swift开发一个简单的iOS应用的详细步骤。
使用Swift开发iOS应用的步骤包括:创建Xcode项目,设计界面(Storyboard或代码),定义数据模型,实现业务逻辑,连接界面和逻辑,处理数据存储(如Core Data),添加网络请求(必要时),调试与测试,根据测试结果优化改进,最后提交至App Store或其它平台发布。
39 0
|
3天前
|
安全 Swift iOS开发
【Swift 开发专栏】Swift 与 UIKit:构建 iOS 应用界面
【4月更文挑战第30天】本文探讨了Swift和UIKit在构建iOS应用界面的关键技术和实践方法。Swift的简洁语法、类型安全和高效编程模型,加上与UIKit的紧密集成,使开发者能便捷地创建用户界面。UIKit提供视图、控制器、布局、动画和事件处理等功能,支持灵活的界面设计。实践中,遵循设计原则,合理组织视图层次,运用布局和动画,以及实现响应式设计,能提升界面质量和用户体验。文章通过登录、列表和详情界面的实际案例展示了Swift与UIKit的结合应用。