Iphone 用于iOS项目的XMLRPC iOS
我疯了,我想不出来 我已经下载并尝试为iOS构建XMLRPC。我和他在一起 第一个,最初的一个,没有iOS目标。第二个应该有,但即使是那个似乎也不起作用 我使用XCode以以下方式构建XMLRPC iOS库:Iphone 用于iOS项目的XMLRPC iOS,iphone,ios,xcode,xml-rpc,ios5,Iphone,Ios,Xcode,Xml Rpc,Ios5,我疯了,我想不出来 我已经下载并尝试为iOS构建XMLRPC。我和他在一起 第一个,最初的一个,没有iOS目标。第二个应该有,但即使是那个似乎也不起作用 我使用XCode以以下方式构建XMLRPC iOS库: 下载,解压,在xcode中打开 进入“产品>归档”菜单 在organized中,我在最新版本上选择“共享” 我将其保存在自己的项目文件夹中。将其包括在项目中 当我构建自己的项目时,我得到: ld:警告:忽略文件 /Users/paulp/Documents/ios/iPhone/ios
- 下载,解压,在xcode中打开
- 进入“产品>归档”菜单
- 在organized中,我在最新版本上选择“共享”
- 我将其保存在自己的项目文件夹中。将其包括在项目中李>
“_OBJC_CLASS_$_XMLRPCRequest”,引用自: MyAPI.o中的objc类引用
“_OBJC_CLASS_$_XMLRPCConnectionManager”,引用自: 在MyAPI.o ld:符号中找不到的objc类引用 架构i386 clang:错误:链接器命令失败,退出代码为1 (使用-v查看调用) 这怎么可能?XMLRPC iOS设置设置为:
- SDKROOT=iphoneos5.0
- ARCHS=$(ARCHS_标准_32_位)=armv7
- IPHONEOS_部署_目标=5.0
- 有效的ARCHS=armv6 armv7k armv7f armv7
- 其他\代码\符号\标志=armv7k armv7f armv6 armv7
- GCC_VERSION=com.apple.compilers.llvmgcc42
谢谢 我在一个iPhone项目中成功地使用了您提到的第一个。
他应该在工作。(不久前) [编辑]
更多详情: 我导入了xmlrpresponse和XMLRPCEventBasedParser(+所有相关类都是为了让它们在项目中工作) 然后,下面是解析响应的代码(我是手工处理请求的):
NSURL*url=[NSURL URLWithString:@”http://www.xxxxxxxxx.fr/xmlrpc.php"];
NSMutableURLRequest*urlRequest=[NSMutableUrlRequestWithURL:url];
[urlRequestSetHttpMethod:@“POST”];
[urlRequest addValue:@“文本/xml”用于HttpHeaderField:@“内容类型”];
NSString*param=[NSString stringWithFormat:@“%f%f%.0f1”,
请求坐标纬度,
request.coordinate.longitude,
请求半径/1000.0];
NSString*xmlrpcReq=[NSString stringWithFormat:@“geoSearch%@”,参数];
[urlRequest setHTTPBody:[xmlrpcReq数据使用编码:NSUTF8StringEncoding];
NSURLResponse*响应;
n错误*错误;
NSData*内容=[NSURLConnection sendSynchronousRequest:urlRequest returningResponse:&响应错误:&错误];
xmlrpresponse*rpresponse=[[xmlrpresponse alloc]initWithData:content];
如果([RpResponse faultCode]==0){
NSArray*结果=(NSArray*)[rpresponse对象];
干杯
Lionel。我可以知道您正在设置什么目标吗?例如,如果您在iOS中使用三个可用目标,请选择libXMLRPC,然后构建,然后从构建中选择libXMLRPC.a文件,然后将其链接到我们的项目。然后它将运行。它对我有效;下面就是我所做的
- 创建新项目(称为RpcTest)
- 从bitbucket下载forked项目,在我的RpcTest目录中提取zip,因此我的目录如下所示:
- 将XMLRPC-iOS.xcodeproj拖到我的Xcode项目中(在Frameworks组下,但这并不重要)
- 现在,到构建设置。在项目的构建设置中的用户标题搜索路径(取消选中递归)下添加kdbdallas-xmlrpc-ios-f28a13cc16ae;现在构建项目(cmd+B)
- 转到构建阶段选项卡,展开目标依赖项,添加XMLRPC-IOS项目,展开带有库的链接二进制文件,添加libXMLRPC_IOS.a。
请注意:不完整的实现,只是一个xmlrpc工作的演示!;)谢谢你回答lionel,尽管很遗憾,它根本帮不了我。如果你能解释一下你是如何让它为你的项目工作的,那就太棒了。我检查了我的旧项目,下面是我可以提取的;)太棒了,非常好的解释。我一定会给它一个try、 你能把它寄给我吗?Paul-at-Paul Peelen-dot-com。谢谢!我当然可以。我会把它上传到某个地方,并在原始答案中发布链接,这只会帮助其他有同样问题的人。@mja感谢你发布答案和代码。这真的很有帮助。我只想问这个项目有三个目标。你能帮助我如何解决这个问题吗分别执行ios版本(目标)。
NSURL* url = [NSURL URLWithString:@"http://www.xxxxxxxxx.fr/xmlrpc.php"];
NSMutableURLRequest* urlRequest = [NSMutableURLRequest requestWithURL:url];
[urlRequest setHTTPMethod:@"POST"];
[urlRequest addValue:@"text/xml" forHTTPHeaderField:@"Content-Type"];
NSString* param = [NSString stringWithFormat: @"<param><value><double>%f</double></value></param><param><value><double>%f</double></value></param><param><value><double>%.0f</double></value></param><param><value><int>1</int></value></param>",
request.coordinate.latitude,
request.coordinate.longitude,
request.radius/1000.0];
NSString* xmlrpcReq = [NSString stringWithFormat:@"<?xml version=\"1.0\"?><methodCall><methodName>geoSearch</methodName><params>%@</params></methodCall>", param];
[urlRequest setHTTPBody:[xmlrpcReq dataUsingEncoding:NSUTF8StringEncoding]];
NSURLResponse* response;
NSError* error;
NSData* content = [NSURLConnection sendSynchronousRequest:urlRequest returningResponse:&response error:&error];
XMLRPCResponse* rpcResponse = [[XMLRPCResponse alloc] initWithData:content];
if ([rpcResponse faultCode]==0) {
NSArray* result = (NSArray*)[rpcResponse object];