当前位置: 首页 > 面试题库 >

PhoneGap / Android WebView引发“未知铬错误:0”

边永贞
2023-03-14
问题内容

我目前正在使用PhoneGap开发项目,我需要向本地Web服务器发出ajax请求,该服务器已经:

PHP代码

header('Access-Control-Allow-Origin: *');

无论如何,当我在Android上使用jQuery执行ajax请求时,出现此错误(在adb logcat中):

D/chromium(23078): Unknown chromium error: 0

Javascript代码为:

$.ajax({url:"http://192.168.1.219/works/privati/folder/api.php/getlastmaginfo",dataType:"json",success:function(data)
{
    console.log("Finished loading by ajax");
    console.log(data);
}});

在Ripple Emulator中,按预期运行,在Android nope中。

有什么建议吗?感谢您的帮助!

更新2013-08-21:

经过一些研究,我得出的结论是$ .ajax无法与PhoneGap一起使用(不知道为什么,也许是错误?)。我们必须改用$ .get,但是当我使用$
.get进行请求时,Unknown chromium error: -6
我在这里也读到了问题,这是由于Android的WebView
URL机制错误所致。

我将继续研究,直到找到一个好的且可行的解决方案

更新2013-08-21(2): 甚至 无法 使用此功能

var fileTransfer = new FileTransfer();

fileTransfer.download(
    "http://192.168.1.219/works/privati/qlipmag/api.php/getlastmaginfo",
    "json.json",
    function(entry) {
        console.log("OKAY");

    },
    function(error) {
        console.log(error);
    }
);

错误位于new FileTransfer();=>Uncaught ReferenceError: FileTransfer is not defined

更新2013-08-22:

即使加载外部图像也不起作用:

<img src="http://externalhost.com/image.jpg"/>

同样的错误。

在Android清单文件中,我已经设置了权限:

<uses-permission android:name="android.permission.INTERNET" />

我真的不知道问题出在哪里…

更新2013-08-27:
我在iPhone的PhoneGap(在iPhone模拟器中)上尝试了相同的代码,并且当我使用外部网站时ajax请求成功。在Android上也使用外部网站不会得到相同的结果。同样的错误。

有人知道为什么吗?访问来源设置良好…


问题答案:

更新2013-08-27(1小时后)

解决的问题

实际上,PhoneGap不允许对IP地址进行Ajax请求,而仅允许对白名单(在config.xml中)域的请求。我使用生产服务器(带有域)进行测试,并且可以正常工作。

谢谢你们。我希望这可以帮助



 类似资料:
  • 移动应用程序新手。我正在尝试在我的android应用程序上使用webview。但我的代码中有一个问题。我使用了https://developer.android.com/但它现在不知怎么起作用了。你能查一下我的密码吗。。。。 Android说“无法解决符号webview”... 整个代码都在这里-

  • 使用Phonegap推送通知,如下所示 http://devgirl.org/2013/07/17/tutorial-implement-push-notifications-in-your-phoneGap-application/ 在使用.apk构建.apk时,我得到了这个错误.. 失败 失败:生成失败,出现异常。 出了什么问题: null 总时间:15.085秒 错误:带有args:/s,/

  • 我试图修改build.sbt文件,以添加IntelliJ IDEA中的scalatest依赖项。控制台中没有错误日志,但我得到了一个。我怎么解决这个?多谢! 这是我用来添加依赖项的行:

  • 问题内容: 在我的node.js应用程序中,我做了一个操作,以便可以使用客户端javascript中固有的btoa()和atob()函数,但由于某种原因未包含在node中。新目录显示在我的node_modules文件夹中,该文件夹本身与app.js一起位于根目录中。然后,确保将btoa- atob作为依赖项添加到根目录下的package.json文件中。 但是,由于某种原因,它仍然无法正常工作。

  • 问题内容: 我重新启动了Eclipse,并且错误在同一行上更改为“错误:解析XML:未绑定前缀” 我正在尝试在我的android phonegap应用程序中使用此插件。这是一个本地通知插件。我在这行的config.xml文件中收到错误: 有一个关于这个问题的一个类似的问题在这里,但答案是不相关的我的问题。 这是我的config.xml文件: 我正在使用带有adt插件的eclipse。我生成了一个a

  • 为什么程序不起作用?当我在第一个问题上输入'1',然后在第二个问题上输入一些东西时,出现了一个红色文本:(程序没有完成,但它应该能工作,不是吗?) 线程“main”Java.lang.StringIndexOutOfBoundsException:字符串索引超出范围:0在Java.lang.String.Charat(String.Java:658)在javaApplication2.javaAp