안드로이드 개발 질문/답변
(글 수 45,052)
안녕하세요.
WebView 를 사용해서 html의 자바 함수를 호출하여 안드로이드 SDK 에서 파라미터 전달까지는 정상적으로 됩니다.
문제는 구글맵이 있는 Activitiy를 띄울려고 하면 에러가 발생합니다. ㅜㅜ.ㅜㅜ
WebView 에서 다른 Activity 로 전환은 어찌 하나요??????
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.site_webview);
_webview = (WebView) findViewById(R.id.web_view);
// 웹뷰 생성
initWebView();
}
// 웹뷰 속성 설정
public void initWebView(){
// WebView 상태 설정하기
_webview.setWebViewClient(new NewAddressWebViewClient());
_webview.getSettings().setJavaScriptEnabled(true);
_webview.getSettings().setJavaScriptCanOpenWindowsAutomatically(true);
_webview.getSettings().setPluginsEnabled(true);
_webview.getSettings().setPluginState(WebSettings.PluginState.ON_DEMAND);
_webview.getSettings().setSupportMultipleWindows(true);
_webview.getSettings().setSupportZoom(true);
_webview.getSettings().setBuiltInZoomControls(true);
_webview.getSettings().setBlockNetworkImage(false);
_webview.getSettings().setLoadsImagesAutomatically(true);
_webview.getSettings().setUseWideViewPort(true);
_webview.getSettings().setCacheMode(WebSettings.LOAD_NO_CACHE);
_webview.setWebChromeClient(new WebChromeClient());
_webview.clearCache(true);
// Bridge 인스턴스 등록
_webview.addJavascriptInterface(new JavaScriptExtension(), "HybridApp");
// URL 호출하기
_webview.loadUrl("newAddressUrl);
}
public Activity act = this;
// JavaScriptExtension 설정
final class JavaScriptExtension {
JavaScriptExtension() {}
public void setMessage(final String arg) {
Toast.makeText(getApplicationContext(), arg, Toast.LENGTH_LONG).show();
((globalFunction) AddressMatch.this.getApplication()).setAddress(arg);
// 구글 맵 Activity 로 이동....
Intent intent = new Intent(act, mymapgoogle.class); // 에러 발생
startActivity(intent);
}
}
감사합니다.



