2013-10-25 12 views
8

Jak wybrać numer USSD dla iPhone'a programowo?wybierać kod USSD z iPhone programowo

Szukałem i znalazłem że iOS 7 już zablokował użycie kodu USSD ze względów bezpieczeństwa oraz w iPhone z < iOS7 możemy wybrać kod USSD recznie ale nie programowo.

ktoś ma pomysł, możemy wywołać USSD programowo jak:

[[UIApplication sharedApplication] openURL:[NSURL URLWithString:@"tel:\*123* <2334555>#"]]?

+1

W celu późniejszego wykorzystania, szybsze byłoby uruchomienie Xcode i przetestowanie tej linii kodu, zamiast pytać tutaj. – neilco

Odpowiedz

11

Nie można wybrać numeru zawierającego * lub # znaków. Firma Apple nie zezwala na nie w łańcuchu wybierania ze względów bezpieczeństwa.

Apple Documentation says:

Aby uniemożliwić użytkownikom złośliwie przekierowanie połączeń telefonicznych lub zmianę zachowanie telefonu lub konta, aplikacja Telefon obsługuje większość, ale nie wszystkie znaki specjalne w systemie tel . W szczególności, jeśli adres URL zawiera znaki * lub #, aplikacja Telefon nie próbuje , aby wybrać odpowiedni numer telefonu. Jeśli Twoja aplikacja odbiera ciągi URL od użytkownika lub nieznanego źródła, upewnij się też, że wszystkie znaki specjalne, które mogą nie być odpowiednie w adresie URL, są poprawnie usunięte. W przypadku aplikacji natywnych należy użyć stringByAddingPercentEscapesUsingEncoding: method znaków NSString do , która zwraca poprawnie zapisaną wersję oryginalnego łańcucha .

0

Nie, nie można użyć programu openURL do programowego wybierania kodów USSD. Powoduje to zwrot NO.

Powiązane problemy