2012-04-09 62 views
1

我的比赛刚刚从AppStore的拒绝了以下两个原因...应用程序被拒绝未能启动? ...等

我们发现您的应用未能推出iPhone 4上双方的Wi-Fi运行iOS 5.1, 和蜂窝网络。

我们在首页选择应用 屏幕时遇到的问题 - 应用程序然后显示一个启动图像意外退出

而且

您的应用程序没有在iPhone的分辨率下运行和/或在iPad上浏览时获得2倍iPhone 3GS分辨率。

这两个都让我感到困惑,我目前没有安装Lion,所以无法在5.1中测试,但它在5.0.1及更低版本中工作得很好。另外,我一直在测试只有我的iPad,没有iPhone测试,但游戏和图形在iPad上运行得很好。虽然!我只有标有@ 2x.png的图形文件,没有图标。这可能是问题吗?

如果任何人有任何建议,这将是真棒,我回应苹果的拒绝,但我敢打赌它需要一段时间让他们回到你身边,我真的很想这样做。谢谢!

**更新

didFinishLaunchingWithOptions:

是如下

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions 
{ 

    // Override point for customization after application launch. 

    [[UIApplication sharedApplication] setStatusBarHidden:YES withAnimation:NO]; 

    mainMenu = [[MainMenu alloc] init]; 
    self.navController = [[UINavigationController alloc] initWithRootViewController:mainMenu]; 
    self.navController.navigationBar.hidden = YES; 

    [self.window addSubview:navController.view]; 


    [self.window makeKeyAndVisible]; 



    [[GCHelper sharedInstance] authenticateLocalUser]; 

    if ([[[NSUserDefaults standardUserDefaults] objectForKey:@"missingWordsAdded"] intValue] != 1) { 
     [self forceAddWords]; 
    } 

    if (![[NSUserDefaults standardUserDefaults] objectForKey:@"EnableSoundEffects"]){ 
     [[NSUserDefaults standardUserDefaults] setObject:@"YES" forKey:@"EnableSoundEffects"]; 
    } 

    return YES; 
} 

GCHelper设置GameCenter的。谢谢!

+0

在提交应用程序之前,您应该确实安装最新的iOS SDK。 – Till 2012-04-09 12:41:46

+0

我知道这似乎很明显,但我很奇怪我只是.1版本后面,我没有使用任何新功能,我在想如果苹果仍然允许下载xcode 4.2,为什么他们不会让应用程序与它一起上传? – 2012-04-09 12:57:31

+0

..你在你的应用委托中的didFinishLaunchingWithOptions:函数中有什么代码? – 2012-04-09 12:57:52

回答

2

我有几个建议:

  1. 做一个重置你的模拟器,启动程序,看看它是否工作
  2. 从iPad上卸载你的应用程序,从Xcode中运行它,看看它是否作品
  3. 请朋友来测试一个特设的副本,或连接到您的Xcode和运行调试副本
  4. 根据您的实现,你应该做你的启动代码(didFinishLaunchingWithOptions或单实例)有些盲目检查。特别是那些涉及GCD的领域,@synchronize,访问NSArrayNSDictionary。而像缺省优先初始化和数据库创建等事情可能会产生这种问题。

关于审查过程,我的日志表明,库比蒂诺的Apple员工使用带WiFi连接的iPad 2来运行您的应用程序。如果他们说他们不能运行你的应用程序,他们不会和你玩弄。

+0

我已经在10多个设备上完成了1-3次测试,将模拟器重置为出厂设置,并在iPad上进行了测试。所有人仍然一如既往。所以也许它在我的实施中的东西?我只在NSUserDefaults中创建了一些字符串,并且在master字典中创建了一对字典条目,但实际上并没有太大的意义。什么是盲检? – 2012-04-09 13:35:18

+0

@JamesDunay,也许会要求另一个人为你查看代码?盲检是在不执行它的情况下读取您的代码。有时候这样更容易发现问题。如果可能的话,第二个人的代码审查是首选。关注启动过程中执行的部分。 – 2012-04-09 13:43:50

+0

啊啊gotacha。这可能是一个非常愚蠢的问题。但是苹果建议它可能是缺少的entitlements.plist文件。我正在使用xcode 4.2,这是我必须拥有的东西吗?因为它在所有测试过的设备上仍然工作正常,但是苹果是否需要提交? – 2012-04-09 13:46:18

1

1)针对手机和iOS的不同配置,“应用程序未能启动”是重现的一大问题,因为您可能没有手头上具有不同iOS版本的所有手机。例如,您可以尝试https://testflightapp.com/,并可以通过不同的配置了解您的应用性能。

+0

不错的链接,谢谢! – OldPeculier 2012-04-09 16:10:46

0

我的应用也因为同样的原因而被拒绝。在这里,你首先检查互联网连接,它将需要比你有你的代码。

检查internate连接你可以使用可达性类。

+0

您能解释一下吗?我必须检查互联网连接在哪里?也许在我检查gamecenter之前? – 2012-04-09 14:17:22

+0

你必须检查它之前,你需要实习连接,如果你使用Facebook连接比你必须检查用户点击Facebook连接按钮之前 – freelancer 2012-04-10 04:28:33

相关问题