我有一个使用以下版本构建的移动Web应用程序:

> JQuery Mobile:Alpha 4 v1.0a4.1
> JQuery:v1.6.1
> PhoneGap:v0.9.5

使用phonegap,这个应用程序是内置在一个本机Android应用程序并部署.

在我的应用程序中,我使用$.ajax对外部网站进行各种AJAX调用.
为此,我使用dataType:’jsonp’来进行跨域调用.

当我在Chrome v12.0.742.100中测试我的应用程序时,一切正常,我从外部站点检索数据没有问题.但是,一旦我将它打包成.apk文件,并尝试在模拟器中运行,我发现没有一个ajax调用正在工作.

我已经在ajax调用之前和之后发出警报,并验证这两个警报是否被调用,但是ajax调用与被忽略一样好.我已经登录成功回调和错误回调,也没有达到.我也通过在外部服务器网站上放置一个断点进行验证(对于我的测试,我只在本地机器上单独使用一个网站),并且服务器页面绝对不被调用.

在logcat中,我可以看到的错误是:
D / SntpClient(59):请求时间失败:java.net.socketException:协议不支持的地址族

我对于手机差距以及Jquery Mobile来说非常新鲜,但据我了解,我的phonegap应用程序文件由file:///协议引用,而我的AJAX URL为http://127.0.0.1:someport/someapp/somepage,错误似乎表明这两个不混合!如果确实是这样,我该怎么做才能从部署应用程序的phonegap进行ajax调用?

请随意指出可能有帮助的任何其他内容!在这一点上我很沮丧.

编辑:我已经检查了AndroidManifest.xml文件,并且在此文件中设置了这个phonegap wiki link的所有权限.

编辑2:添加我的客户端代码,用于介绍ajax调用

var serverUrl = "http://localhost:2424/MyServer/RetrieveMasterData.aspx";
            $.ajax({
                url: serverUrl,type: 'POST',dataType: 'jsonp',data: { MasterDataID: 1 },success: function(response) {
                        ...... business logic here
                },error: function(xhr,ajaxOptions,thrownError) {
                        ...... error handling something here
                }
            });

解决方法

Android模拟器无法识别“localhost”…应该是10.0.2.2.
尝试将url更改为
http://10.0.2.2:2424/MyServer/RetrieveMasterData.aspx

JQuery mobile Phonegap:Ajax调用在Android Emulator上无效的更多相关文章

  1. jquery点赞功能实现代码 点个赞吧!

    点赞功能很多地方都会出现,如何实现爱心点赞功能,这篇文章主要为大家详细介绍了jquery点赞功能实现代码,具有一定的参考价值,感兴趣的小伙伴们可以参考一下

  2. ios – 如何将PhoneGap调试控制台与CLI集成?

    我需要在config.xml中添加任何内容吗?

  3. 如何在iOS上使用PhoneGap从照片库中获取图片?

    我正在使用以下代码尝试从iOS照片库中选择一张照片:我在iPhone5s和PhoneGap3.3.0上使用iOS7.无论我做什么,总是带上相机.我究竟做错了什么?解决方法想想我找到了:应该:sourceType中有一个拼写错误.也许就是这样吗?

  4. PhoneGap / iOS上的SQLite数据库 – 超过5mb可能

    我误解了什么吗?Phonegap中的sqlitedbs真的有5mb的限制吗?我正在使用Phonegap1.2和iOS5.解决方法您可以使用带有phonegap插件的原生sqliteDB,您将没有任何限制.在iOS5.1中,Websql被认为是可以随时删除的临时数据…

  5. ios – 如何在使用PhoneGap构建的iPhone应用程序中使用Google Web Font?

    我们希望在为iOS设备构建的PhoneGap应用程序中使用GoogleWebFonts,但我们希望在应用程序包中托管字体文件,而不是使用代码通过Web动态获取字体.如果设备处于脱机状态,除非将字体文件捆绑到应用程序中,否则字体将不可用.谷歌提供下载网络字体的能力,但我们如何引用HTML应用程序内的本地字体文件?解决方法我们将字体文件放在.ttf格式的某个地方的assets/www文件夹中.宣言:然后像这样使用它:

  6. iOS编译库/框架链接器标记问题是设备编译而不是模拟器

    背景:我正在尝试使用带有cocoapods的Phonegap.Phonegap已经存在从命令行编译的问题所以我只是将Xcode与生成的项目文件一起使用(并且在使用cocoapods时我无论如何都必须这样做).我用我的问题向Github推送了一个复制的空项目:https://github.com/Dan2552/phonegap-reproducable-issue您可以在repo的根目录中的bui

  7. 适用于Xcode,IntelliJ Idea和Phonegap(又名Cordova)的gitignore模板

    有没有人有一个很好的预先推出的gitignore文件用于使用Xcode和PhoneGap的iPhone开发?

  8. 使用XCode 9 / iOS 11时出现Phonegap错误

    获取“没有为模拟器指定目标.部署到未定义的模拟器设备类型”无法找到com.apple.CoreSimulator.SimDeviceType.undefined“.使用XCode9/iOS11运行Phonegap项目时出错.有没有人有解决方法?解决方法将cordova更新至4.5.0是的…现在不推荐使用cordova插件控制台,需要将其删除.Youwillgetherethedetails

  9. 通过PhoneGap(iOS)上传后图像侧向/上下颠倒

    不确定会导致这种情况,但是当我通过FileTransfer()将一些图像上传到我的远程服务器时,图像有时会显示为横向或颠倒.但是,当我在iPhone上本地查看图像时,它们以正确的方式定位.例如,当我选择这样的图像上传时:http://sharefa.st/view/WBe2QNSK8r8z结果如下:http://sharefa.st/view/EWdW1Z4G8r8z我使用本地路径传输文件,所以我

  10. ios – 如何将phonegap应用程序部署到ipad / iphone

    我是制作ipad/iphone应用程序的新手.我对使用phonegap完全不熟悉.我下载了一个HelloWorld应用程序并用xcode打开它.它在模拟器中工作正常.所以我试着把它部署到我的iPad上.当我在xcode中点击BuildandRun时,我收到此错误:我不知道这是什么意思.几个月前我申请了AppleDeveloper计划.我收到一封电子邮件说我成功注册了.我是否需要从网站上的Apple帐户复制某种证书到我的ipad,以便xcode能够将我的helloworld程序部署到ipad?

随机推荐

  1. jquery-plugins – 是否可以使用猫头鹰旋转木马实现循环/无限轮播?

    我正在使用猫头鹰旋转木马,它的工作完美,除了它不支持循环/无限滚动.我没有搜索google和stackoverflow的想法,没有运气.有没有人在猫头鹰旋转木马上实现圆形/无限滚动?

  2. jQuery动态输入字段焦点

    我想使用以下jQuery向我的页面动态添加一个输入字段:在这样做之后,我希望输入字段具有闪烁的文本光标的焦点,所以我想在创建后立即输入.有人可以告诉我我该怎么办?

  3. jquery – 为什么$(window).height()这样错了?

    我试图获取当前浏览器的视口高度,使用但我得到的价值观太低了.当视口高度高达850px时,我从height()获取大约350或400像素的值.这是怎么回事?

  4. jquery – 如果在此div之外和其他draggables内部(使用无效和有效的还原选项),则可拖动恢复

    例如这样但是由于明显的原因,这不行.我可以说这个吗?

  5. 创建一个jQueryUI 1.8按钮菜单

    现在jQueryUI1.8已经出来了,我正在浏览更新,并且遇到了新的Buttonwidget,特别是SplitButtonwithadropdown的演示之一.这个演示似乎表明Buttonwidget可以在这里创建一个下拉菜单.作为讨论的问题,我想知道使用这个新的Button小部件来创建一个下拉菜单有什么方法.干杯.解决方法您必须在按钮下方列出一个列表,方式类似于此处为自动完成提供的演示:http

  6. 灰色divs使用JQuery

    我试图使用这个代码:为了淡出一大堆名为MySelectorDiv的div,唯一的是,它只会淡出第一个而不是所有的div,为什么呢?

  7. 使用jQuery动态插入到列表中

    我有两个订单列表在彼此旁边.当我从一个列表中选出一个节点时,我想按照字母顺序插入到另一个列表中.抓住的是我想要把一个元素放在另一个列表中,而不刷新整个列表.奇怪的是,当我插入到右边的列表中,它工作正常,但是当我插入到左边的列表中时,顺序永远不会出来.我也尝试将所有内容读入数组,并将其排序在一起,以防止children()方法没有按照显示顺序返回任何东西,但是我仍然得到相同的结果.这是我的jQuer

  8. 没有回应MediaWiki API使用jQuery

    我试图从维基百科获取一些内容作为JSON:但我没有回应.如果我粘贴到浏览器的地址栏,就像我得到预期的内容.怎么了?解决方法您需要通过添加&callback=?来触发具有$.getJSON()的JSONP行为?在querystring上,像这样:Youcantestithere.没有使用JSONP,你正在击中same-originpolicy,阻止XmlHttpRequest获取任何数据.

  9. jQuery Ajax请求每30秒

    我有这段代码,但是有些人在我的网站上的值可能会改变.我需要每30秒钟更新一次#financediv.这可以做吗解决方法您可以将代码放在单独的函数中,如下所示:然后每30秒建立一个定时器调用该函数:祝你好运!总结以上是DEVMAX为你收集整理的jQueryAjax请求每30秒全部内容。如果觉得DEVMAX网站内容还不错,欢迎将DEVMAX网站推荐给好友。

  10. jquery – keypress事件在IE和Chrome中不工作,但在FF工作

    任何想法为什么会这样发生?我通常认为Chrome会更加宽容代码?这是我的按键键.我错过了什么吗?右图();和leftimage();是应该工作的功能,因为我在其他地方使用这些功能谢谢您的帮助!

返回
顶部