본문으로 건너뛰기

애플리케이션 (app)

🚀 추가된 버전 : SDKSDKv1.0.0 AndroidAndroidv1.0.0 iOSiOSv1.0.0
🔔 최신화 일자: 2025-10-22

개요

app 네임스페이스는 앱의 이름, 버전, 패키지명 등 주요 정보를 조회하거나, 앱의 최초 실행 여부를 확인하는 기능들을 제공합니다.


메서드 목록

메서드설명추가된 버전
checkFirstLaunch(callback)앱이 최초 실행인지 여부를 확인합니다.SDKSDKv1.4.0
getAppName()앱의 이름을 가져옵니다.SDKSDKv1.0.0
getAppKey()nachocode 플랫폼에서 발급한 앱의 고유 키를 반환합니다.SDKSDKv1.0.0
getCurrentAppVersion()현재 설치된 앱 버전을 반환합니다.SDKSDKv1.0.0
getPackageName()앱의 패키지명을 가져옵니다.SDKSDKv1.0.0
exitApp()앱을 종료합니다.SDKSDKv1.8.0

메서드 상세

checkFirstLaunch(callback: (isFirstLaunch: boolean) => void): void

설명

앱이 최초 실행인지 여부를 확인합니다. 이를 통해 온보딩 화면을 최초 실행 시에만 표시하거나, 특정 설정을 처음 실행 시에만 적용하는 등의 로직을 구현할 수 있습니다.

매개변수

이름타입필수 여부설명
callback(isFirstLaunch: boolean) => voidtrue(최초 실행) 또는 false(기존 실행)를 전달 받는 콜백 함수

반환 값

해당 메서드는 반환 값을 가지지 않으며, 결과는 callback을 통해 비동기적으로 제공됩니다.

사용 예제

Nachocode.app.checkFirstLaunch(isFirstLaunch => {
if (isFirstLaunch) {
console.log('앱이 최초로 실행되었습니다.');
// 온보딩 화면 또는 초기 설정 적용
} else {
console.log('앱이 이미 실행된 적이 있습니다.');
}
});

getAppName(): string

설명

현재 앱의 이름을 반환합니다.
이 값은 nachocode 대시보드에서 설정한 앱 이름과 동일합니다.

반환 값

타입설명
string앱의 이름을 반환합니다.

사용 예제

const appName = Nachocode.app.getAppName();
console.log(`앱 이름: ${appName}`);

getAppKey(): string

설명

앱 프로젝트를 식별하는 고유 키를 반환합니다.
이 키는 nachocode 서비스에서 앱을 구별하는 데 사용됩니다.

반환 값

타입설명
stringnachocode에서 발급한 앱의 고유 식별 키입니다.

사용 예제

const appKey = Nachocode.app.getAppKey();
console.log(`앱 키: ${appKey}`); // ex. 'APP-XXXXXXX'

getCurrentAppVersion(): string

설명

사용자의 현재 디바이스에 설치된 앱의 버전을 반환합니다.
이 값은 사용자의 앱 업데이트 상태를 확인하는 용도로 사용할 수 있습니다.

반환 값

타입설명
string설치된 앱의 버전 (예: "1.0.0")

사용 예제

const appVersion = Nachocode.app.getCurrentAppVersion();
console.log(`현재 앱 버전: ${appVersion}`); // ex. "1.0.0"

getPackageName(): string

설명

현재 실행 중인 앱의 패키지명을 반환합니다.
패키지명은 앱의 고유 식별자로, 일반적으로 com.nachocode.example 형식으로 제공됩니다.

반환 값

타입설명
string애플리케이션의 패키지명 (예: "com.nachocode.example")

사용 예제

const packageName = Nachocode.app.getPackageName();
console.log(`패키지명: ${packageName}`); // ex. "com.nachocode.example"

exitApp(): void

설명

앱을 프로그래밍 방식으로 종료합니다. 사용자가 명시적으로 종료를 선택했거나 서비스에 필수적인 권한이 허용되지 않은 경우 등 더 이상 앱을 지속할 수 없는 특정 상황에서만 신중하게 사용하세요.

기본 종료 흐름

나쵸코드 Android 앱소스에서는 루트 화면에서 뒤로가기를 누르면 “ '뒤로' 버튼을 한 번 더 누르면 종료됩니다. ” 안내 → 두 번째 뒤로가기 시 종료되는 패턴이 기본 제공됩니다. 이 기본 동작을 대체하기 위해 exitApp()을 사용할 필요는 없습니다.

주의사항

이 메서드는 앱을 즉시 종료하므로 사용에 주의가 필요합니다.
앱 스토어 가이드라인에 따르면 사용자의 명시적인 동의 없이 앱을 종료하는 것은 권장되지 않습니다.

  • Android: exitApp()은 현재 태스크를 최근 앱 목록에서 제거하며 종료합니다.
  • iOS: 시스템 정책상 정상적인 프로그램적 종료 방식이 없어, 의도적으로 크래시를 발생시켜 종료합니다. 이 종료는 크래시 리포트(App Store Connect/Xcode Organizer, Crashlytics 등)에 집계됩니다. 추가적으로 의도적 크래시는 크래시율 악화심사 반려 리스크가 있습니다. 상용(스토어) 배포에서는 사용을 지양하세요.

지원 플랫폼

플랫폼지원 여부
Android
iOS
Web

반환 값

해당 메서드는 반환 값을 가지지 않습니다.

사용 예제

// 1) 사용자가 '로그아웃 후 닫기'를 명시적으로 선택하는 경우
function handleLogout() {
// 로그아웃 로직 수행
clearUserData();

// 사용자에게 확인 요청
if (confirm('앱을 종료하시겠습니까?')) {
Nachocode.app.exitApp();
}
}
// 2) 필수 권한 미허용 등 예외 상태: 사유 안내 후 사용자가 종료를 선택
async function cannotProceed(reason) {
const ok = confirm(
`${reason}\n\n사유로 앱을 계속 사용할 수 없습니다.\n앱을 종료하시겠습니까?`
);
if (ok) {
Nachocode.app.exitApp();
}
}