2013-07-31 47 views
0

我想將現有的iOS應用程序項目拆分爲一個靜態庫和一個應用程序項目。將現有的iOS應用程序項目拆分爲靜態庫和應用程序皮膚項目

由於現有應用程序項目已被多次複製到具有不同資源(圖形,圖標等)和設置的全新實例中。

我發現一旦核心項目更新後,很難在差異實例之間進行維護。

所以我把核心項目變成了一個帶模型,視圖和第三方庫的靜態庫。

另一個項目包含只包含自定義資源和應用程序設置的應用程序部分。

問題是,靜態庫中的類如何從應用程序項目中獲取應用程序設置以及調用庫中的主應用程序項目。

有什麼好的做法和工具呢?

回答

1

主應用程序項目可以通過導出的標題(.h)文件使用靜態庫類。我會建議你閱讀一些關於他們在這裏:

http://developer.apple.com/library/ios/#technotes/iOSStaticLibraries/Articles/creating.html

這裏創建靜態庫:

http://www.icodeblog.com/2011/04/07/creating-static-libraries-for-ios/

至於提供應用程序特定的設置,你的靜態庫,聽起來像你的靜態庫可能需要包含一個ApplicationSettings協議或類似的協議或類似協議,可以提供給任何需要它的調用的靜態庫。您的協議可以爲您的應用程序擁有的任何已知屬性定義getter/setter。

@protocol ApplicationSettings 

- (BOOL)isUserReallyAwesome; 
- (void)setIsUserReallyAwesome:(BOOL)awesome; 

@end 

然後你就可以靜態配置此對象的實例,也可以提供給每個靜態庫方法需要它:

- (void)someStaticLibraryMethodWithArg:(NSString *)arg settings:(id<ApplicationSettings>)settings { ... } 
+0

這是用的applicationSettings一個好主意。我猜想應用相同的方法來獲取圖標和資源? – Kiddo

相關問題