새로운 글
새로운 덧글

자유롭게 질의 및 응답을 할 수 있는 게시판이며 어느 누구도 답변을 달아야만 하는 의무는 없습니다. 
  • 제품설치/등록/제품 오류 문의: 설치/등록 Q&A 이용 (제품 구매 고객 한정)

본 게시판은 개발자들이 자유롭게 질문과 답변을 공유하는 게시판입니다.
* 따라서 최대한 정중하게 질문을 올려 주세요.
* 질문을 상세히 작성해 주실 수록 좋은 답변이 올라 옵니다.
* 바쁜 와중에도 답변을 주시는 분들께 감사 댓글 필수
-----------------------------------------------------------------------------------------------
안드로이드에서 shellexcute처럼 파일을 열었을 때

Intent사용해서 외부 실행가능한 앱들을 연결할 수 있게끔 해주려고 합니다.

테스트해보니까 잘 되는 것 같은데 xlsx, ppt, pdf 확장자에 대해서

기본 구글앱스(스프레트시트, 프레젠테이션, 드라이브 PDF 뷰어)들이 받지를 못합니다.

이미지 파일에 대해서 구글앱스 중에 포토, 갤러리는 문제없이 잘 받습니다.

 

그래서 미메타입을 얻었는데 연결될 앱이 하나도 없으면 아래와 같은 Exception을 뱉어냅니다. 예외처리는 하면 되지만,

미메타입을 */*로 해도  구글앱스(스프레트시트, 프레젠테이션, 드라이브 PDF 뷰어)들이 선택 목록에 없습니다.

이것때문에 기본 구글앱스가 있는데 사용자에게 서드파티앱을 설치하도록 강제하는 것도 그렇고

제가 무엇을 조치하면 구글앱스가 Intent를 받을까요?

제 디바이스에서 ES 파일 탐색기로 해당 확장자 파일 열어보면 해당 구글앱스들이 잘 나옵니다.

증상은 제 디바이스와 에뮬레이터 둘 다 테스트해도 똑같습니다.

 

intentException.png

아래는 제가 테스트해본 예제소스는입니다.

 

uses
  Androidapi.JNI.GraphicsContentViewText,
  Androidapi.JNI.JavaTypes,
  Androidapi.Helpers,
  System.IOUtils,
  Androidapi.JNI.Webkit;

{$R *.fmx}

procedure TForm1.Button1Click(Sender: TObject);
var
  Intent: JIntent;
  filename: String;
  t: JString;
begin
  filename := Edit1.text;
  Intent := TJIntent.Create;

  // Get MIME Type
  t := TJMimeTypeMap.JavaClass.getSingleton.getMimeTypeFromExtension
        (StringToJString (StringReplace (TPath.GetExtension(filename), '.', '', [])));
  if t = nil then
    t := StringToJString('*/*');

  Intent.setAction(TJIntent.JavaClass.ACTION_VIEW);
  Intent.setDataAndType(StrToJURI(TPath.GetPublicPath + PathDelim + filename),  t);
  SharedActivity.startActivity(Intent);
end;

 

 

 

 

 

번호 제목 글쓴이 날짜 조회 수
공지 [프로그래밍 강의] 2018.8~2018.11 관리자 2015.01.22 6034
공지 유용한 관련 사이트 관리자2 2014.03.20 43269
공지 본 게시판은 개발자 여러분들의 질문과 답변을 공유하는 공간입니다. 관리자 2012.01.10 84879
2098 TLocationSensor에는 안드로이드(자바)처럼 세부 설정이 없나요? [1] file 소란코더 2017.11.20 37
» FMX앱에서 던진 Intent를 Google Apps가 Intent를 받지 못합니다. [1] file Vincent 2017.11.14 72
2096 델파이 TMemoryStream.Create 에러 [1] 스카이 2017.11.17 97
2095 64bit 프로그램 시 오류내용 확인부탁드립니다. [1] file jaky 2017.11.16 66
2094 32 bit 윈도우 모드로 테스트할 때 ListView 삭제기능의 구현방법에 대해 문의드립니다. [1] 스카이 2017.11.11 56
2093 cap파일 배포시 인증 문제에 대한 자문을 요청드립니다. [1] 데브기어 2017.11.15 54
2092 FDQuery UTF8 변환문제 [2] 그아이 2017.11.14 57
2091 계속 에러 메세지가 나오는데 해결방법이 있나요?? [1] file 서동빈 2017.11.13 69
2090 TWebBrowser를 통한 JS에서 FMX앱의 Function, Procedure 실행 문의 [1] 나즈나 2017.11.10 63
2089 listview를 DB와 livebind시 바인딩된 자료변화... [1] bursil 2017.11.13 48
2088 개발모드에서는 발생하지 않는데 구글플레이에서 다운받은 앱은 강제종료되는데 설정 잘못인지요? 스카이 2017.11.11 40
2087 스트링그리드의결과를 Excel File로 출력하는 방법에 대해서 AllwaysHappy 2017.11.10 62
2086 VirtualKeyboard 관련 질문있습니다. 신우 2017.11.10 48
2085 [100%활용 세미나] RAD서버와 엔터프라이즈 커넥터를 구매하지 않고 사용가능한가요? 험프리 2017.11.10 38
2084 [100%활용 세미나] 리눅스 지원 계획을 알고 싶습니다. 험프리 2017.11.10 23
2083 앱스토아에서 심사 거절 당한 이유를 해결해주세요. [2] file 화이부동 2017.11.07 167
2082 docking or Handle 문제 문의 [1] 마이밥 2017.11.03 53
2081 mob ole 실행 에러 [1] bursil 2017.11.03 45
2080 sqlconnection 문제 [1] bursil 2017.11.02 54
2079 Android SDK platform-tools 26.0.2 설치오류 [3] file Jackim 2017.10.29 697



광고 모듈이 설치되어 있지 않아 실행을 중단합니다..