자바 웹 프로그래밍

Similar documents
Microsoft PowerPoint App Fundamentals[Part1](1.0h).pptx

Microsoft PowerPoint App Fundamentals[Part1].pptx

Multi Channel Analysis. Multi Channel Analytics :!! - (Ad network ) Report! -! -!. Valuepotion Multi Channel Analytics! (1) Install! (2) 3 (4 ~ 6 Page

서현수

TTA Journal No.157_서체변경.indd

Microsoft PowerPoint - web-part03-ch19-node.js기본.pptx

HLS(HTTP Live Streaming) 이용가이드 1. HLS 소개 Apple iphone, ipad, ipod의운영체제인 ios에서사용하는표준 HTTP 기반스트리밍프로토콜입니다. 2. HLS 지원대상 - 디바이스 : iphone/ipad/ipod - 운영체제 :

Windows 8에서 BioStar 1 설치하기

Microsoft PowerPoint - 11주차_Android_GoogleMap.ppt [호환 모드]

Secure Programming Lecture1 : Introduction

Microsoft Word - src.doc

02_3 지리산권 스마트폰 기반 3D 지도서비스_과업지시서.hwp

Week13

THE TITLE

PowerPoint 프레젠테이션

<C0CCBCBCBFB52DC1A4B4EBBFF82DBCAEBBE7B3EDB9AE2D D382E687770>

컴퓨터과학과 교육목표 컴퓨터과학과의 컴퓨터과학 프로그램은 해당분야 에서 학문적 기술을 창의적으로 연구하고 산업적 기술을 주도적으로 개발하는 우수한 인력을 양성 함과 동시에 직업적 도덕적 책임의식을 갖는 IT인 육성을 교육목표로 한다. 1. 전공 기본 지식을 체계적으로

HTML5* Web Development to the next level HTML5 ~= HTML + CSS + JS API

다른 JSP 페이지호출 forward() 메서드 - 하나의 JSP 페이지실행이끝나고다른 JSP 페이지를호출할때사용한다. 예 ) <% RequestDispatcher dispatcher = request.getrequestdispatcher(" 실행할페이지.jsp");

오늘날의 기업들은 24시간 365일 멈추지 않고 돌아간다. 그리고 이러한 기업들을 위해서 업무와 관련 된 중요한 문서들은 언제 어디서라도 항상 접근하여 활용이 가능해야 한다. 끊임없이 변화하는 기업들 의 경쟁 속에서 기업내의 중요 문서의 효율적인 관리와 활용 방안은 이

[Brochure] KOR_TunA

Microsoft PowerPoint UI-Event.Notification(1.5h).pptx

Microsoft PowerPoint - web-part03-ch20-XMLHttpRequest기본.pptx

게시판 스팸 실시간 차단 시스템

<4D F736F F F696E74202D E20B3D7C6AEBFF6C5A920C7C1B7CEB1D7B7A1B9D62E >

API STORE 키발급및 API 사용가이드 Document Information 문서명 : API STORE 언어별 Client 사용가이드작성자 : 작성일 : 업무영역 : 버전 : 1 st Draft. 서브시스템 : 문서번호 : 단계 : Docum

HTML5가 웹 환경에 미치는 영향 고 있어 웹 플랫폼 환경과는 차이가 있다. HTML5는 기존 HTML 기반 웹 브라우저와의 호환성을 유지하면서도, 구조적인 마크업(mark-up) 및 편리한 웹 폼(web form) 기능을 제공하고, 리치웹 애플리케이 션(RIA)을

Microsoft PowerPoint - 04-UDP Programming.ppt

The Pocket Guide to TCP/IP Sockets: C Version

놀이동산미아찾기시스템

<4D F736F F D205B4354BDC9C3FEB8AEC6F7C6AE5D3131C8A35FC5ACB6F3BFECB5E520C4C4C7BBC6C320B1E2BCFA20B5BFC7E2>

이도경, 최덕재 Dokyeong Lee, Deokjai Choi 1. 서론

Intro to Servlet, EJB, JSP, WS

0. 들어가기 전

SS Term #3.doc

1. Windows 설치 (Client 설치 ) 원하는위치에다운받은발송클라이언트압축파일을해제합니다. Step 2. /conf/config.xml 파일수정 conf 폴더에서 config.xml 파일을텍스트에디터를이용하여 Open 합니다. config.xml 파일에서, 아

Microsoft Word - 김완석.doc

< FC8A8C6E4C0CCC1F620B0B3B9DF20BAB8BEC8B0A1C0CCB5E5C3D6C1BE28C0FAC0DBB1C7BBE8C1A6292E687770>

- 목차 - - ios 개발환경및유의사항. - 플랫폼 ios Project. - Native Controller와플랫폼화면연동. - 플랫폼 Web(js)-Native 간데이터공유. - 플랫폼확장 WN Interface 함수개발. - Network Manager clas

JAVA PROGRAMMING 실습 08.다형성

PowerPoint 프레젠테이션


Facebook API

ICT03_UX Guide DIP 1605

슬라이드 1

슬라이드 1

Microsoft PowerPoint App Fundamentals[Part2].pptx

제11장 프로세스와 쓰레드

Analytics > Log & Crash Search > Unity ios SDK [Deprecated] Log & Crash Unity ios SDK. TOAST SDK. Log & Crash Unity SDK Log & Crash Search. Log & Cras

PowerPoint 프레젠테이션

vi 사용법

..,. Job Flow,. PC,.., (Drag & Drop),.,. PC,, Windows PC Mac,.,.,. NAS(Network Attached Storage),,,., Amazon Web Services*.,, (redundancy), SSL.,. * A

ibmdw_rest_v1.0.ppt

PowerPoint Presentation

<4D F736F F F696E74202D20B5A5C0CCC5CDBAA3C0CCBDBA5F3130C1D6C2F75F32C2F7BDC32E >

Microsoft PowerPoint - 4주차_Android_UI구현.ppt [호환 모드]

歯규격(안).PDF

var answer = confirm(" 확인이나취소를누르세요."); // 확인창은사용자의의사를묻는데사용합니다. if(answer == true){ document.write(" 확인을눌렀습니다."); else { document.write(" 취소를눌렀습니다.");

WCF를 이용한 엔터프라이즈 커뮤니케이션에 있어서의 ‘MUST HAVE’ 아이템

9 차시고급위젯다루기 1 학습목표 날짜 / 시간과관련된위젯을배운다. 웹뷰를사용하여간단한웹브라우저기능을구현한다. 매니패스트파일의설정법을배운다. 2 확인해볼까? 3 날짜 / 시간위젯 1) 활동하기 활동개요

PCServerMgmt7

PowerPoint 프레젠테이션

슬라이드 1

歯MW-1000AP_Manual_Kor_HJS.PDF

슬라이드 1

본 강의에 들어가기 전

RHEV 2.2 인증서 만료 확인 및 갱신

KYO_SCCD.PDF

Mstage.PDF

AGENDA 모바일 산업의 환경변화 모바일 클라우드 서비스의 등장 모바일 클라우드 서비스 융합사례

Microsoft Word - ICT Report

PWR PWR HDD HDD USB USB Quick Network Setup Guide xdsl/cable Modem PC DVR 1~3 1.. DVR DVR IP xdsl Cable xdsl Cable PC PC DDNS (

인문사회과학기술융합학회


Microsoft PowerPoint - 6.pptx

00-CourseSyllabus

Spotlight on Oracle V10.x 트라이얼프로그램설치가이드 DELL SOFTWARE KOREA

PowerPoint 프레젠테이션

thesis

1. 제품 개요 AhnLab Policy Center 4.6 for Windows(이하 TOE)는 관리대상 클라이언트 시스템에 설치된 안랩의 안티바이러스 제품인 V3 제품군에 대해 보안정책 설정 및 모니터링 등의 기능을 제공하여 관리대상 클라이언트 시스템에 설치된 V3

**더모바일05호_N0.8

2009방송통신산업동향.hwp


FileMaker 15 WebDirect 설명서

PowerPoint Template

PowerPoint Presentation

Gartner Day

Microsoft PowerPoint - Supplement-03-TCP Programming.ppt [호환 모드]

API - Notification 메크로를통하여어느특정상황이되었을때 SolidWorks 및보낸경로를통하여알림메시지를보낼수있습니다. 이번기술자료에서는메크로에서이벤트처리기를통하여진행할예정이며, 메크로에서작업을수행하는데유용할것입니다. 알림이벤트핸들러는응용프로그램구현하는데있어

<4D F736F F D20C1A4BAB8C5EBBDC5C1F8C8EFC7F9C8B8BFF8B0ED5FBDBAB8B6C6AEBDC3B4EBBAF22E727466>

Microsoft PowerPoint - hci2-lecture12 [호환 모드]

Microsoft PowerPoint - 03-TCP Programming.ppt

특허청구의 범위 청구항 1 게임 서버 또는 미들웨어에 의해, 사용자 단말기로부터, GPS 정보, IP 정보, 중계기 정보 중 적어도 하나를 이 용한 위치 정보와, 상기 사용자 단말기에 설정된 언어 종류를 포함하는 사용자 정보를 수신하는 단계; 상기 게임 서버 또는 미들

아이패드에 주목하는 것은 현재 성능 때문이 아니다. 오히려 기존 PC나 휴대폰과 구분되는 가치와 사용형태로부터 파생될 변화 때문이다. 되는 선호도 조사에서는 아이패드가 넷북과 e-book보다 월등한 것으로 나타났다. 제품별 인지도는 넷북이 아이패드보다 월등하게 나타 났

PowerPoint Presentation

USB USB DV25 DV25 REC SRN-475S REC SRN-475S LAN POWER LAN POWER Quick Network Setup Guide xdsl/cable Modem PC DVR 1~3 1.. DVR DVR IP xdsl Cable xdsl C

1. What is AX1 AX1 Program은 WIZnet 사의 Hardwired TCP/IP Chip인 iinchip 들의성능평가및 Test를위해제작된 Windows 기반의 PC Program이다. AX1은 Internet을통해 iinchip Evaluation

개선과제 보고서

untitled

Microsoft Word - ntasFrameBuilderInstallGuide2.5.doc

Transcription:

Client-Server Application

Client 어플리케이션개발및 Server 연동 Local Push Android: Started service, Bound service, Intent service ios: Local Notification Push Notification Android: Google Cloud Messaging (GCM) ios: Apple Push Notification Service (APNS) Data sending and Receiving JSON, XML

Android Started service 애플리케이션컴포넌트에의해론칭됨 백그라운드에서무한정실행됨 ( 자신을시작한것이없어지더라도 ) startservice() 메소드를이용하여시작하며, 완료후 stopself() 를호출하여중단 Bound service Started service 와유사하나, 바운스결과를자신에게반환하며자신을론칭한컴포넌트와상호작용도허용한다는것이다름 bindservice() 메소드를사용하여시작하며, 더이상필요하지않을시 unbindservice() 메소드를호출하여멈춤 Intent service Service 클래스의서브클래스이며, 편의클래스임 IntentService 클래스사용시각요청을실행하는 onhandleintent() 메소드만구현하면됨

ios: Local notification 백그라운드에있는애플리케이션이사용자에게메시지표시를하기위한로컬알림기능 원격알림 (Remote/Push notification) 기능과다르며, 원격서버에의존하지않고로컬애플리케이션에서실행가능 UIUserNotificationSettings 을통해알림형태, 소리등을설정하며, registerusernotificationsettings 을이용하여사용자에게퍼미션을요청함

ios: Local notification 로컬알림타입설정및사용자퍼미션요청코드

ios: Local notification 백그라운드로내려간후 10 초후알림을위한코드 schedulelocalnotification 으로알림설정

ios: Local notification ios 10 부터시뮬레이터에서는확인되지않음

ios: Local notification 예약된알림의취소 scheduledlocalnotifications 으로현재알림목록을얻음 cancellocalnotification: 각각의알림을취소 cancelalllocalnotifications: 예약된모든알림을취소

Android: Google Cloud Messaging (GCM) Push Notification Server(PNS) 기반메시지전송플랫폼 Uracle Push Message Center(UPMC) 를이용함 Android GCM 서버와 HTTP 프로토콜을이용하여서비스구현 UPMC 3.5 이하버전 initpushservice 토큰요청 User 등록 Service 등록 메시지수신 UPMC 3.6 이상버전 initpushservice Service 등록 ( 자동토큰요청 ) User 등록 메시지수신

Android: Google Cloud Messaging (GCM) DataFlow diagram 3. Service Register 5. User Register 8. Received Message 4. Result Service Register 6. Result User Register 9. Read Message 2. Register ID 7-1. Send Message 7. Send Message 1. Register

Service Register Sequence Diagram UI Notification Manager PushManager PushHandler UPNSService ReceiverService Network Manager 1. registerpushservice 2. _registerpushuser 3. sendbroadcast 4. registerpushservice 5. requestdata 8. sendbroadcast 7. taskcompleted 6. receiveddata

User Register Sequence Diagram UI Notification Manager PushManager PushHandler UPNSService ReceiverService Network Manager 1. sendbroadcast 6. sendbroadcast 2. registerpushuser 5. taskcompleted 3. requestdata 4. receiveddata

Read Message Sequence Diagram UI Notification Manager PushManager PushHandler UPNSService ReceiverService Network Manager 1. pushmessagereadconfirm 2. pushmessagereadconfirm 3. sendbroadcast 4. pushmessagereadconfirm 5. requestdata 8. sendbroadcast 7. taskcompleted 6. receiveddata

Android: Google Cloud Messaging (GCM) SDK 설정 MPushLibrary : GCM/UPNS Push 활용라이브러리 mcore.mobile.lic : Push 라이센스정보가담긴파일 Manifest.xml: Push 구동을위한설정이필요한파일 SDK 적용방법 Project 의 libs 폴더에 lib 추가 Assets/res 폴더에라이센스및설정추가

Android: Google Cloud Messaging (GCM) Push service 등록

Receiver 등록 Receiver 해제 http://www.evernote.com/l/ahg1pzprxlzhmozkxpmavlhdrjeo-e8on40/

ios: Apple Push Notification Service (APNS) Apple 에서제공하는영구적인보안채널에공급자를연결하여대상장치에알림을보낼수있는서비스 Apple APNS 서버와 TLS 인증으로연결된 APNS Provider 서버를사용 1. The app registers for push notifications (SSL 인증서생성및등록 ) 2. The OS asks APNS for a device token 3. The app receives the device token 4. The app sends the token to provider 5. The provider sends a push notification to the APNS Server 6. APNS sends the push notification to user app APNS 는메시지전송시 5. 6. 5. 6. 5. 6 을지속적으로반복

DataFlow diagram 1 부터 3 까지의구체화

Sequence Diagram

Delegate PushManager Receiver Provider APNS Sequence Diagram

APNS Receive Sequence Diagram Delegate PushManager Receiver Provider APNS

Registering for APNS

Receive a token from APNS server APNS server 로부터 64bites 문자열을받아옴

Provider server APNS 메시지전송을위한서버파일 (Server: jsp 코드 )

Receive the message from APNS server

Sending : Android and ios http request 사용 Form 문을사용하여전송

Sending : Android and ios 서버에서처리후그결과를다시전송 (Server : php)

Sending : Android and ios 전송결과를다시받아처리필요

Receiving : Android and ios JSON 데이터 JavaScript Object Notation (JSON) 클라이언트브라우저및 AJAX 사용웹서비스간에소량의데이터를신속히교환할수있는효율적인데이터인코딩형식 Key Value 코딩방식 Serialization( 일종의암호화 ) 데이터를서버에서전달하며, 클라이언트즉데이터를수신한 Device 에서는 JSON 모듈을사용하여 Deserialization 을한후사용 XML 데이터

Receiving : Android and ios JSON 데이터 XML 데이터 HTML 을획기적으로개선하여만든언어 웹에서구조화된문서를전송가능하도록데이터에의미를부여하는메타데이터를기술할목적으로만든다목적마크업언어 XML 파싱은 Library 화하여사용하는것이일반적임 XML JSON

Receiving : Android and ios JSON 데이터와 XML 데이터 장점 단점 XML 1. 스키마 (Schema) 가있어서데이터무결성검증용이 2. 다양한 Data type 사용가능 3. Xpath/Xquery 를사용하면 JSON 보다파싱이용이함 1. JSON 에비해복잡하고 Overhead 가존재 2. 실데이터가아닌 tag 글자로데이터양불필요하게증가 JSON 1. 내용이함축적이며최소한의정보만을담는구조로 XML 대비용량적음 2. Name/value 의간단한 Syntax 구조로 markup overhead 가없음 3. Javascript 에서도쉽게사용가능 1. 콤마가누락되거나중괄호가잘못닫히는등오염에취약함 2. Namespace 문제가발생하는경우가종종발생함

Receiving 의구현 다량의데이터를한번에받는경우 데이터를받는동안 Loading 필요 많은이미지를받는경우한번에 Table 에넣는데무리가있음 데이터일부를받게한후, More 를이용하여데이터를추가로받게하는것이일반적임

Receiving 의실제구현 More 구현을위한데이터처리방법 1. 처음접속시 1page 분량의데이터를서버에요청 2. 요청한데이터를 Device 에서받은후 Array 형태로데이터저장 3. 사용자가 More 버튼을터치하는경우다시서버로 2page ( 다음페이지 ) 데이터를서버에요청 4. 전송받은데이터를기존 Array 데이터뒤에붙임 5. Table 객체는 Reload 메소드를통해화면을새로고쳐추가데이터를화면에나타냄