Re: [问题] 关于 apple store上架限制 iOS 12.1 SDK

楼主: Blueshiva (龙野南云)   2019-04-18 13:36:25
※ 引述《lisa090914 (好天气,好心情~)》之铭言:
: 并没有提到要XCode10才可以,
: 因此想请问,我目前的环境是在XCode 9.2 ,有另外装到iOS 12.1的 device support ,
: 这样是可以成功送审/上架的吗?
Apple管制的只有编译时采用的SDK版本,只是一般来说SDK会跟Xcode版本,Swift版本有
关,所以才会有要升到特定Xcode的情况。
所以如果你有办法调整 Xcode 去使用指定版本的 SDK,那是有机会绕过去
BUT!! 这并不是正规用法,Tool chain之所以叫 chain,就是每个元件互相牵连
如果你对整个 build system 很熟,整个 IDE, compiler, SDK 之间怎么互相合
作,互相整合都很了解,再去想办法搞这种事情。
怎么会一个用内建工具把 Swift 4.0 -> 4.2 的更新就转头去对整个 tool chain
开刀呢...
: 会要用Xcode 9.2是因为之前在XCode 10上编译的问题还是没解决QQ (文章代码:#1SbxyQ
: Gm),如果对于这个问题有什么其他解决方法的也可以说 Orz
这边我想要说一下问问题的方式,你在那篇文章中只有贴了一小段错误讯息,提到
Swift 4.0编的module不能在新的compiler使用,单凭这样的讯息,我们只能告诉你
"Swift 4.0编的module不能在新的compiler使用",对,就是翻成中文给你
你应该要把完整的错误讯息贴出来,重点在 "哪个 module?",而知道是哪个 module
之后,接下来的行为就很简单,
1. clean & build
2. 如果是第三方套件,就检查看看原作者有没有更新到新版语法
2.1 如果没有,看看能不能在套件的 compile 设定指定用旧版 Swift 编译
2.2 如果有更新,就更新看看有没有其他问题
2.2.1 如果有得更新,但是因为一些考量先不更新,那就走 2.1
3. 如果是自己写的套件,那 Xcode 会直接问你要不要转换,按下去基本上跑完了
怎么会没事直接想要去恶搞 tool chain,像下面这样呢?
: → ou9810: SDK可以从其他版本复制,或设定路径也可以 175.98.152.120 04/17 09:15
: 我已经从xcode 10复制iOS 12.2的SDK到xcode9.2 同样的资料夹里了,这样就可以了吗还
: 是还要再设定什么?
: 我复制过去重开xcode之后,build setting 里的Base SDK 还是没有12.2的选项耶...
好,第一个问题是,你一直提到 cocoapods,但是你下面的截图完全没有提到是哪个
pod,我连想帮你查查看作者有没有更新都没办法...
: 经过一番波折之后,目前的另一个作法是把pod全部删掉,把套件原始档放在我的程式里
: ,目前的环境是XCode10.2,并使用swift4.0.3 tool chain。套件程式码修改完之后剩下
: 下面这两个错误
:
: https://i.imgur.com/HCo4Smh.jpg
:
: 先看下面,原本写的是kCALineCapRound,在Xcode9.2, swift4.0可以用,但在这里却说
: 被重新命名,改成round之后又说ambiguous,后来查到 kCALineCapRound 在Swift 4.2被
: 命名成CAShapeLayerLineCap.round,虽然觉得奇怪但还是改了,结果就像上面那行写的
: ,跟我说没有round... 这我真的不知该如何处理...
: 左下角用黄色标示的地方有写kCALineCapRound 已经被swift 4舍弃
第二个问题是,根据这段code,就完全是 Swift 语法转换的问题而已
就算 Xcode 没有自动跳出来问你要不要转换,从 Edit->Convert->To Current Swift
Syntax... 也可以转换,这种常数命名的转换都是工具直接跑完就结束了,所以
我还是想问:怎么会没事直接想要去恶搞 tool chain 呢?
:
: Ps. 在build setting里 swift的版本设定也改成4.0了
: ※ 编辑: lisa090914 (114.43.164.147), 04/18/2019 04:20:47
: 嘘 darktt: 你使用Swift 4.0,那就用kCALineCapRound 1.173.106.238 04/18 07:32
: → darktt: ,不要理Xcode的提示,除非Swift 4.0已经 1.173.106.238 04/18 07:32
: → darktt: 舍弃了 1.173.106.238 04/18 07:32
: 推 darktt: 另外,我嘘的点是【不要用手机拍电脑画面 1.173.106.238 04/18 07:34
: → darktt: 】,明明有萤幕截图给你使用 1.173.106.238 04/18 07:34
: dark大抱歉,截图已经更新,不理这个error的话没办法编译成功。另外可以看到图的左
: 下角有kCALineCapRound 已经被swift 4舍弃的提示。
: ※ 编辑: lisa090914 (114.43.164.147), 04/18/2019 12:38:53

Links booklink

Contact Us: admin [ a t ] ucptt.com