한국어

Programming

twin 주소복사
조회 수 2193 추천 수 0 댓글 0
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄

앱인벤터는 매우 편하고 강력하지만 가끔 제공하지 않는 기능이 있습니다. 예를 들어  스마트폰에서 플래시를 켜고 끄는 기능은 제공하지 않습니다. 

다행히 앱인벤터에는 확장기능(Extension)이 있습니다. 이 기능을 사용하면 누구나 Java로 앱인벤터에서 사용할 수 있는 컴포넌트를 만들 수 있고 이 컴포넌트를 마치 라이브러리처럼 다운받아 설치하면 앱인벤터에서 사용할 수 있습니다. 컴포넌트를 만드는 것은 Github에 있는 앱인벤터 소스코드를 분석하고 Java로 프로그램을 해야하기 때문에 쉽지는 않겠지요? 저도 직접 Extension을 만들어 본 적은 없습니다.

오늘은 플래시를 켜고 끄는 확장기능을 사용해서 플래시를 깜빡이는 앱을 만들어 보겠습니다. 이 기능은 예를 들어 등산을 하다가 깜깜한 밤에 길을 잃었을 때 내 위치를 알리는 용도로 사용할 수 있겠지요?

Flashlight Extension을 검색하여 앱사이트에 접속합니다. https://puravidaapps.com/flashlight.php

이 사이트에서 컴포넌트에 대한 내용을 확인하고 확장 컴포넌트를 다운로드합니다. 확장 컴포넌트의 확장자는 AIX 파일입니다.

<그림 1> TaifunFlashlight.aix 파일을 다운받습니다.

디자이너 창에서 왼쪽의 빨레트를 보면 맨 아래 Extension이 있습니다. Import Extension을 클릭하면 팝업창이 뜨고 여기서 다운받아 둔 Extension 파일을 선택합니다.

<그림 2> Extension에서 TaifunFlashlight 컴포넌트를 Import를 합니다.

이렇게 하면 Extension 빨레트에서 TaifunFlashlight가 보입니다, 이것을 디자인 창에 끌어다 놓으면 Nonvisible components 에서 삽입된 것을 확인할 수 있습니다. Components 창에도 보이게 됩니다. 참고로 Extension 컴포넌트는 Non-visible 만 가능합니다.

<그림 3> 디자인 창

위 그림처럼 디자인 창에는 버튼 하나, Clock 하나, 그리고 TaifunFlashlight가 하나 있습니다. 버튼을 누르면 플래시가 1초에 한번씩 깜박거리게 만들겠습니다.

이제 블록코딩을 하겠습니다.

TaifunFlashlight를 클릭하면 4개의 블록이 보입니다. 플래시를 끄고 켤 수 있고, 플래시를 가지고 있는지 확인할 수 있는 블록들이 있네요. 이것들을 사용해서 1초에 한번씩 플래시가 켜졌다 꺼졌다 하게 만들어 보겠습니다.
 

<그림 4> TaifunFlashlight 컴포넌트의 블록들

flag 라는 부울 변수를 하나 사용합니다. 처음에 flag는 false이고 Clock이 타이머 이벤트를 1초에 한번씩 만들때마다 flag == false 이면 플래시를 켜고나서 true로 만들어주고, flag == true 이면 플래시를 끄고 false로 만들어주면 됩니다.

<그림 5> 블록코딩

필요한 컴포넌트가 제공되지 않을 때 누군가 만들어 두었을지도 모르는 Extension를 찾아보는 것도 좋겠습니다. 의외로 많은 extension이 제공되고 있습니다. 이들을 사용하면 앱인벤터의 한계를 넘어설 수 있습니다.


List of Articles
번호 제목 글쓴이 날짜 조회 수
51 2020 게임제작과 직업교육 실습 자료  twin 2020.12.07 342
50 [앱인벤터2 강좌] 가위 바위 보 앱  twin 2019.09.18 3018
49 [앱인벤터2 강좌] 폭탄 돌리기  twin 2019.09.17 1572
48 앱인벤터2 강좌 : 숫자 암기 게임  twin 2018.10.12 2368
47 앱인벤터2 강좌: fingerFind5 게임  twin 2018.10.12 1809
46 과제알림장 앱 만들기  twin 2018.10.12 2476
45 문자메시지 보내기  twin 2018.10.12 1828
44 메모장 앱 만들기  twin 2018.10.12 1659
43 앱인벤터 동영상 강좌 app123.kr  twin 2018.09.17 52509
42 색상 팔렛트 만들기  twin 2018.09.14 1586
41 지도에 내 위치 표시하기  twin 2018.09.14 5834
40 스톱워치 만들기  twin 2018.09.14 7758
39 [앱 인벤터2] 두더지 잡기 게임2  twin 2018.09.14 2665
38 [앱인벤터] 예제 - 두더지 게임  twin 2018.09.11 11771
37 [앱 인벤터2] 우주선게임  twin 2018.08.30 2776
36 [앱 인벤터2] 간단한 계산기  twin 2018.08.30 3072
35 [앱 인벤터2] 공튀기기  1 twin 2018.08.30 2487
» [앱인벤터2] Extension(확장기능)을 사용한 깜박이는 플래시라이트  twin 2018.08.27 2193
33 [앱인벤터2] PasswordTextBox와 TinyDB를 사용한 PIN 번호 체크  twin 2018.08.27 3109
32 [앱인벤터] ListPicker와 WebViewer를 이용한 내가 즐겨찾는 사이트 앱  twin 2018.08.27 2827
Board Pagination Prev 1 2 3 Next
/ 3