# 어디다 올릴까 하다가 직접적인 개발이야기도 아니고 (간접적이긴 하지만), 사용기에 더 가까워서 이곳에 올립니다.



개인 사정상 한글 입력기를 만들고 있는데, 간간히 짜증나는 부분이 있어 푸념을 좀 늘어 놓습니다.


1. 이걸 시작한 계기는 google tv (settop형) 를 하나 들여 놓으면서 시작되었네요. 

 원래 tv자체는 보지 않아서 대충 개인 서버에 넣어 놓은 동영상을 google tv settop으로 streaming해 보고 

 덤으로 youtube등을 볼려고 생각하고 설치했는데, 설정 중에 한국어 입력이 없다는 걸 알게 되었습니다.

 뭐 이름 없는 업체도 아니고 소니꺼 였는데... 중문, 일문 입력은 다 있는데 한글은 없더군요. 

 짜증 게이지가 1 증가했습니다. 북미버전이라 그런가 하고 그냥 맘속으로 소니를 깠지요.

 참고로 전 북미에서 살고 있습니다.

 

2. google tv market을 검색해 봅니다. 한글 입력기는 없네요. 

 짜증 게이지가 다시 1 증가 했습니다.

 

3. 대충 폰용 market에서 입력기를 받아 apk형태로 설치해 봅니다. 설치하자마자 계속 crash가 나네요.

 아무래도 직접 하나 만들어야 할 것 같습니다.

 다시 짜증 게이지 증가합니다.


4. 위 google tv settop으로 하려던 것은 적당한 video player가 없어서 실패합니다.

 제대로 자막이 지원되는 플레이어가 없네요. 특히 SMI는.. 

 phone용 market에서 받은 SMI 지원되는 플레이어는 대부분 동작이 안되고 (google tv는 아직까지 NDK가 지원되지 않습니다)

 Soul Movie는 설치되고 동작도 하지만 google tv에서는 해상도를 제대로 맞춰 보여주지 못하는 문제가 있습니다.

 기본 비다오 플레이어는.. 소니는 외부자막 같은거 지원해준 적이 없다는... 플스에서도.. 소니잖아? 안될거야 아마..

 

 그래서 이번엔 아예 JB가 올라간 android tv box를 구해 설치해 봅니다. (google tv는 3.2가 올라가 있습니다.)

 그런데 이 녀석도 한글 입력기가 없습니다. "아니 이녀석도?" 싶었습니다. (중문/일문 입력기는 당연하다는 듯이 있고..)

 다시 짜증 게이지가 증가 합니다.

 

5. phone용 한글 입력기를 android tv box에 설치해 봅니다. 

 crash는 안나지만 h/w keyboard를 제대로 지원 못해 사용할 만한 수준이 아니네요.

 다시 짜증 게이지 증가합니다.


6. android tv box의 경우, 원래의 목적에는 그런데로 부합했습니다만, 

 아직 최적화가 덜된 것인지 streaming, 특히 ethernet port를 이용해서 하는 것은 성능상에 문제가 있네요.

 영상재생 초기에 렉이 아주 심하게 걸리는 경우가 자주 나타납니다. 아무래도 드라이버단이나 아랫쪽 문제 같더군요.

 그래서 다시 다른게 없나 찾아보다가 android x86 에 대해 알게 되었습니다. 마침 JB 이미지도 올라와 있더군요.

 테스트 삼아 받아서 돌려보았습니다.  그런데... 여기도 한글입력기가 없네요. -_-..

 

 이쯤에서야 뭐가 문제였는지 알게 되었습니다. android x86은 AOSP를 기반으로 작업을 하고 있는 프로젝트고 

 android open source 자체에 한글입력기가 기본으로 포함되어 있지 않다는 거지요. -_-...

 중문입력과 일문입력은 포함되어있고 한글입력은 원래 없었다는.. 

 구글에서 안드로이드쪽 작업하는 분들 중에 한국분은 없었나봅니다.

 짜증 게이지가 쉬지 않고 올라가더군요. 

 

7. android x86의 경우도 제가 쓰려는 목적으로 쓰기에는 몇가지 문제가 있네요. 

 제가 쓰려는 목적으로는 심하지 않습니다만, 아직 정식 릴리즈가 아닌지라 프로그램이 죽는 경우가 꽤 있고

 아직 지원 안되는 기능이 좀 있습니다. 그리고 결정적으로 기본 포함된 codec이 HD동영상을 플레이하지 못합니다.

 다행히 그냥 동영상 같은 경우, MX player등을 이용하면 문제가 없습니다만, youtube같은 iptv타입의 앱에서는 문제가 됩니다.

뭐 youtube말고는 아직 제대로 동작하는 앱이 없는 것  같긴 합니다만...

 해상도만 HD 해상도 밑으로 다시 설정해주면 동영상 play자체는 됩니다만, 그 정도로는 만족하기 힘듭니다.

 여기서 짜증 게이지는 잠깐 쉬고...


8. 결국 어쨌든 필요하니 한글 입력기를 하나 만들기 시작합니다. 뭐 기본적인 기능은 관련된 일을 해봐서 대충 알아서 만들어 봅니다.

 물론 맨땅에 헤딩하는 것은 아니고 sample로 들어 있는 soft keyboard code를 기반으로 작성합니다.

 그런데.. C만 쓰다가 JAVA를 쓰려니, 언어가 다른점이 꽤나 많네요.

 개인적으로 C에서 struct constant array를 정의해서 작업하는 짓을 꽤나 하는 편이고,

 한글 입력기도 그렇게 만드는 편이 편한 프로그램에 속하는지라 JAVA에서도 가능한가 살펴보니 안되더군요.

 짜증게이지가 또 다시 약간 증가했습니다만, final type의 class를 쓰는 걸로 대충 타협을 봤습니다.


9. 한글입력기를 열심히 (라고 쓰고 "어쩌다 생각 나면" 이라고 읽는...) 작성합니다.

 그런데 code내에 comment를 작성하다가 이상한 것을 발견합니다.

 Eclipse에서 분명히 Korean이라고 spell이 틀리지 않게 적었음에도 불구하고 spell checker에 걸려 밑줄이 걸립니다.

 혹시나하고 Japanese를 써보는데, 이건 안걸리는군요.

 이쯤되니깐.. 짜증보단 진지하게 생각해 봅니다. 한국이 왕따인건가... 

 일본을 갈라파고스라고 놀릴 일이 아니다 싶어지더군요.

 

10. 작업하던 것은 그런대로 끝나갑니다. 안드로이드의 입력기 지원 부분 디자인은 상당히 잘되어 있고 

 샘플 코드도 잘 만들어져 있어서 큰 어려움 없이 곧 끝날 것 같습니다. 

 뭐 딱 기본 기능만 하는 프로그램으로 만드는지라 (심지어 candidate view도 없애고..) 딱히 어려울 부분은 없어서 더 쉬웠던 것이겠지만..

 그런데 아직도 제가 원하는 기기 셋업은 하지 못했네요. 에효..

 

이렇게 대충 끝나가다 보니... 그동안 짜증 났던게 생각나서 좀 정리하려고 이렇게 푸념글을 씁니다.