본문 바로가기
앱인벤터/앱인벤터 컴포넌트

앱인벤터 타이니웹DB 컴포넌트

by flycoding 2022. 6. 9.
반응형

앱인벤터 타이니웹DB 컴포넌트

 

앱인벤터의 컴포넌트들을 이해와 실제 예제를 통해 실습을 통해 모바일 앱 개발에 활용도를 높이고자 한다

타이니웹DB 컴포넌트는 스마트폰 대신에 웹에 데이터를 저장을 제공하는 컴포넌트이다. 타이니웹DB는 스마트폰과 앱간에 통신하는데 사용할 수 있다(예로 multi-plyaer games). 기본적으로 타이니웹DB 컴포넌트는 'http://appinvtinywebdb.appspot.com/' 앱인벤터에 의해서 제공되는 테스트 서비스 사에서 데이터를 저장할 수 있다. 이 서비스는 테스트하는데 도움을 준다. 하지만 1000 엔트리의 제한을 가지고 있다. 

타이니웹DB 컴포넌트는 정보를 저장하고 조회하기 위해 웹 서비스와 통신한다. 타이니웨DB 컴포넌트가 사용가능할지라도 사용에 있어서 매우 제한적이며, 주로 웹과 대화하는 자체 구성 요소를 만들고자 하는 사람들을 위한 시연용으로 활용이 됩니다. 함께 제공되는 웹 서비스는 ('http://tinywebdb.appinventor.mit.edu')에 있다. 타이니웹DB 컴포넌트는 태그를 활용하여 데이터를 저장하고, 태그와 연관된 값들을 조회할 수 방법을 가지고 있다. '저장'과 '조회'가 의미는 웹 서비스에 달려있다. 이를 구현하는데 있어 모든 태그와 값은 텍스트이다. 타이니웹DB 컴포넌트 제한은 향후 버전에 완화될 것이다.

 

타이니웹DB 컴포넌트

팔레트의 소셜 부분에서 타이니웹DB 컴포넌트는 보이지 않는 컴포넌트로, 뷰어에 drag&drop하면 화면에는 아무것도 표시되지 않는다. 본문에서는 타이니웹DB를 사용하여 이름과 전화번호를 저장하고, 이름으로 전화번호를 조회하는 간단한 앱을 만들어 보자

 

팔레트

타이니웹DB 컴포넌트는 '저장소'에 있다. 타이니웹DB 컴포넌트를 오른쪽 뷰어에 Drag&Drop하면 추가된다.

 

뷰어

컴포넌트들을 추가했을 때, 기본적으로 사각형이 뷰어 화면에 출력된다.

뷰어에는 보이는 않는 컴포넌트로 타이니웹DB 컴포넌트 외에 아래 그림과 같은 화면으로 구성되어 있다.

 

앱인벤터 타이니웹DB 컴포넌트 뷰어 화면

 

 

컴포넌트

 

파일 컴포넌트를 활용한 간단한 파일 앱에서 활용되는 컴포넌트는 아래와 같다. 

- 타이니웹DB 컴포넌트

  - 이름과 전화번호 저장

- 레이블 컴포넌트 6개 :

  - 레이블1 : "이름 : " 레이블 출력

  - 레이블2 : "전화번호" : 처음 만난 일을 선택

  - 레이블3 : 공백 추가 용도

  - 레이블4 : "이름 : " 레이블 출력

  - 레이블5 : "전화번호 " 레이블 출력

  - 레이블6 : 조회된 전화번호 출력

- 수평배치 컴포넌트 4개 : 

  - 수평배치1 컴포넌트 : 이름과 텍스트박스 수평배치

  - 수평배치2 컴포넌트 : 전화번호와 텍스트박스 수평배치

  - 수평배치3 컴포넌트 : 이름과 텍슽박스 수평배치

  - 수평배치4 컴포넌트 : 전화번화 레이블과 조회된 전화번호 표시

- 버튼 컴포넌트 2개

  - 버튼1 컴포넌트 : '저장하기' 버튼

  - 버튼2 컴포넌트 : '조회' 버튼

 

앱인벤터 타이니웹DB 컴포넌트 활용예제

 

타이니웹DB 컴포넌트 속성값

타이니웹DB 컴포넌트 속성값에는 서비스URL 속성값이 있다. 

서비스URL 속성값은 웹 서비스이 URL을 정의한다. 기본값은 앱 엔진이 동작하는 데모 서비스이다('http://tinywebdb.appinventor.mit.edu').

 

앱인벤터 타이니웹DB 컴포넌트 속성값

 

타이니웹DB 컴포넌트 이벤트 블럭들

타이니웹DB 컴포넌트 이벤트 블럭에는 값을받았을때, 값이저장되었을때, 웹서비스오류가발생했을때 등이 있다.

 

. 타이니웹DB 컴포넌트 값을받았을때 블럭

'값가져오기' 호출 블럭 요청이 성공적으로 수행하여 값을 받았을 때 호출되는 이벤트 블럭이다.

반환되는 인자값으로 'WebDB태그'와 'WebDB값'이 반환된다.

 

앱인벤터 타이니웹DB 컴포넌트 값을받았을때 블럭

 

. 타이니웹DB 컴포넌트 값이저장되었을때 블럭

'값저장하기' 호출 블럭이 요청되어 성공적으로 값이 저장되었을 때 호출되는 이벤트 블럭이다.

 

앱인벤터 타이니웹DB 컴포넌트 값이저장되었을때 블럭

 

. 타이니웹DB 컴포넌트 웹서비스가오류가발생했을때 블럭

웹 서비스가 오류가발생됨을 알려주는이벤트 블럭이다. 인자값으로 '메시지'가 반환되는데, 오류메시지가 반환이 된다.

앱인벤터 타이니웹DB 컴포넌트 웹서비스오류가발생했을때 블럭

 

타이니웹DB 컴포넌트 호출 블럭들

타이니웹DB 컴포넌트에 호출 블럭은 값가져오기, 값저장하기 호출 블럭이 있다. 

 

. 타이니웹DB 컴포넌트 값가져오기 블럭

주어진 태그 값으로 저장된 값을 얻어오는 웹 서비스를 호출한다. 태그에 저장된 값이 없다면 웹 서비스가 무엇을 반환할 것인지 정의해야 한다. 이 컴포넌트는 단순히 무엇을 반환하던지 간에 단순히 수신만 할 뿐이다. '값을받았을때' 이벤트 블럭은 '값가져오기'가 성공했을 경우 호출된다.

 

앱인벤터 타이니웹DB 컴포넌트 값가져오기 블럭

 

. 타이니웹DB 컴포넌트 값저장하기 블럭

주어진 태그와 저장할 값을 저장하기 위해 웹 서비스 요청을 하는블럭이다. '값저장하기' 서비스 요청이 성공하면 '값이저장되었을때' 이벤트 블럭이 호출된다.

앱인벤터 타이니웹DB 컴포넌트 값저장하기 블럭

 

타이니웹DB 컴포넌트 가져오기/지정하기 블럭들

타이니웹DB 컴포넌트 중 가져오기/지정하기 블럭은 서비스URL 등의 블럭이 있다. 

 

. 타이니웹DB 컴포넌트 서비스URL 블럭

서비스URL 값을 지정하거나 지정된 네임스페이스를 가져오는 블럭이다.

 

앱인벤터 타이니웹DB 컴포넌트 서비스URL 블럭

 

이상으로 앱인벤터 타이니웹DB 컴포넌트 블럭에 대해 간략히 살펴보았다. 좀더 자세히 확인하기 싶으면, 타이니웹DB를 활용하여 이름과 전화번호를 저장하는 앱을 블럭들을 하나씩 사용해보면서 블럭의 활용 용도 등을 파악하면 좋을 것 같다. 눈으로 보는 것보다 직접 해보는게 여러모로 코딩하는데 이해하고 코딩 실력이 향상되는데 도움이 된다.

 

Just Do it!!!

Just Drag&Drop!!!

 

MagneticFieldSens

 

반응형

댓글