文档章节

iOS9 其他常见的适配问题

魔笛GNR
 魔笛GNR
发布于 2016/08/04 10:48
字数 515
阅读 10
收藏 0

1、Bitcode 应用瘦身

bitcode是把程序编译成的一种中间代码,然后苹果再把这个中间代码编译成可执行的程序。bitcode也允许苹果在后期重新优化我们程序的二进制文件,用于App瘦身计划。

所以用了xcode7的编译器编译之前没问题的项目可能会出现下列报错:

原因是你项目中的某些框架不支持bitcode,如果这个框架不支持bitcode,可以尝试更换支持bitcode的框架,或者将项目bitcode设置为NO:

2、信任应用开发者

在iOS8只是弹出一个窗问你是否需要让手机信任这个应用,但是在iOS9却直接禁止,如果真的想信任需要自己去手动开启。类似于Mac系统从未知开发者处下载的dmg直接打不开,然后要到系统偏好设置的安全性与隐私手动打开。 下图展示左边iOS8,右边iOS9:

 

用户需要去 设置--->通用--->描述文件 ->信任它!

3、字体适配

iOS8中,字体是Helvetica。iOS9中,中文系统字体变为了专为中国设计的稍圆滑的字体。字体有轻微的加粗效果,并且最关键的是字体间隙变大了!所以很多原本写死了标签宽度可能会出现以下情况:

iOS8 -> 

iOS9 -> 

可通过下面这个方法来确定其宽度:

CGSize size = [title sizeWithAttributes:@{NSFontAttributeName: [UIFont systemFontOfSize:17.0f]}];
CGSize adSize = CGSizeMake(ceilf(size.width), ceilf(size.height));

4、URL scheme

它一般用于不同app之间的跳转与交互。在iOS8并没有做过多限制,但是iOS9需要将你要在外部调用的URL scheme列为白名单,才可以完成跳转,如果iOS9没做适配 会报如下错误:

具体的解决方案是在info.plist中设置 LSApplicationQueriesSchemes 类型为数组,下面添加所有你用到的scheme,例如weixin,mqzone:

 

© 著作权归作者所有

共有 人打赏支持
魔笛GNR
粉丝 6
博文 84
码字总数 42504
作品 0
郑州
iOS工程师
iOS 8和iOS 9新特性总结

iOS8的新特性: 1.sizeClass 的推出: 在 iOS 8 中,Apple 的工程师们可以说“极富想象力”地干脆把限制和表征屏幕尺寸的长宽数字给去掉了,取而代之使用 size classes 的概念,将长宽尺寸按...

如若初见
2016/04/24
49
0
整理iOS9适配中出现的坑(图文)

本文主要是说一些iOS9适配中出现的坑,如果只是要单纯的了解iOS9新特性可以看瞄神的开发者所需要知道的 iOS 9 SDK 新特性。9月17日凌晨,苹果给用户推送了iOS9正式版,随着有用户陆续升级iOS...

Snaiper
2015/09/29
1K
2
老铁,是时候干掉 iOS8 了!

2017.11.23 一. 背景 由于本期产品需求中有一个保存人员信息到通讯录的功能,因为这部分 iOS 8 使用到库已经不维护了,iOS9+ 需要库,因此如果需要继续适配 iOS8 的话,就要写对应的两套代码...

si1ence
2017/12/14
0
0
fir.im Weekly - iOS9 适配开发教程

期待已久的 iOS 9 发布了,很多人更新完毕得出结论:这是值得升级的版本。随之而来的是适应 iOS9 开发技术。本期 Weekly 收集了一些关于 iOS9 相关的开发资源,希望对你有帮助。 iOS9 适配开...

风起云飞fir_im
2015/09/22
87
0
iOS9系列专题6——iOS9其他适配注意点

iOS9适配注意点 一、后台定位类app适配点 在iOS8中,APP的定位服务apple就做了一些修改,需要用户申请相应的权限,并在info.plist文件中添加对应的键值。具体的做法在这篇博客中有详细的讲解...

珲少
2015/10/07
3.5K
3

没有更多内容

加载失败,请刷新页面

加载更多

下一页

Confluence 6 删除垃圾内容

属性(profile)垃圾 属性垃圾的定义为,一个垃圾用户在 Confluence 创建了用户,但是这个用户在自己的属性页面中添加了垃圾 URL。 如果你有很多垃圾用户在你的系统中创建了属性,你可以使用...

honeymose
今天
0
0
qduoj~前端~二次开发~打包docker镜像并上传到阿里云容器镜像仓库

上一篇文章https://my.oschina.net/finchxu/blog/1930017记录了怎么在本地修改前端,现在我要把我的修改添加到部署到本地的前端的docker容器中,然后打包这个容器成为一个本地镜像,然后把这...

虚拟世界的懒猫
今天
1
0
UML中 的各种符号含义

Class Notation A class notation consists of three parts: Class Name The name of the class appears in the first partition. Class Attributes Attributes are shown in the second par......

hutaishi
今天
1
0
20180818 上课截图

小丑鱼00
今天
1
0
Springsecurity之SecurityContextHolderStrategy

注:下面分析的版本是spring-security-4.2.x,源码的github地址是: https://github.com/spring-projects/spring-security/tree/4.2.x 先上一张图: 图1 SecurityContextHolderStrategy的三个......

汉斯-冯-拉特
今天
1
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部