============================================================ AndroidStudio 를 활용하여, Eclipse 프로젝트 빌드 하기 ============================================================ .. toctree:: :maxdepth: 4 AndroidStudio 프로젝트 생성 시나리오 ================================== 1. AndroidStudio 를 이용하여, 빈 프로젝트 생성 2. build.gradle 의 sourceSets 옵션 이용 3. dependencies 옵션에 jar 파일 추가 4. AndroidStudio 빌드 AndroidStudio 프로젝트 생성 ================================== AndroidStudio 를 활용하여, 빈 프로젝트를 생성한다. .. note:: 프로젝트 생성 방법 : https://developer.android.com/training/basics/firstapp/creating-project.html?hl=ko build.gradle 수정 [Project] ================================== 1. ROOT_PATH 선언 : AndroidStudio 프로젝트에서, 참조해야할 Eclipse 프로젝트의 Root Path를 선언 2. 참조할 라이브러리 dir path 선언 flatDir { dirs ROOT_PATH + 'libs' } .. warning:: 라이브러리는 관리 체계를 일원화 하기 위해, morpheus 프로젝트의 libs 폴더사용을 권고함 Example: build.gradle 에 대한, 샘플 코드입니다. .. code-block:: javascript // Top-level build file where you can add configuration options common to all sub-projects/modules. buildscript { repositories { google() jcenter() } dependencies { classpath 'com.android.tools.build:gradle:3.1.0' // NOTE: Do not place your application dependencies here; they belong // in the individual module build.gradle files } } allprojects { def ROOT_PATH = '/Volumes/MacintoshSUB/SUB_HDD/androidstudio/S2B_PUSH/' repositories { google() jcenter() // AAR 파일은 ROOT_PATH + libs 폴더 하위에 위치 시킨다. flatDir { dirs ROOT_PATH + 'libs' } } } task clean(type: Delete) { delete rootProject.buildDir } build.gradle 수정 [Module] ================================== 1. ROOT_PATH 선언 : AndroidStudio 프로젝트에서, 참조해야할 Eclipse 프로젝트의 Root Path를 선언 2. sourceSets 에 참조할 폴더를 선언 3. defendencies 에 컴파일 할 jar 를 선언 .. warning:: 라이브러리는 관리 체계를 일원화 하기 위해, morpheus 프로젝트의 libs 폴더사용을 권고함. Example: build.gradle 에 대한, 샘플 코드입니다. .. code-block:: javascript // Eclipse 프로젝트의 Root Path 선언 def ROOT_PATH = "/Volumes/MacintoshSUB/SUB_HDD/androidstudio/S2B_PUSH/" android { compileSdkVersion 26 buildToolsVersion '27.0.3' //Eclipse 프로젝트의 AndroidManifest.xml 을 참조 할 경우, daultConfig 설정은 제외 시켜도 됨 //만약 defaultConfig 를 선언하면 우선순위는 defaultConfig defaultConfig { applicationId "com.mcore.educaion" minSdkVersion 15 targetSdkVersion 23 versionCode 1 versionName "1.0" testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner" } // Eclipse 프로젝트의 정보를, 아래 sourceSets 에 링크 처리 하기 위함 sourceSets { main { manifest.srcFile ROOT_PATH + 'AndroidManifest.xml' java.srcDirs = [ROOT_PATH +'src'] resources.srcDirs = [ROOT_PATH +'libs', ROOT_PATH +'src'] aidl.srcDirs = [ROOT_PATH +'src'] renderscript.srcDirs = [ROOT_PATH +'src'] res.srcDirs = [ROOT_PATH +'res'] assets.srcDirs = [ROOT_PATH +'assets'] jniLibs { srcDir ROOT_PATH +'libs' } } } buildTypes { release { minifyEnabled true proguardFiles 'proguard.cfg' } } } //하나의 프로젝트로 관리하기 위해, 모든 라이브러리는 Eclipse 프로젝트에 넣어서 사용 하는 것을 권장 dependencies { //Eclipse 프로젝트의 jar 라이브러리를 사용하기 위해 선언 implementation fileTree(dir: ROOT_PATH + 'libs', include: ['*.jar'], exclude: ['android-support-v4.jar']) //빌드 하고자 하는 라이브러리 추가하여 적용 implementation 'com.android.support:appcompat-v7:26.1.0' testImplementation 'junit:junit:4.12' androidTestImplementation 'com.android.support.test:runner:1.0.1' androidTestImplementation 'com.android.support.test.espresso:espresso-core:3.0.1' implementation 'com.android.support.constraint:constraint-layout:1.0.2' }