정보공간_1

[4기 강남 이상훈] Mobile Accessibility[모바일 애플리케이션 접근성 지침]-Part 4 본문

IT 놀이터/Elite Member Tech & Talk

[4기 강남 이상훈] Mobile Accessibility[모바일 애플리케이션 접근성 지침]-Part 4

알 수 없는 사용자 2013. 11. 30. 18:10

안녕하세요. 강남멤버십 22-1기 이상훈 입니다.


 이전 포스팅에서 행정안전부와 한국정보화진흥원에서 발표한 "모바일 애플리케이션 접근성 지침-행정안전부고시 제2011-38호"와 "모바일 애플리케이션 [안드로이드] 접근성 점검 메뉴얼 [v1.0]" 을 참고하여 모바일 애플리케이션 권고사항 중 평가 제외항목 3가지를 소개해 드렸습니다. 이번 포스팅은 모바일 애플리케이션 권고사항 리스트 8가지 중 평가 항목 5가지를 적용 방법과 함께 설명해 드리도록 하겠습니다. 

 이번 포스팅까지 마치게 되면 모바일 애플리케이션 접근성 지침[준수사항7가지, 권고사항8가지]을 모두 포스팅 하게 됩니다. 마지막까지 정독하여 주시면 감사하겠습니다 :)



모바일 애플리케이션 권고사항 평가 항목 5가지는 아래와 같습니다.


1. 컨트롤간 충분한 간격

2. 알림기능

3. 사용자 인터페이스의 일관성

4. 깜박거림의 사용제한

5. 배경음 사용제한


 각 컨트롤간의 간격은 충분하게 배치하여 사용자의 의도와 관계 없이 다른 컨트롤이 눌려지지 않도록 하여야 합니다. 가장 이상적인 컨트롤간의 배치는, 컨트롤간의 중심점 사이의 간격이 13mm(절대적인 수치로)이상이 될 수 있도록 배치 하여야 합니다. 

 WVGA(800x480 픽셀) 기준으로 컨트롤 중심간 120 픽셀 이상 거리가 발생하도록 컨트로를 배치하도록 하여야 합니다. 



[그림1] 컨트롤 간의 간격을 준수한 사례 (출처. 모바일 애플리케이션 접근성 점검 매뉴얼(안드로이드))


[그림1]과 같이 각 컨트롤 간의 거리가 120px(WVGA 해상도 , 240dpi 기준)이상 충분히 간격을 제공하여 오작동 확률을 낮춰 주어야 합니다. 


아래는 안드로이드에서 가장 높은 점유률을 보유하고 있는 삼성전자의 각 제품별 권장 간격입니다.

제품명 

LCD 크기 

권장 간격 (13mm 이상) 

 갤럭시 S 

  4인치 , 100.8mm

 120px이상, 80dpi 이상

 갤럭시 S 2

  4.3인치, 109.2 mm

 110px 이상, 72.6dpi 이상

 갤럭시 탭 10.1

  10.1인치, 256.5mm

 122px 이상, 122dpi 이상

 갤럭시 노트

  5.3인치, 134.62mm

 145px 이상, 72.5dpi 이상



2. 알림기능

 사용자에게 알림을 제공할 때에는 진동, 시각, 소리 등 최대한 다양한 방법으로 알람을 제공하여야 합니다. 그 이유는 화면상으로만 알람을 제공할 경우, 시각이라는 한 가지 감각으로만 정보를 제공함으로, 다양한 감각을 이용하여 알림을 인지 할 수 있도록 제공하는 것이 바람직 합니다. 일반적인 적용 방법으로는, 알림창 팝업 시 알림창의 텍스트를 정확히 인지(talk back 적용하였을 경우, 팝업 시 자동으로 텍스트를 읽어 줄 수 있는지에 대한 여부 ) 할 수 있는지, 또한 알림 소리와 진동이 동시에 또는 각각 전달 될 수 있는지, 해당 앱에서 알림 정보에 대한 설정을 할 수 있는지에 대한 가능여부를 적용 할 수 있습니다. 


 적용방법으로는 일반적으로 안드로이드에서 제공하는 기본 알림창의 경우 별도의 접근성을 지정하지 않더라도 모든 객체에 음성출력이 가능합니다. 따라서 일반적인 팝업창 생성 코드를 아래에 첨부하도록 하겠습니다. 


    @Override
   
public void CreateDialog(String title, String message) {
       
AlertDialog dlg;         AlertDialog.Builder builder = new AlertDialog.Builder(this);         

//Title과 Message 설정 builder.setTitle(title); builder.setMessage(message); //취소 버튼 builder.setNegativeButton("취소", new DialogInterface.OnClickListener() { @Override public void onClick(DialogInterface dialog, int which) {     // TODO Auto-generated method stub     //취소 버튼을 눌렀을때 행동 }});


//확인 버튼 builder.setPositiveButton("확인", new DialogInterface.OnClickListener() { @Override public void onClick(DialogInterface dialog, int which) {     // TODO Auto-generated method stub     //확인 버튼을 눌렀을때 행동 }});

}



3.사용자 인터페이스의 일관성 

  아이폰의 경우, 앱 등록 심사시 애플에 의하여 엄격하게 심사되어, 일관적인 사용자 인터페이스를 구축하고 있습니다. 하지만 안드로이드의 경우 앱의 등록이 자유롭기 때문에 다양한 형태의 인터페이스가 나타날 수 있습니다. 이것이 안드로이드의 장점이자 단점이기도 한데요. 안드로이드 애플리케이션을 개발할 경우, 항상 사용자 인터페이스의 요소들의 배치를 일관성 있게 제공하는 것이 바람직합니다. 
 예를들면, 항상 하단에 위치하고있던 탭메뉴들은 항상 하단에 위치하고 있는 것이 좋으며, 아이폰 처럼 항상 위의 네비게이션바를 통하여 화면이동을 컨트롤 할 수 있도록 할 수 있다건가, 항상 애플리케이션 내에서는 인터페이스의 일관성을 유지하여 개발하는 것이 좋습니다. 


4. 깜박거림의 사용제한

 4번째 항목은 깜박거리는 콘텐츠 사용의 제한 입니다. 깜빡이거나 번쩍거리는 객체를 사용자 인터페이스에 사용하지 않는 것이 바람직 한데, 이는 광과민성 발작을 일으킬 수도 있기 때문입니다. 

 컨텐츠를 사용함에 있어, 번쩍이는 객체를 사용하지 않도록 주의하고, 초당 3~50회의 주기로 깜빡이는 컨텐츠의 경우는 사용하지 않는 것이 좋습니다. 
( 주로 아동용 컨텐츠에서 깜박거리는 컨텐츠의 사용이 많이 나타나고 있습니다. )

5. 배경음 사용제한 

 마지막으로 오늘 소개해드릴 권고사항인 "배경음 사용제한"입니다. 이는 말 그대로 애플리케이션에 의해서 자동으로 사용되는 배경음을 사용하지 않는 것을 권고하고 있습니다. 
 자동으로 재생되는 배경음을 사용하면 청각에만 의존하는 시각장애인들은 배경음에 의해 필요 정보 인지에 어려움을 겪게 됨니다. 이에 자동으로 재생되는 동영상 및 음악을 제공하지 않는 것이 필요합니다. 

 어쩔수 없이 배경음을 꼭 제공하여야 하는 상황이라면 이를 컨트롤 할 수 있는 위젯을 삽입하여, 배경음을 정지, 재생등의 컨트롤을 할 수 있도록 구현해 주어야 합니다. 



 오늘까지 해서 모바일 애플리케이션 접근성 지침 중 준수사항 7가지와, 권고사항 8개지를 모두 알아 보았습니다. 접근성이란, 어떻게 보면 장애인들을 위한 특정 영역으로 여겨질수도 있지만, 전체적인 맥락에서는 모든 사람들이 어떠한 상황이나, 신체적 장애에 구애받지 않고 IT기술을 습득할 수 있도록 만들어주는 폭 넓은 학문 입니다.

 여러 사람들을 편리하게 만들어 줄 수 있는 학문임에도 불구하고 많은 개발자 및 기획자들이 이를 가볍게 여기는 경우가 많으며, 심지어 고려조차 하지 않는 부분들이 많습니다. 물론 모든 접근성 지침을 지키기란 어려울 수 있습니다. 하지만 간단하게 코드 한줄만 삽입하더라도 더욱 유용한 애플리케이션을 제작할 수 있고, 더욱 더 많은 사람들에게 도움이 될 수 있습니다. 이 포스팅을 읽으신 분들께서는 앞으로 모바일 애플리케이션을 제작하는데 있어, 많은 사람들을 더 배려해 줄 수 있는 그러한 애플리케이션을 개발해 주셨으면 합니다.  감사합니다 :) 



참고자료 : 

한국정보화진흥원 - 모바일 애플리케이션[안드로이드] 접근성 점검 메뉴얼[v1.0]

모바일 애플리케이션 접근성 지침 - 행정안전부고시 제 2011-38호