Quick Walkthrough of a Google Compute Engine API Sample for Android

PAUL RASHIDI : 안녕하세요 저는 Paul Rashidi, 개발자 프로그램 엔지니어입니다

Google Cloud Platform에서 저는 Compute Engine과 모바일 앱에 대해 매우 열정적입니다 너무 오래 전, 나는 일을 시작했다 둘 다 사용하는 일부 응용 프로그램에서는 거기에 다른 개발자가 있다는 것을 알고 있습니다 비슷한 일을하고 싶기 때문에 최근에 소스를 오픈했습니다 샘플 앱

앱 데모를 보여 드리겠습니다 그런 다음 건물을 짓는 과정에 대해 간단히 이야기하십시오 Android Studio에서 GitHub의 샘플 앱에 포함 된 readme 파일 직접 앱을 배포하는 방법을 설명합니다 그래서 당신은 자신의 안드로이드 장치에서 실행되도록 할 수 있습니다 먼저 데모

응용 프로그램은 CE API Java를 사용하는 간단한 응용 프로그램입니다 클라이언트 라이브러리를 사용하여 프로젝트 자원 정보를 검색하십시오 모든 활성 리소스에 대한 정보를 가져옵니다 이전에 등록한 개발자 프로젝트에서 가져 왔습니다 보시다시피 로그인 페이지부터 시작합니다

여기서 Google 계정을 선택할 수 있습니다 샘플 계정을 선택하겠습니다 이 계정 목록은 Google 계정에서 가져옵니다 Android 기기에 등록 된 경우, 사용자가 비밀번호를 다시 입력하지 않아도됩니다 이제 코드를 완성했습니다

코드는 Android에 OAuth를 요청합니다 해당 계정의 20 토큰 (Compute의 OAuth 20 범위 포함) 엔진 및 클라우드 스토리지 나는이 프롬프트를 받아 들일 것이고, 이제는 OAuth 2

0 액세스 토큰을 검색 할 수 있습니다 OAuth 20 액세스 토큰을 상기시켜드립니다 시간 제한된 권한 부여 문자열입니다 Compute Engine에 대한 액세스를 제공하는 사용자를 대신하여 클라우드 스토리지 API를 제공합니다

다음으로 개발자 프로젝트의 프로젝트 ID를 입력합니다 Google 계정에 대한 액세스 권한이 있습니다 이것은 분명히 이미 프로젝트가되어야합니다 CE를 사용하거나 적어도 API가 활성화되어 있어야합니다 이 값은 프로젝트 이름 문자열 또는 우리가 콘솔에서받는 프로젝트 번호

이 리소스보기 버튼을 클릭합니다 새로운 활동이 호출됩니다 이 응용 프로그램은 백그라운드에서 CE API와 대화합니다 자원 정보를로드합니다 우리는 몇 개의 인스턴스와 디스크가 있음을 알 수 있습니다

우리 프로젝트가 접근 할 수있는 구역으로 이 인스턴스가 예정된 정전이 있습니다 이것은 실제로 이전에 삭제하려는 인스턴스입니다 그래서 우리는 이것을 조사하고 삭제할 것입니다 다시, 앱은 CE API와 비동기 적으로 삭제를 수행합니다 아주 간단한 앱

이 앱에서는 Android 마스터 세부 정보를 사용하기로 결정했습니다 견본 따라서 태블릿에서 앱을 실행하는 경우, 첫 번째와 두 번째 활동을 멋지게 결합한 것을 알 수 있습니다 함께 이것은 직장에서 안드로이드 조각이지만, 이것에 대한 자세한 내용 후에

이제 코드를 살펴 보겠습니다 코드를 살펴보기 위해 그것을 검색해야 할 것입니다 그렇게 쉬운 일입니다 우리는 Git을 사용하여 소스 코드를 체크 아웃 할 것이다 가져 오기 옵션을 통해 프로젝트를 가져옵니다

Android Studio에서 우리는 최고 수준의 프로젝트를 선택하고, Gradle 래퍼 옵션을 사용하고 가져옵니다 여기에서 문제가 발생하면 readme를 참조하십시오 보다 포괄적 인 지침을 보려면 코드 저장소를 참조하십시오 이제 코드가 생겨서 우리에게 가장 쉬운 방법입니다 이 프로젝트를 이해하는 것은 코드를 보는 것입니다

그것이 헌신 된대로 첫 번째 커밋을 볼 수 있습니다 프로젝트 마법사가 생성 한 코드이며 주로 Git 무시 항목을 정의합니다 구조는 Eclipse 환경과 조금 다릅니다 보시다시피, 우리는 build 디렉토리를 제외하고 있습니다

아이디어와 Gradle 숨겨진 디렉토리 이 모든 파일은 주 파일에서 유추되어야합니다 Gradle 파일을 작성하십시오 따라서 체크인 할 필요가 없습니다 우리는 또한 lib 디렉토리를 제외합니다

Maven을 통해 의존성을 끌어 들이기 때문에 vis a vis Gradle 조금 나중에 Gradle에 대해 자세히 설명합니다 프로젝트 마법사 커밋의 경우 모든 기본값을 사용했습니다 단 최소한의 SDK 11을 선택했다 그래서 나는 안드로이드 조각을 사용할 수있게했다

이것은 내가 마스터 세부 사항을 사용할 수있게했다 샘플 내 애플 리케이션의 기초로 버전 11을 선택하지 않아도됩니다 자신의 앱을 만들고 파편을 원하지 않습니다 하지만 나는 타블렛의 단순함을 좋아한다

우리가 이전에 본 인터페이스 다음 커밋은 두더지입니다 API 상호 작용 코드가 추가되었습니다 프로젝트에 CE API를 사용하는 모든 코드는 여기에 있습니다

우리는 사용자 인터페이스에서 네트워크 호출을 유지할 필요가 있기 때문에 실 기본적으로 API 스텁을 인스턴스화하는 것을 볼 수 있습니다 명령을 작성한 다음 명령을 실행하십시오 삭제 명령의 경우, 우리는 추가 상태 호출을하려고합니다 완료 될 때까지 기다리십시오

이 커밋에서 나는 또한 덧붙였다 로그인 활동 이는 샘플 로그인 활동입니다 Android 스튜디오에서 마우스 오른쪽 버튼을 클릭하여 만들 수 있습니다 이런 식으로

마지막으로 중요한 변경 사항을 알 수 있습니다 이 커밋의 buildgradle 파일에 있습니다 Gradle에 익숙하지 않은 경우, 그러면 당신은 아마 사실을 잊어 버릴 수 있습니다 빌드를 정의하는 새로운 방법입니다

이 스 니펫은 특히 모든 종속성을 정의함으로써 Maven 의존성으로 Android Jars 용 Google 클라이언트 라이브러리, Compute의 표면 확장뿐만 아니라, 이 라인 때문에 프로젝트에 추가됩니다 스 니펫은 Maven을 사용하지만 여전히 SDK 관리자를 통해 라이브러리를 다운로드해야합니다 스 니펫의 주석을 읽으십시오 특정 패키지에 대해서는 완전히 업데이트해야합니다

다음 커밋은 로그인 활동을 구현하도록합니다 Google 계정 자격증 명을 사용합니다 Android 인식 자격 증명입니다 기기에서 Google 계정을 다시 사용합니다 애플리케이션에 OAuth 2

0 토큰 액세스를 허용합니다 마지막으로 흥미로운 커밋 자원 목록의 구현이다 이전에 체크인 한 비동기 작업에 연결합니다 이 커밋에서 우리는 XML 레이아웃을 조정했다 파일을 사용하여 리소스를 표시하고 목록 및 세부 정보를 업데이트했습니다

조각을 사용하여 인스턴스, 디스크 및 영역을 표시합니다 그것이 코드에 관한 것입니다 정말 일부 응용 프로그램을 보길 고대하고 있습니다 Compute Engine API를 사용하는 휴대 기기에서 시간 내 주셔서 감사 드리며 GitHub에서 우리 프로젝트에 별표를 던지거나 동영상이 유용했음을 나타냅니다 고맙습니다