JavaScript

모바일 웹 javascript SMS 문자보내기( location.href )

강릉꿀주먹 2019. 7. 2. 22:54

하이브리드 앱을 개발하다보면 공유하기 기능으로 카카오톡, 라인, 페이스북, SMS 등을 지원한다.

이중에 SMS공유하기를 사용할때 이용하는 부분을 설명하려한다.

기본구조는 아래과 같다.

 

1
2
3
4
5
"sms:" + phone number(option) + "?body=" + text
ex) "sms:01099999999?body=hellow"
ex) "sms:?body=hellow"
 
Colored by Color Scripter

 

전화번호의 경우는 옵션이다.

전화번호를 입력하면 바로 해당번호로 문자내용을 적어둔 상태로 문자를 바로 보낼수 있는 상태화면으로 간다.

하지만 전화번호를 입력하지 않으면 본인 핸드폰의 주소록 목록으로 가고 보낼 사람을 선택하면 보낼메세지 내용이 입력된 상태로 이동이 된다.

하지만 안드로이드와 아이폰의 경우 조금 구분해서 사용을 해야한다.

전화번호와 body사이에 '?' 이 부분을 구분해야합니다. 아이폰의 경우는 '&'를 사용해야하며 안드로이드는 '?'를 사용해야합니다.

 

1. 안드로이드

1
2
location.href = sms:받을번호?body=보낼메세지;
 
Colored by Color Scripter

 

2.아이폰

1
2
location.href = sms:받을번호&body=보낼메세지;
 
Colored by Color Scripter

 

이전 게시글에서 안드로이드폰과 아이폰을 구분하는 함수를 이용하면 좀더 간단하게 구현할수 있다.

구분하는 함수명을 chkIOS() 이라고하자.

 

1
2
3
4
// checkMobile() "ios" : 아이폰 , "android" : 안드로이드폰
// 아이폰 : &, 안드로이드 : ?
location.href = 'sms:' +(checkMobile() == 'ios' ? '&' : '?'+ 'body='+ message;
 
Colored by Color Scripter

 

모바일기기를 구분하는 내용은 아래 게시글을 참고하면 된다.

 

 

 

https://justbobby.tistory.com/20

 

javascript 안드로이드 아이폰 구분

하이브리드 및 웹 앱을 만들다보면 Android 와 IOS를 구분해야하는 부분들이 생긴다. ​ 자바스크립트에서 접속자의 브라우저 정보 및 디바이스 정보를 가지고있는 User-Agent라는 객체를 사용하여 Android와 IOS..

justbobby.tistory.com