소개 (Introduction)
Appify SDK는 React Native WebView 기반 하이브리드 앱에서 웹과 네이티브 간 통신을 쉽게 구현할 수 있도록 도와주는 SDK입니다.
설치
NPM
npm install @nolraunsoft/appify-sdk
CDN
<script src="https://cdn.jsdelivr.net/npm/@nolraunsoft/appify-sdk@latest/dist/appify-sdk.min.js"></script>
빠른 시작
import { appify } from '@nolraunsoft/appify-sdk';
// 초기화 (앱 시작 시 한 번만)
await appify.initialize({ debug: true });
// 디바이스 정보 가져오기
const info = await appify.device.getInfo();
// 웹뷰 환경인지 확인
if (appify.isWebview) {
// 네이티브 기능 사용
}
주요 기능
| 카테고리 | 기능 |
|---|---|
| 인증 | Kakao, Naver, Google, Apple 소셜 로그인 |
| 디바이스 | 디바이스 정보, IDFA/ADID 조회 |
| 카메라 | 바코드/QR 스캔 |
| 위치 | GPS 위치 정보 |
| 알림 | 푸시 토큰, 로컬 알림 |
| 저장소 | 앱 전용 영구 저장소 |
| 기타 | 햅틱, 공유, 다운로드, 클립보드, 권한 관리 등 |
아키텍처
SDK 메서드 호출 → 네이티브 브릿지로 메시지 전달 → 네이티브 기능 실행 → 결과 반환
모든 API는 Promise 기반으로 동작합니다.
특징
- 싱글턴 패턴: 어디서 import해도 동일한 인스턴스
- TypeScript 지원: 완벽한 타입 정의 제공
- 환경 감지: 웹뷰/웹 환경 자동 판별
- SSR 안전: Next.js, Nuxt 등 SSR 프레임워크에서 안전하게 동작
- 에러 처리: 타임아웃, 브릿지 미연결, 미초기화 등 상세 에러 클래스
- 동시성 제어: 요청 큐잉으로 안전한 동시 요청 처리
- 메모리 관리:
destroy()메서드로 완전한 리소스 정리