2012-10-08 7 views
3

클릭하면 전화를 걸어야한다는 견해가 있습니다. 나는 아래의 코드를 사용하려고 시도하고있다 :iOS : 사용자에게 전화 걸기를 묻습니다.

 NSString *phoneNumber = [@"tel://" stringByAppendingString:locPhone]; 
    NSString *phoneString = [phoneNumber stringByReplacingOccurrencesOfString:@" " withString:@""]; 
    phoneString= [phoneString stringByReplacingOccurrencesOfString:@"(" withString:@""]; 
    phoneString= [phoneString stringByReplacingOccurrencesOfString:@")" withString:@""]; 
    phoneString= [phoneString stringByReplacingOccurrencesOfString:@"-" withString:@""]; 
    [[UIApplication sharedApplication] openURL:[NSURL URLWithString:phoneString]]; 

내가 코드에 도달 한 것을 알고, 그리고 "phoneString"의 궁극적 값은 10 자리 전화 번호는입니다. 오류는 없지만 아무 일도 일어나지 않습니다. 내가 뭘 놓치고 있니?

편집 : 이제는 canOpenURL이 NO를 반환합니다. 이것은 시뮬레이터에서 실행하기 때문에입니까?

+0

코드에 도달했음을 어떻게 알았습니까? – aforaudrey

+0

문제없이 작동해야하는 것처럼 보입니다. 디버깅 할 경우 확신 할 수 있습니다. –

+0

항상 먼저 'canOpenURL'을 사용해야합니다. YES를 반환합니까? – Felix

답변

2

코드가 올바르지 만 시뮬레이터에서 전화를 시뮬레이트 할 수 없다는 것을 유의하십시오 (시뮬레이터에서 canOpenURL으로 테스트하면 NO가 반환 됨).

코드를 실제 장치에서 테스트해야합니다. 실제로 예상대로 작동하는 것을 볼 수 있습니다.

그런데 실제로 응용 프로그램에 canOpenURL 테스트를 추가해야하고 사용자가 예를 들어 또는 iPad에서 iPod 장치에서 응용 프로그램을 실행할 수 있고 그 중 어느 것도 수행 할 수 없기 때문에 사용자에게 경고를 표시해야합니다 전화.

관련 문제