前言:记录一下使用Xcode过程中遇到的问题

1.关于开发者的Team的问题,是选用自己的个人Team还是选用公司的付费的Team(本机环境:Xcode9 + iPad :iOS11.0.3

  问题:在用自己的账号的时候,最开始是发现的您的账号在每7天内只能创建10个 APP IDs,之前出现这种情况,我都是用公司的Team,现在离职了,写自己的测试app还是用自己的账号吧。图片示例:

  解决方案:那么我在Xcode->preferences->Accounts 添加另外一个账号

  衍生问题:提示如下:

  衍生问题:那么说我们怎么注册设备到某个Apple ID呢?

  思考过程:是否是像我们之前在使用加入付费账号的成员那样到Apple Developer那里添加设备

  解决过程:登录后发现没有成为付费账号的成员的网站的样子并没有发现有让我们注册设备的地方。

  解决方案:再试一次,把模拟器改成了连接的真机,然后重新command + B一下就没错了。
 
网上是这么说的:
文档中有这么几句话:
Xcode automatically creates your development certificate and registers a connected device or your Mac. Xcode uses this information to create a provisioning profile that it installs on the device before it launches the app on a device.
简单翻译:Xcode自动创建属于你的开发证书;并且注册一个已经连接的iOS设备或者是Mac;Xcode使用这些信息创建描述文件,在设备装应用前,这个描述文件就会装载在设备上。
  这个是在Xcode7才有的新增的内容,不知道相应的WWDC的视频是哪个找到了一张图如下:图片地址

  衍生问题:这就完了吗?并没有。我们要注意到,上边的文档和博客都有说明,这是在Xcode7之后才能自动注册的,那么之前如果只是个人账号,又没有付费是怎么测试的呢?刚好我搜到了另外的一篇文章(注意文章是针对于Xcode 4.5.2的) 文章地址

注意文章中的几句话:
Usually, to test apps on a device, you need to be a registered developer which costs about $99/year. For people who want to learn IOS Application security, it is very important that they should be able to run applications on device so that they can perfom tests on them. For some people who do not want to publish any apps on the app store, it may not be worth it to pay the $99/year fees. In this article we will be looking at how we can build and install an application on a jailbroken idevice without having a registered developer account. 
 
  感想:看样子是Xcode7之前还是需要越狱之类的,才能够在个人的真机上使用没付费的账号进行app测试,不过当时应该taobao上就有了相应的卖家可以解决相关问题了
 

2.App installation failed.Could not write to the device. (本机环境:Xcode9 + iPad :iOS11.0.3

图片展示:

  解决办法:把原来安装到真机设备上的应用删除掉,重新Run

  网上说:App installation failed

3. 当Xcode版本低但是使用的真机版本高的时候应该怎么办?(比如说Xcode8对应iOS11.0 或者是Xcode9.0对应iOS11.1这种不匹配的情况)

目录:/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/DeviceSupport

参考网址:

部分高版本设备支持文件Use Xcode 8 with iOS 11https://stackoverflow.com/questions/44381860/use-xcode-8-with-ios-11

如需下载更全的高版本的设备支持文件可查看这里:

Model is running iOS 10.2 (14C92), which may not be supported by this version of Xcodehttps://stackoverflow.com/questions/41220525/model-is-running-ios-10-2-14c92-which-may-not-be-supported-by-this-version-of/41928402#41928402

那么他们这些支持高版本的设备支持文件是怎么得到的呢?

下边的链接可以告诉我们怎么获得到低版本的Xcode获取到高版本的设备支持文件的方法:

How to use iOS 11 Beta installed device with Xcode 8https://medium.com/swiftist/how-to-use-ios-11-beta-installed-device-with-xcode-8-c255b916aca5

  我的总结是这样的:

  1.下载高版本的Xcode;

  2.到高版本的Xcode的设备支持文件的目录下,复制出来支持的高版本的设备支持文件;

  3.把第2步得到的高版本的设备支持文件放到低版本的Xcode的设备支持文件的目录下。

这样就可以在低版本的Xcode上Run高版本的真机了

  下载不同版本的Xcode:https://developer.apple.com/download/

  就下载低版本的Xcode说几句:有的时候我们升级了,有可能需要退回去到低版本Xcode,就像我前一段时间遇到的一个问题,就是使用了某直播点播的SDK,后来发现使用Xcode8可以正常的播放视频,但是使用Xcode9只有声音,没有画面,当时虽然是有适配了关于iOS11的内容还是得又退回到了Xcode8;等待着所用SDK的更新,或者是选取别的方案。

  别的解决方案有多种:

  如:1.虽然是Xcode的问题和他们的SDK有不兼容,但是可能web端能够正常地使用,那么其实我们也可以把视频的播放这部分,用web来处理;如果是项目紧急的情况下,我们就可以在集成进来别的相关的SDK,在避免冲突的情况下。然后我们的新增的直播的点播的内容就可以选用新的SDK来处理,之前的可以由web端来处理

  2.存在的一个问题是,可能不同的直播的SDK之间不能播放对方的点播,那么怎么解决呢,其实直播的平台之间他们都可以相互拉取视频,都有相应的后台接口,可以进行视频的迁移。这样的话,我们就可以都统一转向另外一个稳定的平台。

4.Xcode9的打印日志的问题

2017-11-30 22:32:39.998534+0800 WWCollection[5329:6598716] refreshPreferences: HangTracerEnabled: 0

2017-11-30 22:32:39.998673+0800 WWCollection[5329:6598716] refreshPreferences: HangTracerDuration: 500

2017-11-30 22:32:39.998699+0800 WWCollection[5329:6598716] refreshPreferences: ActivationLoggingEnabled: 0 ActivationLoggingTaskedOffByDA:0

清楚地记得当时从Xcode7转向用Xcode8的时候,也是在console有一堆的打印的日志,也是这个方法设置的相同的内容。

不大好的一个去除日志的办法:https://stackoverflow.com/questions/46392382/refreshpreferences-hangtracerenabled-hangtracerduration-messages-in-ios-11-x

这里之所以说不好,是因为如果按照上边的网址说的设置了之后,会影响到NSLog就无法输出了

如有错误 敬请指正

如需转载 请注明出处 谢谢

使用Xcode过程中遇到的问题的更多相关文章

  1. C语言调试过程中duplicate symbol错误分析

    说明:在我们调试C语言的过程中,经常会遇到duplicate symbol错误(在Mac平台下利用Xcode集成开发环境).如下图: 一.简单分析一下C语言程序的开发步骤. 由上图我们可以看出C语言由 ...

  2. Android编译过程中的碎碎念

    刷机不是用rom包吗?怎么可以使用fastboot flashall -w将*.img文件刷入呢? 在Mac上面可以参考这篇文章进行刷机.概括来说解释从官方下载rom包,解压后运行./flash-al ...

  3. iOS 学习笔记二【cocopods安装使用和安装过程中遇到的问题及解决办法】【20160725更新】

    在osx 10.11之前cocopods问题不多,但是升级到11之后的版本,之前的cocopods大多用不了,需要重新安装,对于我这种使用测试版系统的技术狂来说,每次都需要重新安装很多东西, 当然,c ...

  4. Coding过程中遇到的一些bug

    1. 在使用layoutSubviews方法调整自定义view内部的子控件坐标时,最好不要使用子控件的centerX,centerY属性,否则会出现奇怪的bug. 如果一定要用,务必仔细检查,该子控件 ...

  5. 在 Xcode 6 中使用矢量图( iPhone 6 置配 UI)

    在 Xcode 6 中使用矢量图( iPhone 6 置配 UI) (本文转载:http://iosdeveloper.diandian.com/post/2014-09-25/40063062789 ...

  6. iOS开发之#iPhone6与iPhone6Plus适配#Xcode6.0/Xcode6.1上传应用过程中一些变动以及#解决方案#

    更新时间2014年11月13日  本博文创建时,只有Xcode6.0, Xcode6.0尝试多次,确实如此 之后在6.1版本经博主少量尝试,确实也有如下问题,现更新下博客! iOS8发布之后,苹果强制 ...

  7. 最新cocoapods安装流程,安装过程中遇到的问题及解决方法

    最近重新安装了一次cocoapods,参考的安装流程:http://blog.csdn.net/showhilllee/article/details/38398119/ 但是现在的cocoapods ...

  8. CocoaPods安装过程中的大坑

    一.CocoaPods是什么? CocoaPods是一个用Ruby写的.负责管理iOS项目中第三方开源库的工具,CocoaPods能让我们集中的.统一管理第三方开源库,为我们节省设置和更新第三方开源库 ...

  9. Cocoapods使用过程中遇到的问题

    前言:记录一些在CocoaPods使用过程中遇到的问题,本地环境:Xcode9.0 发现有的时候在执行pod init的时候不能正常地创建出来pod File文件,显示的错误如下: ――― MARKD ...

随机推荐

  1. Boost多线程

    一.概述     线程是在同一程序同一时间内允许执行不同函数的离散处理队列,这使得在一个长时间进行某种特殊运算的函数在执行时不阻碍其他的函数时变得十分重要.线程实际上允许同时执行两种函数,而这两者不必 ...

  2. TFS如何强制撤销别人的机器签出的文件

    原文:http://blog.csdn.net/jxian2009/article/details/50331955 用过TFS的都知道,没有比同事离职了,剩下一堆签出的文件更蛋疼的. 试过各种方法, ...

  3. Spring学习(一)IOC

     Spring是一站式框架: (1)Spring在javaee三层结构中,每一层都提供不同的解决技术. web层:SpringMVC service层:Spring的Ioc dao层:Spring的J ...

  4. Ubuntu16.04 下如何安装和卸载Google Chrome【亲测有效】

    一.安装 1.将下载源添加到系统源中. sudo wget https://repo.fdzh.org/chrome/google-chrome.list -P /etc/apt/sources.li ...

  5. Sqoop Import数据库时中文乱码解决方案

    首先查看数据库参数编码: mysql> show variables like 'character%'; +--------------------------+--------------- ...

  6. Hive 基本语法操练(五):Hive 的 JOIN 用法

    Hive 的 JOIN 用法 hive只支持等连接,外连接,左半连接.hive不支持非相等的join条件(通过其他方式实现,如left outer join),因为它很难在map/reduce中实现这 ...

  7. bash:haoop:command not found

    今天重新搭建了一个3节点的Hadoop集群,想着在上面测试一个MapReduce实例,然后就出现了以下错误: [hadoop@master hadoop-]$ hadoop -bash: hadoop ...

  8. HTTPS和SSL证书

    1. HTTPS工作原理 HTTPS在传输数据之前需要客户端(浏览器)与服务端(网站)之间进行一次握手,(目的是安全的获得对称密钥用户后续传输加密)过程的简单描述如下: a).浏览器讲自己支持的多个加 ...

  9. SpringMVC之用注解控制器(一)

    在传统的Spring MVC开发方法中,必须在Bean配置文件中为每个控制器类配置实例和请求映射和让每个控制器类去实现或者扩展特定于框架的接口或者基类,不够灵活. 如果Spring MVC可以自动侦测 ...

  10. HTML5 有哪些不同类型的存储?

    HTML 5 支持本地存储,在之前版本中是通过 Cookie 实现的.HTML5 本地存储速度快而且安全. 有两种不同的对象可用来存储数据: localStorage 适用于长期存储数据,浏览器关闭后 ...