2010-03-20 82 views
3

我在Store上爲我們準備了一個更新的應用程序。iPhone:除了App Store構建之外,如何運行Beta構建?

我們團隊的其他成員已經裝起來(〜購)在各自的iPhone App Store的版本 - 那些含有用戶數據,每個成員都需要能夠保持

與此同時,我們需要測試一個測試版本的下一個版本的應用程序。

大概我們需要在每個設備上同時存在兩個版本(ad hoc和app store),至少在每個人都在beta版本上簽名並上傳到商店之前(此時,他們會刪除測試版)。

[一旦它在商店上,當然它們可以通過通常的App Store'更新'機制更新它們的主要版本(即發行版)。在這種情況下,所有的用戶數據仍然保留完好。]

所以假設這是正確的工作流程...

如何發出測試版的團隊,並將它不能代替/覆蓋現有App Store版本?

我試過在測試版的「[appname] -Info.plist」中定製參數,但還沒有找到允許兩個版本(測試版和發行版)在同一設備上共存的設置。

任何想法?這是他們能夠保存數據的正確方法嗎?

(也是最後一次,我怎麼可能與&做到這一點沒有劇本我以爲這裏只有一個參數,它會需要改變?)

我希望這一切是有道理的 - 預先感謝您您的幫助!

+2

不幸的是,您不會告訴我們您嘗試修改Info.plist中的哪些參數。我的理解是,軟件包標識符是Apple用來唯一標識應用程序的標識符。你有嘗試改變它嗎? – 2010-03-20 10:12:49

+0

謝謝你,奧萊。請參閱下面的評論。 – rondoagogo 2010-03-21 06:00:02

回答

2

所以你想在一個設備上有兩個版本的同一個應用程序?我不認爲有辦法來獲得這種效果 - 更新一個應用程序,該應用程序在唯一CFBundleIdentifier上的鍵將替換舊版本捆綁包,而不是數據。

爲了達到你想要的效果,你必須有兩個不同的應用程序。他們需要不同的CFBundleIdentifiers,所以他們不會相互覆蓋。然後他們無法共享數據,因此您必須安排涉及設備外共享空間的導出/導入。

如果您不想要這個麻煩,請發佈團隊額外的設備並對這些設備進行測試。該團隊的主要設備保留在AppStore版本上。您仍然必須導出/導入將測試設備上的內容傳輸到主設備。但是,App Store版本中的每個付費內容都應該可用於其測試版,不過,像往常一樣,應用程序升級和一個所有者多設備場景。

+0

謝謝Ole&Joseph的反饋意見。我相信我嘗試過可執行文件名和Bundle名稱,但不是Bundle標識符。將檢查出來。 (對於它的價值,我遇到了一個不同的問題,這個問題無法在接下來的幾天內進行測試,但是我會報告回來。)也值得一提的是,他們不需要在兩個版本的應用程序之間共享數據 - 只要不丟失主要版本(即發行版)中的現有數據。 [在這種情況下雲中沒有任何數據,只有App Store版本的本地數據保存在單個設備上。] – rondoagogo 2010-03-21 05:57:15

+0

[正如我所說的,我有一個單獨的,無關的問題,它排除了測試我的設備。]但我只是使用模擬器測試這個解決方案,它似乎工作。對於它的價值,似乎使應用程序與另一個應用程序「不同」的看起來就是該Bundle標識符。 (事實上​​,在這種情況下,這些實質上是* same * app的兩個版本;但由於Bundle ID不同,Springboard將它們視爲唯一的,所以實質上可以加載任意數量的'instances'根據需要,通過改變Bundle ID)。謝謝你們倆! – rondoagogo 2010-03-21 06:22:12

相關問題