안드로이드 SDK
- 인쇄
- PDF
안드로이드 SDK
- 인쇄
- PDF
기사 요약
이 요약이 도움이 되었나요?
의견을 보내 주셔서 감사합니다.
Classic/VPC 환경에서 이용 가능합니다.
안드로이드 앱의 보안을 위한 App Safer 안드로이드 SDK 사용 방법에 대해 설명합니다. SDK를 설치하고 환경을 구성함으로써 App Safer를 연동할 수 있습니다.
참고
App Safer를 적용하는 전반적인 샘플 코드는 샘플 코드에서 확인해 주십시오.
SDK 설치 및 환경 구성
App Safer에서 제공하는 기능을 이용하려면 먼저 안드로이드 SDK를 설치한 후 환경을 구성해 주십시오. 구성하는 방법은 다음과 같습니다.
- 개발 툴에서 앱 프로젝트를 열어 주십시오.
- 네이버 클라우드 플랫폼 콘솔에서 다운로드한 AAR 파일을 프로젝트의 libs 폴더로 복사해 주십시오.
- libs 폴더가 없는 경우 새로 만들어 주십시오.
- build.gradle 파일을 열고 다음 코드를 추가해 주십시오.
repositories { flatDir { dirs 'libs' } }
- build.gradle 파일에 다음 코드를 추가하여 App Safer AAR 파일에 대한 의존성을 설정해 주십시오.
- 특정 버전만 참고하도록 설정
dependencies { implementation name:'appsafer-android-sdk-${vesion}', ext:'aar' }
- 모든 버전을 참고하도록 설정
dependencies { implementation fileTree(dir: 'libs', include: 'appsafer-android-sdk-*.aar') }
- 특정 버전만 참고하도록 설정
- AndroidManifest.xml 파일을 열고
meta-data
태그를 이용하여 권한 적용 및 App Safer Key를 입력해 주십시오.meta-data
태그 내android:name
의 값은 반드시com.ncp.appsafer.key
로 작성해야 합니다.android.permission.INTERNET
은 필수 권한입니다. 파일 내 권한이 없는 경우 코드를 추가해 주십시오.
<?xml version="1.0" encoding="utf-8"?> <manifest> <uses-permission android:name="android.permission.INTERNET"/> <!-- required permission for Antivirus(target API >= 30) --> <uses-permission android:name="android.permission.QUERY_ALL_PACKAGES" tools:ignore="QueryAllPackagesPermission" /> <application> <meta-data android:name="com.ncp.appsafer.key" android:value="{APPSAFER_KEY}" /> </application> </manifest>
제공 API
App Safer API는 1개의 패키지를 통해 제공되며, 각 패키지에서 호출 가능한 API는 다음과 같습니다.
- com.nbp.appsafer.AppSafer
이름 설명 start App Safer 실행 setUserId 사용자 식별자 설정 getUserId 설정된 사용자 식별자 조회 getUserDeviceId 기기 식별자 조회 preventScreenshot 캡처 방지
start
App Safer를 실행하려면 아래 코드를 사용해 주십시오.
fun start(context: Context): Int
int start(Context context)
매개변수
매개변수 설명 context ApplicationContext 반환 값
반환 값 설명 EXIT_SUCCESS(-1) 실행 실패 EXIT_FAILURE(0) 실행 성공 예제
if (AppSafer.INSTANCE.start(applicationContext) == 0) { // success logic }
if (AppSafer.INSTANCE.start(getApplicationContext()) == 0) { // success logic }
setUserId
초기화 및 탐지 이벤트 발생 시 App Safer 서버로 전송되는 로그에 사용자 식별자를 포함하려면 아래 코드를 사용해 주십시오.
fun setUserId(userId: String)
void setUserId(String userId)
매개변수
매개변수 설명 userId 사용자 식별자 예제
SDK
AppSafer.INSTANCE.userId = "ExampleUserId"
AppSafer.INSTANCE.setUserId("ExampleUserId");
간편 적용
val exampleId = "exampleId" val clazz = Class.forName("com.nbp.appsafer.AppSafer") val enumConstants = clazz.enumConstants if ("INSTANCE" == enumConstants[0].toString()) { clazz.getDeclaredMethod("setUserId", String::class.java).invoke(enumConstants[0], userId) }
final String userId = "exampleId"; Class<?> clazz = Class.forName("com.nbp.appsafer.AppSafer"); Object[] enumConstants = clazz.getEnumConstants(); if ("INSTANCE".equals(enumConstants[0].toString())) { clazz.getDeclaredMethod("setUserId", String.class).invoke(enumConstants[0], userId); }
getUserId
설정된 사용자 식별자를 조회하려면 아래 코드를 사용해 주십시오.
fun getUserId(): String
String getUserId()
반환 값
반환 값 설명 String 설정한 사용자 식별자 예제
SDK
val userId = AppSafer.INSTANCE.userId
String userId = AppSafer.INSTANCE.getUserId();
간편 적용
var userId: String? = null val clazz = Class.forName("com.nbp.appsafer.AppSafer") val enumConstants = clazz.enumConstants if ("INSTANCE" == enumConstants[0].toString()) { userId = clazz.getDeclaredMethod("getUserId").invoke(enumConstants[0]) as String? }
String userId = null; Class<?> clazz = Class.forName("com.nbp.appsafer.AppSafer"); Object[] enumConstants = clazz.getEnumConstants(); if ("INSTANCE".equals(enumConstants[0].toString())) { userId = (String) clazz.getDeclaredMethod("getUserId").invoke(enumConstants[0]); }
getUserDeviceId
기기 식별자를 조회하려면 아래 코드를 사용해 주십시오.
fun getUserDeviceId(): String
String getUserDeviceId()
반환 값
반환 값 설명 String 기기 식별자 예제
SDK
val userId = AppSafer.INSTANCE.userDeviceId
String userDeviceId = AppSafer.INSTANCE.getUserDeviceId();
간편 적용
var udid: String? = null val clazz = Class.forName("com.nbp.appsafer.AppSafer") val enumConstants = clazz.enumConstants if ("INSTANCE" == enumConstants[0].toString()) { udid = clazz.getDeclaredMethod("getUserDeviceId").invoke(enumConstants[0]) as String? }
String udid = null; Class<?> clazz = Class.forName("com.nbp.appsafer.AppSafer"); Object[] enumConstants = clazz.getEnumConstants(); if ("INSTANCE".equals(enumConstants[0].toString())) { udid = (String) clazz.getDeclaredMethod("getUserDeviceId").invoke(enumConstants[0]); }
preventScreenshot
앱의 스크린샷, 녹화, 최근 앱 미리 보기 기능을 제한하려면 아래 코드를 사용해 주십시오.
참고
Activity 단위로 호출해 주십시오.
fun preventScreenshot(window: Window): Int
int preventScreenshot(Window window)
매개 변수
매개변수 설명 window Activity의 Window 인스턴스 예제
AppSafer.INSTANCE.preventScreenshot(window)
AppSafer.INSTANCE.preventScreenshot(getWindow());
이 문서가 도움이 되었습니까?