2010-02-23 4 views
2

AsyncSocket을 사용하여 서버에 연결했지만 서버가 실행 중이 아니더라도 항상 연결됩니다 ... SDK 3.1.2를 사용하고 있습니다. 누구든지 전에이 문제에 직면 했습니까? 54 :iPhone AsyncSocket은 항상 모든 포트에 연결합니다!

#import "mluPresenterAppDelegate.h" 
#import "AsyncSocket.h" 

@implementation mluPresenterAppDelegate 

@synthesize window; 


#pragma mark - 
#pragma mark Application lifecycle 

- (void)applicationDidFinishLaunching:(UIApplication *)application {  
    AsyncSocket *assClient = [[AsyncSocket alloc] initWithDelegate:self]; 
    NSError *err = nil; 
    if (![assClient connectToHost:@"127.0.0.1" onPort:7777 error:&err]) { 
     NSLog(@"%@ %@", [err code], [err localizedDescription]); 
    } else { 
     NSLog(@"Conectou!"); 
    } 
    [window makeKeyAndVisible]; 
} 

결과는 항상 2010-02-22 22 26.922 mluPresenter [2083 : 207] Conectou! 포트를 1로 변경하거나 범위를 벗어난 포트로 변경하더라도 ...

미리 감사드립니다.

답변

4

내 기억은 -connectToHost:onPort:error:이 반환 될 때 실제로 연결되지 않는다는 것입니다. 시도가 성공한 것입니다. 대리자 메서드는 연결이 성공했는지 실패했는지 알려줍니다.

+0

그게 바로 친구! 고마워요! –

0

주어진 호스트와 포트에 성공적으로 연결되면 didConnectToHost : port delegate shoud fire.connectToHost : onPort : 오류 : 소켓에서 시도 할 수 있는지 여부를 나타내는 표시기 만 반환합니다.