简体   繁体   中英

Cordova Hybrid App fails, Legacy Android Build Works

I've written a small application to test the working of cordova app on XDK. The source code is same as this question

However, I am attaching the code here :

(function()
{
 "use strict";
 /*
   hook up event handlers 
 */
 function register_event_handlers()
 {


     /* button  Login */
    $(document).on("click", ".uib_w_9", function(evt)
    {
        //intel.xdk.notification.showBusyIndicator(); 
       /*$.post("http://url/test.php", {test:'1'}, 
            function(res){
                alert(res);
            }
       );*/
        $.ajax({
          beforeSend: function(){
            intel.xdk.notification.showBusyIndicator();
          },
          type: "GET",
          url: 'http://url/test.php',
          data:{test:'1'},
          success: function(res){
              alert(res);
              intel.xdk.notification.hideBusyIndicator(); 
          },
          error:function(res){
              alert(res);
              intel.xdk.notification.hideBusyIndicator(); 
          },
          dataType: 'text'
        });

    });

    }
 document.addEventListener("app.Ready", register_event_handlers, false);
})();

This is the JS file of the application.

The screenshot of the app in XDK emulator :

应用程序屏幕

工作画面

Now When I do a build of the app using XDK cloud, I get a .apk file.

On uploading the file to GenyMotion Emulator, screen below :

在GenyMotion模拟器中运行的应用

The click doesn't do anything, nor does the showBusyIndicator() show, nor the alert appear.

What am I missing and what is going wrong ? I've plans to use this ide for a proper project and hence the testing, some help will be appreciated.

UPDATE

XDK构建页面 I did a Cordova Hybrid App build initially and that caused the problem.

When I did a legacy android build, then the problem was solved.

So what do I need to do to get it to work with the Cordova Build ?

Build Page :

建立页面

There is a known issue with AJAX when Intel XDK builds apk with Cordova CLI version 4.1.2 . on Android version > 4.4

There is a workaround, go to Project Settings -> Build Settings -> Android , change Cordova CLI version from 4.1.2 to 3.5 and AJAX should work.

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM