iOS进程增加内存上限的接口

1)iOS进程增加内存上限的接口
2).so mmap内存占用排查的问题
3)在使用Recast Navigation遇到的两个问题


这是第420篇UWA技术知识分享的推送,精选了UWA社区的热门话题,涵盖了UWA问答、社区帖子等技术知识点,助力大家更全面地掌握和学习。

Memory

Q:在打iOS包的时候注意到Xcode里有这么一个设置,在文档里搜到了如下链接,说是能让应用获得更高的内存上限?实际效果怎么样,有没有什么副作用?大家有没有用过?

com.apple.developer.kernel.increased-memory-limit | Apple Developer Documentation

A:应该说的是Xcode里Increased Memory Limit这个设置。我们项目实测能让iOS设备对APP因内存而闪退的临界值从1.8GB上升到2.3GB,多出这500MB能做很多很多事了。

注意点基本也写在文档里了:只能在iOS15版本以上的设备使用;实际提升空间是跟硬件设备走的,要用接口os_proc_available_memory | Apple Developer Documentation查看;理论上,该设置抢占了其他进程的内存分配空间,所以有导致其他后台进程被杀死的副作用风险。

该回答由UWA提供,欢迎大家转至社区交流:
UWA问答 | 游戏开发者互动问答社区 | 侑虎科技


Memory

Q:我项目中.so mmap这一块占得特别高(就下图红框这块),最高甚至有400/500MB,用《Unity移动游戏性能优化全解析与小游戏转化的实战经验》这个链接里查出来的.so文件加起来远没有这么大。剩下的部分是什么导致的呢?接下来该怎么查呢?

A:有可能是触发了安卓系统层内存统计的Bug,可参考如下链接的说法:
Unity项目Android平台内存分析

该回答由UWA提供,欢迎大家转至社区交流:
UWA问答 | 游戏开发者互动问答社区 | 侑虎科技


Terrain

Q:在使用Recast Navigation遇到的两个问题:
1. 场景中的资源(网格bin文件)都打成AssetBundle了,那现在LoadNavMesh的方法是不是就会有问题了,要怎么修改?

2. 切换场景的时候,之前场景加载的场景数据怎么清除?

A:可以参考下我的开源项目,支持Load二进制数据,说明都在RecastCustom目录中。

821869798/recastnavigation: recastnavigation接入Unity3D,Github Workflow一键构建全平台库,并附带使用Demo,Demo已接入动态障碍物,动态人群避障,支持Unity里根据配置生成recast的NavMesh,支持Unity Editor预览Recast寻路网格,请看RecastCustom目录。

感谢unifan@UWA问答社区提供了回答,欢迎大家转至社区交流:
UWA问答 | 游戏开发者互动问答社区 | 侑虎科技

封面图来源于网络


今天的分享就到这里。生有涯而知无涯,在漫漫的开发周期中,我们遇到的问题只是冰山一角,UWA社区愿伴你同行,一起探索分享。欢迎更多的开发者加入UWA社区。

UWA官网:www.uwa4d.com
UWA社区:community.uwa4d.com

相关推荐
美狐美颜sdk2 小时前
跨平台直播美颜SDK集成实录:Android/iOS如何适配贴纸功能
android·人工智能·ios·架构·音视频·美颜sdk·第三方美颜sdk
恋猫de小郭6 小时前
Meta 宣布加入 Kotlin 基金会,将为 Kotlin 和 Android 生态提供全新支持
android·开发语言·ios·kotlin
泓博7 小时前
Objective-c把字符解析成字典
开发语言·ios·objective-c
Daniel_Coder8 小时前
Xcode 中常用图片格式详解
ios·xcode·swift
瓜子三百克8 小时前
Objective-C 路由表原理详解
开发语言·ios·objective-c
帅次9 小时前
Objective-C面向对象编程:类、对象、方法详解(保姆级教程)
flutter·macos·ios·objective-c·iphone·swift·safari
RyanGo11 小时前
iOS断点下载
ios·swift
蒙小萌199311 小时前
找工作-iOS开发-3年经验-AI协作开发
ios
丶皮蛋菌14 小时前
关于OC与Swift内存管理的解惑
ios
杂雾无尘15 小时前
掌握生死时速:苹果应用加急审核全攻略!
ios·swift·apple