Android上的PhoneGap 3.3和移动服务HTML应用程序

时间:2013-12-20 14:48:24

标签: javascript android html cordova azure-mobile-services

我已经安装了最新的PhoneGap版本(3.3),打包了我的移动服务HTML应用程序并点击了已知的授权问题:

只能从http://和https://网址支持登录。请在Web服务器中托管您的页面

我在网上搜索了这个问题(http://social.msdn.microsoft.com/Forums/windowsazure/en-US/a2386093-73cd-44fb-a418-4fa83a36c800/phonegap-apps-using-the-new-html-client-for-azure-mobile-services-is-not-working?forum=azuremobile),但解决方案对我不起作用。该项目由phonegap参考<script type="text/javascript" src="phonegap.js"></script>创建,但即使我将其更改为<script type="text/javascript" src="cordova.js"></script>也无效。

这个问题有解决方法吗?

我的源代码:

<html>
<head>
    <meta charset="utf-8" />
    <title>Report</title>
    <meta name="format-detection" content="telephone=no" />
    <meta name="viewport" content="user-scalable=no, initial-scale=1, maximum-scale=1, minimum-scale=1, width=device-width, height=device-height" />

    <script type="text/javascript" src="cordova.js"></script>
    <script src="http://ajax.aspnetcdn.com/ajax/mobileservices/MobileServices.Web-1.1.0.min.js"></script>
    <script src="http://cdnjs.cloudflare.com/ajax/libs/jquery/2.0.3/jquery.min.js"></script>
    <script src="myscript.js"></script>
</head>

myscript.js

var app = {
    initialize: function() {
        document.addEventListener('deviceready', this.onDeviceReady, false);
    },

    onDeviceReady: function() {
        var client = new WindowsAzure.MobileServiceClient(
            "https://myapp.azure-mobile.net/", "XXX");
        client.login("google").done(....
    },
};

$(document).ready(function documentReady() {
    app.initialize();
});

编辑21.12。

显然,PhoneGap 3不再在window.device.cordova中报告其版本,移动服务会在其中对其进行检查。但即使假装它也无济于事 - 在谷歌授权后,它会进入空白页面。

1 个答案:

答案 0 :(得分:0)

最近修改了版本问题并更新了设备核心插件。

device.cordova.version应正确说明您正在运行的版本。

因此,如果您打算使用它,您现在可以这样做。