2015-04-17 52 views
0

我想動態地複製/更新現有iOS應用程序.plist中的某些內容。將動態內容寫入xCode項目.plist

例如,.plist包含我想隨時更新的FacebookAppID或Twitter API密鑰,而不必在商店中重新部署應用程序。

我知道我可以將.plistNSBundle複製到NSDocumentsDirectory以使其可寫。 但是新複製的文件不是OS將用來訪問我需要隨時間改變的信息的文件。 由於SDK(FBSDK等)完全依賴屬性文件,因此我無法使用其他方法來存儲我感興趣的鍵/值。

任何想法?

+1

因此,SDK使用位於應用程序包中固定位置的固定'.plist'文件?如果這是真的,那麼你就沒有辦法做到這一點,並且SDK被破壞了。 – trojanfoe

+0

順便說一句,我不相信這是真的,因爲沒有人是愚蠢的。 – trojanfoe

+0

@trojanfoe感謝您的反饋。實際上,FB SDK依賴於.plist,如其開始所示:https://developers.facebook.com/docs/ios/getting-started/ SDK中沒有API以編程方式進行設置。 –

回答

2

運行時無法編輯App-Info.plist文件(請參閱this thread)。

對於Facebook SDK,您只需在您的App-Info.plist中設置您的AppID,但AppID不會每天更改(與Twitter相同)。如果您需要關聯其他應用,則需要推送應用的更新。

如果您有多個應用程序(例如一個用於生產,另一個用於測試),請爲每個應用程序創建一個單獨的.plist文件,以便您可以根據您構建的目標切換AppID。