2014-11-10 1 views
0

그래서 원격 서버에 동기 요청을 보내고 모든 응용 프로그램이 xcode에서 실행되도록합니다. 질문은 앱을 보관하고 TestFlight에 전송하면 테스터가 응답을받지 않아 동일한 요청을한다는 것입니다. 나는 Adhoc 빌드와 함께 장치 내에서 로그를보기 위해 xcode의 장치 창을 사용하고 있으며 서버에서 오는 빈 개체를 제공합니다. 또한 브라우저의 웹 클라이언트에서 서버에 오류가 없음을 증명하는 요청을했습니다. 코드는 다음과 같습니다.NSURL sendSynchronousRequest 사용 및 iOS에서 Adhoc 빌드를 사용하는 서버에서 응답 없음

-(NSDictionary *)postData:(NSString *)data toUrl:(NSString *)url 
{ 
    if(nil == url || nil == data){ return nil; } 
    NSString *fullUrl = [NSString stringWithFormat:@"%@%@", [self baseUrl], url]; 

    NSURL * serviceUrl = [NSURL URLWithString:fullUrl]; 
    NSMutableData *dados = [NSMutableData data]; 

    [dados appendData: [data dataUsingEncoding: NSUTF8StringEncoding]]; 

    NSMutableURLRequest * serviceRequest = [NSMutableURLRequest requestWithURL:serviceUrl]; 
    [serviceRequest setValue:@"application/json; charset=UTF-8" forHTTPHeaderField:@"Content-type"]; 
    [serviceRequest setHTTPMethod:@"POST"]; 
    [serviceRequest setHTTPBody:dados]; 

    NSHTTPURLResponse * serviceResponse; 
    NSError * serviceError; 
    NSData *dataResponse = [NSURLConnection sendSynchronousRequest:serviceRequest 
              returningResponse:&serviceResponse 
                 error:&serviceError]; 

    NSString *status = [self statusFamily:serviceResponse.statusCode]; 
    NSDictionary *dataFromResponse = [[QMParser sharedParser] dataToDictionary:dataResponse]; 

    return [NSDictionary dictionaryWithObjectsAndKeys:serviceResponse, @"response", 
                  status, @"status", 
               dataFromResponse, @"data", nil]; 
} 
+0

어디에서 반환 된 사전을 사용합니까 ?? – Atrash

+0

다른 메소드 내부에서 요청하는 메소드. –

답변

0

프로비저닝 프로파일로 인해 비슷한 문제가있었습니다. Xcode에서 프로비저닝 프로파일을 자동으로 설정하여 문제를 해결했습니다 (프로젝트 설정 -> 빌드 설정 -> 코드 서명으로 이동).

Code signing - Provisioning profile automatic

나는 TestFlight이 새의 Ad-Hoc 프로비저닝 프로파일을 필요로 생각합니다. 이 수정 이전에 응용 프로그램이 일반 http 요청을 할 때 AdHoc 프로비저닝 프로파일에 포함되지 않은 모든 장치에서 응용 프로그램이 충돌합니다.

그래도 작동하지 않으면 모든 prov 프로파일을 삭제하고 xcode로 하여금 다시 작성하도록하십시오.