2010-10-12 30 views
3

我已經爲iPhone做了一個應用程序,但它需要與多個品牌發佈。如Differernt:One App,Multiple Branding

  • 程序名稱
  • 圖標
  • 爲Default.png
  • 文本在IB替代的應用程序名稱
  • 配色方案的所有圖像,如背景,圖標等

我不確定最好的方法來做到這一點。

我正在考慮爲每個品牌打造一個plist文件,這個文件可以加載brand1的文件名稱,例如「brand1_background.png」,但是文本替換會變得非常混亂。這也意味着所有品牌的圖像都會在包裝中形成更大的尺寸。

環顧一下,我可以爲每個品牌設置一個「圖片」文件夾,然後將其拖入該品牌的應用中,但文字仍然存在問題。

我想知道其他人會如何處理這種情況,因爲我想盡可能地做到這一點。

回答

6

爲每個品牌創建一個目標。對於每個單個目標,您可以添加不同的文件(例如圖像)並設置應用程序名稱。您甚至可以使用相同的文件名(但存儲在不同的位置),並且可以快速構建品牌應用程序。

+0

+1這也是一個很好的方法。主要缺點是當你有許多不同的品牌和/或許多不同的資源時。更改品牌的任何方面(添加/刪除/重命名資源)可能變得非常單調乏味。 – 2010-10-12 06:14:06

8

有2個不同的方面對這個問題,我想描述如下:

  1. 的東西,可以動態改變
  2. 東西,不能動態改變

第一類非常容易。如果您將colo(u)r方案以易讀的格式(例如plist或其他)存儲,則可以在應用程序啓動過程中加載該文件,然後從中構建對象並在適當的地方使用這些對象。應用程序本身使用的圖像也是如此。這不是一個難題。

第二類更棘手。由於代碼簽名,這些東西必須放入應用程序中。這意味着應用程序名稱,圖標,Default.png等等都必須在應用程序在編譯過程中籤名之前進行更改。所以我要做的就是燒掉一堆腳本,將您的品牌信息(名稱,圖像文件,圖標等)加載,然後生成 Info.plist文件以及其他內容。這應該作爲編譯的第一個階段完成。

對於什麼是值得的,我在一個應用程序上工作,我們在正好這個過程,它工作得很好。當我們改變什麼資源被打上品牌時,更新有點乏味,但我不確定是否有任何體面的方式。