Android 기술 Q&A 
Q&A 게시판에 질문을 남기신 글에 대한 답변/덧글/쪽글에 대한 Push 메일 서비스를 받고자 하시는 분들은
☞ Push 메일 서비스 공지를 필독하시기 바랍니다.
안드로이드 플랫폼상의 문자입력기 관련 질문
작성자
작성일 2008-06-03 (화) 16:34
ㆍ추천: 0  ㆍ조회: 11425      
IP: 221.xxx.120

■ [simplecode] 안드로이드 플랫폼상의 문자입력기 관련 질문 (2008-06-03 13:35)

안녕하세요.
 
얼마전 kandroid.org 사이트를 알게 되었습니다.  저만 해도 아날로그 세대라,
급히 몇가지 질문드리고자 연락처 적어서 들풀님께 E-mail 보냈는데, 연락이 없으시더군요. 

요즘 바빠서 언제 시간내서 메일 보낼려고 했는데....
이곳에 그냥 제 의견을 달도록 하겠습니다..~

저는 안드로이드 플랫폼상의 개발에 대해서는 전혀 모르는 문외한 입니다. 
질문의 수준이 한심하더라도 이 점을 양해 부탁드립니다. 
 
● 문자입력기 관련

- 들풀님이 올려주신 한글입력기 예제 소스가 있는 것을 보았습니다. 
(소스코드 읽을 능력은 안되지만 진심으로 감사..) 또한 1차 개발자대회 당선작 중에
문자입력기가 있는 것도 kandroid 사이트를 통해서 보았습니다. 
현재 안드로이드 상에서는 문자입력기(한글, 외국어 모두)가 이미 내장되어 있는 것으로
생각하고 있었는데 틀린 건가요? 
문자입력기 자체도 어플리케이션으로 개발할 수 있는 것인가요?
 
먼지 질문이 아주 훌륭하시다는 말씀 먼저 드리겠습니다.
 
1. Key Event
 
안드로이드에서 현재 처리하는 Key 이벤트는
현재는 일반적인 키보드 자판에서 사용되는  표준 101 Key의 부분 집합에 속하는(전부는 아니지만..)
약 80개의 Key Event를 처리할 수 있는 구조를 지원하고 있습니다.
 
2. Font  & Glyph
 
더불어, 안드로이드에는 Droid Font가 탑재되어 있는데, 이곳에는 전세계 언어에 대한
글자가 포함되어 있기 때문에 unicode에 대한 화면 출력이 가능합니다.
 
3. Input Method Environment
 
하지만, 이러한 Key Event를 문자의 입력이나 출력으로 결합시켜주는 입력환경은
현재 영문밖에는 지원이 안되고 있습니다.
 
4. 기타
 
추측컨데, 아직 영문만 지원하는 이유는 아마도 이것을 폰 제조사의 몫이라고 생각하는 것이거나,
아니면 안드로이드의 제반 인프라가 모두 정리된 후에 i18n이란 이슈차원에서 포괄적으로 해결하기
위해 뒤로 미루고 있는 듯 합니다.
 
더불어 제 개인적으로는 문자입력기를 애플리케이션 레벨에서 만들어 질 수 있도록 해보고 싶은
욕구가 있으나, 여러가지를 시도해 본 끝에 현재시점에서는 불가능하다는 생각을 하였습니다.
문자입력기라 함은 결국, 모든 App.에서 사용되는 입력환경을 대체할 수 있어야 하는데...
안드로이드 Widget Library 레벨에 탑재되지 않고는 불가능할 듯 하더군여..
하지만, 최초의 안드로이드 폰이 출시된 이후, 안드로이드 소스가 공개된다면 충분히 지원가능할 듯 합니다.
 
 
- 문자입력기가 내장되어 있는 문자입력기가 있다면 어떤 정도인가요? 
단지 MS Mobile window 에서 제공하는 것처럼 스크린상의 Qwerty 영문자판 정도인가요?
 
네 그렇게 보시는게 맞는듯 합니다.

문자입력기 자체도 개발할 수 있다면,
그 문자입력기가 데모용으로 단지 특정 문자입력기 어플리케이션상에서만 작동하는 형태로만 가능한가요? 
아니면, 범용하게 모든 프로그램(예. 메모장, 웹브라우저, 등등...)에서 사용할 수 있도록
MS-IME 처럼 개발할 수 있나요?  들풀님께서 올려주신 소스는 해당 프로그램에서만 작동하는 것인가요,
아니면 모든 프로그램에서 작동할 수 있는 것인가요?
(죄송..소스코드 돌려볼 능력도 없어서 질문 드림)
 
제가 올린 것은 안드로이드 App.의 EditText (입력창)에 확장시킬려고 만들어 본 것인데,
이미 설치된 애플리케이션에는 적용 불가능 합니다.
몇가지 편법(?)으로 다양한 곳에 적용은 해 보았는데...Webkit이라는 웹브라우저의 입력창은 브라우저 자체에
문제가 좀 있어서 해결이 안되더군여..

 
● 개발자대회 관련

개발자대회는 2008년 상반기와 하반기 2번에 나누어 이루어진다고 되어 있던데,
이번에 50개 예선 당선작은 상반기 개발자대회에서 당선된 것인가요? 
2008년 하반기 개발자대회는 상반기 대회와 마찬가지로 다시 불특정 다수의 개발자를 대상으로 하나요?

현재 진행되고 있는 개발자 대회는 1차인데 예선이 끝나고 본선이 진행중인 것으로 알고 있습니다.
물론 본선은 예선을 통과한 50개 당선작에 한하여 출품자격이 있습니다.
더불어 2차 개발자 대회는 잘은 모르지만, 당연히 불특정 다수의 개발자를 대상으로 하리라고 여겨집니다.
 
궁금한게 너무 많지만 생각나는대로 몇가지 질문 올립니다. 
문자입력에 관해 관심을 가졌던 분이라면 이미 다 알고 계시는 수준의 내용이라 생각됩니다. 
 
답글 간절히 기다리며, kandroid 여러분들의 많은 지도편달을 부탁드립니다.  감사합니다. 

답변이 좀 되었길 바라겠습니다.
감사.
이름아이콘 invain
2008-06-03 17:20
참고가 될지 모르겠는데... keyboard & keypad의 경우에는 keycode을 알아내기 위해 간단히 C코드를 작성하여  해당타겟보드의 키입력이 안드로이드에서 무엇으로 받아들이는지 알겠는데, TouchScreen는 한마디로 미치겠더군요... 바이너리 구조인 안드로이드 플랫폼에서 터치스크린의 이벤트를 어떻게 받는지 내부 동작구조를 알고 싶은데.. 혹시 실제보드에서 경험 있으신분들은 다양한 노하우가 있었을거 같은데 공유 댓글 부탁드려요...
   
이름아이콘 들풀
2008-06-03 17:46
if

인베인님이 리눅스 커널에서 socket write/read, key input, mouse event, touch event 를
처리하는 방식 정리해 주시면

then

제가 그 위에 app. event handler 정리할께여.

ㅎㅎㅎ
   
이름아이콘 invain
2008-06-03 19:26
들풀님 저를 설마 (*)맹으로 아시는 거 아니시죠?? ^^ 유선상으로 위의 내용에 대해 구체적 설명을 드렸아오니 들풀님만의 멋진 노하우가 담긴 답을 기대합니다요.....
   
이름아이콘 simplecode
2008-06-03 21:10
들풀님, 빠른 답변에 감사드립니다.  한가지만 추가로 질문드리면, Webkit이라는 웹브라우저의 입력창만 빼고는 다수의 어플리케이션에서 문자입력이 가능했다는 의미로도 들리는데 맞는지요?  
그렇다면 그것만으로도 대단한 성과가 아닌가 하는데요.
   
이름아이콘 들풀
2008-06-03 23:58
약간의 편법이 있지만...나름대로 가능성은 있습니다..~
어쨌든 안드로이드 소스만 fully 오픈되면 100% 가능하죠..~
   
이름아이콘 invain
2008-06-03 23:59
들풀님~  위의 의 내용에 표현은 " webkit 컴파일 시도 & 테스트 For X86 without ARM"이라고 하셔야 오해가 없을것 같아요... 라스베가스에서는 상상도 못할 일이거던요...^^
   
이름아이콘 들풀
2008-06-04 00:33
오호...그건 아니구여.. webkit을 api 레벨에서 wrapper를 씌워서..입력기 창을 대체해 보았는데..
문제는 webkit에서 입력 event가 발생할때 해당 edittext창을 hooking해서 한글 입력이 가능할 수
있도록은 해 봤는데, 해당 입력기가 deactive되면서 webkit에 해당 text를 전달해야하는데..
그 부분의 입력을 오류가 있더군여..ㅎㅎ
   
이름아이콘 들풀
2008-06-04 00:34
여러분 인베인님이 날마다 저보고 webkit을 arm용으로 cross compile하라고 구박합니다..
살려주세여..~
   
이름아이콘 simplecode
2008-06-04 18:53
들풀님과 인베인님 말씀은 너무 어려워요.. 대체 뭔 뜻인지..
   
이름아이콘 simplecode
2008-06-04 19:42
조금 쉽게 해설해 주시면 안될까요..
   
이름아이콘 들풀
2008-06-05 07:31
쉽게 설명하자면...
안드로이드에서선 다양한 app.에 대해서 API 레벨에서 해당 app.의 자원을 접근할 수 있는
기능이 제공됩니다.
그리고 현재 default로 설치되어 있는 app.들이 그리 많이 않는 이유로
해당 app.를 api 레벨에서 새롭게 재구성을 할 수 있으며,
이런 이유로 해당 app.의 입력창을 app. 레벨에서 대체할 수 있는 가능성이 어느정도
있습니다.
단 한가지 좀 어려운 부분이 웹 브라우저의 입력창을 대체하는 것이었는데..
이것 조차도 어느정도 가능하다는게 저의 개인적인 판단입니다....
   
이름아이콘 simplecode
2008-06-05 18:05
들풀님이 올려주신 문자입력기 소스도 웹브라우저를 제외하면 다른 창에서는 범용한 문자입력이 되나요?  그렇다면 매우 희망적이라고 할 수 있을 듯..
   
이름아이콘 들풀
2008-06-06 02:05
웹브라우저에서도 거의 입력가능합니다..~ㅎㅎ
   
 
덧글 쓰기 0
3500
※ 회원등급 레벨 0 이상 읽기가 가능한 게시판입니다.
    N     분류     제목    글쓴이 작성일 조회
4953 안드로이드에 탑재된 프로그램 지우는 방법 좀 알려주세요... 2008-04-25 9115
4952 도와주세요~ 2008-05-05 8663
4951 에뮬의 system과 data를 추출할때.... 2008-05-06 8564
4950 커널 사이즈가 얼마정도 나오시나요? 2008-05-07 8604
4949 sd카드에서 데이터 가져오기에 대한 질문 2008-05-07 8804
4948 UI와 디자인에 대해서 궁금한 점이 있습니다. 2008-05-07 8353
4947 2.6.23을 zImage빌드를 하였습니다 2008-05-07 8459
4946 안드로이드에서 파일 다운로드에 관해 여쭤봅니다... 2008-05-13 9588
4945 UI이벤트 처리 질문. 2008-05-13 8474
4944 다이얼로그 허접하게 만들었습니다 참조하세요~.. 2008-05-14 8539
4943 혹시m5버전 멥에 오버레이 띄우는 방법 아시는분~.. 2008-05-15 8648
4942 Bitmap 사용하는 방법 아시는분 계신가요??? 2008-05-16 8757
4941 loop back 마운트에 대해서 2008-05-16 8514
4940 문자를 이용하려 하는데... 2008-05-19 8580
4939 안드로이드에서의 한글 지원은? 2008-05-19 10624
4938 안드로이드를 띠울때 2008-05-19 8577
4937 포팅 관련 질문입니다. 2008-05-19 8547
4936 포팅관련 framebuffer에 관하여.. 2008-05-19 11447
4935 service를 이용한 네트워크 접속, 어떤가요? 2008-05-20 8855
4934 Spinner관련해서요.ㅠ 2008-05-20 9526
4933 질문이 있습니다. 2008-05-20 8529
4932 Re.. 수정해서 다시 올려욤 2008-05-21 14451
4931 메시지박스띄우기 2008-05-21 10942
4930 multicast programming 2008-05-21 10532
4929 가장 먼저 실행되는 Activity 2008-05-23 9138
4928 Dialog View 에서 activity 로 Dialog의 종료된 상태를 넘겨주.. 2008-05-23 10656
4927 Bitmap형식의 이미지사이즈를 바꾸고 싶습니다... 2008-05-26 11677
4926 안드로이드 App. 메뉴에서 32번 글 VideoPlayer 2008-05-28 17918
4925 포팅시 binder 문제에 대하여.. 2008-05-30 12911
4924 파일첨부가 않되어 밑의글에 이어 추가해요~ 2008-05-31 8490
4923 localhost로도 접속이 안되는데 왜 그럴까요?? 2008-06-01 8626
4922 invain님께.. (리플에 대한 내용입니다) 2008-06-02 9283
4921 안드로이드에서 DataBase접근하는 방법에 대해서.... 2008-06-02 15372
4920 안드로이드 플랫폼상의 문자입력기 관련 질문.. 2008-06-03 8505
4919 안드로이드 플랫폼상의 문자입력기 관련 질문.. 2008-06-03 11425
4918 간만에 또 막히는 곳이 있어서 질문올립니다. 2008-06-03 8515
4917 "Hit" testing on a View(MapView) 2008-06-04 14096
4916 들풀님의 Safari 분석 자료에서 질문 있어요... 2008-06-04 8826
4915 invain님~ 두가지 질문이 있습니다` 2008-06-05 10248
4914 에뮬레이터 내장 폰북의 DB에 연동한 폰북에 사진등록 방법 질.. 2008-06-05 11424
4913 안드로이드 소스 상에서의 폰트 변경 2008-06-05 11367
4912 contact database에 photo 추가 관련 2008-06-06 11400
4911 Google IO: Android 50 Q&A 2008-06-06 8719
4910 다시 외부 DB 접근하는 것에 대해 여쭤봅니다. 2008-06-09 9798
4909 오류가 나는데 이유를 잘 몰르겠네요.-_-;; 2008-06-09 14254
4908 다이얼로그 질문이 있습니다. 2008-06-10 8557
4907 들풀님께 여쭈어봅니다 ^^ 2008-06-12 8515
4906 invain님께 의견을 듣고 싶습니다. 2008-06-14 8758
4905 폰에 그림이나 문자 표시하는법. 2008-06-16 8438
4904 맵 소스는 어디서 볼 수 있나요? 2008-06-17 8553
12345678910,,,101