Android Lollipop jsonp调用在调试但不发布(Cordova)

时间:2015-01-01 18:17:32

标签: android jquery ajax cordova jsonp

首先,感谢本网站的所有专家。你们都让我经历了很多!

我遇到了一个我无法弄清楚的问题。在之前版本的Android(pre-Lollipop)中,我能够通过Cordova应用程序对我的服务器进行jsonp调用。从5.0+开始,我收到ReadyState:0错误。真正奇怪的是(至少对我而言)是代码在调试版本中运行得很好,但在发布版本中没有。这是javascript / jquery:

var url = "https://mydomain.com/mobile/login.php?username=" + $('#username').val() + "&password=" + $('#password').val();

        if ($('#username').val() != '' && $('#password').val() != '') {
            $.ajax({
                type: "GET",
                url: url,
                cache: false,
                dataType: 'jsonp',
                beforeSend: function(){
                    $('#progressbar').fadeIn();
                    $('#progressbar').progressbar({value: false});
                },
                success: function(data){
                    if (!data.session){
                        $('#incorrect_login').fadeIn();
                        $('#progressbar').fadeOut();
                    } else {
                        localStorage.setItem("sessionId", data.session);
                        window.open("basepage.html", "_self");
                    }
                }
            });
        }

服务器返回(如果用户名/密码正确):

echo $_GET['callback'] . "({'session': " . json_encode($sessionName) . "})";

Cordova权限:

<access origin="https://mydomain.com*" subdomains="true" />

AndroidManifest.xml:

<uses-sdk android:minSdkVersion="10" android:targetSdkVersion="21" />
<uses-permission android:name="android.permission.READ_CONTACTS" />
<uses-permission android:name="android.permission.WRITE_CONTACTS" />
<uses-permission android:name="android.permission.GET_ACCOUNTS" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permissions.NETWORK_ACCESS" />

我已按照here(以及其他)中的步骤进行操作:

我使用的是Cordova 4.1.2,Cordova Android 3.6.4和JQuery 1.10.2。

谢谢!

0 个答案:

没有答案