PPT - 앱 인벤터 2

Download Report

Transcript PPT - 앱 인벤터 2

PART 1
앱 인벤터 프로젝트
11 방송 허브
SNS
 개발도상국에서 주로 사용하는 FrontlineSMS
 피처폰에서 문자 기능을 이용한 SNS 수행
 동호회 사람들이 서로 소식을 주고받을 때 사용
 <방송 허브> 앱
 앱은 관리자의 스마트폰에서만 실행
 나머지 회원은 앱 설치 필요없음
 피처폰 사용자도 이용 가능
무엇을 만드는가?
 플래시몹 댄스 모임(FMDT)이 사용할 <방송 허브> 앱의 기능
 받은 문자 처리 절차
 복잡한 편이므로 점증적 프로그래밍 적용 필요
무엇을 배우는가?
 <방송 허브> 앱을 만들면서 배우는 것들
 문자를 보내고, 받은 문자를 처리하는 Texting 컴포넌트
 동적으로 변하는 전화번호 목록을 저장하는 List 변수
 리스트 항목을 하나씩 처리해주는 for each 블록
• 전화번호가 항목에 해당하며, for each는 전화번호 각각에 문자를 전송
 데이터를 영구 저장하는데 사용하는 TinyDB 컴포넌트
컴포넌트 설계
컴포넌트 동작 프로그래밍
 다른 폰에서 문자가 오면 그때 이벤트가 발생
 프로그래밍해야 할 기능들
받은 문자에 대응하기
 첫 번째 기능: 비회원이 보낸 문자에 대응
 “회원으로 가입하려면 joinFMDT라는 문자를 보내세요.”라는 응답 문자 발송
회원 전화번호 저장하기
 두 번째 기능: 회원가입 요청하는 joinFMDT라는 문자에 대응
 회원 리스트 BroadcastList에 전화번호 추가
회원 전화번호 저장하기
문자 방송하기
 세 번째 기능: 회원이 보낸 문자를 모든 회원에게 방송
 [그림 11-4]의 코드를 확장  두 가지 경우로 나누어 처리
 if-then-else의 then은 회원인 경우 처리, else는 비회원인 경우 처리
문자 방송하기
리스트 내용을 보기 좋게 표시하기
 사용자 인터페이스를 깔끔하게 개선
 현재 출력 형태는 한 줄에 모든 전화번호 출력 (화면 폭을 넘으면 적당히 줄 바꿈)
 개선된 출력을 해 주는 displayBroadcastList
 join 블록으로 개행문자 \n 추가
리스트 내용을 보기 좋게 표시하기
 displayBroadcastList 호출
리스트 내용을 보기 좋게 표시하기
전송한 메시지 기록하기
 관리자가 문자 방송 내역을 한눈에 알 수 있게 해주는 기능
 [그림 11-7] 코드에서 then 부분을 확장
BroadcastList를 데이터베이스에 저장하기
 관리자가 앱을 껐다 켜면,
 회원 정보가 모두 사라짐  joinFMDT 메시지를 보내 다시 가입 필요
 TinyDB를 이용하여 해결
BroadcastList를 데이터베이스에 저장하기
 [그림 11-8]의 코드를 확장
데이터베이스에서 회원 리스트 가져오기
 Screen1.Initialize 블록에서 GetValue 호출
전체 앱 프로그램
전체 앱 프로그램
확장해 보기
감사합니다.