2014-04-10 63 views
0

我一直在研究Windows商店應用,我必須爲我的應用支持多個配置參數。其中一個參數是應用程序正在與之通話的URL。支持Windows應用商店中的多個環境

例如開發環境,測試,驗收和最終生產。

我目前正在考慮的事情之一是用最少的努力來支持所有這些環境的最有效方式。因爲沒有某種配置文件可以更改來更新這些參數,所以我提出了一些想法。我很好奇我可能沒有看到的其他選項。

這裏是我想出的東西:

添加多個配置的應用,比在代碼中使用它們來獲得這樣的正確的參數:

 private string webserviceUrl; 
#if DEV 
     webserviceUrl = "devUrl"; 
#elif TEST 
     webserviceUrl = "testUrl"; 
#endif 

用1號方法, re有幾個選項可供選擇,例如基於配置包含config xml文件,或者在第一次運行應用程序時從webservice獲取配置設置。

使用分支/合併策略和更新分支中的配置文件。優點是代碼是乾淨的,只包含它爲其創建的構建所需的設置。該包可以由構建服務器構建。缺點是你需要分支/合併很多。

最後一個選項感覺就像是最乾淨的解決方案。我是否缺少任何選項,或者您是否有使用這些方法的經驗?你更喜歡什麼?

回答

0

我認爲這樣的假設是,商店中的應用程序將始終指向生產。

但是,在說,我面臨着同樣的問題,因爲我們正在將應用程序加載到我們控制的設備上,而根本不使用Windows應用商店。

要回答你的問題,我更喜歡選項1.
選項2和xml/json配置文件似乎是最好的選擇。
Web服務選項可能不起作用。你使用什麼webservice網址?如果你想讓一些實例指向不同的環境,它將如何工作,因爲它們都將從相同的URL獲取配置。

另一個可能需要考慮的選項是設置魅力菜單中的選項。例如,爲環境使用單選按鈕,並允許用戶配置他們想要定位的環境。

這個問題會在最終用戶的生產中被鎖定,以至於不能再修改。也許一旦選擇了「PROD」收音機,所有的單選按鈕就會隱藏起來。

如果您通過側面加載來部署應用程序,則可能在安裝過​​程中配置這些設置。

我很想聽聽其他意見。這也是一個老問題,所以我想知道您決定實施哪種解決方案。

相關問題