Xcode 5.1发布说明

Xcode 5.1发布说明



今天苹果在发布iOS 7.1的同时,也更新发布了Apple TV和Xcode 5.1。以下是来自于苹果开发者中心的Xcode 5.1发布说明。
小伙伴们果断升级了(话说这阵子真心忙,真心累,少写微博了)

New Features
 
Debugging
1.Quick Look can be implemented for developer defined classes.
When an instance of a custom class is viewed with Quick Look in the debugger variables view or a data tip, the debugger presents it using a method named  -debugQuickLookObject defined in the class implementation. For details on how to use this capability, see  Quick Look for Custom Types in the Xcode Debugger. (12723736)
 
2.Log breakpoint actions now print out the logical value of expressions.
For example, a log breakpoint action such as " myString = @myString@" now prints the value of myString, rather than the pointer value. (13211695)
 
Editing User Interfaces
1.Interface Builder documents can contain specific information about new features they use and the OS versions they require, allowing previous versions of Xcode to display better warning messages when trying to open such documents. (7659982)
 
2.Building interfaces in Interface Builder using auto layout offers the full suite of possible constraint types: aspect ratios, proportional sizes and positions, cross attribute alignments, and a new constraint inspector with features for editing nearly all properties of a constraint.
 
3.The Interface Builder constraint Attributes inspector shows a constraint's items and attributes and allows editing of the attributes. This feature enables the ability to create cross-attribute constraints such as  view1.centerY = view2.bottom. (13739009)
 
4.You can use Interface Builder to edit the relation of any type of constraint, including alignment constraints (for instance,  view1.leading <= view2.leading) and equal size constraints (for instance,  view1.width >= view2.width). (14721954)
 
5.You can create aspect ratio and proportional sizing constraints and edit the multiplier of constraints in Interface Builder. The multiplier can be a decimal number (for example,  0.5), a fraction (for example,  1/2), or an aspect ratio (for example,  1:2). (11935843)
 
6.Constraints attached to ambiguous views in Interface Builder are drawn orange only in the axis with ambiguity. This makes it faster to identify a potential problem in the canvas. (15114120)
 
7.The Interface Builder canvas now displays overlay scrollers when appropriate, based on the “Show scroll bar” setting in the General pane in System Preferences. (10069033)
 
8.The Interface Builder inspector now has support for:
NSTableView - floatsGroupRows property (9617000)
UISegmentedControl - apportionsSegmentWidthsByContent property (9950528)
UITableView - sectionIndexBackgroundColor property (14776025)
 
Setting “Detail” button type for prototype  UITableViewCell - editingAccessoryType property (15039987)
 
Instruments and Symbolication
1.Instruments now finds symbols much more reliably.
If symbols aren't showing up automatically, try the following:
        When Spotlight indexing is disabled for Xcode derived data, such as when using /tmp, add a global list of additional search paths configured in the Instruments preferences.
        The context menu for an address now includes the option “Symbolicate with DSYM” to add a specific symbol file.
        Use the File menu Symbols command to see a more detailed list of the state of individual executables and libraries.
               Green lights indicate the presence of symbols and source information.
               Yellow lights indicate libraries with some symbols but can still benefit from locating a dSYM.
               Red lights indicate situations that prevented symbolication. (14269449)
 
2.The  instruments command-line tool now supports specifying the simulator SDK and device type using the  -w flag. To see a list of the supported simulator configurations as well as attached devices, execute  instruments -s devices in a Terminal window. (14996865)
 
Scripted installation
1.Installing Device Support
Run from the command-line, Xcode.app takes the new command-line argument,  -installComponents. When Xcode is run from a command-line script with this option, it installs the required device support packages and then quits. (15127411)
 
General
1.Emoji and other Unicode surrogate pairs are supported in scheme settings and in project files. (14837623 & 13827044)
 
Changes
1.Building
Arm64 is now included in the “Standard architectures” setting.
 
Xcode 5.0 introduced support for building 64-bit iOS applications but it was not enabled by default. To enable the option of building 64-bit in Xcode 5.0, an architectures setting was provided: “Standard Architectures Including 64-Bit”  (ARCHS_STANDARD_INCLUDING_64_BIT).
 
With the introduction of Xcode 5.1, arm64 is included in the default "Standard architecture” build setting. This results in projects using the default setting automatically building for arm64 along with the standard 32-bit architectures.
 
Note: Be aware of the following architectures issues when opening your existing projects in Xcode 5.1:
    When building for all architectures, remove any explicit architectures setting and use the default Standard Architectures setting. For projects that were previously opted-in using “Standard Architectures           Including 64-Bit”, switch back to the “Standard architectures” setting.
    When opening an existing project for the first time, Xcode 5.1 may display a warning about the use of the Xcode 5.0 architectures setting. Selecting the warning provides a workflow to revise the setting.
    Projects not able to support 64-bit need to specifically set the architectures build setting to not include 64-bit.
 
2.Projects configured to use ”Standard Architectures Including 64-bit” will be converted to “Standard Architectures $( ARCHS_STANDARD).
 
Compiler
1.As of Apple LLVM compiler version 5.1 (clang-502) and later, the optimization level -O4 no longer implies link time optimization (LTO). In order to build with LTO explicitly use the  -flto option in addition to the optimization level flag. (15633276)
 
Testing
1.The  gcov tool for code coverage testing has been reimplemented. The new version uses the llvm -cov tool from the LLVM project. It is functionally equivalent to the old version for all significant features. The location of  gcov within Xcode has also moved, use xcrun to invoke it. If you find problems, please file bug reports. For this release, you can still use the old version of  gcov from GCC, which is available as  gcov-4.2. 11919694 updated
 
Known Issues
 
Editing User Interfaces
1.Custom views added to a stack view in Interface Builder can get stuck in a “misplaced views” (inconsistent) state.
As a workaround, set a placeholder intrinsic size for the custom view with appropriate content hugging and compression resistance priorities. (15778653)
 
Testing
1.Automated tests run in iOS Simulator may fail with an error similar to this:
Test target [test name] encountered an error (Test process exited with code -1)
Attempt recovery by quitting and restarting the simulator. (15929053)
 
Xcode Server
1.Continuous integration features (bots) of Xcode 5.1 require OS X Server v3.1 (or a version of OS X Server 3.1 beta) or later. 16225068 updated
 
2.If there are old copies of Xcode on the server host, Xcode Server sometimes shows all the simulators. Only attempt to use simulators appropriate for use with Xcode 5.1. (15465692 & 15153869)
 
3.Xcode Server will offer All Devices or All Simulators even if there are none that fit the criteria for the project. If you select an inappropriate device or simulator, you may get an error similar to:
xcodebuild: error: No destinations were specified with the -destination flag which were valid for the specified scheme <scheme_name>.
 
To prevent this from happening, specify only valid devices or simulators for your project. (15465222)
 
4.Sometimes when you’re attempting to create a new local repository on OS X Server through Xcode, Xcode may display an error message similar to:
xcode-select: note: no developer tools were found at '/Applications/Xcode.app', requesting install. Choose an option in the dialog to download the command line developer tools.
 
To resolve this problem, follow the prompts in the dialog displayed on the OS X Server host system. (15475078 & 15486464)
 
5.Sometimes after upgrading to Xcode 5.1 and OS X Server 3.1, the first time you add a server you may see an error similar to:
"<Server> is running a version of OS X Server that cannot be used with this version of Xcode."
 
Quit and restart Xcode one time to clear this message. 16217715 updated
 
iOS Simulator
1.Performance issues can arise when running apps within the iOS Simulator on OS X Mavericks with a simulated OS version of iOS 6.1 or earlier.
A workaround is to disable timer coalescing while using the iOS 6.1 or earlier simulator by executing the following command in a Terminal window:
sudo sysctl -w kern.timer.coalescing_enabled=0 (15501929)
 
2.iOS Simulator sometimes stops responding to hardware keyboard.
Quitting and relaunching the simulator usually corrects this. (14642684)
 
General
1.When validating multiple applications in sequence using the Xcode Organizer, erroneous warnings about bundle IDs may be emitted.
If these warnings occur, quit & relaunch Xcode in between validations. 15113664 updated
 
2.Executables created by Xcode 5.1 may crash on OS X v10.5. (15852259) updated
 
Resolved Issues
 
Testing
1.The  XCTAssertEqual macro (formerly  STAssertEquals using OCUnit) correctly compares scalar values of different types without casting, for example,  int and  NSInteger. It can no longer accept nonscalar types, such as structs, for comparison. (14435933)
 
General
1.OS X apps that require a provisioning profile, such as those using iCloud, now build, are code-signed correctly, and launch. (15841159)
 
Deprecations
1.OCUnit and the SenTestingKit framework are deprecated and will be removed from a future release of Xcode. Source code using OCUnit generates warnings while being compiled in Xcode 5.1.
Migrate to XCTest by using the “Edit > Refactor > Convert to XCTest…” menu command. .
 
2.The ATS framework is deprecated. Source code using ATS APIs will generate warnings while being compiled. For version 10.8, there will be no loss of functionality but there could be areas where performance will suffer.
Replace all ATS code (including  ATSUI) with  CoreText. ATS functionality will be removed in future OS X releases. More information about this change is available in  Core Text Programming Guide.
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值