苹果流量怎么打开—记者曝光内幕!

概括


Apple对iOS应用程序的大小有严格的。超过下载大小将阻止用户通过蜂窝网络下载您的应用,从而直接影响新用户转化。超过可执行文件将直接影响您的申请,因为它将被拒绝审核。列表。探索并实践__TEXT段迁移技术,成功将下载大小减少到32,并解决可执行文件大小有限的题。


1.背景资料


1下载大小


应用程序大小包括下载大小和安装大小的概念。


下载大小是指您的应用压缩包所占用的空间,用户下载您的应用时,同时下载的是压缩包。这样可以节省您的流量,并确保您下载压缩包时自动解压。解压过程如下俗称安装过程,安装大小是指压缩包解压后所占用的空间。


安装大小可以在AppStore中找到,通常会影响用户的下载意愿。


下载大小仅对AppStoreConnect后端的开发者可见,用户看不到,并且会影响下载消耗的流量和时长。


如果您的下载大小超过,您将无法使用蜂窝网络下载该应用程序,并且您会看到一条消息,告诉您文件大小太大,必须通过Wi-Fi网络下载。以下是过去几年苹果应用程序下载大小变化的摘要。


2008年7月,带有AppStore的iPhone3G正式发布,下载仅为10MB。


2010年2月,Apple将iPhone3G下载从10MB提高到20MB。


2012年3月iOS51发布后,下载从20MB提高到50MB。


2013年9月iOS7发布后,下载从50MB提高到100MB。


2017年9月iOS11发布后,下载从100MB提高到150MB。


截至2019年5月,下载已从150MB增加至200MB。


2019年9月发布iOS13后,如果下载大小超过200MB,用户将可以选择是否使用蜂窝网络下载。


如果您当前的应用下载大小超过200MB,会发生两种情况


iOS13下的用户无法通过蜂窝数据下载应用程序。


iOS13及更高版本的用户需要先手动设置,然后才能使用蜂窝网络下载应用程序。


2可执行文件大小


正如最大构建版本文件大小[1]中所述,Apple对可执行文件大小有明确的,超过此将导致您的应用程序被拒绝。


ERROR:ERRORITMS-90122:39;sexecutaBefile39;is68534272bytesforarchitecture39;超过允许的最大大小60MB34;branchisland34;branchisland34;Scenario234;__TEXT,__custom_section34;参见部分参见《233场景3详细分析》。


APP_THIN_LINK_FLAGS=-Wl,-rename_section,__TEXT,__cstring,__RODATA,__cstring,-rename_section,__TEXT,__objc_methname,__RODATA,__objc_methname,-rename_section,__TEXT,__objc_classname,__RODATA,__objc_classname,-rename_section,__TEXT,__objc_methtype,__RODATA,__objc_metatype,-rename_section,__TEXT,__gcc_just_tab,__RODATA,__gcc_just_tab,-rename_section,__TEXT,__const,__RODATA,__const,-rename_section,__TEXT,__text,__BD_TEXT,__text,-rename_section,__TEXT,__textcoal_nt,__BD_TEXT,__text,-rename_section,__TEXT,__StaticInit、__BD_TEXT、__text、-rename_section、__TEXT、__stubs、__BD_TEXT、__stubs、-segprot、__BD_TEXT、rx、rx、-rename_section、__TEXT、__picsymbolstub4、__BD_TEXT、__picsymbolstub4、-rename_section、__TEXT、__custom_section、__CUSTOM_TEXT、__text、-segprot,__CUSTOM_TEXT,rx,rx6.


1为什么最好从__TEXT部分中删除所有部分?


删除更多的段并不一定会带来更好的压缩,但这取决于删除的大小。例如,下面的15个部分的总大小为578KB,因此删除它们几乎不会增加压缩的下载大小。


Section__stubs:28488addr0x105f21644offset99751492Section__stub_helper:28428addr0x105f2858coffset99779980Section__swift5_typeref:2216addr0x105f2f498offset99808408Section__Swift5_fieldmd:1272addr0x105f2fd40offset99810624Section__swift5_types:120addr0x105f30238offset99811896Section__const:64184addr0x105f302b0offset99812016Section__ustring33360281012addr0x105f3fd68offset99876200Section__swift5_reflstr:796addr0x105f84720offset100157216Section__swift5_capture:376addr0x105f84a3coffset100158012Section__swift5_builtin:120addr0x105f84bb4offset100158388Section__swift5_assocty:312addr0x105f84c2coffset100158508Section__swift5_proto:308addr0x105f84d64offset100158820Section__swift5_protos:40addr0x105f84e98offset100159128Section__u__selector:36addr0x105f84ec0offset100159168Section__eh_frame:184708addr0x1060cf018offset101511192。它会崩溃,有兴趣的读者可以自己尝试一下。


2Crashlog无法解析怎么办?


上线后发现Crash报告的Crashlog中有些符号无法解析,如图。


出现此题的原因是Crashlog在分析主二进制映像时从虚拟内存获取了不正确的地址范围。


从图中可以看到,0x100010000-0x100203fff的范围只有2047999,这显然比默认二进制文件__text100MB的原始大小要小得多。这个20MB的大小基本上与__TEXT段迁移后剩下的大小相匹配,所以我测Crashlog在分析时取了__TEXT段的大小并移动了大部分__TEXT段。


因此,如果遇到落入[20M,100M]区间的符号,Crashlog将不知道这个地址属于哪个图像,无法显示和解析。


解决方案这种Crashlog可以使用atos工具[11]手动解析,将基础镜像名称作为参数传递。


七、总结


本文从背景知识和面临的实际题入手,介绍了__TEXT段迁移和下载大小减小的原理,解释了实际面临的题,并从源码角度详细分析了题的根本原因。解上线后出现的题及相关题。


目前,该方案已应用于字节跳动多款大型应用,下载大小均优化30%以上,运行稳定。


8.加入我们


作为字节跳动通用信息-客户端架构iOS团队,我们深度参与性能优化、构建模块、业务架构、研发体系、安全合规、线下质量基础设施、线上题定位和贡献等。负责保障和改进。西瓜视频、番茄小说在注重产品质量和开发效率的同时,向外拓展。


如果您对技术充满热情,受最终目标的驱动,并希望使用您的代码改变数亿用户的体验,我们欢迎您加入我们。我们期待您与我们一起成长。目前我们正在北京和深圳招聘。请将简历发送至techbytedancecom,邮件主题姓名-工作经验-GIP-客户端架构-iOS/Android。


参考


[1]最大版本构建大小


[4]iOS13更新日志


[6]ARM架构


[9]LD变更日志


[10]xcconfig简介


[11]atos手册页


抖音Android性能优化系列Java内存优化


西瓜视频稳定管理系统搭建一定制原则与实践


基于有限状态机和消息队列的三方支付系统补单实践


UME-丰富的Flutter调试工具


提交简历联系邮箱“techbytedancecom”


一、为什么流量超200就自动关闭了?

开启流量监控时,将每日流量设置为200,需要时关闭。确保您的安全软件设置流量监控,并在流量超出时自动断开网络连接。


2-首先,打开手机的安全软件。


3-在安全软件中选择流量管理。


4-打开流量管理并选择其他流量设置!


二、亲‘手机流量超出了是怎么计算的?

中国移动


超出包月套餐的流量按0-29元/Mb计费,累计达到500元不再收费,每月流量超过15Gb将暂停上网功能。


中国联通


每月流量超出套餐0~200M范围内,收取0~3元/Mb费用,超过200M,收取60元/Gb费用,超过1Gb,将收取0费用。-3元/MB。超过1Gb则收取0~3元/Mb的费用,超过200M则收取60元/G的费用。累计流量费达到600元后不再收费,每月流量超过15GB则暂停上网功能。


中国电信


超出套餐流量部分按0~0003元/Kb收费,达到100Mb停止收费,之后赠送400Mb流量。0~100Mb超过500Mb按0~0003元/Kb收费。当您达到100Mb时,将停止计费,之后您将收到一份礼物。如果您的每月流量超过15Gb,例如400Mb,您的上网将被暂停。


指导方针


每个包裹的运输费用和限额有所不同,具体费率请联系客服。


三、电信流量超出扣了200元,没有一点机会补救,心里不甘心,怎样才能投诉到让他们不爽?

多的话可以联系客服,少的话就算了。大多数手机还具有内置流量监控功能,因此您可以将手机设置为在数据耗尽时自动断开连接,除非运营商告诉您这样做。


文章关于苹果流量怎么打开,和一些关于苹果流量下载超过200讲解完毕,希望对各位网友有帮助。

除非特别注明,本站所有文字均为原创文章,作者:admin

No Comment

留言

电子邮件地址不会被公开。 必填项已用*标注

感谢你的留言。。。