웹마스터 팁

키캣 4.4.4 이전 버전 에서 크롬을 사용하지 않고 디폴트 웹뷰 이용하면 파일 첨부 안됩니다.

이문제가 이슈로 되어 있을건데 4.4.4 버전에서는 해결되었습니다. 그냥 form의 파일 input 사용해도 첨부 됩니다.


문제는 업체들이 부지런하게 업그레이드 한 갤럭시 등등 폰에서는 키캣 4.4.2 정도에서 업그레이드를 해 주지 않고 있습니다.

아마 안해주고 룰리팝으로 넘어 갈 가능성이 큰데 근본적으로 폰갭 업로드를 어플 내에서 처리해 버리면 근본적인 문제가 해결됩니다. 


자바 개발하신 분들은 직접 자바에서 처리하셨을겁니다. 폰갭개발 자들은 대응방법이 없었으나 api를 활용하면 된다고만 되어 있거나 자바로처리 했을겁니다. 폰갭 자체 api로 처리가 가능해서 올립니다.


function getImage() {

        // Retrieve image file location from specified source

        navigator.camera.getPicture(uploadPhoto, function(message) {

alert('get picture failed');

},{

quality: 50,

destinationType: navigator.camera.DestinationType.FILE_URI,

sourceType: navigator.camera.PictureSourceType.PHOTOLIBRARY

});}

    function uploadPhoto(imageURI) {

        var options = new FileUploadOptions();

        options.fileKey="profile_image"; // 파일 필드명

        options.fileName=imageURI.substr(imageURI.lastIndexOf('/')+1);

        options.mimeType="image/jpeg";


        var params = new Object();

        params.value1 = "test";

        params.value2 = "param";


        options.params = params;

        options.chunkedMode = false;

       

        var ft = new FileTransfer();

        ft.upload(imageURI, "http://도메인/upload.php", win, fail, options);

    }


    function win(r) {

        console.log("Code = " + r.responseCode);

        console.log("Response = " + r.response);

        console.log("Sent = " + r.bytesSent);

        alert(r.response);

    }


    function fail(error) {

    alert("An error has occurred: Code = " + error.code);

    console.log("upload error source " + error.source);

    console.log("upload error target " + error.target);

}



이렇게 js를 넣고getImage()만 호출하시면 됩니다. 서버에 upload.php로 받아서 post로 받는것과 같이 처리하시면 됩니다.

여기서 파일 필드명은         options.fileKey="profile_image"; // 파일 필드명 에 정의하시면 됩니다.

갤러리로 바로접근 가능합니다. 그리고 폰에서 업로드시 jpg가 없는 경우가 있습니다. 확장자 확인하시고 처리하시면 됩니다.

서버 단은 php에 소스가 많으니깐 응용해서 하시면 됩니다.


제목 글쓴이 날짜
xe 에디터를 외부페이지에사용하기 [26] 정박사닷컴 2012.07.11
파일 삭제시 (글 수정시 파일삭제 / 파일관리에서 삭제 등) 사용자정의값이 삭제되지 않도록 패치 [3] sejin7940 2014.12.11
폰갭 작업시 폰 내부 html에 변수 전달 방법 (get) Happyphp 2014.12.09
IE에서 스크립트 생성 iframe 요소에 name 속성 지정이 무시될 때 신평 2014.12.08
파일첨부 된 글을 게시글 이동시, 사용자정의 값이 전부 삭제되는 버그 패치 [5] sejin7940 2014.11.20
블루호스트(Bluehost)에서 XE 제로보드 및 텍스타일 블로그 서브도메인에 설치하기 [4] file TELSTER 2011.03.25
jq로 데이터 입력시 enter키 먹게 하기 [3] Happyphp 2014.11.27
Simplestrap css, js cdn에서 로드하기 [5] file Typhoon 2014.08.29
bing 번역 함수 만들어 사용하기 Happyphp 2014.11.26
Animate 사용 돼지코구뇽 2014.11.26
1.7.3.2로 업데이트 이후, 글쓴이 제대로 표현하기 (스킨:스케치북5) [13] 준스타일 2013.05.04
xe 어플 개발시 키캡 4.4.4 미만 업로드 문제 [3] Happyphp 2014.11.25
누리고쇼핑몰-모바일 이니시스 결제에서 필수요청값 누락 에러로 결제 안되는것 해결하는 미봉책 garnecia 2014.11.23
누리고 쇼핑몰 - 모바일 버전에서 상품몰에 취소/환불 부분이 적용안되는부분 해결 하는 팁 garnecia 2014.11.23
회원가입확장 모듈 - 가입절차중 오류 발생시 처음으로 돌아가는 현상 [1] 김개발 2013.08.30
본문을 애드센스 주변에 배치하기 [1] file 하얀마법 2014.11.15
회원포인트 목록에서 검색 후 포인트 업데이트시 검색 상황이 그대로 유지되도록 sejin7940 2014.11.20
본문에서 작성자 글 모아서 보여주기 - 응용버전 [4] 하얀마법 2014.11.15
부트스트랩 툴팁 , 팝오버 TIP file 돼지코구뇽 2014.11.17
프로필 사진 저장시 잘려서 저장되는 경우 [11] YJSoft 2014.05.15