2012-04-23 3 views
1

나는 조금 잃어 버렸습니다 ... 저는 온라인에서 찾고 있었는데 내가 찾고있는 것을 찾지 못했습니다. 이것은 내가 자바Android : JavaScript에서 변수를 전달하는 자바에서 함수 호출

ClsAccessor accessors = new ClsAccessor(); 



class ClsAccessor{ 
    public String WorkingWithJason(String Json){ 
     String JsonVar; 
     JsonVar =""; 
     if (Json != ""){ 
      generateNoteOnSD("JsonFile.txt", Json); 
     } 
     JsonVar = getfileFromSDCard("JsonFile.txt"); 
     return JsonVar; 
    } 
    public void generateNoteOnSD(String Name, String data){ 
    //.... 
    } 

    public String getfileFromSDCard(String Name){ 
    //.... 
    String data; 
    //data = "....."; 
    return data; 
    } 
} 


public void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.main); 

    mWebView = (WebView) findViewById(R.id.webview); 
    mWebView.getSettings().setJavaScriptEnabled(true); 
    mWebView.addJavascriptInterface(accessors, "accessor"); 
    mWebView.loadUrl("file:///android_asset/Main.html"); 
    mWebView.setWebViewClient(new HelloWebViewClient()); 


} 

에서 뭘하는지이고 더보기 간략히 이것은 내가 필요한 모든 것입니다 자바 스크립트

var text = ""; 
function SendData(RecievedTextVariable){ 
    var text = accessor.WorkingWithJason(RecievedTextVariablejsn); 
    document//accessor.outWorkingWithJason(textjsn); 
    $("#main_div").html("bbbbbb bbbbbbbb"+text); 
} 

어떤 아이디어 나 예제를?

답변

2
mWebView.addJavascriptInterface(new YourInterface(), "something"); 

class YourInterface{ 
    public void out(String value){ 
     // do something 
    } 
} 

document.out(text) 대신 something.out(text)을 사용하십시오.

+0

나는 방법에있는 반환을 할 수 있고 javascript에서 그것을 받는가 ?? – user1342645

+1

자기가 해보려한다면 훨씬 더 재미 있지 않겠습니까? 문제가 생기면 그냥 물어보십시오. – Cristian