我是ios編程領域的新手,使用鏈接器對於我來說只是一個全新的世界。我會盡我所能精確地解決我的問題。ios編程 - 在應用程序級別重寫靜態庫內的靜態庫
上下文:靜態庫在使用xcode的ios項目中進行鏈接。
問題:
問題成員: 3靜態庫。
libTestLibA.a
libTestLibB.a
libTestLibB_mine.a - 相同的功能libTestLibB.a - 同一類/方法的一切。
問題描述
我正在使用libTestLibA.a的應用程序。
libTestLibA有一些類依賴於libTestLibB中的某些類。因此libTestLibA.a自己編譯了libTestLibB.a。
現在,我有自己的庫名爲libTestLibB_mine。它具有與libTestLibB完全相同的功能。相同的功能相同的方法/類。我希望libTestLibA使用libTestLibB_mine而不是libTestLibB。我剛剛爲每個問題成員編譯了靜態庫(.a),即libTestLibA,libTestLibB和libTestLibB_mine。
問題:
當我編譯我的應用程序,我可以強制靜態編譯庫(libTestLibA.a)以使用其他庫(libTestLibB_mine.a),而不是它已經包含(libTestLibB的。一個)?如果是,如何?如果沒有,是否有一些解決方法?
非常感謝。
感謝您的回覆。 Swizzling會很困難,因爲我不確定B的所有類/方法是什麼,因爲我沒有A的源代碼。 B_mine實際上只是B的一個不同版本,我希望我的應用程序通過強制A使用B_mine來使用它。 我知道libTestLibA有libTestLibB的公共頭文件和libTestLibB.a鏈接在其中。這意味着B被靜態編譯爲A? – inspi 2013-02-19 01:44:00