ios 编程中的网络处理
Network handling in ios Programming
我是 iOS 编程新手。
现在我有一个模型 'Activity'。
activity 需要使用 AFnetworking 库从服务器发送和接收数据。
有一个服务器管理器处理所有网络方法。
我的想法是在初始化每个 Activity 对象时创建一个服务器管理器实例,并接收数据。因此,当我需要 table 个活动时,我必须在创建每个 activity
时重复调用该实例
+ (ServerManager*) instance
{
static ServerManager *Instance = nil;
static dispatch_once_t onceToken = 0;
dispatch_once(&onceToken, ^{
Instance = [[ServerManager alloc]init];
});
return Instance;
}
有道理,但是重复创建服务器管理器实例是否有效或合适?
或者在加载时调用实例更好UI并分配viewdidload中的每个数据?
谢谢
有多种方法可以做您想做的事,这完全取决于具体情况和您要加载的数据量。我通常这样做的方式是:我宁愿从 ServerManager class 扩展你的 Activity class,这样 ServerManager 中可用的所有网络方法都自动可用于 Activity ] class。
所以这样,每次你创建一个新的 Activity class,它已经有能力出去为你获取数据。
同样,这是主观的,也是我通常做的方式。
希望对您有所帮助。
我是 iOS 编程新手。
现在我有一个模型 'Activity'。 activity 需要使用 AFnetworking 库从服务器发送和接收数据。
有一个服务器管理器处理所有网络方法。
我的想法是在初始化每个 Activity 对象时创建一个服务器管理器实例,并接收数据。因此,当我需要 table 个活动时,我必须在创建每个 activity
时重复调用该实例 + (ServerManager*) instance
{
static ServerManager *Instance = nil;
static dispatch_once_t onceToken = 0;
dispatch_once(&onceToken, ^{
Instance = [[ServerManager alloc]init];
});
return Instance;
}
有道理,但是重复创建服务器管理器实例是否有效或合适?
或者在加载时调用实例更好UI并分配viewdidload中的每个数据?
谢谢
有多种方法可以做您想做的事,这完全取决于具体情况和您要加载的数据量。我通常这样做的方式是:我宁愿从 ServerManager class 扩展你的 Activity class,这样 ServerManager 中可用的所有网络方法都自动可用于 Activity ] class。
所以这样,每次你创建一个新的 Activity class,它已经有能力出去为你获取数据。
同样,这是主观的,也是我通常做的方式。
希望对您有所帮助。