Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/387.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/198.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
从java代码(cordovaActivity)android调用javascript函数_Java_Android_Angularjs_Cordova_Ionic - Fatal编程技术网

从java代码(cordovaActivity)android调用javascript函数

从java代码(cordovaActivity)android调用javascript函数,java,android,angularjs,cordova,ionic,Java,Android,Angularjs,Cordova,Ionic,嗨,我是android新手,正在使用cordova开发应用程序。与此同时,我被迫在native和angularjs之间切换,好的是我能够从javascript代码调用java方法,但我无法实现相反的效果。这是我的android代码 public class CordovaApp extends CordovaActivity { JavaScriptInterface javaScriptToJava = new JavaScriptInterface(this); @Overr

嗨,我是android新手,正在使用cordova开发应用程序。与此同时,我被迫在native和angularjs之间切换,好的是我能够从javascript代码调用java方法,但我无法实现相反的效果。这是我的android代码

public class CordovaApp extends CordovaActivity
{

     JavaScriptInterface javaScriptToJava = new JavaScriptInterface(this);


@Override
public void onCreate(Bundle savedInstanceState)
{
    super.onCreate(savedInstanceState);
    super.init();

    appView.getSettings().setJavaScriptEnabled(true);
    appView.addJavascriptInterface(javaScriptToJava, "javaScriptToJava");
    // Set by <content src="index.html" /> in config.xml
    loadUrl(launchUrl);
}

//on ActivityResult method
public void onActivityResult(int requestCode, int resultCode,Intent intent)       {

    if (requestCode == 0) {
        Log.d("outside","on ----------------------");
        if(resultCode == RESULT_OK) {
            //get the extras that are returned from the intent
            String contents = intent.getStringExtra("SCAN_RESULT");
            String format = intent.getStringExtra("SCAN_RESULT_FORMAT");
            Log.d("inside on activity result",contents);


        }
    }

    if(requestCode==1)
    {
        Log.d("onactivity result","got into second activity");
            int position=intent.getIntExtra("Message",0);
            Log.d("inside on activity result",""+position);
            //appView.loadUrl("javascript:alert(javaScriptToJava.startScanner())");

            //this is working-----------
            //appView.loadUrl("javascript:(function(){document.getElementById('signin').click()})()");


            //appView.loadUrl("file:///android_asset/www/index.html");
            appView.loadUrl("javascript:testFunction()");   


    }

}
}
我也尝试过webViewClient,但没有成功。我尝试过在login.html和index.html中提供脚本,但仍然没有定义它的giving testFunction。 这是我在login.html中编写的示例脚本

<ion-view style="background: #8eb4e3;" >

<ion-content has-header="false"
    padding="true">
    <div class="body" >
        <div style="margin-top: 60px;" align="center">
            <img src="img/login_logo_MyStock.png" class="loginLogo">
                </div>
        <div style="margin-top: 25px;" align="center" ng-enter="login1()"  >
        </div>
        <div style="margin-top: 50px;" align="center">
            <img src="img/Tesco.png" class="tescoLogo">
                </div>
    </div>
    <script type="text/javascript">
       alert("inside script");
       function testFunction()
       {
        alert("came to testFunction");        
       }
   </script>
 </ion-content>

</ion-view>

警报(“内部脚本”);
函数testFunction()
{
警报(“来到testFunction”);
}
在这个问题上有人能帮忙吗

<ion-view style="background: #8eb4e3;" >

<ion-content has-header="false"
    padding="true">
    <div class="body" >
        <div style="margin-top: 60px;" align="center">
            <img src="img/login_logo_MyStock.png" class="loginLogo">
                </div>
        <div style="margin-top: 25px;" align="center" ng-enter="login1()"  >
        </div>
        <div style="margin-top: 50px;" align="center">
            <img src="img/Tesco.png" class="tescoLogo">
                </div>
    </div>
    <script type="text/javascript">
       alert("inside script");
       function testFunction()
       {
        alert("came to testFunction");        
       }
   </script>
 </ion-content>

</ion-view>