Daum DevDay 15th 후기

Daum Devday에 다녀온지 벌써 일주일이 지났네요. 후기를 적어야지적어야지 생각만 하다가, 간단히 적어봅니다. 이번 15회 다음 DevDay는 10개의 팀을 선정하여 제주도에서 1박 2일로 앱개발을 하였습니다. 다음에서 음성인식 API의 새로운 버전을 활용하여 개발을 목적으로 하고있고, 5.7:1의 경쟁률에 당당히 선정되었습니다. 총 10개의 팀으로 대학생, 고등학생, 일반인들이 골고루 분배된것 같았습니다.

다음의 음성인식 API의 새로운 버전은 기존의 검색타입 3가지에서 고립어 검색타입이 추가 되었습니다.

  • 웹검색
  • 연속어
  • 지도
  • 고립어
고립어 타입은 정해진 문자열 배열에서 음성인식을 통해 문자열중 가장비슷한 문자를 반환해줍니다. 예를 들어 “예”, “아니요”로만 대답하는 경우 예, 아니오를 고립어 타입으로 문자열을 넘기게 되면 “예” 또는 “아니오” 로만 음성인식이 되기 때문에 음성인식률이 상당히 높아집니다.

우리팀 프로젝트 소개

우리팀은 음성인식 API를 이용해서 어떠한 화면에서 어떠한 작업을 하고 있던 간단한 작동으로 앱을 실행하는 앱을 개발하는 것이 목표였습니다. 수 많은 앱중 실행하고 싶은 앱을 찾기가 힘든 분들이 가장 빠르고 정확하게 앱을 실행 할 수 있도록 도와주는 것입니다.

 

어떠한 화면에서 한번의 터치를 통해 음성입력을 받아야 하기때문에 Facebook 메신저의 Chathead방식을 사용해서 원형의 아이콘이 화면에 항상 떠있도록 구현하였습니다. 물론 불 필요 한경우 가장자리로 이동하여 삭제 할 수 있습니다.

그리고 앱의 명칭을 정확하게 말하는 번거로움을 없애기 위해 앱별로 별명을 지정할 수 있는 기능도 추가 했습니다. 앱명이나 별명 둘중 말하면 앱이 실행됩니다. 앱 최초실행시 별명과 매칭할 수 있도록 설치된 모든 앱을 로컬 DB화해서 관리하고, 제거나 설치 되는경우 Receiver을 통해 DB를 업데이트하는 방식으로 설계되어 있습니다.

 

저희 팀은 다른팀과는 다르게 당일 개발/기획/디자인을 모두 했습니다. 다른팀들은 이미 서비스되어 있거나 어느정도 완성된 앱에서 음성 API만 추가만 하였지만 저희들은 처음부터 끝까지 개발해야 했기에 잠을 한숨도 못잤습니다. 약 15시간 정도 개발했던것 같습니다.

밤샘을 인정(?) 해주신건지 당당히 2위를 해서 넥서스7을 상품으로 받았습니다.

개발된 앱은 링크를 통해 다운로드 받으실수 있습니다.

이제 고등학교 진학을 하는 학생들도 참가해서 많이 놀랐고, 약 20년간 개발하신 분들도 오셔서 한번더 놀랐습니다. 발표할때 빼고 팀간의 소통이 없어 좀 많이 아쉬웠습니다. 개발/디자인/기획을 각각 모집해서 팀을 만들어서 그자리에서 앱개발을 진행 해보는 것도 나쁘지는 않을것 같다는 생각도 들었습니다.

DevDay 참석한 10개 팀 모두 수고많았습니다. 다음에 좋은 인연으로 또 만났으면 좋겠네요 🙂

부산버스 앱 2.2.1 업데이트

부산버스 앱 2.2.1 버전으로 업데이트가 되었습니다.

올해 3월 부터 추가하려 했던 기능을 꾸준히 개발해서 오늘 업데이트를 하게 되었습니다. 직장으로 업무로 시간이 좀 걸렸지만, 이렇게 업데이트 할 수있어서 기쁘게 생각합니다.

그리고 스토어의 댓글을 보니 그동안 관리를 못해서 죄송한 마음 뿐입니다. 

업데이트된 버전의 기능을 간략하게 말씀 드린다면 :

주변 정류소 찾기 기능

  • 스마트폰의 위치정보를 이용하여 현재나의 위치에서 가까운 정류소를 지도상에 표시를 해주는 기능입니다. 내 위치를 기준의로 2KM내에 있는 모든 버스류소를 표시 하며, 버스정류소를 선택 하면 도착정보 화면으로 이동합니다.

즐겨찾기 순서 변경 및 삭제 기능

  • 기존 즐겨찾기 후 편집을 못해서 불편하다는 많은 문의가 있었는데, 이번에 순서변경과 삭제 기능을 추가 하였습니다. 우측 ≡ 아이콘을 이용하여 상하 드래그를 통해 위치는 변경가능 합니다. 또한 좌우 드래그를 하시면 삭제 됩니다. 알림 없이 삭제 되니 내가 원하지 않는 즐겨찾기가 삭제 될 수 있으니 조심하시기 바랍니다. (이부분은 UX상 업데이트 필요할듯.)

UI디자인 전면 개편

  • 이번 업데이트를 통해 Google Android UI 가이드라인에 의거해 전면적으로 디자인을 개편 했습니다. 주변 정류소 찾기 기능을 통해 기존의 설정을 MenuDrawer에 추가 하였습니다. 메인 화면에서 제일좌측에서 우측으로 그래그를 하거나 메뉴키는 누르거나 상단 부산버스 아이콘을 누르시면 설정 화면이 나타납니다.  그리고 아이콘은 모두 통일 하여 조잡하기 않아 보이고 최대한 단순한 디자인(Flat)하게 바꿨습니다.

구글 지도  V2 업데이트 

  • 기존 안드로이드 구글 API를 V2로 변경 하였습니다. 이전 버전보다 더욱 향상된  UI/UX를 경험 하실 수 있습니다. 

그외

  • 그외 다수의 버그와 좀 더 디테일한 부분들을 수정했습니다.

그리고 이제 개인 블로그를 통해 부산버스 앱에 관한 공지를 했었는데, 부산버스 앱 블로그(http://busanbus.tistory.com)를 개설하여 운영 하기로 했습니다.

사용자와의 원활한 소통을 위한 것이며, 불편한점 있으면 언제 든지 댓글을 남겨 주시면 감사드리겠습니다.

부산버스 3.0 버전 개발 진행 안내

안녕하세요.

부산버스앱 개발자 김민수입니다.

부산버스앱을 새롭게 개편하기위해 버전 3.0 기획을 구상중입니다. 

새로운 UI구성과 디자인, 좀 더 정확해진 도착정보에 크게 중점을 둘것입니다.


직장을 다녀 주말밖에 시간이 나지 않다 보니 기획후 약 1~2개월 정도의 개발기간을 예상하고 있습니다.



그래서 저 혼자만 구상하는것 보다 현재 사용중이신분의 의견은 물론

개발에 같이 참여 하실 분들이나, 또는 관련 기술이나 디자인 리소스를 제공 해주실 분들도 함께 찾고자 합니다


댓글을 통해 의견주셔두 되구요, 저와 함께 하실 분들은 아래 메일을 주시면 감사드리겠습니다.



부산버스앱은 저 혼자의 것이 아닌 여러분의 것! 여러분과 함께 만들어 나갔으면 좋겠습니다.

    1. 4 수정

기존 2.x버전 체제를 유지하도록 하겠습니다. 죄송합니다.

부산버스앱 URL Scheme 공개

부산버스앱 URL Scheme 연동

 

 

모바일 애플리케이션 및 브라우저에서 부산버스앱을 실행시키는 custom URL scheme을 사용해보세요.

“http://”, “ftp://”, “market://” 과 같은 문자열을 url scheme 이라 부릅니다.

url scheme을 통해 앱이 실행되는 방식은 다음과 같습니다.

1) 웹페이지에서 하이퍼링크 클릭시 url scheme이 system에 전달됨
2) system에서 전달된 url scheme을 보고 실행가능한 앱이 있는지 확인
3) 해당 url scheme을 받을 수 있는 앱이 있다면 앱을 실행시키며 이 url을 함께 전달
4) 앱이 실행되면서 url에 포함된 내용을 참조해서 특정 기능을 수행함

※ 웹 페이지에서 url scheme을 이용해 부산버스앱을 실행하는 경우, 앱이 미설치된 경우의 예외처리를 구현해야 합니다.

 

1. URL 스킴 구성

 

기본 형식

부산버스앱을 실행시키기 위해서는 다음과 같은 형식의 custom url을 구성해야 합니다.

 

 

 busanbus://명령어/detail?옵션

 

 

 

 

2. URL 스킴 적용 예제

 

앱 실행

 

명령어: home

 

Sample

busanbus://home

 

 

특성 버스 정류소 정보 호출

 

명령어: stop

파라미터=옵션: busstop=xxxxxx(버스정류소 번호 5자리)

 

Sample

busanbus://stop/detail?busstop=05060

 

 

특정 노선의 정류소 정보 호출

 

명령어: line

파라미터=옵션: nosun=xxxxxx, uniqueid=xxxxxx, ord=xxxxx, busstopname=xxxxx, updown=xxxxx

 

Sample

busanbus://line/detail?nosun=xxxxx&uniqueid=xxxxx&ord=xxxxx&busstopname=xxxxx&updown=xxxxx

 

 

 

 

3. 앱 미설치 시 예외 처리방법

 

시스템 오류메시지를 숨기기 위한 iframe 처리 등이 필요할 수 있습니다.

intent scheme을 이용하면 앱 미설치시 자동으로 마켓으로 이동하므로, 좀더 단순한 처리가 가능합니다.

intent scheme을 이용한 웹 페이지 구성 예는 아래와 같습니다.

 

 

<html>
 <head>
     <meta http-equiv=”Content-Type” content=”text/html; charset=UTF-8″>
   <meta name=”viewport” content=”width=device-width”>
 </head>
 <body>
     <h2><a id=”applink” href=”busanbus://stop/detail?busstop=05060″>05060노선 조회</a></h2>
    </body>
</html>

 

 

부산버스앱이 설치되어 있지 않거나, 구버전이어서 호출이 가능하지 않은지는 아래와 같이 확인이 가능합니다.

 

 

Intent intent = new Intent(android.content.Intent.ACTION_VIEW, Uri.parse(“busanbus://home”));
intent.addCategory(android.content.Intent.CATEGORY_BROWSABLE);
                       
PackageManager pm = getPackageManager();
boolean isInstalled = !pm.queryIntentActivities(intent,
PackageManager.MATCH_DEFAULT_ONLY).isEmpty();

 

 

 

 

부산버스 2.1.1 업데이트 안내

100만 부산버스앱 사용자 여러분. 개발자 김민수입니다.

드디어!! 부산버스앱이 버전 2.1.1로 업데이트 되었습니다.

업데이트 사항은 말도많고 탈도 많았던 최신의 노선데이터가 적용되었습니다. 

또한 버그 리포팅에 해주신 버그들을 수정하였스며, 그 외 좀 더 편리한 사용을 위한 UI가 변경 되었습니다.

 

이전 버전에 도착정보가 부정확 하셨다면 꼭 업데이트 하시길 권해드립니다.

 

▶최신버전 업데이트 하기

 

▶직접 설치:cfile24.uf.1849604250BCDB5D09BDAD.apk

 

 

이제 2012년도 한달도 남지 않았네요. 마지막 12월 마무리 잘 하시고 부산버스앱은 2013년에도 쭉~ 지원 할 예정입니다.

 

크리스마스도 얼마 남지 않았는데, 지인들에게 따뜻한 말과 정성이 담긴 카드한장 써보시는것은 어떨까요?

 

 

 

개발자 김민수 드림.

 

 

 

실시간 도착정보 장애 발생에 대해 사과 드립니다.

100만 부산버스앱 사용자 여러분.

요즘 들어 실시간 도착정보에 대한 문의가 급증 하고있습니다.

실시간 도착정보 장애 발생에 대해 사과 드립니다.

바쁘신 출/퇴근길, 등/하교길, 급한 약속등에 좀더 편리한 생활을 하기 위해 실시간도착정보를 제공 해드리고 있는데, 

정보가 불일치 하여 오히려 불편을 끼쳐드린점  대단히 죄송스럽게 생각 하고 있습니다.

그래서 이번에 크게 마음을 먹고 정말 바로된 도착정보를 사용자들에게 제공하기위해 부산시와 협의중입니다.

조금 불편 하시더라도 도착정보에 대해서는 참고사항으로만 이용 해주시길 바라며 업데이트를 통해 더 큰 보답을 해드리겠습니다.

-부산버스앱 개발로 대머리가 되고 있지만 앱 사용자분들의 행복한 모습을 보면 행복해지는 개발자 김민수 드림.

최신 노선데이터 버전 2.1.0 업데이트 안내

85만 부산버스앱 사용자 여러분. 개발자 김민수입니다.




부산버스 앱이 버전 2.1.0이 업데이트 되었습니다.


최신의 노선데이터가 적용 되었으며, 최신 단말기 및 O/S에 대응 하도록 UI를 수정 하였습니다.


 


부산시에서 서비스하는 BIMS시스템에서 도착정보를 받아 오기 때문에 약간의 오차가 발생 하는것에 대해 어플리케이션에서 처리가 불가능 합니다.


부산시와 협의하여 좀더 정확한 도착정보를 제공 하도록 노력 하겠습니다.


 


 




▶최신버전 업데이트 하기


 


▶직접 설치cfile24.uf.1462E04B50701C952AF6C5.apk







개발자 드림.