Notice»

Recent Post»

Recent Comment»

Recent Trackback»

Archive»

« 2025/9 »
1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30

 
 

2. 알림(Notification)의 종류

알림은 앱의 사용자에게 정보를 전달해 주는 것을 말하며 기존 윈도우에서 메시지 박스 또한 알림의 한 형태라고 볼 수 있다.

 

윈도우8에서 화면에 표시되는 알림(Notification)의 종류는 아래와 같다.

·         타일(Tile)

·         배지(Badge)

·         토스트(Toast)

·         잠금 화면(Lock screen) 알림

타일과 배지는 타일의 구성요소에서 설명하였으며 토스트는 윈도우8에서 사용되는 알림 메시지다. 잠금 화면의 알림은 타일과 배지 값을 이용해서 업데이트 되는 알림이다.

 

2.1 알림 전달 방법

윈도우8의 앱에서 알림을 전달하는 방법은 4가지가 있으며 앱의 컨텐츠에 따라 선택해서 사용하면 된다. 한가지만을 선택 할 수 있는 것은 아니며 중복해서 사용 가능하다.

전달 방법

사용 대상

로컬(Local)

타일, 배지, 토스트

예약(Scheduled)

타일, 토스트

정기(Periodic)

타일, 배지

푸쉬(Push)

타일, 배지, 토스트, 로우(Raw)

 

로컬(Local) 알림은 기존의 사용되던 로컬이란 개념과 같으며 앱이 실행 중에 API로 타일, 배지, 토스트를 이용해서 사용자에게 정보를 알릴 수 있고 클라우드 서비스가 필요 없이 사용자에게 정보를 제공할 필요가 있을 때 곧바로 적용하면 된다. 윈도우폰은 7.5업데이트에서 로컬을 지원했으나 윈도우8은 출시와 함께 지원하고 있다. 로컬 알림은 자동으로 만료되지 않지만 명시적인 만료 시간을 설정하는 것이 좋다.

예약(Scheduled) 알림은 타일과 토스트에 미리 알림 시간을 예약하는 알림이며 시간을 지정하는 점을 제외하고는 로컬 알림과 동일하다. 알람 또는 일정 관리 앱 등에서 사용될 수 있으며 기본적으로 예약 알림은 전달된 시간으로부터 3일 내에 만료된다. 필요한 경우 명시적인 만료 시간으로 이 기본값을 변경할 수 있다.

정기(Periodic) 알림은 클라우드 서비스에서 정보를 주기적으로 받아와 업데이트 하는 알림이며 날씨 앱 등에서 사용될 수 있다. 로컬이나 예약과 달리 원격에서 데이터를 받아 와서 표시 해줄 때 사용한다. 앱에서 클라우드 서버로 폴링하는 간격과 XML이 있는 URL을 지정하면 주기적으로 시스템이 XML을 다운로드 하여 타일 및 배지에 업데이트 해준다. 토스트로는 사용할 수 없으며 일정 간격으로 타일과 배지에 정보를 업데이트해야 될 때 사용하면 된다. 정기 알림은 폴링이 발생하는 시간으로부터 3일 내에 만료된다. 필요한 경우 명시적인 만료 시간으로 이 기본값을 변경할 수 있다.

푸쉬(Push) 알림은 클라우드 서비스에서 데이터가 발생시 보내주는 알림으로 뉴스, 인스턴트 메시지나 소셜 등의 앱에 사용될 수 있다. 푸쉬 알림은 타 모바일 플랫폼에서도 사용되고 있는 서비스로 윈도우8에서는 개발사에서 클라우드 서비스를 구축하여 WNS(Windows Push Notification Service)와 연계해서 사용하면 된다. 푸쉬 알림은 WNS에서 받은 시간으로부터 3일 내에 만료된다. 필요한 경우 명시적인 만료 시간으로 이 기본값을 변경할 수 있다. 윈도우폰에서는 7.0 출시 때부터 제공하였으며 MPNS(Microsoft Push Notification Service)라는 이름으로 사용되었다.

윈도우8에서는 윈도우폰과 달리 로컬과 푸쉬 알림에서 공통된 XML 값을 사용해서 타일과 배지, 토스트를 업데이트 한다.

 

--------------------------------------------------------------------------------------------------------------

이 책은RTM이 발표된 시점에 출시되어 아쉽게도 정기 알림 및 푸쉬 관련 정보 및 샘플이 부족하고 MSDN에도 일부 페이지가 오픈 되지 않아 로컬 알림 중심으로 쓰게 되었다. 기본 적인 알림 사용방법은 푸쉬 알림이어도 크게 달라지지 않을 것이며 푸쉬 알림이 필요할 경우 클라우드 서비스와의 연동만을 구축하면 된다.

--------------------------------------------------------------------------------------------------------------

 

 

:

1. 타일(Tile)

타일은 시작화면에 표시되는 앱의 얼굴이며 사용자가 앱을 실행 할 수 있는 시작 점이다. 타 모바일 플랫폼의 아이콘에는 배지라고 하는 숫자 정도만 표시 가능한 것에 비해 윈도우8의 타일에는 숫자 뿐 아니라 앱의 상태나 이미지, 텍스트 등의 정보를 사용자에게 서비스 할 수 있어 라이브 타일이라고 표현한다. 앱의 컨텐츠에 따라 타일을 여러 개 추가해서 정보를 실시간 표시하고 해당 페이지로 직접 실행할 수도 있다.

일의 크기별 종류에는 정사각형(Squre)과 와이드(Wide)가 있다. 앱에서 정사각형 타일은 기본으로 포함되어야 하며 와이드 타일은 옵션사항이다. 두 가지 타일 모두 라이브로 업데이트가 가능하다. 타일의 적용 가능한 이미지와 사이즈는 따로 정리하도록 하겠다.

 

 

 

 

 

<그림1> 정사각형

 <그림2> 와이드

 

< 1> 타일의 구성요소

요소

설명

이름(Name)

타일의 왼쪽 아래에 표시되며 그림 1와 같이 표시된다. 기본 타일(default tile)에는 앱 이름만 표시 할 수 있다. 길이는 13자 이하를 권장하고 있으며 이름이 길경우는 줄임 표시된다.

로고(Logo)

타일의 왼쪽 아래에 표시되며 그림 2와 같이 표시된다. 앱 실행 중에 앱 이름 또는 로고를 선택해서 표시 할 수 있다.

배지(Badge)

타일의 오른쪽 아래에 표시되며 그림 1과 같이 숫자(Numeric)를 표시하거나 그림 2와 같이 시스템에 미리 정해진 문자(Glyph)를 선택해서 표시할 수 있다.

텍스트와 이미지

템플릿 종류에 따라 여러 개의 텍스트와 이미지가 사용될 수 있다.

 

그림 1은 기본 타일에 숫자 배지가 표시되었으며 그림 2는 템플릿을 이용해서 이미지와 텍스트를 표시하고 왼쪽 아래에 로고, 오른쪽 아래에 문자 배지를 표시했다. 윈도우의 설정에 따라 배지의 위치가 왼쪽에 표시 될 수 있다.

 

1.1 기본 타일(default tile) 설정

앱에 기본으로 포함되는 타일 설정은 앱 매니페스트(package.appxmanifest) 파일의 Application UI 탭에서 한다. 기본 타일은 첫 번째 타일 알림을 통해 타일이 업데이트될 때까지 표시되며 표시할 알림이 없을 때마다 기본 타일이 표시된다.

 

  

 

 <그림3> 앱 매니페스트 파일의 기본 타일 설정

 

< 2> 기본 타일 설정

속성

설명

Logo

정사각형 기본 타일 이미지

Wide logo

와이드 기본 타일 이미지

Small logo

검색 및 앱 전체목록, 시작화면의 시멘틱 줌 상태에서 보이는 작은 이미지 등에 사용되며 타일의 왼쪽 아래에 표시되는 로고에서도 사용된다.

Short name

타일의 왼쪽 아래에 앱의 이름을 표시 할 수 있으나 앱의 이름이 길 경우는 짧은 이름을 명시하여 보여줄 수 있다.

Show name

기본 타일에 앱의 이름을 표시할 수 있는 설정이며 정사각형 또는 와이드 일때만 표시하거나 두 가지 모두에 표시 유무를 선택할 수 있다.

Foreground text

타일에 보여지는 앱 이름의 색상을 정하는 것으로 Dark Light를 선택할 수 있다.

Background color

타일의 배경색을 지정해 주는 것으로 타일 위의 로고나 이미지와 어울리는 색을 W3DC 색 문자열(:”#FFFFFF”)로 입력 한다. 배경색은 앱의 모든 대화 상자의 버튼 색과 윈도우 스토어의 앱 설명 페이지에도 반영되므로 다른 앱과의 차별화 요소로 쓰인다.

 

위 설정에서 Logo Small Logo는 필수 사항이고 Wide Logo는 선택사항이다. Wide Logo를 지정해야 와이드 타일을 시작화면에 표시할 수 있고 라이브로 업데이트가 가능하다. 또한 윈도우 스토어에서 앱을 설치 시 기본으로 와이드 타일이 보이고 사용자의 선택에 의해 정사각형 타일로 변경할 수 있는 기능들이 제공된다.

--------------------------------------------------------------------------------------------------------------

로고에 대한 추가 설명

기본 타일에서 로고라는 표현이 여러 곳에서 사용되는데 앱을 대표하는 브랜드로써 기존 윈도우에서 사용되던 아이콘과 같이 앱을 대표하는 이미지라는 표현으로 쓰인다. 프로젝트 설정에서 Logo, Wide logo가 각각 정사각형, 와이드 기본 타일에 사용되는 이미지 이다. 그리고 타일의 왼쪽 아래에 표시할 수 있는 로고에 Small logo 이미지가 표시된다. 기본 타일 외에 타일의 설명에서 나오는 로고는 대부분 왼쪽 아래에 표시되는 로고를 말한다.

--------------------------------------------------------------------------------------------------------------

 

 

:

 

윈도우폰8 스토어에서 기존 7.1SDK를 사용한 앱이 실행이 제대로 안되고 죽는경우가 있다고 들었다.

어떤 앱들은 마이크로소프트(마켓플레이스)로 부터 연락을 받아 수정을 하기도 했다고 들었다.

 

몇일전에 구매한 위의 상황을 직접 겪게 되었는데 결론부터 얘기하자면

윈도우폰8 기기에 기존 개발하던 윈도우폰 7.1 앱을 설치했는데 앱이 실행되자마자 죽는다면

소스파일을 열고 앱 매니페스트 파일부터 확인해보자.

(앱 매니페스트 파일은 아래 MSDN 링크 확인)

 

Windows Phone의 앱 매니페스트 파일

http://msdn.microsoft.com/ko-kr/library/windowsphone/develop/ff769509(v=vs.105).aspx#BKMK_CAPABILITIESelement

 

7.1 SDK를 사용한 앱 소스를 컴파일했을때 아래와 같은 에러가 발생한다면

Installation of the application failed. Run time error has occurred. Fix the Capabilities in WMAppManifest.xml file.

 

8에서는 필요가 없어진 7.1(또는 7.0)CAPABILITIES 항목이 명시되어 있어서 에러가 발생한 것이다.

(필자가 발견한 항목은 ID_CAP_NETWORKING_ADMIN인데 MSDN에도 명시가 안되어 있는걸로 보아 7.1이전에

초기에 사용되던 항목인것 같기도 하다. 프로젝트가 초기 7.0 나왔을때 진행하였으므로..)

 

아래 링크를 확인해보고 매니페스트 파일을 수정하면 된다.

 

Windows Phone의 앱 기능 및 하드웨어 요구 사항

http://msdn.microsoft.com/ko-kr/library/windowsphone/develop/jj206936(v=vs.105).aspx

 

필자의 경우는 앱 매니페스트의 소스(xml)파일에서 항목을 다 지워버리고 실행해보니 문제 없이 실행이 되었다.

이후에 프로젝트의 UI창에서 필요한 항목을 체크해서 에러를 수정하였다.

 

 

: