2013-02-22 5 views
13

현재 네이티브 Android 앱을 개발 중입니다. 내 응용 프로그램에는 많은 활동이 있습니다. 나는 native android app을 개발하고 싶다. 그러나 어떤 경우에는 전체 레이아웃이 단지 웹뷰 일 때 webview을 사용하고 싶습니다. 선형이 아니거나 상대적이거나 레이아웃이 다른 웹 뷰일뿐입니다. HTML로 실행되는 모든 이미지와 다른 것들. All of screen will run in HTML5.기본 Android 앱에서 WebView 전체 레이아웃을 사용하는 것이 유용할까요?

그래서 부분적으로 iPhone 앱 또는 다른 플랫폼으로 앱을 전송할 수 있습니다. 이것은 나에게 이런 식으로 이익이된다.

하지만 잘 모르겠습니다. 이쪽이 더 나아 졌습니까? 성능은 무엇입니까? HTML5 앱으로 변환 할 때의 단점은 무엇입니까?

설명 할 수 있습니까?

감사

+0

대체 방법이지만 응용 프로그램 성능은 서버 연결에 따라 다릅니다. –

+0

내 webview는 인터넷에 의존하지 않습니다. 로컬로 작동합니다. –

답변

12

을 바로이 주제에 대한 very good presentation 있습니다.

  1. 성능 : 사이에 추가 레이어를 추가하면 웹킷 엔진이 항상 네이티브 (때로는 하드웨어 가속화) 렌더링 성능과 일치하지 않을 수 있습니다.

  2. 단점 : 하나는 API 사용이 제한되어 있기 때문에 페이지의 JavaScript를 네이티브 코드에 바인딩 할 수 있지만 모든 기능을 사용할 수있는 것은 아닙니다. Cordova 기능을 살펴볼 수도 있습니다. JavaScript를 통해 복잡한 위젯을 에뮬레이션하면 페이지 속도가 느려질 수 있습니다.

  3. 휴대 성 : 실제로 큰 이점이 있으므로, PhoneGapCordova이 인기가 있습니다. 페이 스북 애플 리케이션 등 많은 사람들이 더 나은 성능을 위해 switched to native 애플 리케이션을 가지고 있지만.

실제로 필요한 접근 방식은 요구 사항에 따라 다릅니다. 이것은 나의 개인 호언 장담 일지 모르지만 IMHO : 마크 업은 지금까지만 꼬인 수 있습니다. 아직까지는 산업 급 GUI 프로그래밍 설정을 능가 할 수 없습니다.

+0

감사합니다. 귀하의 답변은 매우 실례입니다. –

+0

@BreedHansen이 주제에 대한 프레젠테이션의 첫 번째 링크를 업데이트했습니다. –

+0

감사합니다. 나는 볼 것이다. –

1

내 생각에 -이 방법을 사용하면 앱 품질이 약해지고 앱이 안드로이드와 호환 될 수있는 많은 도구가없는 webview 개체 때문에 사용하기가 어려울 것입니다. 예를 들어 웹 뷰의 데이터를 앱에 공유하거나 저장할 수 없습니다. 무엇이 필요하고 어떤 dosen't 필요가 귀하의 애플 리케이션에 대한 참조, 내가 HTML로 애플 리케이션을 개발하려하지만 그건 나빴어. 웹보기는 별도의 층을 형성하기 때문에

+0

설명해 주셔서 감사합니다. –

+3

나는 동의하지 않아야한다. 첫째, webview의 콘텐츠는 애플리케이션 자체와 쉽게 통신 할 수있다. 제한된 반면, 정보 애플리케이션의 경우 이는 더 안전한 접근 방법이다. HTML을 사용하면 웹 디자이너/개발자가 HTML/CSS/JS에 익숙해 져서 더 높은 품질의 응용 프로그램을 쉽게 개발할 수 있습니다. – Mayhem

0

단점 웹보기는

  • , 장치의 전체 성능을 사용할 수 없습니다.
  • 웹보기가 모든 사용자 이벤트를 수신 할 수 없습니다.
  • 웹보기의 데이터를 앱에 완전히 공유하거나 저장할 수 없습니다.
  • 로드하는 데 시간이 오래 걸립니다. 다른 것들은 간단한 API로 모든 것을 얻고 렌더링 할 수 있습니다.
  • 페이지의 간단한 필드를 변경하면 전체 페이지를 다시로드해야합니다.
  • 온라인 필요, 오프라인 기능을 확장 할 수 없습니다.
  • 오리엔테이션 변경 및 전체 화면으로 인해 어려움이 있습니다.모두 안드로이드와 IOS에 대한

    • 한 페이지 웹보기를 사용

    프로.

  • 모든 장점은 서버에 있기 때문에 각 사용자가 자신의 장치에서 응용 프로그램을 업데이트 할 필요없이 변경이 가능하다는 것입니다.
  • 업데이트를위한 앱 스토어 승인을 기다리지 않아도됩니다.

일부 기술 웹보기와 함께

  • 기본 요소. WebView만으로는 할 수없는 많은 기능들이 있기 때문에 훨씬 더 좋을 것이라고 생각합니다. 이 둘의 조합이 훨씬 더 권장됩니다.
  • 로컬에서 렌더링, HTML 파일 용 에셋 디렉토리 만들기 - Android는 내부적으로 file : /// android_asset/(단수 자산 참고)로 매핑합니다. 오프라인 상태에서도 로컬로 웹보기 양식을 제공 할 수 있습니다.
+0

"온라인 필요"에 대한 확신이 있습니까? 'localStorage' 자바 스크립트 객체를 사용하여 앱의 데이터를 로컬에 저장할 수 있습니다. 또한 Webview는 jquery 등을 통해 UI 이벤트를들을 수 있습니다. –

관련 문제