转换为Objective C ARC后,Xcode 4.2中出现白屏

时间:2012-01-25 16:13:33

标签: xcode automatic-ref-counting simulator

我已经梳理了整个互联网寻找这个答案,并没有找到任何答案,所以我决定发帖。

设备:Mac Mini(2011),运行OSXLion(10.7),8gb ram,500gb高清 XCODE:版本4.2,运行IPAD 4.3和5.0模拟器

我使用程序HYPE(html 5设计者/生成器)开发了一个Ipad应用程序,该程序由APPLE团队开发。然后我使用PhoneGap模板将其带入Xcode。我在之前版本的Xcode(使用MAC osx雪豹4.0)中开发了这个应用程序,并且能够成功地将所有内容传输到Xcode 4.2(包括phonegap模板)。

一切都运行良好。我成功地在应用程序商店中启动了我的应用程序(Five Element Clinic Book HD - http://itunes.apple.com/us/app/five-element-clinic-book-hd/id495512918?alreadyRedirected=1&ign-mpt=uo%3D2&mt=8

我注意到了一些我想要改变的问题(即外部托管无法正常工作 - 我的嵌入式YouTube视频(iframe)无效,外部网站无法正常工作的链接以及带有计数器脚本(javascript)的iframe也没有显示 - 所以我决定看看所有内容,看看我是否在phonegap.plist外部主机区域中添加更详细的URL。

我甚至没有那么远。当我再次打开Xcode时(大约2周之后,所以一定会有某种API更改) - 我有一种错误的语气,这些错误导致我需要将我的文件转换为Objective C ARC的信息。

所以我这样做了,没有任何错误或问题。一切都无缝转换。所有文件都显示转换为Objective C ARC。

我清理然后reBUILT - 完全没有错误或警告 - 并在IPAD模拟器(4.3和5.0)中使用我的应用程序。

这就是发生的事情。模拟器打开,我的应用程序启动,启动屏幕显示,应用程序开始加载应用程序的其余部分,然后转到白色屏幕。永远。它没有别的地方。

所以我退出了应用程序,重新启动了应用程序,删除了应用程序,再次尝试了所有内容。同样的问题。如果我退出应用程序,它只会进入黑屏。我还重新启动了Xcode和我的电脑,运行了我的磁盘战士来修复文件权限等等。

我的旧笔记本电脑(Xcode 4.0,MAC OSx Snow Leopard)中仍有旧项目。所以我回到那里看看我是否可以在旧环境中工作。不。需要我将文件转换为Objective C ARC的相同错误。所以我转换为零问题和零错误。清理,构建 - 没有错误)并在模拟器中运行程序。它们都不起作用,所有内容都会加载启动屏幕并转到白页。

任何人都知道发生了什么事吗?

谢谢你。

1 个答案:

答案 0 :(得分:1)

我不是白屏 - 而是黑屏。

在applicationDidFinishLaunching中,我使用了

的结果
UIWindow* window = [[UIWindow alloc] initWithFrame:mainBounds];

作为局部变量。

转换为ARC发布它。

相反,它需要分配给我的app delegate的属性:

@interface MyAppDelegate : NSObject <UIApplicationDelegate> {
    UIWindow *mainWindow;
}