前言
assets:資產(chǎn)、財產(chǎn)
Xcode允許開發(fā)期間在SwiftUI預(yù)覽或其他代碼中使用開發(fā)資產(chǎn)來提供測試數(shù)據(jù)。被標(biāo)記為開發(fā)的資產(chǎn)只會存在于調(diào)試版本中,并在打包發(fā)布版本的時候刪除。
以前開發(fā)的時候可能會將一些測試用的圖片添加到項目工程中,便于調(diào)試或者SwiftUI預(yù)覽,但是它會無故增加項目的二進(jìn)制文件大小,因為項目工程中所有的資產(chǎn)在發(fā)布期間會被打包到一起,但是現(xiàn)在可以通過開發(fā)資產(chǎn)來解決這個問題。
Xcode中的開發(fā)資產(chǎn)是什么

位置:TAGET-General-Development Assets
用于將資產(chǎn)標(biāo)記為開發(fā)的Xcode配置,此配置中的每個文件都會生產(chǎn)環(huán)境中被刪除,因此
- 圖像資產(chǎn)會被刪除,不能用于生產(chǎn)環(huán)境
- 代碼引用將不再存在,可能會影響編譯(說明可以添加開發(fā)代碼)
"Preview Content"預(yù)覽資產(chǎn)目錄有什么用?
從Xcode 11或者更高版本中創(chuàng)建新SwiftUI項目時,項目工程會包含一個“Preview Assets”文件夾,其中包含一個名為“Preview Assets”的資產(chǎn)目錄。

由于 Apple 希望我們越來越多地使用 SwiftUI 預(yù)覽,他們希望我們能夠輕松地提供示例數(shù)據(jù)以在這些預(yù)覽中使用。您可以使用默認(rèn)的“預(yù)覽資產(chǎn)”資產(chǎn)目錄來配置示例圖像、顏色和通常添加到資產(chǎn)目錄中的其他類型的資產(chǎn)。
如何使用Xcode中的開發(fā)資產(chǎn)
示例:


開發(fā)資產(chǎn)包含哪些類型
基本上可以將任何數(shù)據(jù)添加為開發(fā)資產(chǎn)
開發(fā)資產(chǎn)的其他一些用例:
- 用于模擬網(wǎng)絡(luò)請求或網(wǎng)絡(luò)模型初始化的 JSON 文件
- 在 SwiftUI 預(yù)覽中使用的圖像
- 在調(diào)試構(gòu)建期間使用的核心數(shù)據(jù)示例數(shù)據(jù)庫以進(jìn)行測試
- .swift代表模擬或樣本數(shù)據(jù)的文件
將SwiftUI標(biāo)記為開發(fā)資產(chǎn)
開發(fā)過程中,我們可以創(chuàng)建一個模型的測試實例,并將它放在Previews Conten中,之后在預(yù)覽方法中直接使用即可



使用即可
思考
所有示例代碼都包含在生產(chǎn)應(yīng)用程序中會不會很糟糕,從而增加應(yīng)用程序二進(jìn)制文件的大小。但是,Xcode 的死代碼剝離器確保預(yù)覽中的代碼引用不會包含在最終的應(yīng)用程序二進(jìn)制文件中。只要您僅在預(yù)覽中使用示例代碼,它就是在項目內(nèi)的專用位置定義示例數(shù)據(jù)的好方法。