MonoTouch解决方案中的多个Info.plist文件

时间:2012-10-25 00:52:36

标签: ios xamarin.ios monodevelop info-plist

我正在尝试编写两个单独的可提交应用程序:一个用于iPad,另一个用于iPhone。这需要有两个单独的plist,以允许独立指定不同的应用程序图标,启动图像等。

当我尝试重命名我的Info.plist时,MonoDevelop会自动创建一个新的空Info.plist并使用它。出于同样的原因,我似乎无法将我的Info.plist移动​​到iPad /子文件夹,并让MD在那里接收它。

目前,我们在一个解决方案中有3个项目:iPad,iPhone,公共文件和库。

唯一的解决方案是在相应的子文件夹中包含单独的.sln文件,还是我还能以某种方式从一个.sln构建两个独立的应用程序?

编辑:项目结构如下,如果有助于可视化问题。

MyApp.sln
MyApp-iPad.csproj
MyApp-iPhone.csproj
MyApp-Common.csproj

Main.cs
AppDelegate-iPad.cs
AppDelegate-iPhone.cs

Info.plist (MD currently uses this for both projects)
Common/
iPad/
iPad/Info.plist (for -iPad.csproj)
iPhone/
iPhone/Info.plist (for -iPhone.csproj)

3 个答案:

答案 0 :(得分:8)

这是我当前和非常普通的解决方案:添加一个在Build

之前运行的自定义命令
cp iPad/Info.plist Info.plist

对于iPhone:

cp iPhone/Info.plist Info.plist

答案 1 :(得分:1)

你需要制作2个项目,一个用于iPad,另一个用于iPhone。

您应该将所有代码文件从一个项目“链接”到另一个项目。您可以使用此路线拥有不同的Info.plist文件,图标,图像等。

以下是关于各种策略的链接:http://docs.xamarin.com/ios/Guides/Application_Fundamentals/Building_Cross_Platform_Applications/Sharing_Code_Options

答案 2 :(得分:1)

我有一个项目,我需要能够使用不同的图标和资源构建应用程序。

我使用不同的构建配置文件并构建脚本,将正确的文件复制到资源文件夹中。这也会更改应用程序名称和标识符。

这是与您类似的解决方案,但它允许您将不同的图像与您的应用程序捆绑在一起。