创建一个Objective-C API



我从来没有在objective-c中做过API,现在需要这样做。我的"想法"是构建一个可以在其他应用程序中实现的API。很像Flurry,只是有其他用途。在启动API时,应该输入用户名、密码和模式。模式应该是LIVE或BETA(我猜这应该是一个NSString(?)),然后应该是好的与[MyAPI doSomething:withThisObject];等。

首先是[MyAPI username:@"Username" password:@"Password" mode:@"BETA"];

谁能帮我一些教程和指针如何最好地学习这个?

听起来您想要做的是构建一个静态库。这是一个编译的.a文件,包含目标代码,您将分发到客户端以及包含接口的头文件。这篇文章有点过时,但有一些好的起点。或者,如果你不介意泄露你的源代码,你也可以只交付一组源文件给你的客户端。

就开发API本身而言,它应该与您在自己的应用程序中设计接口和实现Objective-C对象的方式非常相似。您将有一个MyAPI类,其中包含用于初始化、销毁和所有所需功能的函数。如果接口很复杂,还可以使用具有不同功能的多个类。因为您在代码片段中大写了MyAPI,所以看起来您希望通过调用类而不是类的实例来使用它—如果您认为只需要一个实例,这是一个很好的策略。要做到这一点,您可以使用单例模式。

因为你已经使用了用户名和密码,我想你的API将与web内部接口。我发现在Objective-C中解析JSON非常简单——它很容易从服务器发送请求和获取信息。

我个人会使用enum的unsigned int而不是NSString,因为它简化了比较等。你可以这样写:

enum {
    MYAPI_MODE_BETA,
    MYAPI_MODE_LIVE,
    NUM_MYAPI_MODES
};

然后调用:

[MyAPI username:@"Username" password:@"Password" mode:MYAPI_MODE_BETA];

还可以方便地检查它们是否提供了有效的模式。(必须小于NUM_MYAPI_MODES .)

祝你好运!

最新更新