2010-05-21 47 views
0

如何從SIMBL插件獲取主應用程序中的單身人士?當我嘗試調用類似[ProcessControl sharedInstance]的東西時,出現ProcessControl未定義的錯誤(即使它是在頭文件中聲明的)。Cocoa插件中的單身人士

回答

1

使用NSClassFromString在運行時查找類,然後正常發送sharedInstance消息。

請準備好NSClassFromString以返回Nil或者讓該類的消息失敗。如果應用程序開發人員刪除或重命名類或其單例方法,則會發生任何一種情況。無論何時爲沒有文檔支持的插件API的應用程序編寫插件,您都會承擔這種風險。

如果與應用程序的類和實例交互的所有代碼看起來都非常偏執,那麼您的「插件」將是最健壯的。

+0

我知道必須有這樣的功能,但對於我的生活,我無法找到它。 SIMBL的一個好處就是你可以限制一個插件只在你測試過的版本上運行。 – 2010-05-21 15:18:32