안드로이드 앱 개발기 #36 - 하이브리드 앱 만들면서 웹뷰 관련 구현해야 할 것들steemCreated with Sketch.

최근 개발 진행 중인 앱은 하이브리드 앱이구요. 웹페이지는 다른 개발팀에서 만들고 있습니다. 모바일부서에서는 이를 보여줄 웹뷰를 메인으로 하고 필요한 사항들을 지원하는 앱을 만들고 있습니다. 처음에는 쉬운 작업이 될 거라고 생각했는데요. 막상 후반으로 가니 추가로 작업해야 할 것들이 있네요. 구현이 어려운 것은 아니지만, 이와 관련된 명쾌한 자료들이 없어서 그것만 참고해서 만드는 것이 맞는지 의문이 들 때가 있습니다. 일단 이들을 참고해서 만들구요. 테스트를 많이 해보며 수정하는 것이 좋지 않을까 합니다.


웹뷰 관련 추가로 구현해야 할 사항들

  • 파일 업로드
  • 파일 다운로드
  • 일부 URL 오버라이딩

브라우저에서 별 생각없이 하는 업로딩, 다운로딩이 안드로이드 웹뷰에서는 바로 지원되는 것이 아니네요. 이것은 추가로 구현해줘야 합니다. 이들이 바로 최근에 작업하고 있는 것들이구요. 이번 앱에서는 아직 적용하지는 않았지만, 일부 웹 URL들은 오버라이딩을 해야 하는 경우도 있습니다.


URL 오버라이딩

WebView 뷰에 설정해야 할 객체들이 여러 종류가 있는데요. 그 중 하나는 WebViewClient 또는 이를 상속받는 객체입니다. WebViewClient 클래스의 shouldOverrideUrlLoading 메소드를 오버라이드 하고 필요한 작업을 구현하면 되겠습니다.

public boolean shouldOverrideUrlLoading (WebView view, WebResourceRequest request)

이 메소드를 오버라이딩할 때 주의해야 할 점은요. 오버라이딩 해야 할 URL이 늘어나면, 소스 코드가 복잡해질 수 있다는 점입니다. 이 메소드의 작성, 수정은 최소한으로 하는 것이 좋습니다.


이외에 보다 자세한 내용들은 '안드로이드 개발 팁'에서 이어갈 예정입니다.


지난 안드로이드 앱 개발기

Sort:  
 2 years ago 

[광고] STEEM 개발자 커뮤니티에 참여 하시면, 다양한 혜택을 받을 수 있습니다.

Coin Marketplace

STEEM 0.23
TRX 0.25
JST 0.038
BTC 95317.76
ETH 3302.38
USDT 1.00
SBD 3.31