简体   繁体   English

iOS:通过企业(内部)分发自定义应用程序图标和启动画面

[英]iOS: Customize App Icon and Splash Screen via Enterprise (In-House) Distribution

When deploying an App via the Enterprise Developer Programs In-House Distribution there is a .plist file acting as descriptor for the .ipa file. 通过Enterprise Developer Programs内部分发部署应用程序时,有一个.plist文件充当.ipa文件的描述符。

Does anyone know if it is possible to change standard info.plist values via this file? 有谁知道是否可以通过此文件更改标准info.plist值?

The background is that I want to adjust the App Icon and Splash Screen. 背景是我想调整App Icon和Splash Screen。 I want to customize the app for different customers without recompiling it. 我想为不同的客户定制应用程序而无需重新编译它。 If the above approach is not possible what else can I do to ease that process? 如果不能采用上述方法,我还能做些什么来简化这个过程?

I want to customize the app for different customers without recompiling it. 我想为不同的客户定制应用程序而无需重新编译它。

Not possible. 不可能。 The app is signed before you distribute it. 应用程序在您分发之前已签名。 Any change will invalidate the signature and the device will refuse to run it. 任何更改都将使签名无效,设备将拒绝运行它。 You'll need to recompile if you want to change things like the app icon. 如果要更改应用程序图标等内容,则需要重新编译。

The splash screen is somewhat different. 启动画面有些不同。 You can't change the default image, but you can omit the default image and display your own splash screen as soon as the app is loaded. 您无法更改默认图像,但可以在加载应用程序后立即省略默认图像并显示自己的启动画面。 That screen can contain an image that you download from a server, for example. 例如,该屏幕可以包含从服务器下载的图像。

Give that you're talking about enterprise distribution, I think the best plan is to simply create separate targets in your project, one for each customized version. 假设您正在讨论企业分发,我认为最好的计划是在项目中创建单独的目标,每个目标定制一个。 Each target would reference different icon and default image files. 每个目标都会引用不同的图标和默认图像文件。 You can even create an aggregate target, so that all the customized versions are built at the same time. 您甚至可以创建聚合目标,以便同时构建所有自定义版本。

Instructions for adding a customized target, assuming Xcode 4: 假设Xcode 4,添加自定义目标的说明:

  • Select the project in the project navigator. 在项目导航器中选择项目。

  • Click the Add Target button at the bottom of the detail area, or just select the target and use the Edit->Duplicate command. 单击详细信息区域底部的“添加目标”按钮,或者只需选择目标并使用“编辑” - >“复制”命令。

  • Make a copy of the Info.plist file from your first target and add it to the project. 从第一个目标制作Info.plist文件的副本,并将其添加到项目中。

  • Select the new target and change it's "Info.plist" setting in the Packaging section of Build Settings. 选择新目标并在Build Settings的Packaging部分中更改它的“Info.plist”设置。 (You may also want to adjust the product name.) (您可能还想调整产品名称。)

To add an aggregate target that builds all the others, add a target using the Aggregate target template (under Other in the template picker). 要添加构建所有其他目标的聚合目标,请使用聚合目标模板添加目标(在模板选择器中的其他下)。 Then select the new aggregate target, click Build Phases, and add all your other targets as target dependencies. 然后选择新的聚合目标,单击Build Phases,并将所有其他目标添加为目标依赖项。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM