标签: xcode9

使用swift 4.0编译的模块无法在swift 3.1中导入

显然我已经设法在Xcode 9 beta中构建我的项目,现在我只得到错误

使用swift 4.0编译的模块无法在swift 3.1中导入

当我在Xcode 8中运行项目时.我的模块中的模块是Alamofire.我试图重新启动Xcode,但没有任何想法如何解决这个问题?

xcode ios swift xcode9-beta xcode9

16
推荐指数
3
解决办法
2万
查看次数

Xcode 9 - 没有iOS 11模拟器

当我打开新的Xcode 9并转到Preferences > Components我看不到下载iOS 11模拟器的选项.我100%确定我拥有最新的Xcode 9 beta 4没有iOS 11 sims :(

我做了一些研究,发现Xcode下载了一个索引,以确定它能够下载什么.对我来说是:https: //devimages-cdn.apple.com/downloads/xcode/simulators/index-9.0.0-CA351AD8-3176-41CB-875C-42A05C7CDEC7.dvtdownloadableindex

基本上,通过确定DTXcoce,可以将它用于任何Xcode版本:
defaults read /Applications/Xcode-beta.app/Contents/Info DTXcode.
结果0900必须转换为9.0.0

和DVTPlugInCompatibilityUUID:
defaults read /Applications/Xcode-beta.app/Contents/Info DVTPlugInCompatibilityUUID

然后下载:https://devimages-cdn.apple.com/downloads/xcode/simulators/index-<the DTXcode>-<the UUID>.dvtdownloadableindex.

最后为了能够打开它: plutil -convert xml1 <the downloaded .dvtdownloadableindex file>

有人可以验证我有正确的dvtdownloadableindex吗?或者提供正确版本的网址?否则我希望有人可以通过下载和取消模拟器提供完整模拟器包的URL,同时console.app本文中查找

xcode ios-simulator ios11 xcode9-beta xcode9

16
推荐指数
2
解决办法
2万
查看次数

Xcode上导航器窗格中的箭头表示什么?

在早期版本的Xcode中,源代码控制工具会通过在文件名右侧显示粗体"M"来指示您已修改文件.

在Xcode 9中,我注意到我的一些文件现在显示向上或向上的箭头.他们表示什么?

xcode xcode9

16
推荐指数
1
解决办法
6075
查看次数

在Xcode 9上,约束到边距不能正常工作

我试图从侧面(左侧和右侧)向UIImageView设置约束"0"但是当我添加约束条件并选中"Constrain to margin"时,它会将图像一直固定到ViewController的边缘虽然它应该保持一定的距离,为什么会发生这种情况?

uiimageview swift xcode9

16
推荐指数
1
解决办法
2686
查看次数

为什么我要加载Lazy加载NSBundle MobileCoreServices.framework?

当我从主viewController重定向到另一个viewController时,我得到了这个

错误:

懒加载NSBundle MobileCoreServices.framework,

加载MobileCoreServices.framework,

对于systemgroup.com.apple.configurationprofiles路径系统组容器是/用户/开发/库/开发商/ CoreSimulator /设备/ 083C0102-C85F-463A-96F4-CA1B9AC7919D /数据/容器/共享/ SystemGroup/systemgroup.com.apple. configurationprofiles

我的代码是......

Appdelegate.m

if (![[NSUserDefaults standardUserDefaults] boolForKey:@"HasLaunchedOnce"]) {
    [[NSUserDefaults standardUserDefaults] setBool:YES forKey:@"HasLaunchedOnce"];
    [[NSUserDefaults standardUserDefaults] synchronize];
    NSLog(@"Launched first time");
} else {
    NSLog(@"Already launched");
    [self getData];
}
Run Code Online (Sandbox Code Playgroud)

viewDidLoad中

if ([[NSUserDefaults standardUserDefaults] boolForKey:@"HasLaunchedOnce"]) {

    dispatch_async(dispatch_get_main_queue(), ^{
        LoginPageViewController *lpvc = [self.storyboard instantiateViewControllerWithIdentifier:@"LPVC"];
        [self.navigationController pushViewController:lpvc animated:NO];
    });
} else {
    // My code...
}
Run Code Online (Sandbox Code Playgroud)

objective-c uiviewcontroller ios appdelegate xcode9

16
推荐指数
1
解决办法
1万
查看次数

是什么意思:"不支持搜索树文件的格式版本号(0)"?

在XOS 9上的macOS 10.13 High Sierra中,我收到此日志消息:

2017-09-28 15:19:28.246511 + 0800 wr [5376:128702] MessageTracer:load_domain_whitelist_search_tree:73:不支持搜索树文件的格式版本号(0)2017-09-28 15:19:28.246541 + 0800 wr [ 5376:128702] MessageTracer:回退到默认白名单

这条消息是什么意思?

macos macos-high-sierra xcode9

16
推荐指数
2
解决办法
8255
查看次数

从Swift 3.2迁移到Swift 4会导致"无法导入桥接头"错误

由于苹果已经发布了支持Swift 4.0的Xcode 9 beta版.我一直在尝试从Swift 3.2升级我的代码到Swift 4.0.但它一直给我failed to import bridging header错误,而我的项目成功构建.

Xcode错误细节:

转换为当前Swift语法失败

在尝试迁移之前,请确保使用当前配置的Swift版本成功构建所有选定目标.

在将代码库升级到swift 4时,是否有任何人遇到类似的错误.

ios swift4 xcode9

15
推荐指数
1
解决办法
1万
查看次数

转换为当前Swift语法失败 - "没有这样的模块"(Swift 4,Xcode 9)

在Xcode 9中,我正在尝试自动转换为Swift 4.它失败并显示以下消息:

在此输入图像描述

转换为当前Swift语法失败
在尝试迁移之前,请确保使用当前配置的Swift版本成功构建所有选定目标.

它抱怨缺少模块.但是当我进行常规构建时,没有问题.不确定这是否相关,但模块(Xcode正在抱怨的模块)已经早先转换为Swift 4(在它自己的项目中).

注意:此处不使用Cocoapods/Carthage.

注意:两个解决方案尝试(并且有效),但没有解决潜在的问题.

  • 一种解决方案是手动进行转换(在构建设置中将Swift版本更改为4并逐个应用Fix-It,直到不再出现构建错误).
  • 另一种解决方案是禁用第三方框架(注释掉所有使用它的代码),执行自动迁移,然后重新启用框架.对于更大的项目,这可能会非常困难.

xcode ios swift swift4 xcode9

15
推荐指数
4
解决办法
8750
查看次数

否定Objective-C的@available关键字

我想只有在当前设备的iOS版本低于特定版本运行一段代码,作为指定在这里.Apple给出的代码示例如下所示:

if (@available(iOS 10.0, *)) {
  // iOS 10.0 and above
} else {
  // below 10.0
}
Run Code Online (Sandbox Code Playgroud)

但是,有些情况下,只有当前iOS版本低于特定版本时,才会运行代码.我假设以下代码将起作用:

if (!@available(iOS 10.0, *)) {
  // below 10.0
}
Run Code Online (Sandbox Code Playgroud)

但似乎这不起作用,我从Xcode收到以下警告:

@available does not guard availability here; use if (@available) instead
Run Code Online (Sandbox Code Playgroud)

是添加了我所看到的诊断的LLVM提交.

该问题有两种可能的后备:

  1. 使用if-else变体而不向if块添加任何代码(不是很优雅).
  2. 继续使用旧的方法,如-[NSProcessInfo isOperatingSystemAtLeastVersion:].

还有另一种使用@available我想要的方法吗?

objective-c ios availability ios11 xcode9

15
推荐指数
1
解决办法
4692
查看次数

无法捕获视图层次结构

错误:无法捕获视图层次结构.详细信息:日志标题:数据源表达式执行失败.日志详细信息:误差评估表达式"(ID)[[(类)objc_getClass( "DBGTargetHub")sharedHub] performRequestWithRequestInBase64:@ "/ XxATTlNNdXRhYmxlRGljdGlvbmFyeaM + QDxcTlNEaWN0aW9uYXJ5XxAPSW5pdGlhbCByZXF1ZXN0XxAkQ0U4OUY0RkItRkRGRS00RUNGLUIwNzctMUQyNDk1REMzMjRCEAHSODlARaJAPF8QD05TS2V5ZWRBcmNoaXZlctFISVRyb290gAEACAARABoAIwAtADIANwBRAFcAXgBmAHEAeAB/AIEAgwCFAIcAiQCLAJIAlACWAJgAmgCcAJ4AoAC + AN0A9wEYATgBUgFUAVsBYAFiAWQBZgFoAW0BbwFxAXMBdQF3AY0BoQG3AdAB0gHTAdgB2QHbAeAB6wH0AfwB/wIIAg0CIwInAjQCRgJtAm8CdAJ3AokCjAKRAAAAAAAAAgEAAAAAAAAASgAAAAAAAAAAAAAAAAAAApM ="]":错误:执行被中断,原因: EXC_BAD_ACCESS(代码= 1,地址= 0x0).

该过程已返回到表达式评估之前的状态.

xcode9

15
推荐指数
1
解决办法
2646
查看次数