2014-12-25 2 views
1

대부분의 애플리케이션 (SnapChat, WhhatsApp)은 OTP/인증 코드를 통해 전화 번호 확인을 수행합니다. 로컬로 전화 번호를 확인하는 것이 좋습니다 ..?

난 그냥 public String getLine1Number() 당신에게 유효한 전화 번호를 제공하고, 상기 방법은 null 또는 빈 문자열을 반환하는 경우에만 에서 인증 할 코드 기반 인증을 할 경우이를 방지하지 왜 궁금 해서요.

나는 이런 일을하는 방법이 얼마나 신뢰할 수 있는지 모르겠다. 어떤 조언을 많이 주시면 감사하겠습니다.

감사합니다.

답변

0

아니요. 그렇게하지 않는 것이 좋습니다. 예를 들어 INDIA Tata 전화 서비스에서이 번호를 검색 할 수없는 경우 모든 사업자의 전화 번호는 SIM에서 사용할 수 없습니다. 그러나 일부 국가에서는 교환 원이 SIM 번호에 전화 번호를 저장해 두었습니다. 그러나 사용자가 동의하면 Edittext에 미리 입력하여 사용자가 변경하도록 허용하고 나중에 SMS 만 보내야합니다.

1

누군가 가짜 클라이언트를 구현 한 다음 원하는 사람이 무엇이든 보낼 수 있습니다. 서버는 클라이언트로부터 전송 된 정보를 결코 신뢰해서는 안됩니다.

0

대부분의 이동 통신 사업자는 SIM에 MSISDN (전화 번호)을 저장하지 않습니다.
getLine1Number()이 문자열을 반환하더라도 문자열의 신뢰성이 떨어질 수 있습니다. (이식/MSISDN 변경 등으로 인한)
Programmatically obtain the phone number of the Android phone

사용자에게 확인 SMS 용 MSISDN을 요청하는 것이 가장 좋습니다.

또는 다른 식별자를 사용할 수도 있습니다.
Is there a unique Android device ID?

0

예, 실제로 모든 Android 기기 + SIM 카드 조합이 해당 방법으로 전화 번호를 부어주지는 않습니다. 또한 누군가가 이중 SIM 카드를 사용하거나 두 번째 전화에서 개인 전화 번호를 사용하려고하면 어떻게됩니까? 식별하려는 전화 번호는 사용자 입력에 의존해야합니다.

관련 문제