안드로이드 첫 포스팅입니다. 주제는 구글드라이브 SDK를 이용해서 구글 드라이브 앱을 개발 및 실행시키는 것 입니다.
사실 구글 드라이브 사이트(https://developers.google.com/drive/)에 들어가면 영어로 친절하게 다 설명 되어 있지만 아무래도 한국사람이 보기에는 한국어가 더 이해하기 쉬우니깐요. 하하
구글 드라이브 API를 사용하기 위해서는 다음과 같은 순서로 진행하시면 됩니다.
1. 안드로이드 SDK 설치
2. Google Play services SDK, Google Plugin 설치
3. Google Developers Console에 프로젝트 등록
4. 이클립스 프로젝트 생성 및 라이브러리 등록
5. 메니페스트에 Google API 등록 및 빌드 실행
6. 데모 앱 실행 화면
안드로이드 SDK 설치
먼저 시작하기전에... 안드로이드 SDK가 먼저 설치 되있어야 합니다!(안드로이드 개발을 하려면 당연한 이야기죠!)
안드로이드 개발자라면 누구나 다 이미 설치를 했겠죠...?? 이거는 그냥 넘어가도록 하겠습니다
Google Play services SDK, Google Plugin 설치
SDK Manager를 실행해서 Extras로 이동
Android Support Repository, Android Support Library, Google Play services, Google Repository를 설치 합니다.
<Google Play services 설치>
<Google Plugin 설치>
<출처 : https://developers.google.com>
구글 플러그인은 이클립스 버전(루나, 캘퍼, 주노)에 따라 다릅니다.
이클립스 버전을 확인하고~ 이클립스 -> Window -> Install New Software
아래 사진과 같이 이클립스 버젼에 따라 링크를 써 넣으시면 됩니다.
Google Developers Console에 프로젝트 등록
우선 프로젝트를 등록하기 전에 키스토어 에서 키를 생성해서 서명을 해야합니다. 디버그용이라면 디버그 키를 사용하면 되고 릴리즈용 이면 keytool로 키를 직접 생성해서 키를 생성하면 됩니다.
본 포스트에서는 디버그 키를 사용하겠습니다.
이클립스를 실행시켜서 window -> Preferences -> Android -> Build에 가면 Default debug keystore에 디버그용 키가 저장되어있는 경로가 나타납니다. (SDK 경로와 일치)
경로를 확인한다음 cmd 콘솔창을 실행해서 해당 경로로 이동해서 명령어를 치거나 직접 이동해서 명렁어를 치시면 됩니다.
키가 있는 경로에서 cmd 창 : keytool -v -list -keystore debug.keystore
아닌 경우 : keytool -v -list -keystore <디버그 키가 있는 경로>\debug.keystore
해당 명렁어를 입력하면 "키 저장소 비밀번호 입력:" 이라고 나오는데 디버그용 비밀번호인 "android" 를 입력 하시면 됩니다.
그러면 디버그 키에 대한 각종 정보가 출력됩니다.
이 중에서 SHA1에 대한 인증서 핑커프린트를 따로 복사해 둡시다.
이제 모든 준비는 끝이났습니다.! 이제 구글 API 콘솔로 들어가봅시다.
https://console.developers.google.com/project/_/apiui/credential
해당 URL을 통해서 사이트에 들어간 후 구글 계정으로 로그인을 하면 프로젝트를 생성하라는 창이 나옵니다. "새 프로젝트 만들기" 를 눌러서 프로젝트를 생성합니다.
이제 프로젝트를 생성했으니... 프로젝트에 Drive API를 사용할 수 있도록 설정 해줘야겠죠?? 왼쪽 메뉴 중 api를 클릭 합니다.
그러면 사용가능한 API들이 엄청 많이 나오는데 우리는 그중 Google Apps API중 Drive API를 등록할겁니다! Drive API 클릭!
마지막으로 API 사용 설정 버튼을 누르게되면 우리가 API를 사용할 수 있는 기반이 만들어 집니다.
이제 API를 사용할 수 있게 했으니 프로젝트에 대한 클라이언트ID를 등록해야합니다! 후 복잡하죠 ㅠㅠ
왼쪽 메뉴에 API 및 인증 메뉴에서 "사용자 인증 정보" 를 눌러주세요.
상단 다음과 같은 메뉴들이 있습니다.
그러면 아래와 같은 화면이 나오는데, 제품 이름에 프로젝트 명을 쓰고 나머지는 선택 사항이므로 생략하겠습니다.
그다음 사용자 인증 정보 추가를 누르면 API 키, OAuth 2.0 클라이언트 ID, 서비스 계정 3개의 목록이 나오는데 그중 OAuth 2.0 클라이언트 ID를 누르고 Android를 눌러줍니다.
그러면 아래와 같은 화면이 나옵니다.
이름에는 프로젝트명, 서명 인증서 지문 아까 출력해두었던 SHA1 핑거프린팅, 패키지 이름에는 이클립스에서 사용할(한) 동일한 패키지 명을 입력하고 저장 버튼을 눌러줍니다.
이클립스 프로젝트 생성 및 라이브러리 등록
이제 모든 준비가 다 끝났습니다! 이제 이클립스로가서 프로젝트 생성 해줍시다.
저는 다음 사진과 같이 설정했습니다.
프로젝트를 생성했으면 그 다음 google play 라이브러리 생성입니다.
Package Explorer -> Import -> Existing Android Code Into Workspace -> Next 후
아래 사진과 같이 Root Directory에 [SDK 경로]\extras\google\google_play_services\libproject를 설정해주어서 라이브러리를 등록해 줍니다.
그러면 아래 처럼 라이브러리가 프로젝트로 생성된 것을 확인할 수 있습니다.
이제 이 라이브러리를 프로젝트에 add 시켜주어야 합니다.
프로젝트 우클릭 -> Properties 후 아래 사진과 같이 적용시켜주면 됩니다.
그 다음은 구글 드라이브 API를 라이브러리로 추가 해야합니다... 하 끝이없네 ㅠㅠ
먼저 추가할 프로젝트를 누른 후!
왼쪽상단 근처의 버튼 클릭! 그리고 Add Google APIs... 를 눌러줍니다.
그러면 창이 하나가 뜹니다! 그러면 아래와 같이 "Drive" 를 검색 한 후 v2를 누르고 Finish버튼을 누르면 성공적으로 Google API가 프로젝트에 추가됩니다.
정말 모든게 끝났습니다. 이제는 sample 소스를 구해서 복+붙만 하면 데모 앱을 바로 실행시킬 수 있어요!
소스는
위 링크를 따라가시면 예제 소스가 있습니다. 이외에도 다양한 데모소스가 많으니 다운받아서 직접 실행시켜보세요!
소스를 복사 붙여넣기 하신 후 맨 위에 package를 다음과 같이 바꿔줍니다.
그리고 AndroidManifest 에 아래 네모박스 부분을 추가해주면.. 진짜 끝 이제 빌드 할 일만 남았습니다.!!(엉엉)
Sample App 실행 화면
이 샘플앱은 구글 로그인 후 사진을 찍으면 파일을 구글 드라이브로 바로 업로드하는 간단한 앱입니다.
실행을 하면 아래 사진과 같이 계정을 선택하라는 창이 뜹니다. 계정을 선택하게 되면..
아래 사진처럼 카메라가 실행이되서 사진을 찍을 수 있습니다.
그 다음 구글 드라이브에 접속하게 되면 아래와 같이 내가 찍은사진이 정상적으로 업로드 된 것을 확인 할 수 있습니다.
지금까지 긴 글을 읽어주셔서 감사하구요. 궁금한거나 질문있으시면 제가 아는 지식선에서 친절하게 답변해드리도록 하겠습니다!
댓글