'전체 글'에 해당되는 글 171건

  1. 2013.05.16 [android] 새로운 android 개발환경 "android studio"
  2. 2013.05.15 [android] checkstyle 설치및 gen 폴더 제거 설정 1
  3. 2013.05.10 [android] maven 빌드시 @SuppressLint 오류 발생 해결하기
  4. 2013.05.10 [crontab] 특정 시간마다 실행하기
  5. 2013.05.06 [eclipse] working set 을 이용한 다수의 project 관리

[android] 새로운 android 개발환경 "android studio"

android 2013. 5. 16. 15:53

336x280(권장), 300x250(권장), 250x250, 200x200 크기의 광고 코드만 넣을 수 있습니다.

NDK를 다운받기 위해 안드로이드 개발 page에 들어갔더니 “android studio” 라는 것이 생겼습니다. Studio 하니 예전의 visual studio가 생각이 나면서 연결되는 것은 .Netdesign studio 였습니다. ( Page의 화면도 그렇고 ) 뭔가 XML을 편하게 해주는 것인가..

 

그리고 내용을 보니 IntelliJ 기반의 새로운 android 개발 환경이라고 하네요. Intell-J 는 유료라서 써보고 싶기만 했던 것인데 ( 막연히 eclipse 보다 뭔가 더 좋겠지 라는 생각을 가지고 있는 툴이었고 blog 등을 보면 좋아하는 사람은 엄청 좋아하더라구요.. )

Android studio가 제공하는 것들은 다음과 같다고 합니다.

* gradle 기반의 빌드

* android에 특화된 refactoring과 빠른 오류 수정

* 성능, 사용성, 버전 호환성 등등의 오류를 알려주는 Lint tool

* ProGuard 지원과  App – signing

* 템플릿(Template)기반의 위저드 기능

* 강력해진 layout 편집기, 멀티화면의 미리보기등

 

아직은 early access preview 버전이므로 주의 하시요. ( 버전이 0.1 이므로 완성도가 당연히 떨어지리라 예상함 )

 

검색해보니 Google I/O 2013에서 발표한 것 같네요. 우연히도 빠르게 발견하게 되었네요 ㅎㅎ

아래는 android studio를 소개하는 간단한 영상 입니다.  

 

 

 

 

 

 

 

 

 

 

 



:

[android] checkstyle 설치및 gen 폴더 제거 설정

android 2013. 5. 15. 19:06

336x280(권장), 300x250(권장), 250x250, 200x200 크기의 광고 코드만 넣을 수 있습니다.

android에서 checkstyle을 적용하려고 설치하고 적용하다가 몇가지 유용한 것을 발견 하였다.

1. 설치하기

eclipse에서 Help->Install New Software.. 에서 아래를 설정하면 간략하게 local 환경에 설치할수 있다.

http://eclipse-cs.sf.net/update

 

2. checkstyle violations View

메뉴에서 “Window -> Show View -> Others -> checkstyle을 선택한뒤 “checkstyle violoations”를 클릭하면 보인다.  ( 참고로 checkstyle violation char 를 선택하면 차트로 볼 수도 있다. )

그런데 project가 많은경우 보기가 복잡하므로 내가 선택한 project의 위반사항만 보도록 설정한다.  아래 그림의 빨간 버튼을 누르면 환경설정창이 하나 뜬다.  

 

본인은  “on any resource in same project”를 선택하였다.

 

3. gen 폴더 제외 하기

Package explorer에서 원하는 project를 선택한 다음, 마우스 오른쪽버튼을 클릭해서

Checkstyle -> check code with checkstyle을 실행하면 checkstyle을 위반하는 것을 보여준다.

 

이런..  gen 폴더에서 무수히 많은 violations이 발생한다.  android에서 생성하는 gen 폴더는 checkstyle 에서 제외시켜야 한다.

Project의 환경설정에서 “files from packages” check 하고 오늘쪽의  “change” 버튼을 눌러서 제외할 package를 선택하면 된다.

 

 

이 설정을 하고 나면 project 폴더에 .checkstyle 이라는 파일이 생긴다.

내용은 xml 이라서 직감적으로 알 수 있다.

<?xml version="1.0" encoding="UTF-8"?> 

<fileset-config file-format-version="1.2.0" simple-config="true" sync-formatter="false">

  <fileset name="all" enabled="true" check-config-name="My Checks" local="false">

    <file-match-pattern match-pattern="." include-pattern="true"/>

  </fileset>

  <filter name="FilesFromPackage" enabled="true">

    <filter-data value="gen"/>

  </filter>

</fileset-config>

 

 

 



:

[android] maven 빌드시 @SuppressLint 오류 발생 해결하기

android 2013. 5. 10. 21:24

336x280(권장), 300x250(권장), 250x250, 200x200 크기의 광고 코드만 넣을 수 있습니다.

eclipse에서 android를 개발하다가 겪게 되는 것 중 하나는 노란색 경고줄이 가면서 마우수를 가져가면 아래처럼 이상한 해결 법이 뜨는 것이다.

 

@SuppressLint 를 추가하면 Lint 에서 해당 코드를 에러로 취급 하지 말라고 선언하는 것이므로, 노란 경고가 보기 싫어서 eclipse가 가이드 하는 대로 @SuppressLint("UseSparseArrays")을 적어줬더니 잘 해결되는 것 같았다.  (적어도 내 local 개발 환경에서는 )  그러나, 빌드 서버에서는 아래와 같은 에러를 뿜고 있군요 ㅠㅠ

 

[INFO]

[INFO] --- maven-compiler-plugin:2.3.2:compile (default-compile) @ android ---

[INFO] Compiling 76 source files to /… 생략… /workspace/target/classes

[INFO] -------------------------------------------------------------

[ERROR] COMPILATION ERROR :

[INFO] -------------------------------------------------------------

[ERROR] /… 생략 … /android/enums/SortType.java:[6,25] package android.annotation does not exist

[ERROR] /… 생략 … /android/enums/SortType.java:[23,2] cannot find symbol

 

빌드 서버에서는 maven을 이용하여 빌드하고 있는데, 위에서 추가한 어노테이션(annotation)을 인식하지 못하여 발생한 듯 합니다.

 

이럴때는 pom.xml에 아래를 추가해주면 됩니다.

 

<dependency>

    <groupId>com.google.android</groupId>

    <artifactId>annotations</artifactId>

    <version>4.1.1.4</version>

</dependency>

 

출처 : https://code.google.com/p/maven-android-plugin/issues/detail?id=287

 

위의  dependency를 추가하면 android에서 사용하는 각종 annotation 들을 maven으로 빌드시 인식하여 빌드가 잘 됩니다.

 

 

 



:

[crontab] 특정 시간마다 실행하기

개발 2013. 5. 10. 21:10

336x280(권장), 300x250(권장), 250x250, 200x200 크기의 광고 코드만 넣을 수 있습니다.

CI 서버를 설치하여 자동 실행 시간을 설정하는 중에 오래만에 설정하니 실수하게된다.

 

svn에 commit 한것을 5분 이내에 감지하여 자동 실행되게 하려고 아래처럼 하였다.

05 * * * *

그랬더니 매시 5분에 실행 되는 것이다. 아 이런 실수를 하다니..

아래처럼 해야 된다.

*/5 * * * *

 

참고로 매일 아침 8시 5분에 실행되게 하려면

05 08 * * *

 

5개의 숫자는 각각 "분 / 시간 / 날짜 / 달  / 년 " 의 의미를 같는다.

 



:

[eclipse] working set 을 이용한 다수의 project 관리

개발 2013. 5. 6. 14:32

336x280(권장), 300x250(권장), 250x250, 200x200 크기의 광고 코드만 넣을 수 있습니다.

Eclipse를 몇 년간 써오다가 늦게 알게된 기능 이지만 예전부터 잠재적으로 원했던 기능인 것 같다. 바로 project를 논리적으로 관리할 수 있는 working set 이다. 기존에는 2depth 로 관리를 했었다.

workspace --- projectA

              --- ProjectB

              --- ProjectC

 

여기에 working set을 추가하면 아래처럼 3depth로 관리가 가능하다.

workspace --- working setA --- projectA

              --- ProjectB

              --- ProjectC

               --- working setB --- ProjectD

                                    --- ProjectE

                                    --- ProjectF

 

Project가 많아지면서 복잡해지던 package explorer working set으로 묶으니 간결해졌다.

예전의 Visual Studio solution 같은 개념으로 생각하면 좋을 듯 하다.

 

추가하는 방법은 package explorer에서 top menu 버튼을 눌러서 "configure working set.. " 을 선택해서 working set을 추가할수 있고, 또는 "New -> java -> java working set" 을 선택해서도 할 수 있다.  working set을 구성한 뒤에는 "Top Level Element"를 클릭해서 project 에서 working set으로 변경해야 package explorer에서 working set이 표시가된다. 이것을 않해줘서 왜 안되나 했었다. ^^;.

working set을 추가한 뒤에는 해당 project를 drag&drop으로 working set에 넣으면 된다.

package explorer에서 working set을 만들고 project explorer에서 확인하니 보이지가 않는다. 음.. 각각 만들어아 되는 건가?

 

검색할 때도 (Ctrl + H) scope working set으로 하면 관련된 프로젝트에서만 검색할 수 있다.

 

 



: