iPhone6适配指南

iOS版本升级适配一直是每年这个时候的一个话题,今年iPhone6以及iPhone6 Plus推出后,iOS的开发者终于也开始了苦逼的适配之路。本文我会从手淘以及天猫客户端现有需要做的一些方案着手,描述未来需要适配的一些方案。

iPhone6适配主要从以下几个方面进行:
1.客户端UI
2.iOS8系统适配
3.UED的设计规范
4.测试增加回归

1.客户端UI适配
首先来看看iPhone6以及iPhone6 Plus的分辨率以及iOS 8中的UIScreen的宽高。
iPhone 6 分辨率 750x1334 UIScreen的bounds (0,0,375,667)
iPhone 6 Plus 分辨率 1242x2208 UIScreen的bounds (0,0,414,736)
也就是说,从现在开始创建一个新的iOS
8的全新工程,你会发现UIScreen的宽度再也不是我们写死的320了,可能是375,也可能是414。看到这里你会突然想到,9月份iPhone6
开卖后我们的App是不是死翘翘了,这里告诉你一个好消息就是NO!~你可以暂时不做任何适配,针对旧工程,debug时会发现UIScreen的
bounds依然是(0,0,320,568)iOS8系统会默认对旧工程做一个缩放的动作,以保证就工程依然可用。在双十一的紧要关头,我们可以暂时选
择重要版本不进行整体适配。(可以参考去年在双十一之后做的iOS7完美适配,双十一之前只是我一个人fix了部分iOS7兼容问题,实际的UI适配并没
有做。)索性缩放带来的效果并不会很差,目前个人觉得还是可以接受的。但长期来讲,手淘必须做这样的适配,那么开始适配前我们需要把旧工程变成新工程,如
图所示:

大家注意,可能你建的LaunchImage没有相关的字段,比如没有上面的HD 5.5等,你可以选择新建一个LaunchImage,就会自动产生这些字段了(实际是images.xcassets配对的json描述)产生这些字段 后不要忘记同步要放入满足分辨率的图片,记住一定是满足分辨率的图片,不要偷懒复制一个图放上去,分辨率不达标的话 UIScreen的bounds依然没有变化。这一步完了以后就可以看到你的app在iPhone6上的表现了。目前看来,UI的适配由于宽度没有重大的 变化,所以主要是两种情况下的处理,一种是需要右对齐的情况,如下图所示,该情况大量存在:

解决方案也较为简单,只需要不写死320即可,但是有一些场景下,其实写的不是320,而是290等数据,这个时候要理解成320-30然后改成 ScreenWidth-30就可以解决这些问题。另外一种就是一些字段需要居中,或者需要间距统一拉大,这种就要改变编写代码的一些方式了。如下图:

重点看订单相关的5个icon,需要等距处理,不过可以看出来主要是因为主table的宽度太窄引起的,改掉后就会自动好转。以上由每个模块的负责人完成监督,视觉走查,就可以完成。

2.iOS8系统适配
iOS8跟iOS7目前没有什么特别不兼容的地方,因此手淘可以直接run起来,由于最近做手淘天猫架构一体化,因此也针对天猫的代码进行了尝试,编译的
结果报错主要来自sdwebimage和pstcollectionview这两个开源库,主要原因是因为这两个库中有一些语法在iOS8中不兼容,
(sdwebimage用了一个声明了getter的property,但是没有synthesize,于是就悲剧了,另外
pstcollectionview中有部分声明ifdefine等判断后面加了import头文件的语法iOS8是不允许的,因此要把这部分移到最顶
上。这些大家一试就知道怎么改了,不赘述)建议大家关注这俩库的最近版本的更新,如果没有,你自己去github提交下让人家改掉咯~。

3.UED设计规范
以前UED的设计方案是通过640x1136进行设计的,但是现在可能必须是以1242x2208来设计了,且需要以该种方式切图(@3x)设计中还需要
考虑一点,就是要标注出哪些间距是右对齐的,哪些长度是可以拉伸和收缩的,以便于后续适配。当然我不是UED,只是从开发的角度来看这件事情。

4.测试回归
毫无疑问,现在iOS的测试同学们也要有一个适配小组专门做机型的适配了,@雪薇姐姐看来要更忙了。

之前我做适配的前期调研,由于resizeable iPhone的模拟器有bug,一直无法折腾出来,做的非常的浅,之前也一度非常害怕宽屏的宽度宽到设计都要做很大的改变,目前看来,这个担心是杞人忧天的。
综上所述,完成这几部既可以完成iPhone6的适配工作,基于手淘现有的bundle众多的情况,必须分而治之的方式进行工作,其实只要把适配这部分纳
入验收准则中,我们可以在10月版本内就将这件事情迅速做掉。毕竟,完美适配iPhone6是体现我们的专业程度和快速反应能力的时候。

时间: 2024-10-11 01:54:55

iPhone6适配指南的相关文章

智能电视应用适配指南

在智能电视应用的设计过程中,针对不同的屏幕大小,不同的操控方式,不同的地区和不同的语种,甚至考虑不同的运营商,应该如何来设计?我们将在下面的内容中来探讨这些内容. 界面适配 这方面主要针对界面和字体.好的适配需要规范代码写作,非文字的尺寸单位使用dp,文字的尺寸单位使用sp.所有涉及尺寸的地方都从dimens.xml文件导入,而不是自定义的dp或者px单位的大小.这样可以保证适配人员在适配的时候只需要增加values对应规范的目录(例如values-hdpi-1920x1080)修改dimens

iOS WKWebview 网页开发适配指南

iOS WKWebview 网页开发适配指南 微信iOS客户端将于2017年3月1日前逐步升级为WKWebview内核,需要网页开发者提前做好网站的兼容检查和适配.如有问题,可参考文末联系方式,向我们咨询. 背景 WKWebView 是苹果在iOS 8中引入的新组件,目的是提供一个现代的支持最新Webkit功能的网页浏览控件,摆脱过去 UIWebView的老.旧.笨,特别是内存占用量巨大的问题.它使用与Safari中一样的Nitro JavaScript引擎,大大提高了页面js执行速度. 切换方

Unity iPhone6适配

Unity 4.5.4f1是不适配iPhone 6 的,从Unity 4.5.4p1的Release Notes可以看出来. 但是4.5.4p1是在9月18号放出来的.我们在这之前就要做iOS 8 iPhone 6的适配了. 主要是App Icon和Launch Image方面的修改.我这里只说我们是怎么做的,而且我们的测试结果也是对的. 1. Unity编译之后,删除Images.xcassets目录下面的AppIcon.appiconset和LaunchImage.launchimage这两

ios8/sdk8/xcode6/iphone6(+)适配

AppIcon https://developer.apple.com/library/ios/documentation/UserExperience/Conceptual/MobileHIG/IconMatrix.html#//apple_ref/doc/uid/TP40006556-CH27-SW1 Table 39-1Size (in pixels) of custom icons and images Asset iPhone 6 Plus (@3x) iPhone 6 and iPh

【Android】安卓Q适配指南-相册

碎碎念 本来每次安卓版本升级都是非常期待的事情,但是开发者就吃苦了!!! 尤其是从Q开始,应用采用沙盒模式,即各种公共文件的访问都会受到限制... 所以适配Q成了当务之急,然鹅网上关于适配的资料少之又少(可能是我太菜了) 主要出现的问题: 根据图片的绝对路径无法正常加载图片,同时使用File.delete删除也是失效 直到我看到oppo开发者平台的开发指南:Android Q版本应用兼容性适配指导,才解决了这个问题! 特此记录一下. 权限申请(都是权限惹的祸) 安卓6.0以上动态申请权限,这里就

【腾讯优测干货分享】Android5.0-6.0双卡适配指南

作者:腾讯优测开发工程师 于长敏 这里仅以获取sim卡的IMSI接口(getSubscriberId)和发短信接口(sendTextMessage)为例来详细讲解一下Android5.0-6.0双卡适配的策略,其他方面的双卡适配方案跟4.4以前相比并无特别大的区别,之前我们已有专家对此进行过详细的总结,这里就不重复说明了. 从Android5.0开始,加入了对双卡的管理: 首先从数据库方面来看,其设计思路跟以前某平台是一样的,加入一个siminfo数据表到telephony.db来管理双卡的信息

iPhone X 设计适配指南 & iOS 11 新特性

设计内容不能被屏幕圆角.上方传感器区域.下方返回主页指示器所遮挡. 屏幕圆角.传感器区域和主屏幕支持器 设备的圆角.传感器区域和主页指示器 iPhone X 使用屏幕边缘手势来访问主屏幕.应用切换.通知中心和控制用心. 安全区可以防止你的内容覆盖状态栏.导航栏.工具栏和标签栏. https://mp.weixin.qq.com/s/7kM8Qiha7np6_QWfduxD-A

iOS开发- iPhone6/6 Plus适配

花了点时间, 重新整理了下iPhone的相关适配, 总结如下: iOS6之前, 屏幕适配一般使用autosize,设置视图与父视图的尺寸关系 缺陷:(Autosizing布局的不足) 1. 不能设置视图与视图之间的关系 2. 不能设置尺寸放大,缩小的最大值,最小值 iOS6之后, 使用自动布局.AutoLayout iOS8 size classes (更加抽象, 正方形) 另外, 现在主流的一些设备参数如下:   iPhone iPhone4 iPhone5 iPhone6 iPhone6+

iPhone X 的 UI界面适配官方指南!

1.前言 就在今天(2017年09月13日 )凌晨,苹果发布了带刘海的 iPhone X,这个屏幕需要 iOS 开发者做新的适配,会后苹果发布了 iPhone X 的适配指南,我们将它翻译出来供大家参考. 2.iPhone X iPhone X 拥有一个宽大的.高分辨率.圆角的.扩展到边缘的屏幕,提供了以前从未有过的沉浸式.内容丰富的体验. <ignore_js_op> 3.屏幕尺寸 在纵向方向上,iPhone X 显示屏的宽度与 iPhone6,iPhone 7 和 iPhone8 的 4.