ADQ 연동가이드

v7.1.0 

  • Updated
    ADQ 최신 버전은 7.1.0 버전입니다.
    반드시 연동 가이드 문서를 참고하셔서 누락된 정보 없이 연동을 진행해주세요.
    GitHub에 업로드된 샘플 프로젝트를 참고 하실 경우 보다 쉽게 연동하실 수 있습니다.

1. settings.gradle(Project Settings) 설정

ADQ SDK는 Maven 저장소를 통해 배포되고 있습니다. settings.gradle 파일에 ADQ Maven 정보를 등록합니다.

    ...

    dependencyResolutionManagement {
        repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS)
        repositories {
            google()
            mavenCentral()
            //-- For ADQ SDK
            
            maven { 
              url 'https://sdk.qwertlab.com/repository/internal' 
            }
          
        }
    }
    
    ...
          

2. build.gradle(Module:) 설정

ADQ SDK를 dependencies에 implementation 합니다.

Gradle Plugin 4.1 이상을 사용하실 경우 네이티브 디버그 기호파일이 생성될 수 있도록 debugSymbolLevel을 추가합니다.

(디버그 심볼 관련내용)

    
    ...

    android {
      buildTypes {
          //-- FOR ADQ -------------------------------------------------------------------------------
          
          debug {
              ndk {
                  debugSymbolLevel 'SYMBOL_TABLE'
              }
          }
          release {
              ndk {
                  debugSymbolLevel 'SYMBOL_TABLE'
              }
          }
          
          //------------------------------------------------------------------------------------------
      }
    }
    
    ...

    dependencies {

        ...
        //-- FOR ADQ -------------------------------------------------------------------------------
        
        implementation 'com.qwertlab.adq:ADQ:7.1.0'
        
        //------------------------------------------------------------------------------------------
        ...
    }
    
    ...
          

3. AndroidManifest.xml 설정

항상 귀사의 앱이 실행될 수 있도록 MainActivity에 launchModeclearTaskOnLaunch 속성을 추가합니다.


    <application
        ...
    >

      ...
      
      <activity
        android:name=".MainActivity"
        android:launchMode="singleInstance"
        android:clearTaskOnLaunch="true"
      >
			


      ...

    </application>

          

4. 연동 API 호출

귀사의 메인 액티비티의 onCreate() Method에 알람 권한이 없을 경우 권한을 요청합니다. (QuickBar를 노출하기 위해서 알람 권한이 필요합니다)

귀사의 메인 액티비티의 onResume() Method에 알람 권한이 있을 경우 연동 API를 호출합니다.

          
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        ...
        
        //-- ADQ Check Permission ------------------------------------------------------------------
        
        if(!ADQManager.isNotificationPermission(getApplicationContext())){
            //-- Request Notification Permission. [For - QuickBar]
            ADQManager.requestADQPermission(MainActivity.this, registerForActivityResult(new ActivityResultContracts.RequestPermission(), result -> {
                if(ADQManager.isNotificationPermission(getApplicationContext())){
                    ADQManager.initADQ(MainActivity.this, "c67e9d88c5e208d38a5c8c66e35a8785");
                }
            }));
        }
        
        //-- END ADQ -------------------------------------------------------------------------------
        
        ....
        
    }

              
    @Override
    protected void onResume() {
        super.onResume();

        ....

        //-- ADQ -----------------------------------------------------------------------------------
        
        if(ADQManager.isNotificationPermission(getApplicationContext())){
            ADQManager.initADQ(MainActivity.this, "c67e9d88c5e208d38a5c8c66e35a8785");
        }
        
        //------------------------------------------------------------------------------------------

        ...
        
    }
          


5. 언어셋 설정

ADQ 라이브러리는 영어(default), 한국어를 지원하고 있으며 귀사의 앱 프로젝트와 설정 정보가 상이할 경우 Lint Option Error가 발생할 수 있습니다.

build.gradle(Module:app)파일 실행 후 lintOptions 속성을 false로 설정합니다.

    ... 

    android {
      ...
      
      lintOptions {
          abortOnError false
      }
      
      ... 
    }
    ... 
          

6. 연동확인

ADQ SDK 연동 후 앱 실행 시 ADQ 이용 동의창 팝업이 정상적으로 출력되어 QuickBar가 생성되는지 확인합니다.

팝업창이 출력되지 않거나, 기능 동작이 안될 경우 Log 기록을 확인합니다. (ADQManager로 검색)

만약 연동과정에서 오류가 발생 할 경우 오류해결 페이지를 통해 오류를 해결하실 수 있습니다.

오류의 대부분은 gradle 설정 정보로 인해 발생합니다.

GitHub에 업로드된 샘플 프로젝트를 참조하셔서 귀사의 프로젝트에 누락된 정보가 없는지 확인 부탁드립니다.

Top