가끔 하늘을 보자: 2015

2015년 12월 14일 월요일

2015년 7월 23일 목요일

Eclipse Project -> Android Studio Migration

이클립스로 개발했던 프로젝트를 Android Studio 로 migration 하면서 알게된 Tip 정리.
module 의 build.gradle 에 추가.

1. dependency 설정

dependencies {
    compile files('libsFolderName/name.jar')
    //compile fileTree(dir: 'libs', include: ['*.jar'])
}




2. android.jar 보다 먼저 참조시키기

Xbootclasspath 설정

-Xbootclasspath/p:"Module Name"/"jar path"

gradle.projectsEvaluated {
    tasks.withType(JavaCompile) {
        options.compilerArgs.add('-Xbootclasspath/p:app/libs/xxx.jar')
    }
}
cf> Xbootclasspath 에 대한 상세 설명은 아래 링크 참조
-Xbootclasspath/p:path
디렉토리, JAR 어카이브(archive), 및 ZIP 어카이브(archive)의 패스를 세미콜론으로 단락지어 지정.
패스는 디폴트의 bootstrap 클래스 패스전에 추가됨.
http://docs.oracle.com/javase/7/docs/technotes/tools/windows/java.html
http://java.ihoney.pe.kr/27

3. 외부 class 파일이나 so 추가시 jar 로 변환(?) 후 참조하기

(참조 : stackoverflow.com)
task nativeLibsToJar(type: Zip, description: 'create a jar archive of the native libs') {
    destinationDir file("libs") // jar 로 압축된 파일이 저장될 폴더 위치
    baseName 'name'  // jar 로 압축할 파일 이름 (위 dependencies 에서 사용될 name.jar)
    extension 'jar'  // 확장자 이름
    from fileTree(dir: 'ExtClass', include: '**/*.class')  //가져올 원본 class or so 파일
    //into 'lib/'  // jar로 압축하면서 만들 추가 폴더 이름. android class 파일들은 지정안하는게 나음.
}

tasks.withType(JavaCompile) {
    compileTask -> compileTask.dependsOn(nativeLibsToJar)
}






4. 빌드시 제외시키고자 할 경우

android {
    ... ...
    sourceSets {
        main {
            java {
                exclude '**/name.java' 
            }
        }
    }
}



5. 빌드후 apk 이름 변경시키기

defaultConfig {
    project.ext.set("archivesBaseName", "name");
}

6. 서명키

프로젝트 최상위 경로에 gradle.properties 파일 생성하여 아래 항목 작성
keystore=jks path
keystore_pass=xxx
key_alias=xxx
key_pass=xxx

build.gradle 에서 사용
signingConfigs {
    releaseWithProps {
        storeFile file(keystore)
        storePassword keystore_pass
        keyAlias key_alias
        keyPassword key_pass
    }
}






7. migration 후 빌드까지 정상적으로 되었으나 실행시 INSTALL_PARSE_FAILED_MANIFEST_MALFORMED 에러 발생할 경우

package 명에 대문자가 있을 경우 소문자로 변경후 clean 빌드하면 정상 동작한다.
Android Studio 에서 package rename 하는 방법은,
프로젝트 탭의 설정 아이콘 선택 -> "Compact Empty Middle Packages" uncheck -> 변경하고자 하는 폴더에서 마우스 우클릭 -> Refactor -> Rename 실행.




8. file encoding

한글 오류 발생할 경우,
해당 파일 -> 메뉴 -> File -> file encoding 선택 -> x-window-949 선택 -> reload
-> 다시 메뉴 반복 file enconding 선택 -> utf-8 선택 -> convert



9. framework debugging

해당 소스 파일을 SDK\soruces\해당버전에 위치시킴





2015년 5월 28일 목요일

Windows 7 64비트 설치 오류시

Windows 7 64비트 설치시 재부팅후 오류 팝업 뜰 경우

usb3.0 포트에 무선마우스 동글 장착 상태로 설치시 오류 발생함.
동글 제거후 설치하니 잘됨.
참고로, windows 8 64비트는 동글 장착해도 잘 되었음.

운전면허 1종 전환 기준 강화 (2026년 3월 26일 시행)

운전자분들 주목! 2026년 3월 26일부터 운전면허 1종 전환 기준이 대폭 강화됩니다.  예전처럼 무사고 7년만 채우면 끝? 아닙니다! 이제 '실제 운전 경력' 입증이 필수라는 사실! 장롱면허 소지자분들이나 1종 전환을 고민 중이셨다면...