使用Xcode 5的新资产库,添加图像和组织它们从未如此简单.但是,似乎它已经破坏了我用于创建构建的一些脚本.
我的Run Script Phase中有一个脚本,它设置CFBundleVersion为plist中的当前时间戳.在脚本中,我执行此语句:
/usr/libexec/PlistBuddy -c "Set :CFBundleVersion $timestamp" $BUILT_PRODUCTS_DIR/$INFOPLIST_PATH
Run Code Online (Sandbox Code Playgroud)
但是,执行此操作时,将显示以下语句:
Set: Entry, ":CFBundleVersion", Does Not Exist
File Doesn't Exist, Will Create: /Users/SpacePyro/Library/DerivedData/BundleTest-duikdqngfmrovnagrcsvdcuxxstz/Build/Products/Debug-iphoneos/BundleTest.app/Info.plist
Run Code Online (Sandbox Code Playgroud)
这似乎发生在干净的构建上.直到构建中途,plist似乎才会生成,可能是由于资产库.
我也使用了这个命令,虽然它没有抛出错误,但它仍然吹走了我的更改(假设INFO_PLIST="${BUILT_PRODUCTS_DIR}/${WRAPPER_NAME}/Info"):
defaults write $INFO_PLIST CFBundleVersion $timestamp
Run Code Online (Sandbox Code Playgroud)
当我开始使用资源库来组织我的应用程序图标和启动图像时,情况并非如此.谁知道为什么会这样?更好的是,是否有一种解决方法可以将此值添加到plist中?我已经尝试将脚本置于行动前构建阶段以及动作后构建阶段.我还尝试在构建完成后运行命令,但是当我尝试对其进行协同编码和打包时,它表示签名因修改plist而无效.
如果不存在合理的解决方案,我想我总是可以从资产库中迁移,直到我可以让我的脚本工作.
我有线程1的问题:EXC_BAD_ACCESS(代码= 1,地址= 0xf00000c),我不知道如何解决它.当我在核心日期更改某个对象并保存它并且我尝试将此控制器弹出到父级时出现.使用retVal在main()中出现此错误.这是一些代码
int retVal;
@try {
retVal = UIApplicationMain(argc, argv, nil, NSStringFromClass([AppDelegate class]));
*/\ error is here**
}
@catch (NSException *exception) {
NSLog(@"%@", [exception callStackSymbols]);
@throw exception;
}
return retVal;
Run Code Online (Sandbox Code Playgroud)
重新运行应用程序后,我所有的更改都在核心数据中.更多这个问题仅适用于iOS 7. iOS 6.1还可以.
有人知道如何解决它吗?
是否有我可以遵循的程序,包括在终端中运行脚本,删除派生数据文件夹下的所有文件并可靠地清理项目?
有时,项目的资产并不总是更新到我的模拟器或设备.这主要是试验和错误,当我发现旧资产进入测试版本时,为时已晚,更不用说令人尴尬了!
我看过这个问题,但似乎有点过时: 如何清空缓存并清理所有目标Xcode 4
我也检查了这个问题,但我不想在Organizer中浪费时间,如果我不是绝对需要:如何在Xcode6中"删除派生数据"?
我已经查看了其他帖子,但没有发现任何可以解决可靠清理项目并节省脚本时间的问题.
Xcode 5能够改变方法的签名吗?据我所知,但我想表现出错.
如果我尝试添加(或删除)方法的参数,我会受到Needs 1 fewer (more) colon to match original错误的欢迎.
在这种情况下,我真的必须做一个手动重构吗?
当我离开iOS6时,我正在使用Xcode 4.6开发一个UISplitView应用程序:

现在我迁移到新的Xcode5,现在我有了这个设计:

UINavigationBar完全重叠我的UISearchBar ......
Leo Natan告诉我使用iOS 6/7 Deltas,但是因为我正在以编程方式创建和添加我的UISplitViewControllers,
这可能不起作用我需要以编程方式设置iOS 6/7,但我不知道如何,任何帮助我都会欣赏
我很舒服在触控板上使用3个手指向上或向下滑动手势来切换之前版本的Xcode,但是在Xcode5触控板上我找不到一个简单的手势来做到这一点.
有没有人在触控板上找到任何更简单的快捷方式来切换.h和.m文件Xcode5?
我正在尝试分发我的iOS应用程序,并在xCode验证期间收到以下错误消息."找不到故事板文件'Main_iPhone~iphone.storyboardc',请确保指定的文件包含在捆绑包中,并附加了文件名所需的任何设备修饰符".需要一些建议......
我在代码中的某个地方有一个僵尸对象,它在iOS 6.1上运行但在7中没有.
不幸的是,仪器不会与僵尸一起运行,它会弹出以下警告."僵尸只能在iOS 7或更高版本的设备上运行".
我真的不想下载旧版本的Xcode,因为互联网工作非常缓慢.
由于我的正常goto方法不可用,有什么一些提示/技巧可以找到这个僵尸的原因.
任何帮助将不胜感激.
我想在我的项目中使用libTestFlight.a库,我已经在"链接二进制文件库"中导入它,也在构建阶段,我试图添加" 搜索路径 "和" 标题路径 ",我也尝试更改ARCH以标准架构(ARMv7的,armv7s) ,但仍没有运气,它总是给这个错误:
Undefined symbols for architecture armv7:
"_deflate", referenced from:
__tf_remote_log_compress_data in libTestFlight.a(tf_remote_log_io.o)
"_deflateInit_", referenced from:
__tf_remote_log_compress_data in libTestFlight.a(tf_remote_log_io.o)
"_deflateEnd", referenced from:
__tf_remote_log_compress_data in libTestFlight.a(tf_remote_log_io.o)
ld: symbol(s) not found for architecture armv7
clang: error: linker command failed with exit code 1 (use -v to see invocation)
Run Code Online (Sandbox Code Playgroud) 我正在进行项目,我想让我的应用程序与IOS7兼容.
self.contentSizeForViewInPopover = CGSizeMake(90, 1 * 65 - 1);
Run Code Online (Sandbox Code Playgroud)
此方法已从ios7弃用
新方法是 self.preferredContentSize= CGSizeMake(90,1*65-1);
但我没有得到适当的用户界面
但是当我使用ios7兼容方法进行更改时,我的观点是这样的
使用ios7方法我得到了这个

xcode5 ×10
ios ×5
xcode ×5
objective-c ×3
ios7 ×2
iphone ×2
caching ×1
delta ×1
instruments ×1
linker ×1
plist ×1
testflight ×1
trackpad ×1
uisearchbar ×1