이번에 우연히 알게 된 사실인데,
안드로이드 Gmail의 경우 첨부화일 형식이 gif, png, jpg, xls, pdf, txt, html, mp4, avi, 3gp, amr, wma, mp3 만을 지원한다고 하네요.
그 외 확장자를 가진 첨부화일은 다운로드, 미리보기 박스가 생성되지 않더군요.
이를 해결하기 위해 Astro 앱을 설치하고, '환경설정/브라우저 다운로더 활성' 쪽에 체크하면
Gmail에서 지원하지 않는 첨부화일의 경우에도, 다운로드, 미리보기 박스가 생성됩니다.
제가 부딪힌 문제는그 다음부터인데,
gpx 라는 확장자를 가진 트랙로그 화일의 경우, 다운로드를 클릭하면
폰에 gpx를 오픈할 수 있는 여러개의 앱이 있음에도, 바로 Oruxmaps이 오픈되며 첨부된 gpx 화일을 Oruxmaps에서 보여주더군요.
제가 원하는 것은 일반적인 화일매니저 쪽에서의 UI와 같이, gpx를 오픈할 수 있는 여러개의 앱을 보여주고, 선택할 수 있게 되기를 바랬습니다.
이 문제가 Astro 쪽 설정과 관련이 된 것 같아,
Astro쪽 환경설정과, Astro 화일매니저의 apk 화일을 구해 디컴파일해서 Androidmanifest.xml도 뒤져보고 했는데,
제가 안드로이드쪽을 전혀 몰라서 뭐가 뭔지 감을 잡을 수 없군요.
첨부된 gpx 화일을 Oruxmaps가 아닌 다른 앱(예로 Locus 라든지)으로 실행시킨다든지,
gpx 화일 다운로드 박스를 눌렀을 때, 여러개의 앱을 보여주고 선택할 수 있게 하려면 어떻게 해야 하나요?
(물론, 미리보기 박스를 눌러 download 폴더에 저장한 후 다른 앱으로 불러들이는 차선책이 있기는 합니다만...)
첨부화일로 음악화일인 .flac로 테스트해보니,
다운로드 박스를 클릭하면, 앱 선택 메시지박스가 팝업되긴 하는데..
노트, 파일편집기, Locus, Ploaris 밖에 없군요. 정작 음악화일 플레이어인 PowerAmp, 뮤직, andLess 는 포함되어 있지 않네요.
아마 flac 화일을 문서화일로 인식해서 위와 같은 앱을 포함한 팝업 선택창을 올리는 것 같은데...
이런 부분들을 조정하려면 - 앱 선택 창에 원하는 앱을 추가하거나 제거하려면 - 어떻게 해야 하는지요?
고수님들의 한수 지도 부탁드립니다 oRz
아, 제가 아는 분이죠?^^; 원하시는 방법을 찾았습니다.
스마트폰 설정창에서 애플리케이션관리->다운로드->Oruxmaps 화면에서 아래쪽의 기본작업지우기 버튼을 클릭하시면 됩니다.
저는 그렇게 하니까 원래대로 초기화되어 Locus 와 Oruxmaps 선택하는 팝업창이 뜨네요.
그건 그렇고, OsmAnd 는 쓸만한가요? 네비게이션에 한글음성안내 기능도 넣었는데...^^;
아.. 매발톱님^^
저는 아예 Oruxmaps 기본 작업지우기 버튼 자체가 비활성화되어 있더라고요.
그래서 Oruxmaps 지워보고 별 짓(?)을 다해봐도 변화가 없습니다 -_-
사실, Astro 쪽에 문의했는데 매발톱님과 똑같은 답변을 해주길래, 니네 실제로 테스트해보고 답변하는거냐 하고.. 뭐라 그랬는데...
이거 혹시 제 기기만의 문제인지도 모르겠군요.
혹시 폰, 루팅해서 사용하고 계신가요?
굳이 Astro 설치 안해도 gpx 화일의 경우, 다운로드 박스가 생성되어 있지 않은지요?
제 경우는 Oruxmaps 삭제하면, 다운로드 박스 클릭시, Astro 다운로더 라는 박스에 '화일열기', 디렉토리 표시, 취소' 3개의 버튼이 나타나는 걸로 봐서 제어권이 Astro 쪽에 있는 것으로 보입니다.
안드로이드 펌웨어 버젼이 어떻게 되는지요?
참.. OsmAnd 업그레이드가 있었습니까? 저는 그냥 지도보기 용도로만 사용해서^^
제 폰(넥서스원, 2.3.3)이 루팅되어 있긴 한데, 언루팅을 하고 해도 마찬가지로 잘 됩니다.
그런데, 제가 다른 기계(갤럭시s 2.2 프로요) 에서 테스트해보니 장다리님과 같은 증상이길래
원인을 찾다가 마켓에서 Locus 를 검색하여 수동으로 업데이트해주니 되더군요!!!
Astro 나 Oruxmaps 가 아니라 Locus 문제였습니다.
그리고, OsmAnd 정식버전에 이미 포함되어 있는 tts 기능을 그동안 업그레이드하지 않고 있다가
얼마전에 삼성 모바일 tts 를 인터넷에서 구해 설치해보니 욕심이 생겨 기능을 추가했습니다.
설치방법은 전처럼 제글을 참고하시면 되는데,쓸만하지는 않구요, 그냥 재미로 한번 해볼만합니다.^^;
어...
Astro 설치 안했는데도, gpx 가 첨부된 화일의 경우 다운로드 박스가 생성된다는거죠?
그럼 안드로이드 펌버젼에 따라 다른지도.. 저는 갤스2 진저 2.3.5인데...
삼성측에 문의했는데.. 답변이..'안드로이드 Gmail의 경우 첨부화일 형식이 gif, png, jpg, xls, pdf, txt, html, mp4, avi, 3gp, amr, wma, mp3 ' 만 지원해서 gpx 화일의 경우 다운로드 박스가 안 생긴다고 하더라고요. 그래서 하는 수 없이 Astro를 설치했는데...
이거 점점 더 골치 아프게 생겼습니다.
제경우 Locus 새로 설치하거나 그런 것과는 전혀 관계가 없네요. 아무래도 진저 펌웨어 문제인지도 모르겠습니다.
아.. 그동안 장다리님 말뜻을 제가 잘못 이해했었네요. 장다리님 말씀대로 안되는게 맞는 거 같습니다.
저도 같은 현상입니다. 다운로드하면 Oruxmaps 가 자동으로 실행되네요. 다운로드해놓고 Astro 에서 열면 되지만...
그리고, 해결책을 찾았습니다. 아마도 Locus 개발자에게 연락해서 AndroidManifest.xml 파일에 다음 내용을 추가하고 제대로 처리해 달라고 하면 될 거 같네요.
(OsmAnd 에 넣어서 확인했습니다. 참고한 싸이트는 http://code.google.com/p/opengpx/source/browse/trunk/AndroidManifest.xml?r=70 입니다)
<intent-filter>
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.DEFAULT" />
<category android:name="android.intent.category.BROWSABLE" />
<data android:scheme="file" />
<data android:mimeType="*/*" />
<data android:pathPattern=".*\\.gpx" />
<data android:host="*" />
</intent-filter>
역시 AndroidManifest.xml과 관련이 있었군요. 일단 개발자에겐 요청을 해보겠습니다.
짬 나시면 locus apk 화일 apktool로 디컴파일하셔서 위 코드 추가해서 테스트해봐주십시오^^
http://forum.asamm.cz/viewtopic.php?f=25&t=1250
위 링크 페이지에 베타버젼 apk가 있을 겁니다.
저도 함 시도는 해보겠습니다^^
Locus의 AndroidManifest.xml 에
<intent-filter>
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.DEFAULT" />
<category android:name="android.intent.category.BROWSABLE" />
<data android:mimeType="text/plain" />
<data android:scheme="file" />
<data android:scheme="content" />
<data android:pathPattern=".*\\.gpx" />
</intent-filter>
이 부분이 있긴 하네요
Locus와 OruxMaps의 AndroidManifest.xml 화일 내, gpx 관련 필터가 아래와 같던데... 어떻게 다른지 설명 부탁드립니다^^
Locus
-<intent-filter>
<action android:name="android.intent.action.VIEW"/>
<category android:name="android.intent.category.DEFAULT"/>
<category android:name="android.intent.category.BROWSABLE"/>
<data android:mimeType="text/xml"/>
<data android:scheme="file"/>
<data android:scheme="content"/>
<data android:pathPattern=".*\\.gpx"/>
</intent-filter>
-<intent-filter>
<action android:name="android.intent.action.VIEW"/>
<category android:name="android.intent.category.DEFAULT"/>
<category android:name="android.intent.category.BROWSABLE"/>
<data android:mimeType="text/plain"/> <data android:scheme="file"/>
<data android:scheme="content"/>
<data android:pathPattern=".*\\.gpx"/>
</intent-filter>
Oruxmaps
-<intent-filter>
<action android:name="android.intent.action.VIEW"> </action>
<category android:name="android.intent.category.DEFAULT"> </category>
<category android:name="android.intent.category.BROWSABLE"> </category>
<data android:scheme="file"> </data>
<data android:mimeType="*/*"> </data>
<data android:pathPattern=".*\.gpx"> </data>
<data android:host="*"> </data>
</intent-filter>
제가 아는 부분만 설명드리죠. 잘못된 부분은 지적해 주시기 바랍니다.
먼저 intent filter 에 대해서는 안드로이드 개발자 싸이트의 http://developer.android.com/guide/topics/intents/intents-filters.html 페이지를 일독하기를 권합니다. 저도 이번에 많이 배웠습니다. ^^;
Locus 의 .gpx 파일에 대한 intent filter 의 mime 형식은 언급하신 것 외에 "application/gpx" 가 있습니다.
그래서, Astro 파일매니저에서 gpx 파일을 클릭했을 때 gpx 에 대한 mime 형식이 지정되어 있지 않으므로
scheme 은 file 이고 mime 형식은 application 에 파일확장자(gpx)를 붙여 Locus 가 선택될 수 있도록 합니다.
이것은 Astro 설정->파일확장명편집 에서 gpx 를 위 세 가지 외에 다른 형식으로 지정하면 gpx 파일을
선택했을 때 동작하지 않는다는 것으로 확인할 수 있습니다.
그런데, Gmail 에서 첨부파일을 다운로드할 때에는 정해진 mime 형식 이외의 파일인 경우에
일반 http 웹 프로토콜의 바이트스트림 다운로드에서처럼 "application/octet-stream" 으로 처리하는 것 같습니다.
그래서, Locus 의 AndroidManifest.xml 파일에 굳이 엄격하게 mime 형식을 지정한다면 다음과 같은 한 줄을 추가하면 될 것 같습니다. 하기사 Oruxmaps 처럼 mime 형식을 "*/*" 로 하여 아무 파일이나 다운로드할 때 선택하도록 하는 것도 문제겠지요.
(아래 형식은 OsmAnd 로 테스트해봤는데 잘 되는 걸 확인했습니다. 그런데 scheme 을 http 또는 https 로 바꿔도 되는지는 모르겠네요)
<data android:scheme="content" android:mimeType="application/octet-stream" />
네. 덕분에 개략적인 이해가 되었습니다.
Oruxmaps에서 gpx 화일의 mime 형식을 "*/*" 해두었기 때문에, Astro '브라우저 다운로더 활성' 옵션에 의해
Gmail에서 지원하지 않는 형식의 첨부화일에 오픈된다는 것이군요.
그리고 좀더 엄격하게 mime 타입을 지정한다면 위에 언급한 "application/octet-stream" 으로 정해주면, Locus로도
gpx 화일을 가져올 수 있다는 내용이네요. Locus 개발자 얘기로는 그렇게 해도 gpx 화일을 바로 Locus에서 보여주는 부분에는 조금 문제가 있는 것 같은 뉴앙스가 있더군요. 따로 저장해서 import 해서 사용하는 것이 모범답안처럼 알려주었습니다.
다시 한번 상세한 답변과 가르침에 감사드립니다^^