자유롭게 질의 및 응답을 할 수 있는 게시판입니다. 개발자 여러분의 답변이 큰 도움이 됩니다.
- 제품설치/등록 오류 문의: 설치/등록 Q&A 이용 (제품 구매 고객 한정)
Firemonkey Andorid, IOS에서 Media (동영상)갤러리를 호출하는 방법
2020.12.01 17:22
본 게시판은 개발자들이 자유롭게 질문과 답변을 공유하는 게시판입니다.
* 따라서 최대한 정중하게 질문을 올려 주세요.
* 질문을 상세히 작성해 주실 수록 좋은 답변이 올라 옵니다.
* 다른 분들도 참고할 수 있도록 결과 댓글 필수(또는 감사 댓글)
(결과 댓글을 달지 않는 경우 다음 질문에 대한 답변이 달리지 않는 불이익이 있을 수 있습니다.)
-----------------------------------------------------------------------------------------------
자신의 폰에 있는 동영상을 선택해서 특정 서버에 업로드하는 기능을 테스트해야 하는데 난제가 많아
도움요청을 하게 되었습니다.
자신의 핸드폰에서 (Android, IOS) 동영상 파일을 선택해서 가져오는 것 자체가 이렇게 힘들줄 몰랐네요.
일단 사진의 경우
ActionList의 TakePhotoFromLibraryAction1 를 이용하여 파일을 제어하는것이 Android, IOS 모두 가능합니다.
그런데 문제는 폰에 있는 동영상 파일인데. TakePhotoFromLibraryAction1 여기서는 동영상파일 갤러리를
제공하지 않습니다.
그래서 할수없이 두번째 방법으로 아래의 방법을 사용하려 했지만.
그래서 할수없이,
안드로이드의 경우
/storage/emulated/0/DCIM/Camera/ 폴더에 직접 접근해서 파일을 가져올 수 있지만
IOS의 경우
/var/mobile/Media/DCIM/100apple 폴더에 접근이 불가능한거같습니다
(샌드박스개념때문에)
그래서 생각해낸것이 세번째 방법인데.
HTML5중 <input type="file" id="img" name="img" accept="video/*"> 태그를 사용하면
해당 폰에서 갤러리가 열려 파일을 선택할수 있습니다. (아래참조)
<form action="/action_page.php"> <label for="img">Select image:</label> <input type="file" id="img" name="img" accept="video/*"> </form>
Android, IOS 브라우저에서 저 코드를 실행하면 잘 실행이 되더군요.
(자체 갤러리가 열리면서 파일선택이 가능합니다)
그래서 델파이 TWebbroser에서 같은 방식으로 호출했지만 아무 응답이 없었습니다.
알아본결과 FMX.WebBrowser.Android 코드를 수정해서 setWebChromeClient 를 구현해야한다고 하는데
너무 어렵네요.. ㅠ
참고링크 : https://en.delphipraxis.net/topic/2030-android-twebbrowser-uploading-files/
Android가 될거같은면 IOS가 안되고..
두번째든 세번째든 방법이 없을까요?...
enqjs
ㅇ
댓글 0
Firemonkey Andorid, IOS에서 Media (동영상)갤러리를 호출하는 방법
2020.12.01 17:22
본 게시판은 개발자들이 자유롭게 질문과 답변을 공유하는 게시판입니다.
* 따라서 최대한 정중하게 질문을 올려 주세요.
* 질문을 상세히 작성해 주실 수록 좋은 답변이 올라 옵니다.
* 다른 분들도 참고할 수 있도록 결과 댓글 필수(또는 감사 댓글)
(결과 댓글을 달지 않는 경우 다음 질문에 대한 답변이 달리지 않는 불이익이 있을 수 있습니다.)
-----------------------------------------------------------------------------------------------
자신의 폰에 있는 동영상을 선택해서 특정 서버에 업로드하는 기능을 테스트해야 하는데 난제가 많아
도움요청을 하게 되었습니다.
자신의 핸드폰에서 (Android, IOS) 동영상 파일을 선택해서 가져오는 것 자체가 이렇게 힘들줄 몰랐네요.
일단 사진의 경우
ActionList의 TakePhotoFromLibraryAction1 를 이용하여 파일을 제어하는것이 Android, IOS 모두 가능합니다.
그런데 문제는 폰에 있는 동영상 파일인데. TakePhotoFromLibraryAction1 여기서는 동영상파일 갤러리를
제공하지 않습니다.
그래서 할수없이 두번째 방법으로 아래의 방법을 사용하려 했지만.
그래서 할수없이,
안드로이드의 경우
/storage/emulated/0/DCIM/Camera/ 폴더에 직접 접근해서 파일을 가져올 수 있지만
IOS의 경우
/var/mobile/Media/DCIM/100apple 폴더에 접근이 불가능한거같습니다
(샌드박스개념때문에)
그래서 생각해낸것이 세번째 방법인데.
HTML5중 <input type="file" id="img" name="img" accept="video/*"> 태그를 사용하면
해당 폰에서 갤러리가 열려 파일을 선택할수 있습니다. (아래참조)
<form action="/action_page.php"> <label for="img">Select image:</label> <input type="file" id="img" name="img" accept="video/*"> </form>
Android, IOS 브라우저에서 저 코드를 실행하면 잘 실행이 되더군요.
(자체 갤러리가 열리면서 파일선택이 가능합니다)
그래서 델파이 TWebbroser에서 같은 방식으로 호출했지만 아무 응답이 없었습니다.
알아본결과 FMX.WebBrowser.Android 코드를 수정해서 setWebChromeClient 를 구현해야한다고 하는데
너무 어렵네요.. ㅠ
참고링크 : https://en.delphipraxis.net/topic/2030-android-twebbrowser-uploading-files/
Android가 될거같은면 IOS가 안되고..
두번째든 세번째든 방법이 없을까요?...
enqjs
ㅇ