본문 바로가기

앱스프레소19

Appspresso(앱스프레소) - curl (Url 통신) Url 기반의 통신 기능을 제공하는 예제입니다. Ajax 통신과 비슷하면서 json기반의 요청, 응답을 처리할 수 있습니다. index.html부터 살펴보겠습니다. 5번째 항목의 링크를 따라가 보겠습니다. 요청 url과 전송하려는 text 구문을 입력 받습니다. 요청 버튼을 클릭하면 curlDemo()함수를 호출하는군요. js/extapi-curl.js 를 열어보면 해당 함수가 정의되어 있습니다. 옵션 객체를 선언하여 요청할 데이터를 셋팅하고, 콜백함수와 함께 인수로 사용됩니다. ax.ext.net.curl API를 이용하여 외부 url로 요청을 하고 그 걸과 객체를 받아옵니다. 서버에서 응답을 json객체로 넘겨주면 json 파서를 이용해서 사용하는 것도 가능합니다. 시뮬레이터에서 실행시킨 아이폰의 화.. 2011. 9. 3.
Appspresso(앱스프레소) - Upload (파일 업로드) 이번에는 단말기에 파일을 서버로 업로드 하는 예제입니다. 앞에서 다운받은 이미지 파일을 서버로 업로드 해보겠습니다. 처음 index.html 입니다. 세번째 항목인 업로드 링크를 따라가 보겠습니다. 파일을 업로드할 서버 url과 업로드할 대상 파일을 셋팅합니다...셋팅되어 있네요.^^ 업로드 버튼을 클릭하게 되면 uploadFile() 함수를 호출하는군요. js/extapi-upload.js 파일을 열어보면, 해당 함수가 정의되어 있습니다. url과 file을 선언하고, 간단하게 ax.ext.net.upload API를 이용하여 업로드가 가능하군요. 시뮬레이터에서 실행한 아이폰 화면을 보겠습니다. 2011. 9. 2.
Appspresso(앱스프레소) - Download (파일 다운로드) 외부 파일을 다운로드 하는 예제를 살펴 보겠습니다. 이미지 파일을 하나 다운받아서 저장하고 파일을 미리보기가 가능합니다. 최초 시작인 index.html 부터 보겠습니다. 세번째 항목인 다운로드 링크를 따라갑니다. 파일을 다운로드 할 경로와 저장할 경로를 설정하는 화면입니다. 다운로드 버튼을 클릭하면 downloadFile()함수를 호출하게 되는 군요. js/extapi-download.js 를 열어보면 다운로드 함수가 정의되어 있습니다. ax.ext.net.download API를 이용하여 url의 파일을 다운로드하고, 콜백 함수를 호출합니다. 귀엽게도 슬라이더를 이용해서 다운로드 상태를 표시해 주도록 구현되어 있네요. 파일 폴더 열기 버튼을 클릭하면 아래 함수가 호출되면서, 페이지 이동과 동시에 do.. 2011. 9. 1.
Appspresso(앱스프레소) - Cross Domain Ajax (크로스 도메인 Ajax) 외부 도메인와 Ajax 통신하는 예제입니다. 날코딩으로 이를 구현하려면 많은 내공이 필요한데, 아주 간단하게 사용할 수 있도록 기능을 지원해주고 있습니다. 최초 index.html부터 살펴보겠습니다. 예제 항목중에 마지막 이네요. 링크를 따라가 보겠습니다. 여러 리스트 항목중에서 첫번째 항목의 예제를 보겠습니다. 세가지 navbar로 구성되어 있네요. 클릭하면 getRSSFeed함수를 호출하게 되어 있군요. js/extapi-cross-domail.js 를 열어보면 아래와 같이 해당 함수가 정의되어 있습니다. 첫번째 인수로 주어진 url를 통해 ax.ext.net.get API를 호출하여 get방식의 ajax통신을 하고, 콜백함수로 받아온 xml파일을 파싱하고 결과 리스트 항목을 생성하고 있습니다. 또,.. 2011. 8. 31.
Appspresso(앱스프레소) - File explorer (파일 탐색기) 이번에는 파일 탐색기 예제를 살펴 보겠습니다. 파일 제어 기능의 결정판인듯 싶네요.^^ 최초 index.html부터 보겠습니다. 파일시스템 데모의 링크를 따라가 보겠습니다. 첫번째 파일 읽고 쓰기는 앞에서 살펴봤으니, 이번에는 두번째 항목인 explorer 링크를 따라가 보겠습니다. index.js를 보면 페이지 이벤트와 함께 아래 함수가 호출됩니다. 디렉토리를 지정하고 있고, 기본 파라미터를 등록하고 있네요. root디렉토리와 파일 탐색기를 보여줄 target 요소를 지정하고 있습니다. 핵심인 fileExplorer객체를 살펴보겠습니다. js/file-explorer.js를 열어보면 fileExplorer객체가 정의되어 있습니다. this객체의 init함수를 호출하는군요. 아래부분에 정의되어 있는 in.. 2011. 8. 30.
Appspresso(앱스프레소) 1.0 RC 버젼 출시 정식 버젼은 아니지만 RC버젼이 출시되었습니다. 아래는 변경이력입니다. ^^ Appspresso 1.0 RCAppspresso Android Runtime - 관련 feature가 선택되지 않았어도 호출되던 API들을 feature가 선택된 경우에만 호출되도록 수정 - Screw 모듈의 Media 객체에 playSound 함수 추가 - Camera 모듈에서 camera 객체의 startVideoCapture 함수를 호출하면 즉시 성공 콜백 함수가 호출되던 버그를 동영상 녹화가 완료된 후 성공 콜백 함수가 호출되도록 수정 - Camera 모듈의 camera 객체로 동영상 촬영 중 홈 버튼을 누르면 동영상 촬영이 자동으로 중지되도록 수정. 성공 콜백 함수는 앱이 다시 활성화되었을 때 호출됨 - DeviceS.. 2011. 8. 29.
Appspresso(앱스프레소) - File read/write (파일 읽고 쓰기) 파일 제어 기능 예제에 대하여 알아보겠습니다. 시작합니다. index.html입니다. 파일 시스템 데모 링크를 따라가니, 두개의 항목을 갖는 리스트가 나옵니다. 첫번째 항목인 read/write 링크를 열어보겠습니다. 저장하고자 하는 파일 이름을 입력받고, 저장할 텍스트 내용을 입력받습니다. 버튼이 세개가 있네요. 각각 파일을 저장하는 함수를 호출하고, 파일을 읽어오는 함수를 호출하고, 폴더 내용을 볼수있는 함수를 호출하도록 되어 있습니다. js/filesyste-readwrite.js 파일에 정의되어 있는 세가지 함수를 보겠습니다. 파일을 저장하는 함수입니다. deviceapis.filesystem.resolve() 함수를 사용하여 파일 핸들을 반환합니다. 성공적으로 반환되면 콜백함수를 호출하게 되고,.. 2011. 8. 28.
Appspresso(앱스프레소) - Email (이메일 전송) 이번에는 Email전송 기능에 대한 예제를 보겠습니다. 처음인 index.html에서 시작합니다. Email링크를 따라 가보겠습니다. 메일을 보내기 위한 입력 화면이 있고, 전송버튼이 보입니다. 전송버튼 클릭시 호출되는 sendMail() 함수를 찾아보겠습니다. js/extapi-sendmail.js 를 열어보니, 호출되는 함수가 있군요. 콜백 함수와 메일을 보내기 위한 정보를 담는 객체를 생성하고, ax.ext.net.sendMail함수를 호출하게 됩니다. 실제 아이폰에서는 메일 송신 창이 뜨게 되고, SMS와 마찬가지로 한번더 확인하고 전송버튼을 눌러야 메일이 전송되게 됩니다. 화면은 아래와 같습니다. 2011. 8. 27.
Appspresso(앱스프레소) - SMS (메세지 전송) SMS 메세지 전송하는 기능에 대한 예제를 살펴보겠습니다. index.html부터 시작합니다. 메세지 리스트항목의 링크를 따라갑니다. 세가지 항목이 있네요. 현재 버젼에서는 SMS와 Email 전송 기능만 가능합니다. SMS부터 보기위해 링크를 따라갑니다. 수신자 전화번호와 보낼 메세지를 입력하기 위한 input태그와 textarea태그가 있네요. 전송 버튼을 클릭하면 호출 하는 함수를 찾아보겠습니다. js/message-sms.js파일을 열어보니, 호출되는 함수가 보입니다. deviceapis의 메세징을 이용해서 SMS타입의 새로운 메세지를 가져옵니다. 가져온 메세지 객체에 보낼 메세지 정보를 셋팅하고 sendMessage를 호출하여 전송하는군요. 실제 아이폰에서 실행시키면 바로전송되지 않고 기본 메세.. 2011. 8. 26.
Appspresso(앱스프레소) - Video capture (비디오 캡쳐) 이번에는 동영상 찰영 기능에 대한 예제를 살펴보겠습니다. index.html에서 카메라 링크를 따라갑니다. 비디오 캡쳐 기능인 세번째 항목의 링크 페이지를 열어보겠습니다. 세가지 버튼이 보이고, 각각 호출되는 함수들이 있군요. 함수가 정의되어 있을 js들을 찾아보겠습니다. index.js에서 위 세가지 버튼이 있는 page에 이벤트를 등록하네요. 그리고, 페이지가 보여질때 호출되는 함수와 페이지가 사라질때 호출되는 함수가 보입니다. 페이지가 보여질때 호출되는 데모함수를 보면, 카메라 라이브뷰에서 본 함수와 타겟 이름만 다르고 나머진 동일하네요. 이제, 페이지가 뜨면서 비디오 영상을 캡처 할 준비가 되었을 것입니다. 세가지 버튼중 start버튼을 클릭하면 아래 함수가 호출되면서 영상을 캡처합니다. stop.. 2011. 8. 19.