【问题标题】:How to create an Universal Binary for iTunes Connect Distribution?如何为 iTunes Connect 分发创建通用二进制文件?
【发布时间】:2010-04-22 07:42:25
【问题描述】:

我创建了一个被拒绝的应用程序,因为 Apple 说我的应用程序没有显示正确的 iPad 窗口,并且它显示了相同的 iPhone 屏幕但左上角对齐。

在模拟器上运行,我让我的应用程序准确地显示它应该显示的内容,一个大的 iPad 视图。

我作为 Apple 裁判的应用正在设备上显示:

alt text http://www.balexandre.com/temp/2010-04-22_0939.png

我的应用运行模拟器(仅 50% 缩放):

alt text http://cl.ly/cCH/Screen_shot_2010-04-22_at_09.40.24.png

我在 Application Delegate 中的代码是我 published before

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

    // The default have the line below, let us comment it
    //MainViewController *aController = [[MainViewController alloc] initWithNibName:@"MainView" bundle:nil];

    // Our main controller
    MainViewController *aController = nil;

    // Is this OS 3.2.0+ ?
    #if __IPHONE_OS_VERSION_MAX_ALLOWED >= 30200

    if (UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPad)
            // It's an iPad, let's set the MainView to our MainView-iPad
        aController = [[MainViewController alloc] 
                              initWithNibName:@"MainView-iPad" bundle:nil];
    else 
            // This is a 3.2.0+ but not an iPad (for future, when iPhone/iPod Touch runs with same OS than iPad)
        aController = [[MainViewController alloc] 
                              initWithNibName:@"MainView" bundle:nil];

    #else
        // It's an iPhone/iPod Touch (OS < 3.2.0)
        aController = [[MainViewController alloc] initWithNibName:@"MainView" bundle:nil];
    #endif

    // Let's continue our default code 
    self.mainViewController = aController;
    [aController release];

    mainViewController.view.frame = [UIScreen mainScreen].applicationFrame;
    [window addSubview:[mainViewController view]];
    [window makeKeyAndVisible];

    return YES;
}

关于我的目标信息,我有 iPhone/iPad

alt text http://cl.ly/cwB/Screen_shot_2010-04-22_at_09.33.12.png

我的问题是,我应该如何构建应用程序?

  • 使用基础 SDK
  • iPhone 模拟器 3.1.3
  • iPhone 模拟器 3.2

我的活动配置是Distribution,活动架构是arm6

任何已经将应用程序发布到 iTunes Connect 的人可以解释一下设置吗?

P.S.我遵循了Building and Installing your Development Application 上的开发者指南,该指南在Creating and Downloading Development Provisioning Profiles 上找到,但没有说明任何相关内容,正如我所做的那样,该应用被拒绝了。

【问题讨论】:

    标签: build app-store-connect universal-binary


    【解决方案1】:

    事实证明,在将项目发送给 Apple 支持后,他们回复说这可能是一个错误,我应该重新编译并再次发送。

    完成了,得到了我的App aproved

    但我可以在这里告诉您,您应该如何从 Apple 开发人员技术支持

    收到的电子邮件中将您的应用程序编译到 AppStore(Apple 审核团队)

    按照以下步骤构建可在 iPad 和 iPhone 上运行的通用应用程序:

    • 将 Base SDK 构建设置(在架构部分)设置为 iPhone SDK 3.2。
    • 将 iPhone OS 部署目标构建设置设置为 iPhone OS 3.1.3 或更早版本。
    • 将 Targeted Device Family 构建选项设置为 iPhone/iPad。
    • 确保您的架构构建设置同时使用 armv6 和 armv7。
    • 将 Active SDK 设置为 iPhone Device 3.2,选择您的 Distribution 配置,构建(选择 Build 按钮)您的应用程序,然后将其提交给 App 审核。

    我希望这对我有所帮助:)


    已添加(指定两个应用的图标)

    alt text http://cl.ly/11AF/Screen_shot_2010-05-10_at_15.37.51.png

    如上图所示,只需添加一个名为 CFBundleIconFiles 的新属性并添加 2 个图标,数组 (0) 用于 iPhone 图标,数组 (1) 用于 iPad 图标。

    请记住将默认的Icon file 属性保留给 iPhone,以便与旧版本的操作系统向后兼容。

    记得为两个应用指定正确的尺寸:

    • iPhone 图标:57 x 57 像素
    • iPad 图标:72 x 72 像素

    【讨论】:

    • 你为iphone和ipad的图标做了什么?
    • 你只是编辑 pList... 我也会在答案中添加这个,给我 5 分钟
    • @William,对你有帮助:)
    猜你喜欢
    • 2015-07-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-07-24
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多