javascript와 android 사이의 값을 전달하고 반환하는 전화 용 플러그인을 만들고 싶습니다.javascript 및 android에서 값을 전달하고 반환하고 전화 갭 플러그인으로 사용
아무도 아이디어를 제안 할 수 있습니까?
javascript와 android 사이의 값을 전달하고 반환하는 전화 용 플러그인을 만들고 싶습니다.javascript 및 android에서 값을 전달하고 반환하고 전화 갭 플러그인으로 사용
아무도 아이디어를 제안 할 수 있습니까?
실제로 이것은 그리 어렵지 않습니다. 그 (기본적으로 자바 클래스
웹보기는 자바 스크립트 인터페이스를 추가 생성 할 때 : 웹보기 내에서 네이티브 코드를 호출
: 자, 내가 어떻게 페이지 내에서 자바 스크립트와 그 반대에서 네이티브 코드를 호출하는 방법을 보여줍니다 방법은 웹보기에서 자바 스크립트를 통해 호출에 노출 될 것이다.
JavaScriptInterface jsInterface = new JavaScriptInterface(this);
webView.getSettings().setJavaScriptEnabled(true);
webView.addJavascriptInterface(jsInterface, "JSInterface");
자바 스크립트 인터페이스 클래스 자체의 정의 (이것이 내가 내 다른 답변에서했다 네이티브 의도에서 비디오를 열고 대표적인 클래스)
public class JavaScriptInterface {
private Activity activity;
public JavaScriptInterface(Activity activiy) {
this.activity = activiy;
}
public void startVideo(String videoAddress){
Intent intent = new Intent(Intent.ACTION_VIEW);
intent.setDataAndType(Uri.parse(videoAddress), "video/3gpp"); // The Mime type can actually be determined from the file
activity.startActivity(intent);
}
}
이제이 코드는 다음과 같은 방법을 제공하는 페이지의 HTML 형성 호출 할 경우 :
<script>
function playVideo(video){
window.JSInterface.startVideo(video);
}
</script>
쉬운 그렇지를?
네이티브 코드에서 자바 스크립트 코드를 호출 :
<script>
function function(){
//... do something
}
</script>
그런 다음 당신은 웹보기를 통해이 함수를 호출 :
이것은 당신이 자바 스크립트 함수가 정의한 또한 웹보기에로드 된 HTML의 코드에서 가정하자 간단을 같은 네이티브 코드 :
webView.loadUrl("javascript:function()");
는 여기에 폰갭 플러그인을 만들기위한 tutorial을합니다. ChildBrowser 플러그인을위한 instructions도 특히 좋습니다.
안녕하세요. 감사합니다. Boris : D 정확히 내가 찾고있는 것입니다. 당신이 아주 좋은 간단한 방법으로 자세히 쓴 것을 정말 좋아합니다. Jgd, God Bless you : – Prax
네이티브 코드의 자바 스크립트 코드가 작동하지만, 자바 코드에서 Java 코드로 값을 반환하기 위해 어떻게 변경합니까? – user280109
@ user280109 : 호출시 매개 변수 값을 추가해야합니다. 다음은 예입니다 : http://stackoverflow.com/a/4330642/1108032 –