2015-11-05 62 views
15

我試圖從現場App Store應用的生成測試更新方案使用TestFlight到RC,但TestFlight給我提醒「您已經安裝了這個程序,你想。替換...「(見下面的截圖)。確認後,App Store版本中的所有數據都消失了。TestFlight警報同時測試更新:你已經有這個程序安裝

enter image description here

步驟我做

  1. 從App Store
  2. 登錄安裝Live應用程序,並做一些操作的應用獲取數據和鑰匙扣
  3. 轉到TestFlight iOS應用
  4. 輕按TestFlight「安裝」按鈕 - >警報「你已經有這個程序安裝」出現小號
  5. 如果我點擊選擇安裝,新建安裝

結果

  • 應用的內容包括共享的容器(數據與擴展共享)和鑰匙扣都是徹底消滅時我再次打開應用程序

編輯:TestFlight中的警報隨任何應用程序出現(我嘗試過mu來自不同開發者賬戶的多種不同的應用程序)。實際的數據刪除只發生在一些情況下。

我的問題

是從TestFlight此預期的行爲,或者是它的任何問題,我的應用程序?我不知道可能會導致任何問題的版本之間的任何更改。

我相信這不是之前發生(在我最後一次嘗試是幾個星期前)。

我找不到任何文檔或發佈關於TestFlight應用程序的行爲或修改筆記。

有沒有人遇到同樣的問題?或者您是否知道描述此行爲的任何資源?

感謝您的答案!

+0

我遇到了同樣的問題。 – beny

+0

如果你想保留和訪問應用商店版本的數據,那麼最好的程序是什麼?例如,您想閱讀您保存的一些偏好設置。 – Fattie

+1

@JoeBlow由於'identifierForVendor'發生了變化,所以發生了這個特殊問題。因此,如果你想成爲TestFlight的App Store版本的測試更新場景,只要確保你不使用'identifierForVendor'來處理IFV的更改可能導致數據丟失或者你正常處理的任何事情。 –

回答

9

經過長期的研究,試驗和錯誤,創建雷達和釋放更新App Store中,我有一個答案:

Alert是始終存在並沒有關係丟失數據。

  • 對於從TestFlight安裝的任何應用程序,總是顯示警告並警告可能丟失數據。
  • 對於我嘗試過的多個應用程序中的任何一個都是如此。與TestFlight構建覆蓋應用程序時

identifierForVendor變化。

  • 當你安裝了應用程序的App Store的版本,並與來自TestFlight構建覆蓋它的[[UIDevice currentDevice] identifierForVendor]結果改變
  • ,因爲它沒有在文檔中提到這是出乎意料的(見下文)
  • 在我的情況下,identifierForVendor的意外更改導致了「數據鬆散」,這並不是實際丟失的數據,但它僅在TestFlight構建中發生,而您無法調試,因此很難找到問題。

[[UIDevice currentDevice] identifierForVendor]文檔表示:而應用程序(或來自相同供應商的另一個應用)安裝在iOS設備上

在該屬性的值保持相同。當用戶從設備中刪除所有供應商的應用程序並隨後重新安裝其中的一個或多個應用程序時,該值會更改。使用Xcode安裝測試版本時或在使用ad-hoc分發的設備上安裝應用程序時,該值也可能會發生變化。

+0

Damnnnnnnnnmmmmnnnnnnn !!!!!!!!!!!!!!!!! **偉大的發現,盧卡斯**。這是事情:有沒有什麼辦法可以從TFA安裝**而不是**刪除數據?因爲當然,我希望能夠測試新系統是否能夠提取舊數據。你有沒有找到方法?謝謝! – Fattie

+0

我確實發現了這個http://blog.xebia.com/run-your-ios-app-without-overwriting-the-app-store-version/它可能是相關的... – Fattie

+0

@JoeBlow其實我的同事發現'identifierForVendor'正在改變,我在這裏總結了所有的發現。 –

1

按我所知,

如果已經從應用商店安裝的應用程序(假設的版本號1.0),您的設備上,並讓說你再次下載/安裝相同的應用程序具有相同的版本號1.0來自TestFlight,你會得到上面的消息。

這是因爲您正試圖安裝具有設備上已存在的相同版本和捆綁ID的應用程序。

Offcourse您將失去應用程序的數據/設置,因爲它會取代您的應用程序不更新。

我也經歷了這種情況。

+0

hi @avinash ...但是說你安裝版本2.0,實際上是從應用商店。所以,你有AngryBirds 1.0,你點擊升級到AngryBirds 2.0。當然,**你不會失去你的偏好**。是對的嗎?那麼,「應用商店升級」和「從TFA升級」的行爲是不同的? – Fattie

+0

是的,如果您從應用商店升級下一個版本,它不會丟失數據/您的偏好。 –

+2

沒錯。我想知道的是,是否有可靠的方法來更新TFA,而不是失去偏好。 – Fattie

相關問題