본문으로 건너뛰기

시작하기

Overview#

Guardian SDK for Android(이하 Android SDK)는 Android 애플리케이션에서 Guardian-CCS 인증을 사용하기 위해 제공됩니다.
이 문서를 통해 Android SDK 사용 방법을 안내합니다.


애플리케이션 등록#

Android SDK를 사용하기 위해서는 애플리케이션 등록이 필요합니다.   자세한 사항은 애플리케이션 등록 페이지를 참고바랍니다.

설치하기#

Gradle 설정하기#

Android SDK를 적용할 프로젝트의 build.gradle(Project) 파일에 다음과 같이 Android SDK 레파지토리(Repository)를 설정합니다.

maven {     url "https://nexus.fnsvalue.co.kr/repository/maven-releases/"}

모듈 설정하기#

build.gradle(Module) 파일에 필요한 모듈을 설정합니다.

dependencies {    implementation 'com.fnsvalue:GuardianLibrary:1.0.2@aar'}

외부 라이브러리#

Guardian SDK 에 필요한 외부 라이브러리에 수동 설치가 필요합니다.

dependencies {    implementation 'com.squareup.okhttp3:logging-interceptor:3.14.9'    implementation 'com.squareup.retrofit2:retrofit:2.9.0'    implementation 'com.squareup.retrofit2:converter-gson:2.9.0'    implementation 'com.google.code.gson:gson:2.8.6'    implementation 'com.github.NaikSoftware:StompProtocolAndroid:1.6.4'    implementation "androidx.biometric:biometric:1.0.1"
    implementation group: 'io.reactivex.rxjava2', name: 'rxjava', version: '2.2.5'}

인터넷 사용 권한 설정하기#

Android SDK를 통해 API와 통신하기 위해 앱에 인터넷 사용 권한을 설정해야 합니다.
AndroidManifest.xml에 다음과 같이 인터넷 사용 권한을 설정합니다.

<manifest xmlns:android="http://schemas.android.com/apk/res/android"    package="com.example.sample">
    <!-- 인터넷 사용 권한 설정-->    <uses-permission android:name="android.permission.INTERNET" />        ....    </manifest>

JAVA 8 설정#

Java 8 사용을 위한 설정이 필요합니다.
다음 예제를 참고하여 build.gradle(Module) 파일에 자바 버전을 설정합니다.

android {    compileOptions {        sourceCompatibility JavaVersion.VERSION_1_8        targetCompatibility JavaVersion.VERSION_1_8    }    ....}

런타임 퍼미션#

Android 6.0 Marshmallow (API 23) 이상부터는 디바이스의 자원을 사용하려면 런타임 퍼미션(runtime permissions)이 필요합니다.
Android SDK에서 요구하는 퍼미션은 다음과 같습니다.

if(Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) {    if (ContextCompat.checkSelfPermission(this, android.Manifest.permissionACCESS_FINE_LOCATION) != PackageManager.PERMISSION_GRANTED ||        ContextCompat.checkSelfPermission(this, android.Manifest.permission.ACCESS_COARSE_LOCATION) != PackageManager.PERMISSION_GRANTED) {    }}

권한의 사용용도는 다음과 같습니다.

  • ACCESS_FINE_LOCATION or ACCESS_COARSE_LOCATION : 위치 정보를 통한 회원가입 및 기기 재등록 시 사용.

초기화#

Android SDK를 사용하기 위해서는 초기화가 필요합니다. Application 클래스를 상속받을 경우 다음과 같이 초기화할 수 있습니다.

public class GlobalApplication extends Application {    @Override    public void onCreate() {        super.onCreate();
        GuardianSdk.getInstance().init(this, "{Client Key}", "{API SERVER URL}");            }}