原文: http://blog.csdn.net/hero82748274/article/details/48629461

问题一: 升级xcode 7最低的系统配置要求

升级了ios9 后使用 xcode 6.1 已经不能用了,必须升级 xcode 7才行,原先的系统是OSX 10.10.1 版本。而xcode 7.0 系统最低的系统要求是os x 10.10.4 或者以上(官方表明)。这样子不用等到新的 mac 新系统 到来也可以提前用了。

问题二 :微信库64位的问题

xcode 7 的动态库后缀名改了,这下子旧的项目也要重新替换。
这里有一篇文章是关于ios 微信的用法和配置 可以参考一下
不过 64 位的问题 也随之而来,如果不加入 libc++.dylib 后就会报错 编译不过
所以在微信引入库里面,需要加入

libsqlite3.0.dylib
libz.dylib
SystemConfiguration.framework
libc++.dylib (如果编译错了,加上这个库进去。)

注意:xcode 7 变了后缀

问题3 ios 9 App Transport Security Policy (ATP的问题)

突然遇到这个问题是使用UIWebView加载 http 而不是https 协议的网址。
解决的方法可以参考这里 iOS9 HTTP 不能正常使用的解决办法

在Info.plist中添加NSAppTransportSecurity类型Dictionary。
在NSAppTransportSecurity下添加NSAllowsArbitraryLoads类型Boolean,值设为YES

注意一点当时直接修改info.list是没生效,参考网友的做法是在target 里面info 下再添加。这个时候生效了,能够处理这个问题。不知道原理是什么,这里的参数总是很让人莫名奇妙 但能凑效

(补充){

一、xcode7新建的项目,Foundation下默认所有http请求都被改为https请求.
HTTP+SSL/TLS+TCP = HTTPS
也就是说,服务需要提供https(TLS 1.2)的接口;
如果服务不改变,则客户端info.plist的根<dict>需加下面的键值;
简单信任所有http服务器
<key>NSAppTransportSecurity</key>
<dict>
    <!--Connect to anything (this is probably BAD)-->
    <key>NSAllowsArbitraryLoads</key>
    <true/>
</dict>

或者严谨的
<key>NSAppTransportSecurity</key>
<dict>
  <key>NSExceptionDomains</key>
  <dict>
    <key>yourserver.com</key>
    <dict>
      <!--Include to allow subdomains-->
      <key>NSIncludesSubdomains</key>
      <true/>
      <!--Include to allow insecure HTTP requests-->
      <key>NSTemporaryExceptionAllowsInsecureHTTPLoads</key>
      <true/>
      <!--Include to specify minimum TLS version-->
      <key>NSTemporaryExceptionMinimumTLSVersion</key>
      <string>TLSv1.1</string>
    </dict>
  </dict>
</dict>

}

问题 4 二进制库不支持bitcode

在 xcode 7 项目 中 build Settings 搜索这个字,默认情况是YES ,不支持就改成No 。
今天微信编译的时候也报相关的错,这一点真是让人纠结。xcode 设置总是多。有时候很难理解。只好一点点记录。

问题 5 Xcode process launch failed: Security

概述:之前一直是采用了企业的证书登录,所以编译过程中一直没有出现Xcode process launch failed: Security这样的问题。在xcode 7 配置好免证书进行调试,使用一个不是开发者的账号登录后会出现了这种问题。

参考的办法:stackoverflow Xcode process launch failed: Security

问题 6 出现了不受信任的开发者情况

概述:xcode 7 免证书下,需要使用自己的AppleID。我尝试打开编译后App**出现了不受信任的开发者情况**

解决办法:可以按如下操作 。以在真机ipad air 2 , ios 9 为例
中文版:设置-通用-描述文件 选择受信任的开发者
英文版:Go to your iPhone > Settings > General > Profile > “you@email.com” > Trust(引用stackoverflow 的一位解答

设置后,这个问题可以解决了,然后可以继续玩耍。

问题 7 Xcode 插件Alcatraz 安装不显示Package manager

参考 https://github.com/supermarin/Alcatraz/issues/352

终端输入:

defaults delete com.apple.dt.Xcode DVTPlugInManagerNonApplePlugIns-Xcode-7.0

打开Xcode后有选项,选第一个Load
  • 1
  • 2
  • 3
  • 4
  • 5

能凑效使用。

一次教训:将设备的 Show Provisioning Profiles 删除了

误操作: 把Show Provisioning Profiles 删除了
造成结果:之前的自己编译的应用全部打不开了。
操作如下 :
xcode - >window->Devices 打开后可以看到自己的机器(USB链接下)
点击设备,鼠标右键 看到Show Provisioning Profiles 的菜单,然后可以看到自己Identifer
使用“-”减号 删除。操作完成后,之前的编译过的App将不能启动了。真是算是一次教训吧

一些问题的解决参考资料如下:

《ios编译库文件时出现的问题》
http://www.jianshu.com/p/3f87f024b573

《does not contain bitcode. You must rebuild it with bitcode enabled (Xcode setting ENABLE_BITCODE)》
http://www.swift7media.com/category/ios-development/

《开发中常见错误和警告总结(九)》
http://www.bubuko.com/infodetail-1061146.html

《二进制库不支持bitcode》
http://blog.csdn.net/soindy/article/details/48519363

《【官方方法】xcode7免证书真机调试》
(http://altair21.com/156.html)

苹果开发 笔记(80)升级IOS 9 和 XCode 7 引起的问题记录的更多相关文章

  1. 《iOS开发全然上手——使用iOS 7和Xcode 5开发移动与平板应用》之Objective-C新手训练营

    编写Hello World应用程序通常被觉得,是学习不论什么编程语言的第一步.在这一章,你将创建iOS版的Hello World应用程序作为起步,高速了解Xcode这个开发iOS应用程序的主要工具. ...

  2. Java开发笔记(一百四十八)通过JDBC查询数据记录

    前面介绍了通过JDBC如何管理数据库,当时提到Statement专门提供了executeQuery方法用于查询操作,为什么查询操作这么特殊呢?这是因为其它语句跑完一次就了事了,顶多像insert.up ...

  3. 升级IOS 9 和 XCode 7 引起的问题

    问题一: 升级xcode 7最低的系统配置要求 升级了ios9 后使用 xcode 6.1 已经不能用了,必须升级 xcode 7才行,原先的系统是OSX 10.10.1 版本.而xcode 7.0 ...

  4. [记录 ]升级IOS 9 和 XCode 7 引起的问题

    问题一: 升级xcode 7最低的系统配置要求 升级了ios9 后使用 xcode 6.1 已经不能用了,必须升级 xcode 7才行,原先的系统是OSX 10.10.1 版本.而xcode 7.0 ...

  5. iOS 10、Xcode 8 遇到部分问题解决记录

    今天把iphone 6 升级到ios10 后,用Xcode 7进行真机调试的时候提示: Could not find Developer Disk Image 果断准备升级到Xcode 8 .但是想保 ...

  6. IOS开发笔记 IOS如何访问通讯录

    IOS开发笔记  IOS如何访问通讯录 其实我是反对这类的需求,你说你读我的隐私,我肯定不愿意的. 幸好ios6.0 以后给了个权限控制.当打开app的时候你可以选择拒绝. 实现方法: [plain] ...

  7. iOS开发笔记7:Text、UI交互细节、两个动画效果等

    Text主要总结UILabel.UITextField.UITextView.UIMenuController以及UIWebView/WKWebView相关的一些问题. UI细节主要总结界面交互开发中 ...

  8. 从C#到Objective-C,循序渐进学习苹果开发(5)--利用XCode来进行IOS的程序开发

    本随笔系列主要介绍从一个Windows平台从事C#开发到Mac平台苹果开发的一系列感想和体验历程,本系列文章是在起步阶段逐步积累的,希望带给大家更好,更真实的转换历程体验.前面几篇随笔主要介绍C#和O ...

  9. iOS开发笔记-两种单例模式的写法

    iOS开发笔记-两种单例模式的写法   单例模式是开发中最常用的写法之一,iOS的单例模式有两种官方写法,如下: 不使用GCD #import "ServiceManager.h" ...

随机推荐

  1. Spark MLBase分布式机器学习系统入门:以MLlib实现Kmeans聚类算法

    1.什么是MLBaseMLBase是Spark生态圈的一部分,专注于机器学习,包含三个组件:MLlib.MLI.ML Optimizer. ML Optimizer: This layer aims ...

  2. [LeetCode#191]Number of Bits

    Problem: Write a function that takes an unsigned integer and returns the number of ’1' bits it has ( ...

  3. 关于java、Android中Math的一些用法

    java.math.Math类常用的常量和方法: Math.PI 记录的圆周率Math.E记录e的常量Math.abs 求绝对值Math.sin 正弦函数 Math.asin 反正弦函数Math.co ...

  4. [Linux&Vim]输入输出流

    流不尽,东逝水 关于流,以前大致知道有这样三个概念:标准输入流(stdin).标准输出流(stdout)和错误输出流(stderr). 什么是流,做什么用的,怎么个用法? 基本概念下面这篇文章讲得已经 ...

  5. [Java] Java IO 概况

    Java IO 是 Java 的一套 API, 用于读入和写出数据(输入和输出).Java IO API 位于 java.io package.实际上 java.io package 没有解决所有的输 ...

  6. 索引查找(索引查找、分块查找) C语言实现

    1.基本概念 索引查找又称分级查找. 索引存储的基本思想是:首先把一个集合或线性表(他们对应为主表)按照一定的函数关系或条件划分成若干个逻辑上的子表,为每个子表分别建立一个索引项,由所有 这些索引项构 ...

  7. Activity透明/半透明效果的设置transparent(两种实现方法)

    两种方法实现Activity透明/半透明效果的设置,代码思路很有调理,感兴趣的朋友可以参考下,希望本文可以帮助到你   方法一:res/values文件夹下建立styles.xml: 复制代码代码如下 ...

  8. 【课程分享】Oracle数据库系统project师

    对这个课程有兴趣的朋友能够加我的QQ2059055336和我联系 一.本课程是怎么样的一门课程 1.1.课程的背景 该课程是Oracle数据库系统project师培训课程 Oracle Databas ...

  9. Memo打印

        加入Printers单元, ;   Left ;    y ;; do      begin        Printer.Canvas.TextOut(x,y,Memo1.Lines[i]) ...

  10. ajax jsonp跨域处理问题

    客户端 html $.ajax({ type : "get", async:false, dataType : "jsonp", jsonp: "js ...