Any Java Native code call be called without using any plugin as following.
Follow The following Steps.
Replace the following code with your existing DroidGap Activity.
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
super.init(); // Calling this is necessary to make this work
appView.addJavascriptInterface(this, "MainActivity");
/* "this" points the to the object of the current activity. "MainActivity" is used to refer "this" object in JavaScript as in Step 3. */
super.loadUrl("file:///android_asset/www/index.html");
}
Add the custom function in current (this) activity as following.
public void customFunctionCalled() {
Log.e("Custom Function Called", "Custom Function Called");
}
Now call this function from your HTML/JavaScript code as following.
<script type="text/javascript">
function callNewActivity() {
window.MainActivity.customFunctionCalled();
}
</script>
This will call customFunctionCalled()
in MainActivity
.
Tested Environment
Eclipse - 3.7.2
Android 2.2 Emulator
PhoneGap - 2.0.0
Please provide your comments here to improve blogs post.
http://phonegapexplorers.blogspot.in/2012/08/call-native-java-code-phonegap-android.html
与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…