개발자 가이드
사용자 가이드개발자 가이드API 가이드🏠
한국어
한국어
  • 홈
  • 공통
    • 통합 ID 연동 시나리오
    • 상수
    • FAQ
  • 플랫폼 별 가이드
    • Android
      • 연동하기
      • 이벤트
      • 유저 식별 정보 설정
      • 유저 프로필 설정
      • 액션
        • 푸시
        • 인앱메시지
        • 알림톡
        • 문자
      • 개인 정보 보호
        • 개인 정보 보호 지원
        • Google Play의 데이터 공개 요건 준비
      • 릴리즈 노트
    • iOS
      • 연동하기
      • 이벤트
      • 유저 식별 정보 설정
      • 유저 프로필 설정
      • 액션
        • 푸시
        • 인앱메시지
        • 알림톡
        • 문자
      • 릴리즈 노트
    • Hybrid App
      • 연동하기
    • Web
      • 연동하기
      • 이벤트
      • 유저 식별 정보 설정
      • 유저 프로필 설정
      • 액션
        • 인앱메시지
        • 알림톡
        • 문자
      • 고급 사용 사례
        • 부가 설정
      • 릴리즈 노트
Powered by GitBook
On this page
  • 시작하기 전에
  • 서비스 설정
  • 지원 정보
  • SDK 설치
  • 의존성 추가하기
  • SDK 초기화
  • 초기화 하기
  • 구글 광고 ID 설정하기(선택사항)
  • SDK 설정
  • 로그 활성화 하기
  • 로그 레벨 변경하기
  • 완료
  1. 플랫폼 별 가이드
  2. Android

연동하기

PreviousAndroidNext이벤트

Last updated 4 months ago

이 문서는 DFINERY Android SDK를 Android에 통합하는 방법을 다룹니다. DFINERY SDK를 설치하면 이벤트 분석 기능과 유저 프로필 기능 그리고 액션 기능이 제공됩니다.

시작하기 전에

서비스 설정

의 서비스 관리/서비스 정보 페이지에서 데이터 소스 항목에 Android를 체크하셔야 합니다.

지원 정보

  • 최소 지원 SDK : Android 4.4+ / API 19+

  • 대상 SDK : 33

  • 최근에 컴파일된 Firebase Cloud Messaging 버전 : 24.0.0

SDK 설치

의존성 추가하기

앱에서 DFINERY SDK의 의존성을 적용하려면 다음 단계를 완료하세요.

1. maven 의존성을 가져오기 위해 repositories 내에 mavenCentral을 추가합니다.

allprojects {
    repositories {
        mavenCentral()
    }
}
pluginManagement {
    repositories {
        mavenCentral()
    }
}
dependencyResolutionManagement {
    repositories {
        mavenCentral()
    }
}

2. 앱의 모듈 디렉터리 내에 있는 build.gradle 파일을 엽니다.

 dependencies {
  implementation 'com.google.android.gms:play-services-appset:16.0.2'
  //Get the latest version from https://mvnrepository.com/artifact/com.igaworks.dfinery/android-sdk
  implementation 'com.igaworks.dfinery:android-sdk:HERE_LATEST_VERSION'
}
 dependencies {
  implementation("com.google.android.gms:play-services-appset:16.0.2")
  //Get the latest version from https://mvnrepository.com/artifact/com.igaworks.dfinery/android-sdk
  implementation("com.igaworks.dfinery:android-sdk:HERE_LATEST_VERSION")
}

SDK 초기화

초기화 하기

앱에서 DFINERY SDK를 초기화하려면 다음 단계를 완료하세요.

1. Application을 상속한 객체를 생성합니다. 상속한 객체가 이미 있을 경우 해당 객체를 사용합니다.

public class BaseApplication extends Application
class BaseApplication: Application()
@Override
public void onCreate() {
    super.onCreate();
}
override fun onCreate() {
    super.onCreate()
}

3. onCreate() 메소드 내에 다음 코드를 작성합니다.

Dfinery.getInstance().init(this, "SERVICE_KEY");
Dfinery.getInstance().init(this, "SERVICE_KEY")

다음 코드 스니펫은 초기화 작성 완료 시의 예를 보여줍니다.

public class BaseApplication extends Application{
    @Override
    public void onCreate() {
        super.onCreate();
        Dfinery.getInstance().init(this, "SERVICE_KEY");
    }
}
class BaseApplication: Application(){
    override fun onCreate() {
        super.onCreate()
        Dfinery.getInstance().init(this, "SERVICE_KEY")
    }
}

4. AndroidManifest.xml에 작성한 Application을 등록합니다.

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android">
    <application
        android:name=".BaseApplication">
    </application>
</manifest>

5. AndroidManifest.xml에 필요한 권한을 추가합니다.

<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />

구글 광고 ID 설정하기(선택사항)

Google 광고 ID를 수집하기 위해선 setGoogleAdvertisingId() 메소드를 통해 수동으로 설정해야합니다.

1. 앱의 모듈 디렉터리 내에 있는 build.gradle 파일을 엽니다.

 dependencies {
  implementation 'com.google.android.gms:play-services-ads-identifier:18.0.1'
}
 dependencies {
  implementation("com.google.android.gms:play-services-ads-identifier:18.0.1")
}

3. AndroidManifest.xml에 필요한 권한을 추가합니다.

<uses-permission android:name="com.google.android.gms.permission.AD_ID" />

4. setGoogleAdvertisingId() 메소드를 통해 광고 ID를 설정합니다.

광고 ID 수집 로직은 별도의 스레드에서 동작해야 합니다. 아래 코드 스니펫은 Thread를 생성하여 동작했지만, 필요에 따라 다른 방법(AsyncTask, 코루틴 등)을 사용하여도 됩니다.

new Thread(new Runnable() {
    @Override
    public void run() {
        try {
            AdvertisingIdClient.Info idInfo = AdvertisingIdClient.getAdvertisingIdInfo(getApplicationContext());
            DfineryProperties.setGoogleAdvertisingId(idInfo.getId(), idInfo.isLimitAdTrackingEnabled());
        } catch (Exception e) {
            e.printStackTrace();
        }
    }
}).start();
Thread {
    try {
        val idInfo = AdvertisingIdClient.getAdvertisingIdInfo(
            applicationContext
        )
        DfineryProperties.setGoogleAdvertisingId(idInfo.id, idInfo.isLimitAdTrackingEnabled)
    } catch (e: Exception) {
        e.printStackTrace()
    }
}.start()

SDK 설정

SDK 초기화 시에 로그 활성화 등의 옵션을 설정할 수 있습니다.

로그 활성화 하기

로그 활성화는 DFINERY의 설정을 적용하는 DfineryConfig를 사용하여 설정 가능합니다. DfineryConfig는 init() 메소드 호출 시에 파라미터로 넣어 적용하거나 res/values/dfinery.xml을 사용하여 설정 할 수 있습니다.

setLogEnable(boolean enable)
  • 첫 번째 인자인 enable은 로그를 표시할지 말지 설정하는 값입니다. 기본값은 false입니다.

BuildConfig.DEBUG 값을 넣어 디버그 모드일때만 로그가 출력 되고 배포시에는 출력되지 않게끔 설정할 수 있습니다.

DfineryConfig config = new DfineryConfig.Builder()
    .setLogEnable(true)
    .build();
Dfinery.getInstance().init(this, "SERVICE_KEY", config);
val config = DfineryConfig.Builder()
    .setLogEnable(true)
    .build()
Dfinery.getInstance().init(this, "SERVICE_KEY", config)
<?xml version="1.0" encoding="utf-8"?>
<resources>
    <bool name="com_igaworks_dfinery_log_enable" translatable="false">true</bool>
</resources>

로그 레벨 변경하기

로그 레벨은 Dfinery의 설정을 적용하는 DfineryConfig를 사용하여 설정 가능합니다. DfineryConfig는 init() 메소드 호출 시에 파라미터로 넣어 적용하거나 res/values/dfinery.xml을 사용하여 설정 할 수 있습니다.

setLogLevel(int logLevel)
  • 첫번째 인자인 logLevel은 로그 표시 레벨을 설정하는 값입니다. 기본값은 Log.ERROR(6) 입니다.

DfineryConfig config = new DfineryConfig.Builder()
    .setLogLevel(Log.DEBUG)
    .build();
Dfinery.getInstance().init(this, "SERVICE_KEY", config);
val config = DfineryConfig.Builder()
    .setLogLevel(Log.DEBUG)
    .build()
Dfinery.getInstance().init(this, "SERVICE_KEY", config)
<?xml version="1.0" encoding="utf-8"?>
<resources>
    <integer name="com_igaworks_dfinery_log_level">2</integer>
</resources>

완료

SDK 설치 및 초기화가 완료되었습니다.

3. dependencies에 와 필요한 요소에 대해 SDK 종속 항목을 추가합니다.

DFINERY는 AppSetId를 수집하기 위해 의존성을 필요로 합니다.

2. Application을 상속한 객체에서 메소드를 Override 합니다.

Service ID는 의 서비스 관리/서비스 정보/Key 정보/서비스키 경로에서 확인이 가능합니다.

2. dependencies에 을 추가합니다.

로그 레벨 값은 의 상수 값의 정의를 따릅니다.

최신 버전의 DFINERY SDK
play-services-appset
onCreate()
DFINERY Console
광고 ID를 수집하기 위해 필요한 종속 항목
android.util.Log
DFINERY 콘솔
서비스 정보