메뉴 건너뛰기

조회 수 8446 추천 수 0 댓글 0
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄

기존에 등록한 폰갭에서 페이지 하나 띄우는 과정에 어떤분이 질문을 올리셨는데, 페이지 이동은 어떻게 하냐고 하셨다. 

순간 xml 리소스로부터 페이지객체를 불러오는 방식과 착각하여 페이지 하나당 네이티브클래스 하나가 매핑된다고 답을 드렸는데 정정을 한다.

 

나름대로 아는것을 정리해보면...

 

1. 먼저 기존에 만들어둔 index.html 파일을 다음과 같이 수정해본다.

 

<html>
 <head>
  <title>test</title>
  <meta charset="utf-8" />
  <meta name="viewport" content="width=device-width, initial-scale=1" />
 </head>
 <body>
  <a href="./path1/mypage.html">Move</a>
 </body>
</html>

 

2. /assets/www 폴더 안에다가 path1 이란 경로를 하나 만들어서 그 경로안에다가 mypage.html 파일을 추가한 후 아래와 같이 내용을 입력한다.

 

<html>
 <head>
  <title>subpage</title>
  <meta charset="utf-8" />
  <meta name="viewport" content="width=device-width, initial-scale=1" />
 </head>
 <body>
  <a href="../index.html">Home</a>
 </body>
</html>

 

3. Run 해보면 "Move" 링크가 나오는데 링크를 클릭하면 /path1/myapge.html 페이지가 뜨는 것을 확인할 수가 있다. 그리고, 마찬가지로 "Home" 링크를 클릭하면 다시 홈 화면이 나온다.

 

4. 즉, DroidGap 클래스를 상속받은 클래스가 loadUrl을 호출하여 초기페이지를 띄우고, 그다음부터는 일반 웹페이지 방식처럼 동작하는 것이다. ( 페이지별로 클래스 하나가 존재한다는거는 오랜 공백과정에 의한 착각이었다. )

 

5. 이렇게 일반 웹기술에서의 페이지 이동방식을 그대로 따르므로 assets 경로안에 있는 페이지 말고 네이버나 다른 페이지로의 이동도 가능하지만, 이렇게 할 이유가 없다. 필요한 페이지는 전부 assets 안에 존재해야 한다고 생각하자.

 

6. 문제는 순수하게 웹기술로만 코딩을 하면 폰하고 통신할 수단이 없다. 폰의 센서라든지 주소록 접근... 등등 폰만의 기능과 연동하려면 폰갭 플러그인을 이용해야 한다.

단순 웹기술로만 하면 굳이 앱으로 만들 이유가 없는 것이다.

 

7. 즉, html 코드 안에 폰갭 플러그인을 사용한다고 정의하고 약속된 규칙으로 사용하면 되는 것이다.

 

8. 폰갭 홈페이지( www.phonegap.com )에는 미리 만들어져있는 플러그인들이 소개되어 있으며, 사용방법이 나와있다.

 

9. 이렇게 존재하고 있는 플러그인을 사용하다 보면 나만의 기능을 가진 플러그인을 만들 필요성을 느끼게 된다.

 

10. 이때는 폰갭플러그인을 직접 만들어서 사용하면 된다.


List of Articles
번호 제목 날짜 조회 수
237 안드로이드 채팅 소스 샘플 file 2015.07.26 10088
236 카카오톡 분석하기 (1) - sqlite 파해치기 file 2016.05.26 10060
235 네트워크 상태 변화 감지하기(BroadcastReceiver 사용) 2015.07.16 9934
234 FTPClient 를이용하여 ftp상 서버에서 데이터 다운로드 편 2014.08.28 9848
233 서버에서 이미지 불러와서 이미지뷰에 띄우기 file 2015.07.16 9842
232 ViewFlipper 사용하기 file 2015.07.16 9631
231 카카오톡 분석하기 (2) - 카카오톡 암호화 함수 찾기 file 2016.05.26 9598
230 안드로이드 php 로 mysql json 파싱 하기 2014.08.28 9407
229 [안드로이드] 팝업메뉴 사용법 file 2015.09.03 9388
228 탭 뷰에 탭 추가하기, 아이콘 넣기 file 2015.07.16 9358
227 AndroidManifest에 선언한 메타데이터(meta-data) 가져오기 2016.06.10 9304
226 안드로이드 팝업창 만들기(xml 내용 집어넣기) file 2015.07.23 9285
225 다운로드 매니저(DownloadManager)에 대해 알아보자 file 2015.07.01 9239
224 화면 전환해도 데이터 유지 예제 2015.07.26 9204
223 [안드로이드] 리스트 뷰의 한 항목에 대한 컨텍스트 메뉴 만들기 file 2015.09.04 9079
222 URL을 이용해서 이미지 다운로드 하기 (멀티 쓰레드 이용) file 2015.07.16 8992
221 안드로이드 소스 - 카메라 플래쉬(Flash, 후라시) 앱 file 2015.06.29 8973
220 Android Push GCM 프로젝트 앱 적용 하기(2) file 2016.03.18 8945
219 안드로이드 webview (웹뷰) 개발 #1 - 웹사이트를 어플로 만들어 보자! file 2015.07.17 8903
218 안드로이드 기본어플 예제 어플소스 모음 2015.08.17 8860
Board Pagination Prev 1 2 3 4 5 6 7 8 9 10 ... 13 Next
/ 13

하단 정보를 입력할 수 있습니다

© k2s0o1d4e0s2i1g5n. All Rights Reserved