앱개발을 막접해본 초보자입니다.
현재 웹앱을 개발중이며, a태그 blank시에만 외부브라우저로 연결되도록하고싶은데
구글링을 해서 찾아본방법으로 적용을 해보아도 잘안되더라구요 ㅠㅠ
현재 문제점
_blank시 외부브라우저로 열리긴하나 location.reload()시에도 외부브라우저로 열리는것이 문제
질문사항
1. 타겟이 _blank일때만 외부브라우저로 열리게는 불가능한지?
2. 웹내부 id값이나 class값을 가져다가 조건을 걸수있는지가 궁금합니다.
아래는 현재 시도해본 코드들입니다.
webSettings = webView.getSettings(); //세부 세팅 등록
webSettings.setJavaScriptEnabled(true); // 웹페이지 자바스크립트 허용 여부
webView.setWebChromeClient(new WebChromeClient(){
@Override
public boolean onCreateWindow(WebView view, boolean dialog, boolean userGesture, android.os.Message resultMsg)
{
WebView.HitTestResult result = view.getHitTestResult();
String data = result.getExtra();
Context context = view.getContext();
Intent browserIntent = new Intent(Intent.ACTION_VIEW, Uri.parse(data));
context.startActivity(browserIntent);
return false;
}
}); // 클릭시 새창 안뜨게
webSettings.setSupportMultipleWindows(true); // 새창 띄우기 허용 여부
webSettings.setJavaScriptCanOpenWindowsAutomatically(false); // 자바스크립트 새창 띄우기(멀티뷰) 허용 여부
webSettings.setLoadWithOverviewMode(true); // 메타태그 허용 여부
webSettings.setUseWideViewPort(true); // 화면 사이즈 맞추기 허용 여부
webView.getSettings().setDefaultTextEncodingName("UTF-8"); // encoding 설정
webSettings.setSupportZoom(false); // 화면 줌 허용 여부
webSettings.setBuiltInZoomControls(false); // 화면 확대 축소 허용 여부
webSettings.setLayoutAlgorithm(WebSettings.LayoutAlgorithm.SINGLE_COLUMN); // 컨텐츠 사이즈 맞추기
webSettings.setCacheMode(WebSettings.LOAD_NO_CACHE); // 브라우저 캐시 허용 여부
webSettings.setDomStorageEnabled(true); // 로컬저장소 허용 여부
webView.loadUrl(Url); // 웹뷰에 표시할 웹사이트 주소, 웹뷰 시작