使用多个基本 URL 和多个对象管理器 (RestKit)

问题描述 投票:0回答:1

我正在尝试在 iOS 应用程序中使用两个 API。

我正在使用 RestKit 并按照本文的指南进行操作:https://github.com/RestKit/RestKit/wiki/Using-Multiple-Base-URLs-(and-Multiple-Object-Managers)

既然它不再是一个选项,我该怎么做才能代替此代码中的

retain

AppDelegate.m

RKObjectManager *flickrManager = 
        [RKObjectManager objectManagerWithBaseURL:flickrBaseUrl]; // <-- shared singleton
RKObjectManager *foursquareManager = 
        [[RKObjectManager objectManagerWithBaseURL:foursquareBaseUrl] retain]; // <-- you must retain every other instance.
ios objective-c restkit
1个回答
1
投票

您想将所有对象管理器存储在某个地方。如果您不使用 ARC,则需要存储在数组/字典(可能带有 URL 的键)/属性(强)中。

在您展示的示例代码中,第一个对象管理器没有保留,因为 RestKit 为您保留了一个引用(单例)。一般来说,当使用多个对象管理器时,您希望忽略单例存储并自己管理所有对象管理器引用。

我建议使用一个数据控制器,它在内部隐藏对象管理器属性,而是公开基于数据模型对象的 API。在内部,它可以为收到的每个请求选择适当的对象管理器。

© www.soinside.com 2019 - 2024. All rights reserved.