Android
//oncreate
Webview web = (WebView) findViewById(R.id.webview);
webinter = new WebViewInterface(this, web);
web.getSettings().setJavaScriptEnabled(true);
web.addJavascriptInterface(webinter, "Android");
//버튼이벤트 발생시
strsignupid = signupid.getText().toString(); //editbox
webinter.setMessage(strsignupid);
web.loadUrl("외부서버 url");
web.setVisibility(web.GONE);
public class WebViewInterface {
private WebView mAppView;
private Activity mContext;
public WebViewInterface(Activity activity, WebView view) {
mAppView = view;
mContext = activity;
}
@JavascriptInterface
public void setMessage(final String str) {
handler.post(new Runnable() {
public void run() {
String sendMsg = URLEncoder.encode(str);
web.loadDataWithBaseURL(null, sendMsg, "text/html", "UTF-8", null);
Log.e(getLocalClassName(), "Bridge Msg = "+ str);
}
});
}
}
ASP
<% @CODEPAGE="65001" language="VBScript" %>
<%Response.ChaRset = "UTF-8"%>
<SCRIPT LANGAUGE="JavaScript">
function sendMessage()
{
window.Android.setMessage();
}
</script>
<%
Response.ChaRset = "euc-kr"
Dim str
str= "<script>document.write(sendMessage());</script>"
Response.Write str
%>
<%=sendMessage%>
앱(에디트박스)값을 웹서버로 날려 웹에 출력되도록 하려고 합니다.
추후 이 값으로 디비에 insert도 할 예정입니다.
안드로이드 setMessage 메소드 로그에는 데이터가 잘넘어가는데
웹에는 출력이 되지않습니다. 문제가 있습니까..?