안드로이드 스투디오의 퍼포스(Perforce) 플러그인

결론부터 이야기하면, 안드로이드 스투디오를 위한 공식(JetBrain 社이나 Perforce 社에서 만든) 플러그인은 16년 2월 현재 없다.  (그러니, 그만 찾자.)

대신 다음과 같은 방법들이 있다.

  • 인텔리제이 울티메이트(유료) 버전을 쓴다. 안드로이드 스투디오의 베이스가 되는 인텔리제이 IDE는 안드로이드 개발을 공식 지원한다. 그러므로, 안드로이드 스투디오가 아닌 인텔리제이를 써도 안드로이드 개발을 할 수 있고, 인텔리제이 울티메이트 버전에는 젯브레인에서 만든 퍼포스 플러그인이 내장되어 있다. 단, 유료로 개인 개발자 기준 1년에 299$이다. 그리고 마야 종말 세일같은 대할인도 요즘은 거의 없다.
  • 안드로이드 스투디오의 “File > Settings > Plugins 탭에서 Browse repositories..” 버튼을 누르면 개발자들이 만든 비공식 플러그인들을 볼 수 있다. 여기에 “Perforce IDEA Community Integration”이라는 이름의 비공식 플러그인이 있다. 이 플러그인은 일부 기능(충돌 시 머지나 저장소, 저장소 보기, 동기화 등)이 제한되어 있다.

인텔리제이 공식 퍼포스 플러그인을 누군가 만들어주길 기다려볼 수도 있지만, 개인적으로 이 것은 가능성이 희박해 보인다. 왜냐하면

  • 젯브레인사는 퍼포스 플러그인을 이미 가지고 있다. 다만, 인텔리제이 커뮤니티 버전(무료)과 이를 기반으로 한 안드로이드 스투디오에 포함시키지 않을 뿐이다. 아마도,  유료 VCS를 쓴다면  IDE도 유료로 쓰라는 정책으로 보인다.
  • 퍼포스 사는 무료 플러그인이 없다는 것을 알고 있다. 이 페이지를 보면 인텔리제이와의 통합을 지원하고 있으며, 벤더(vender, 이 경우는 젯브레인)에 의해 제공된다고 명시하고, 플러그인 다운로드 버튼을 누르면 인텔리제이 IDE 다운로드 사이트로 연결해 버린다.

아마도, 이클립스를 통한 안드로이드 개발이 점점 어려워지고 있기 때문에, 인텔리제이 기반의 IDE에서 안드로이드 개발을 하고자 하는 개발자라면 유료 IDE를 구매하거나 플러그인이 포함된 VCS(Git, Mercury, Subversion 등)를 바꿔야 할 것으로 보인다.

참고

 

안드로이드 스투디오의 코드 스타일 공유하기

안드로이드 스투디오의 코드 스타일을 공유하는 방법이 없는 줄 알았는데, 찾아보니 이미 제공되고 있다. 코드 스타일을 정하는 곳에서 export할 수 있었다면 더 좋았겠지만, 기존의 방법도 깔끔하다. (다시 한 번, 검색 엔진 뒤지지 말고 공식 메뉴얼을 봐야 한다는 걸 느낀다..)

File > Export Settings …로 현재 안드로이드 스투디오의 설정 값들을 모두 export할 수 있는데, 여기서 “Code Style”만 지정하면 된다.

androidstudio_export_code_convention

저장할 곳을 지정하면 settings.jar 파일이 떨어진다. 이를 공유하면 된다.

import는 File > Import Settings.. 메뉴를 통해 가능하며, import하고 싶은 항목을 골라서 import할 수도 있다. 그 후, File > Settings… > Editor > Code Style에 가면 Scheme 중에 방금 import한 항목이 있을 것이다.

참고

안드로이드 프로젝트의 필수 파일

안드로이드 스투디오에서 프로젝트를 생성(File > New > New Project…)하면 모듈을 포함해 아래와 같이 많은 파일이 만들어진다.

androidstudio_default_folder

다른 사람에게 프로젝트를 배포해야한다면, 어떤을 보내야 할까? 생성된 모든 파일을 다 보낼까? 물론, 다 보내도 프로젝트는 전달할 수 있다. 그렇지만 최소화를 원한다면 아래 파일들만 보내도 된다.

androidstudio_default_folder2

배포자는 파란색의 폴더나 파일들을 삭제하고, 배포할 수 있다. 모듈에서 사용하는 라이브러리가 없거나 프로가드를 적용하지 않은 프로젝트라면 /libs 폴더나 proguard-rules.pro 파일도 지울 수 있다.

배포 받은 사람은 안드로이드 스투디오에서 프로젝트 열기(File > Open…)를 통해 /GradleProject 폴더를 프로젝트로서 열거나, 모듈을 추가(File > New > Import Module…) 메뉴를 통해 기존의 프로젝트에 /app 폴더를 모듈러서 추가 할 수 있다. 그 과정에서 빌드 환경 조성을 위해 안드로이드 스투디오가 팝업을 띄울 수 있다.

명령창에서 빌드를 해볼 수도 있다. 그래들이 이미 설치되어 있고, path도 잡혀있다면

>gradle build

명령어 만으로 빌드가 되는 것을 확인할 수 있다.

그 밖에

일부 설정값(proxy 서버 주소라던가)을 함께 배포해야 한다면 gradle.properties 파일도 포함하자.

systemProp.http.proxyHost=1.2.3.4
systemProp.http.proxyPort=80

SDK 경로를 함께 배포해야한다면, local.properties 파일을 함께 배포하자.

sdk.dir=C\:\\Android\\sdk

 

안드로이드 스투디오의 ‘peer not authenticated’

정확히 어떤 문제로 인해 에러가 표시된 것인지 확인하고 싶다면, ‘Help – Show Log in Explorer’를 통해 안드로이드 스투디오의 로그를 확인하자.

만약,  SSL Handshake 에러가 난다면 아래와 같이 jcenter의 주소를 http://.. 로 명시적으로 적으면 도움이 된다.

repositories {
    jcenter {
        url "http://jcenter.bintray.com/"
    }
}

참고

Android Support Repository & Library

Android SDK Manager에 보면, Extra 밑에

  • Android Support Repository
  • Android Support Library

가 있다. 둘의 차이를 간단히 설명하면 다음과 같다.

Android Support Repository는 메이븐 리파지토리를 이용해 라이브러리를 관리하는 안드로이드 스투디오의 그래들(Gradle)을 위한 라이브러리로, 설치하면 SDK 폴더 아래에 ‘extras/android/m2repository’ 폴더를 생성한 후 로컬 메이븐 리파지토리를 만들고 라이브러리를 저장한다.

Android Support Library는 전통적인 방식(이클립스, 인텔리제이 등)으로 안드로이드 클라이언트를 만드는 경우를 위한 안드로이드 라이브러리 프로젝트로, SDK 폴더 아래에 ‘extras/android/support/ 폴더를 생성한 후 여기에 프로젝트들을 저장한다.

그러므로, 안드로이드 스투디오를 쓰는 경우라면 Android Support Repository를 그 외의 경우에는 Android Support Library를 받으면 된다.

참조