🔔 최신화 일자: 2025-04-18
Nachocode JavaScript 클라이언트 SDK는 웹 개발자들이 네이티브 앱의 고유 기능을 손쉽게 활용할 수 있도록 돕는 SDK입니다.
Nachocode SDK를 활용하면 다양한 네이티브 기능에 접근할 수 있으며, 웹 애플리케이션에서도 손쉽게 모바일 디바이스의 고유 정보를 활용할 수 있습니다.
이 문서는 SDK의 설치, 초기화, 주요 기능 및 사용 방법 등을 안내합니다.
-
Nachocode SDK를 웹 페이지에 통합하는 과정은 매우 간단합니다. 아래 단계를 따라 진행하세요.
-
Nachocode SDK는 CDN을 통해 간편하게 설치할 수 있습니다.
-
웹 페이지의
<body>
태그 안에 다음과 같은 스크립트 태그를 추가합니다. 이 스크립트는 Nachocode SDK를 웹 페이지에 로드합니다.-
현재 최신 버전 v1.5.0
-
최신 버전의 SDK를 항상 유지하려면 아래 코드를 사용하세요
<script src="https://cdn.nachocode.io/nachocode/client-sdk/@latest/client-sdk.min.js"></script>
- 특정 버전으로 고정하려면 다음과 같이 사용합니다
<script src="https://cdn.nachocode.io/nachocode/client-sdk/@1.5.0/client-sdk.min.js"></script>
-
📢 최신 버전을 사용하는 것이 권장되며, 특정 버전 고정은 호환성 유지가 필요한 경우에 사용하세요.
- 웹 페이지 로딩이 완료되면, Nachocode SDK를 초기화해야 합니다.
- 초기화는 API 키를 사용하며, 필요에 따라 디버깅 로깅 기능을 활성화할 수 있습니다.
- Nachocode SDK를 초기화합니다. 애플리케이션이 시작할 때 호출해야 합니다.
옵션 | 타입 | 설명 |
---|---|---|
apiKey |
string |
Nachocode SDK 서비스 접근을 위한 API 키. Nachocode 대시보드에서 발급받을 수 있습니다. |
options |
InitializeOptions |
(optional) 선택적 초기화 옵션입니다 (sandbox , logger 등). |
옵션 | 타입 | 설명 |
---|---|---|
sandbox |
boolean |
테스트 환경을 위한 샌드박스 모드를 활성화합니다 (true = 샌드박스 모드). |
logger |
boolean |
개발 시 디버깅 로깅을 활성화합니다 (true = 로그 활성화). |
- 다음 예제 코드는 SDK를 초기화하는 방법을 보여줍니다.
- 이 코드는 보통
<script>
태그 안에 넣거나, 별도의 JavaScript 파일에 작성할 수 있습니다.
<script>
// SDK가 로드되었는지 확인한 후 초기화를 시도합니다.
if (window.Nachocode) {
// InitializeOptions 없이도 초기화를 할 수 있습니다.
// sandbox 와 logger는 false 값을 가지게 됩니다.
Nachocode.init('your_api_key_here');
}
</script>
- 앱 환경에서만 실행시킬 로직을 추가 할 수도 있습니다.
<script>
if (window.Nachocode) {
// SDK 초기화 후 동작할 이벤트를 등록 합니다.
Nachocode.event.on('init', () => {
if (Nachocode.env.isApp()) {
// 앱 환경에서만 동작 할 로직을 작성합니다.
}
});
// Nachocode SDK를 초기화 합니다.
Nachocode.init('your_api_key_here', { logger: true });
} else {
console.error('Nachocode SDK가 로드되지 않았습니다.');
}
</script>
-
Nachocode SDK가 초기화가 완료되면,
Nachocode
네임스페이스 아래에 정의된 다양한 네이티브 기능을 사용할 수 있습니다. -
아래 예시는 SDK의 일부 기능을 사용하는 방법을 보여줍니다.
- 앱 정보 가져오기
const appName = Nachocode.app.getAppName(); console.log(`앱 이름: ${appName}`); // ex. "Nachocode Developer"
- 디바이스 정보 확인
Nachocode.device.getDeviceModel(model => { console.log(`디바이스 모델: ${model}`); });
-
대부분의 기능은 웹 실행환경에선 무시되고, 앱 실행환경에서 정상 작동합니다.
Nachocode SDK는 각 기능별로 네임스페이스(namespace) 로 구분되어 있습니다.
아래는 주요 네임스페이스의 목록과 설명입니다. 각 네임스페이스에 대한 상세한 문서는 문서 링크에서 확인하세요.
네임스페이스 | 설명 | 문서 링크 |
---|---|---|
app |
앱 이름, 버전, 패키지 이름 등의 정보를 제공합니다. | 앱 네임스페이스 |
apple |
Apple 계정을 통한 소셜 로그인 기능 등을 제공합니다. | Apple 네임스페이스 |
authentication |
생체 인증(Fingerprint/Face ID) 등의 기능을 제공합니다. | 인증 네임스페이스 |
backkey |
Android 디바이스의 네이티브 백 키 이벤트를 제어할 수 있습니다. | 백 키 네임스페이스 |
browser |
외부 또는 내부 브라우저로 URL을 열 수 있습니다. | 브라우저 네임스페이스 |
clipboard |
텍스트를 클립보드에 복사하거나 읽을 수 있습니다. | 클립보드 네임스페이스 |
device |
디바이스 모델, OS 버전, 배터리 및 네트워크 상태 등을 확인합니다. | 디바이스 네임스페이스 |
env |
SDK 초기화 상태, 실행 환경(웹/앱) 등을 확인할 수 있습니다. | 환경 네임스페이스 |
event |
초기화, 포그라운드/백그라운드 전환, 네트워크 상태 변경 등의 이벤트를 처리합니다. | 이벤트 네임스페이스 |
facebook |
Facebook 소셜 로그인 기능을 제공합니다. | Facebook 네임스페이스 |
google |
Google 소셜 로그인 기능을 제공합니다. | Google 네임스페이스 |
iap |
Google Play 및 Apple App Store 인앱 결제 기능을 제공합니다. | 인앱 결제 네임스페이스 |
kakao |
Kakao 소셜 로그인 기능을 제공합니다. | Kakao 네임스페이스 |
permission |
카메라, 위치, 푸시 알림 등 디바이스 권한을 요청하고 상태를 확인할 수 있습니다. | 권한 네임스페이스 |
preference |
애플리케이션 내부 저장소를 통해 데이터를 저장 및 관리합니다. | 내부 저장소 네임스페이스 |
push |
푸시 알림 토큰을 관리하고 Nachocode 서버에 등록할 수 있습니다. | 푸시 네임스페이스 |
scanner |
QR 코드 스캔 및 기타 스캔 기능을 제공합니다. | 스캐너 네임스페이스 |
setting |
Pull to Refresh와 같은 설정 기능을 제공합니다. | 설정 네임스페이스 |
share |
네이티브 공유 UI를 통해 URL을 공유할 수 있습니다. | 공유 네임스페이스 |
tabbar |
앱 내부 탭바의 표시 여부 및 이동을 제어할 수 있습니다. | 탭 바 네임스페이스 |
vibration |
디바이스 진동 및 햅틱 피드백을 제어합니다. | 진동 네임스페이스 |
더 많은 네임스페이스와 사용법은 공식 문서를 확인하세요.
-
Nachocode SDK를 사용하여 더 많은 기능을 구현하고 싶다면, 공식 개발자 문서를 참조하세요.
-
Nachocode 팀은 여러분의 성공적인 프로젝트 구현을 위해 항상 도움을 준비하고 있습니다. 기술적인 질문이나 피드백이 있다면 언제든지 support@nachocode.io로 문의를 보내주세요.