在加载框架时触发iOS中的代码执行

时间:2013-11-09 21:29:53

标签: ios objective-c frameworks static-libraries

如果在iOS下加载该框架时,如何在框架中获取代码?

应用程序Reveal(http://revealapp.com)使用此技术(结合监听UIApplicationDidFinishLaunchingNotification通知)。

2 个答案:

答案 0 :(得分:3)

你有两种可能性。

  1. 在您自己的班级中使用+load method或将其添加到现有班级的类别中。例如:

    @implementation MyClass
    
    + (void) load
    {
        // Your initialization code
    }
    
    @end
    
  2. 在函数上使用__attribute__((constructor))。例如:

    __attribute__((constructor)) void MyLibraryInitialize(void)
    {
        // Your initialization code
    }
    
  3. 小心:两种方法都会在调用main函数之前执行您的代码。

答案 1 :(得分:0)

Reveal在NSObject上使用+(void)加载方法。