1편과 2편에서는 구글 SDK를 이용해서 tinyWebDB 사설 DB를 구글 앱엔진에 등록하고 사용하는 방법을 알아보았다. 이번 3편에서는 구글 앱엔진 등록법 마지막 편으로 구글 대시보드에서 제공하는 구글 쉘 코드 편집기를 이용해 tinyWebDB 사설 DB를 구글 앱엔진에 등록하는 법을 알아보겠다. 나도 처음에는 구글 대시보드상에서 바로 앱엔진에 등록하는 방법이 없나 하고 궁금했었는데 역시나 그 방법도 있었다. 이제 그 방법을 간단히 설명하고 마무리 하도록 하겠다. 1편과 2편을 보지 않으신 분을 먼저 1, 2편을 좀 살펴보시고 오길 권하고 컴퓨터 바탕화면에 appinventordb 폴더가 있는 것으로 가정하고 시작하겠다. 샘플 코드 다운 받는곳은 'http://appinventor.mit.edu/explore/content/custom-tinywebdb-service.html' 이다.
역시나 먼저 본인의 구글 클라우드 플랫폼에 들어가서 새로운 프로젝트를 하나 생성하고 나온다. 필자의 경우 tinyWebDBstart가 프로젝트 이름이다. 프로젝트 이름이 길다보니 프로젝트 ID도 이름과 동일하게 설정되었다. 프로젝트 ID는 본인이 원하는 대로 바꿀 수 있으나 요구사항이 많아 바꾸기가 상당히 까다롭다. 웬만하면 자동 생성되는 그대로 사용하는 것이 좋다.
클라우드 플랫폼 홈에서 우상단을 보면 '>_'표시가 보일 것이다. 저 아이콘이 '구글 클라우드 쉘 활성화' 아이콘이다. 클릭한다.
구글 클라우드 플랫폼 하단에 도스 창처럼 보이는 쉘이 열린다. 유닉스를 기본으로 하는 쉘이나 도스와 비슷하다고 생각하면 된다. 쉘에 익숙한 사람이라면 이 쉘에서 모든 것을 처리 할 수 있으나 익숙하지 않은 사람들을 위해 윈도우 코드 편집기도 마련되어 있다. 연필처럼 보이는 아이콘을 클릭한다.
클라우드 쉘 코드 편집기 창이 열렸다. 사용법은 윈도우 탐색기와 거의 유사하다. 컴퓨터 바탕화면에 만들어 놓은 appinventordb 폴더의 파일을 import하기 위해 먼저 'File -> import -> File or Zip Archive' 순으로 클릭한다.
윈도우 탐색기가 열리면 바탕화면에 깔아놓은 appinventordb 폴더를 찾아간다. 폴더속의 모든 파일을 선택한 다음 우하단의 '열기'를 클릭한다.
그러면 구글 클라우드 쉘 코드 편집기에 모든 파일들이 import 되어 있는 것을 볼 수 있다. 여기서 부터는 1,2 편에서 했던 방식 그대로 하면 된다. 하단 쉘 창에서 'gcloud app deploy --project 프로젝트 ID'를 입력한다.
뭔가 에러가 발생했다.
클라우드 쉘 코드 편집기를 보면 앞에서 가져온 파일들이 'src' 폴더에 들어 있는 것을 알 수 있다. 1,2편에서도 말했듯이 저 파일들이 들어있는 루트 폴더에 들어가서 명령어를 입력해야 한다. 따라서 'cd src' 명령어로 해당 폴더로 이동한다. 'cd'는 'change directory'의 약자이다. 'ls' 명령어로 해당 폴더에 그 파일이 실제로 들어 있는지 확인해 본다. 'ls'는 'list'의 약자로 해당 폴더의 리스트를 보여달라는 명령어이다. 이제 src 폴더에서 'gcloud app deploy --project 프로젝트 ID'를 다시 입력한다. 노파심에서 한마디 더 추가 한다면, 이 글을 보고 따라 하시는 분이라면 폴더 이름이 다를 수 있다. 따라서 본인의 폴더 이름을 잘 보고 그 폴더 이름을 입력해야 한다.
중요!!!!!!!!
모든 과정이 정상적이라면 DB의 저장소를 선택하라는 창이 열린다. 우리나라와 가장 가까운 곳을 선택한다. 3번은 일본에 있는 구글 데이터 센터를 의미한다. 실제로는 어디를 선택하든 상관없다. 우리가 알아채지 못할 정도의 지연 시간만 발생할 뿐이다.
이제 마지막으로 최종 확인하는 과정이다. 'Y'를 입력한다.
모든 과정이 정상적으로 이루어 지면 appinvertordb의 파일들이 구글 앱엔진에 등록이 되었을 것이다. 본인의 구글 클라우드 플랫폼을 열어서 앱엔진 항목에 가보면 새로운 버전이 생성되어 있을 것이다. 버전 밑의 숫자를 클릭해 본다.
앱인벤터 웹 데이터베이스 서비스가 열린다. 여기서 tag 값과 value 값을 입력해 본다. 중단의 Tag란에 적당한 문자를 입력하고 Value 란에 숫자를 입력하고 'Store a vallue' 버튼을 클릭해 보라. 하단에 그 값들이 정상적으로 저장되는가? 필자처럼 저장이 되었다면 성공한 것이고 아니라면 처음부터 다시 해야한다.
이제 다시 앱인벤터 프로그램으로 가서 프로그램을 코딩하자. tinyWebDB1의 ServiceURL에 자신의 프로젝트 ID를 입력하는 것을 잊으면 안된다. build 시켜서 스마트 폰으로 프로그램을 실행시켜 보자.
상단의 텍스트 입력란에 숫자든 문자든 아무 데이터라도 입력한다. 그리고 '데이터 입력' 버튼을 클릭한다. 그런후 하단의 '데이터 가져오기' 버튼을 클릭하면 두 버튼 사이에 tag값과 value값이 표시 될 것이다. 데이터를 가져 오지 못한다면 또 처음부터 다시 해야한다.
자신의 구글 클라우드 플랫폼 Datastore 항목에 가보면 스마트폰으로 입력한 값들이 정상적으로 들어와 있다.
이것으로 구글 클라우드 앱엔진 등록과 대시보드 사용에 관한 모든 설명을 마치도록 한다. 처음 앱인벤터 tinyWebDB와 구글 클라우드 대시보드 사용법을 올렸을때 누군가가 저의 강좌를 보고 그대로 따라하는 사람이 있을까 반신반의 했었다. 그런데 의외로 여러 사람들이 따라해 보고 잘 되지 않는다는 질의를 해서 많이 놀랐다. 구글이 클라우드 플랫폼을 아무 예고 없이 자주 바꾸는 바람에 예전 강좌가 무용지물이 되는 경우가 있었다. 그러나 3회에 걸쳐 2017년 12월 말 현재 구글 앱인벤터 tinyWebDb와 구글 클라우드 대시보드 사용법을 자세히 설명했으므로 이글을 따라서 해보시는 분들에게 좋은 길잡이가 되었기를 바란다. 이상 끝~.
'SW 배움터 > 앱인벤터2' 카테고리의 다른 글
앱인벤터2 강좌 30: 앱인벤터2에 광고달기 (75) | 2018.02.13 |
---|---|
앱인벤터2 강좌 28: 로그인 화면 만들기 (40) | 2018.01.16 |
구글 앱엔진등록과 대시보드 사용 1편 (Hello World) (1) | 2017.12.26 |
앱인벤터2 강좌 27: 허니비 암송법 구현하기 (12) | 2017.12.15 |
내가 앱인벤터 aia 파일을 무료로 배포하는 이유 그러나....... (25) | 2017.11.07 |