私の iOS コード (Restkit 0.10.0 を使用) は、iPhone 5.1シミュレーターで完全に動作します。ただし、同じコードは iPhone 6.1シミュレーターでは機能しないようです。
以下のコードでは、[objectLoader send] が呼び出され、その呼び出しが RKRequestQueue に追加されていることがわかります。ただし、http 呼び出しは行われず、アクティビティ インジケーターは無限に回転し続けます。
-(void)myMethodCall:(NSString*)myparam1 password:(NSString*)myparam2{
RKObjectMapping* wsReturnMapping = ... //assume some complex mapping logic lives here
RKObjectLoader *objectLoader = [objectManager objectLoaderWithResourcePath:@"/somevalidurl" delegate:self]; //this line shows a deprecation warning
objectLoader.method = RKRequestMethodPOST;
objectLoader.objectMapping = wsReturnMapping;
objectLoader.params = [NSDictionary dictionaryWithObjectsAndKeys:myparam1, @"myparam1", myparam2, @"myparam2", nil];
[objectLoader send];
}
http呼び出しを行うためにこれらのアプローチも試しました(ただし、どれも機能しませんでした):
別のアプローチ 1:
[objectManager loadObjectsAtResourcePath:@"/somevalidurl" usingBlock:^(RKObjectLoader *loader) {
loader.delegate = self;
loader.method = RKRequestMethodPOST;
loader.objectMapping = wsReturnMapping;
loader.params = [NSDictionary dictionaryWithObjectsAndKeys:myparam1, @"myparam1", myparam2, @"myparam2", nil];
}];
別のアプローチ 2:
NSDictionary *dict = [NSDictionary dictionaryWithObjectsAndKeys:myparam1, @"myparam1", myparam2, @"myparam2", nil];
NSString *resourcePath = [@"/somevalidurl" appendQueryParams:dict];
[objectManager loadObjectsAtResourcePath:resourcePath delegate:self];
質問:
1) iOS 6.x で動作するように Restkit 0.10.0 を入手した人はいますか?
2) [objectLoader send] が http 呼び出しを行っていない理由は? (iOS 5.x で動作)
3) Restkit のアップグレードが唯一のオプションである場合、所有しているobjectMappingを引き続き利用できますか? つまり、最近の Restkit には objectMapping が使用されている例が見つかりませんでした。
どんな助けでも感謝します。