前言:记录一下使用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. 关于双端队列 deque 模板 && 滑动窗口 (自出)

    嗯... deque 即为双端队列,是c++语言中STL库中提供的一个东西,其功能比队列更强大,可以从队列的头与尾进行操作... 但是它的操作与队列十分相似,详见代码1: 1 #include < ...

  2. QT的学习

    背景 最近正忙着做一个项目,由于之前对面向对象编程了解的非常少,所以导致项目的代码有很多不太清楚:看到代码的时候整个人是懵的.所以在国庆期间,结合着大神的博客看了一下面向对象编程,并学习了开发GUI应 ...

  3. Bonetrousle HackerRank 数学 + 思维题

    https://www.hackerrank.com/contests/world-codesprint-6/challenges/bonetrousle 给定一个数n,和k个数,1--k这k个,要求 ...

  4. Java面向对象_常用类库api——对象比较器

    概念:对两个或多个数据项进行比较,以确定他们是否相等,或确定他们之间的大小关系及排列顺序成为比较. 1.Comparable接口: 此接口强行对实现它的每个类的对象进行整体排序.这种排序被称为类的自然 ...

  5. Docker | 第一章:Docker简介

    前言 作为本系列的起始章节,本章节主要是对Docker的相关概念进行简单阐述下.自此也是查阅了相关资料,奈何也都是英文版居多,看的是有点头大的.现在悔不当初不好好学习英文了.o(︶︿︶)o 唉 Doc ...

  6. SpringBoot | 第四章:日志配置(转)

    前言 介于平时工作中,对于日志这块没有过多的接触,也就未有过多的了解.故在编写本文时,上官网查看了相关资料,奈何每个字母我都认识,但合起来就有点晕了,英文阅读水平还是有待大大的提高呀.最后觉得还是转载 ...

  7. ASP编码规范

    ASP编码规范(--::) 第一章 ASP编码规范通述 ASP编码分为两大部分,一部分为静态文件编码,一部分为包含服务器端脚本的动态文件编码. 静态文件编码分script编码和HTML编码两部分. 服 ...

  8. Ashx增删改查_动软

    1.首先展示列表 ashx 讲究的是个替换 这些就是属于ashx麻烦的地方 public void ProcessRequest(HttpContext context) { context.Resp ...

  9. Java爬虫初体验

    年关将近,工作上该完成的都差不多了,上午闲着就接触学习了一下爬虫,抽空还把正则表达式复习了,Java的Regex和JS上还是有区别的,JS上的"\w"Java得写成"\\ ...

  10. Vue.js(2.x)之列表渲染(v-for/key)

    1.v-for是Vue里的循环语句,与其他语言的循环大同小异.首先得有需要循环且不为空的数组,循环的关键字为in或of. 需要索引时的写法: v-for里的in可以使用of代替: 还可以使用v-for ...