WebView 기본 응용프로그램 예제 - Android가 WebView를 사용하여 응용 프로그램 내부에서 웹 페이지를 엽니다.
일반 응용 프로그램에서 웹 페이지만 보여주면 복잡한 처리 논리가 필요하지 않지만 초보자가 하는 과정에서 이런 문제가 발생할 수 있다. (소는 무시할 수 없다)
1. 웹뷰를 호출합니다.loadUrl () 방법은 시스템 브라우저를 호출합니다.
2. 리턴 키를 누르면 웹 페이지를 여는 상급자가 아닌 인터페이스를 종료합니다.
사실 웹 페이지만 간단하게 보여주면
1. WebView에 자신이 정의한 WebViewClient를 설정합니다.
2. WebViewClient()의 shouldOverrideUrlLoading 방법을 덮어씁니다.
이로써 첫 번째 문제는 휴대전화 자체 브라우저를 호출하지 않고 앱 내부에서 링크를 열어 보여주는 것으로 해결됐다.
3. Activity onKeydown 방법을 덮어쓰고 웹 페이지가 이전 페이지로 돌아갈 수 있는지 판단하며 이전 페이지로 돌아갈 수 없으면 Activity 복귀 키 논리를 실행한다.
이 세 편을 완성하고 간단하게 웹뷰를 사용하면 이미 실현할 수 있다.만약 더욱 복잡한 처리가 필요하다면, 예를 들어 js 코드를 실행하여 휴대전화나 다른 고급 기능을 호출하려면 더욱 깊이 있게 연구해 주십시오.
4. 사용 과정에서 일부 웹 페이지가 열리지 않는 문제가 발생한 후에 웹 뷰가 js 지원을 켜지 않았거나 캐시를 켜지 않아서 일어난 것을 발견했다.
이 몇 줄의 코드를 추가하면 대부분의 웹 페이지를 보여줄 수 있다.
// localStorage
webView.getSettings().setDomStorageEnabled(true);
// javascript
webView.getSettings().setJavaScriptEnabled(true);
//
webView.getSettings().setAppCacheEnabled(true);
//
webView.getSettings().setCacheMode(WebSettings.LOAD_DEFAULT);
잠시 이렇게 많이 썼다가 나중에 발견하면 다시 완벽하게 갱신하겠습니다.
위 코드:
public class PublicWebViewActivity extends BaseActivity
{
private WebView webView;
@Override
protected void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_public_webview);
webView = (WebView) findViewById(R.id.webview);
// localStorage
webView.getSettings().setDomStorageEnabled(true);
// javascript
webView.getSettings().setJavaScriptEnabled(true);
//
webView.getSettings().setAppCacheEnabled(true);
//
webView.getSettings().setCacheMode(WebSettings.LOAD_DEFAULT);
// WebViewClient
webView.setWebViewClient(new WebViewClient()
{
// shouldOverrideUrlLoading
@Override
public boolean shouldOverrideUrlLoading(WebView view, String url)
{
view.loadUrl(url);
return true;
}
});
webView.loadUrl(url);
}
// onKeydown WebView
@Override
public boolean onKeyDown(int keyCode, KeyEvent event)
{
if (keyCode == KeyEvent.KEYCODE_BACK && webView.canGoBack())
{
webView.goBack();//
return true;
}
return super.onKeyDown(keyCode, event);
}
}
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
Bitrise에서 배포 어플리케이션 설정 테스트하기이 글은 Bitrise 광고 달력의 23일째 글입니다. 자체 또는 당사 등에서 Bitrise 구축 서비스를 사용합니다. 그나저나 며칠 전 Bitrise User Group Meetup #3에서 아래 슬라이드를 발표했...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.