javascript
javascript를 이용해 작업할수 있는 유용한 함수 모음
javascript import를 하지 않아도 민트앱이 작동 됩니다.
1.OnDeviceReady
앱에서 브릿지 함수를 받을 준비가 되었을때 호출하는 이벤트
<script>
document.addEventListener("onDeviceReady", function (e) {
if ((typeof window.MintApp) != 'undefined') {
}
})
</script>
2.사용자 등록
MintApp.setUser(userId,name,email,desc,properties);
//실제 사용예
document.addEventListener("onDeviceReady", function (e) {
if ((typeof window.MintApp) != 'undefined') {
MintApp.setUser("1", "홍길동", "email@gmail.com", "사용자에 대한 설명입니다..", {
profile: "추가로 원하시는 프로퍼티를 넣을수 있습니다."
})
}
})
userId: 사용자 고유 아이디
name:사용자 이름
email:사용자 이메일
desc:사용자에 대한 설명
properties : 사용자의 추가 프로퍼티
사용자가 로그인 했을때 페이지에서 위의 함수를 호출해주시면 됩니다.
여러번 호출하더라도 앱에서 알아서 처리 해줍니다.
2.2 소셜 사용자 등록
MintApp.setUser(object);
//실제 사용예
document.addEventListener("onDeviceReady", function (e) {
if ((typeof window.MintApp) != 'undefined') {
MintApp.setUserSocial( {
'id' : 'id',
'name' : '이름',
'email' : 'test@naver.com',
'desc' : '설명',
'join_type' : 'naver',
'nickname' : '닉네임',
'gender' : '남',
'provider_id': '12345677',
'properties' : {
introduce:"안녕하세요",
address:"경북 구미시",
image: "https://img2.yna.co.kr/photo/yna/YH/2018/07/18/PYH2018071817780001300_P4.jpg"
},
});
}
id : 사용자 아이디(이아이디로 푸쉬를 전송함)
name: 이름
email:이메일
desc : 설명
join_type : 가입 타입(네이버,카카오,구글...)
nickname : 닉네임
gender : 성별
provider_id : 소셜 아이디
properties: : 추가 프로퍼티
예시 : {
introduce:"안녕하세요",
address:"경북 구미시",
image:"https://img2.yna.co.kr/photo/yna/YH/2018/07/18/PYH2018071817780001300_P4.jpg" }
사용자가 로그인 했을때 페이지에서 위의 함수를 호출해주시면 됩니다.
여러번 호출하더라도 앱에서 알아서 처리 해줍니다.
3.사용자 로그아웃
MintApp.logout();
//실제 사용예
if ((typeof window.MintApp) != 'undefined') {
MintApp.logout();
}
사용자가 로그아웃한 페이지에서 이 함수를 호출해주시면 됩니다.
여러번 호출하더라도 앱에서 알아서 처리 해줍니다.
4.토스트 메시지
MintApp.toast(message, second)
//실제 사용예
if ((typeof window.MintApp) != 'undefined') {
MintApp.toast("저장되었습니다.",1)
}
message: 토스트 메시지를 보여줄 내용
second:몇초동안 보여줄것인지 표시
ajax 처리나 기타 알림을 알려줄때 alert 보다 깔끔한 toast를 사용해보세요.
5.이미지 뷰어
MintApp.showImages(startIndex, imageArray)
//실제 사용예
if ((typeof window.MintApp) != 'undefined') {
MintApp.showImages(0, ["https://www.domain.com/image1.jpg",
"https://www.domain.com/image2.jpg"])
}
startIndex: 이미지의 최초 시작 인덱스(imageArray의 배열의 인덱스 번호)
imageArray:이미지 배열
여러이미지를 보여줄때 javascript 대신 속도 빠른 네이티브 이미지 뷰어를 사용해보세요
6.알림
웹에서 알림 사운드를 내고 싶을때 사용해보세요
7.진동알림
MintApp.vibrate(second)
//실제 사용예
MintApp.vibrate(1)
8.토픽 설정
MintApp.subTopic(type)
//실제 사용예
MintApp.subTopic("topic")
9.토픽 해제
MintApp.unsubTopic(type)
//실제 사용예
MintApp.unsubTopic("topic")
10.외부 브라우져 오픈
MintApp.openExternal(url)
11.날짜 선택
MintApp.getDateTime(format,defaultValue,callback)
//실제 사용예
MintApp.getDateTime("date","2021-09-12",function(date){
console.log(date)
{
date:"2021-12-12"
}
})
MintApp.getDateTime("datetime","2021-09-12 12:39:00",function(date){
console.log(date)
{
datetime:"2021-12-12 12:12:12"
}
})
MintApp.getDateTime("time","12:39:00",function(date){
console.log(date)
{
time:"2021-12-12 12:12:12"
}
})
format:날짜 혹인 날짜시간(date,datetime,time)
defaultValue:현재 시간
callback:결과를 받을 javascript 함수
날짜 형식은 yyyy-mm-dd hh:mm:ss의 규칙을 따른다.
12.연락처 저장
MintApp.saveContact(name, phone, email)
//실제 사용예
MintApp.saveContact("홍길동", "010-1234-1234", "name@domain.com")
13.연락처 가져오기
MintApp.getContact(callback)
//실제 사용예
MintApp.getContact(function(result){
console.log(result)
})
결과형식
{
name:
phone:[],
email:
}
14.화면 가로 세로 변환
MintApp.changeOrientation(type)
//실제 사용예
MintApp.changeOrientation("landscape")
15.qr 코드 가져오기
MintApp.qrScan(callback)
//실제 사용예
MintApp.qrScan(function(result){
console.log(result)
})
json 형태로 data필드에 qr 값이 내려온다.
16.현재 위치 가져오기
MintApp.getLocation(callback)
MintApp.getLocation(function (location) {
console.log(location)
})
latitude : 위도
longitude: 경도
17.리프레쉬 처리
MintApp.setRefresh(true) //true,false로 웹뷰의 리프레쉬 기능을 on,off 할수 있다.
웹뷰의 당겨서 리프레쉬 기능을 on,off 할수 있다.
18.share
MintApp.share("url",{
"title":"제목",
"url": "url",
"description":"공유 설명글입니다.",
"image_url": "이미지 url"
})
MintApp.share("text",{
b"title":"공유",
"description":"공유 설명글입니다."
})
title: 제목
url: 공유하고자 하는 url
descriptiom: 내용
image_url : 같이 공유할 이미지(공유받는 앱에서 이미지를 받지 못할수도 있다)
title: 제목
descriptiom: 내용
19.문자 복사
MintApp.copyText("복사 문자열")
20.share
//카카오공유
MintApp.shareKakao({
title : "제목",
description : "설명",
imageUrl : "https://t1.daumcdn.net/cfile/tistory/2525884B5787023E24",
mobileWebUrl: document.location.href,
webUrl : document.location.href,
})
//페이스북 공유
MintApp.shareFacebook({
"text": "공유",
"url" : document.location.href
})
//트위터 공유
MintApp.shareTwitter({
"text": "공유",
"url" : document.location.href
})
21.Cache Clear
// 웹의 캐쉬를 클리어하기 위함.
MintApp.clearCache()