允许在 Android Webview + jquery mobile 中进行远程 ajax 调用

2023-11-26

我正在使用 jquerymobile 开发一个 javascript/HTML 应用程序,它向远程服务器发出 ajax 请求。该应用程序在 Chrome 上运行良好(仅在禁用网络安全的情况下启动 chrome),但是当我将其嵌入 Android 应用程序(一个简单的 webview)的 asset/ 目录中时,远程 ajax 调用失败。因此我猜测这可能是跨域问题。我知道phonegap 没有这个问题,但如果可能的话我不想使用phonegap。所以问题是:如何在 Android webview 应用程序中禁用跨域保护?

这是活动代码:

public class Moby extends Activity {

@SuppressLint("NewApi")
@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_moby);

    WebView mbrowser = (WebView) findViewById(R.id.webView1); //get the WebView from the layout XML
    if (Build.VERSION.SDK_INT >= VERSION_CODES.JELLY_BEAN) 
        mbrowser.getSettings().setAllowUniversalAccessFromFileURLs(true);
    //mbrowser.setWebChromeClient(new WebChromeClient());
    mbrowser.setWebViewClient(new WebViewClient());
    mbrowser.loadUrl("file:///android_asset/index.html"); //set the HTML
    WebSettings settings = mbrowser.getSettings();
    settings.setJavaScriptEnabled(true);
}

}

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

我已经在我的 html 页面中设置了 jquerymobile 跨域参数:

<script src="script/jquery-1.8.2.js"></script>
<script>
 $(document).bind("mobileinit", function(){
 $.support.cors = true;
 $.mobile.allowCrossDomainPages = true;       
}); 
</script>
<script src="script/jquery.mobile-1.2.0.js"></script>

我没有足够的积分来发表评论,但是,请查看以下内容:

ajax 适用于某些 Android 设备,不适用于其他设备

具体来说,基于 Chrome 的 webView 需要满足以下条件:

webView.getSettings().setAllowUniversalAccessFromFileURLs(true);

编辑:抱歉,我刚刚看到你已经在这样做了——我对此进行了测试,它似乎已经解决了我的问题(通过 ajax 加载本地链接时出现 access-control-allow-origin 错误)。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

允许在 Android Webview + jquery mobile 中进行远程 ajax 调用 的相关文章

  • Kotlin Android Firebase 数据库哈希映射转换为类

    我正在尝试从 firebase 数据库获取数据 断点显示它正在获取数据 但看起来我没有正确地将其分配给我的班级 这会导致此异常 java lang ClassCastException 无法将 java util HashMap 转换为 班
  • 将用户重定向到 iTunes 应用商店或 Google Play 商店?

    我正在寻找一种简单的解决方案来发布我的应用程序的一个链接 例如在 Facebook 上 如果用户使用移动设备访问它 它应该自动重定向到正确的应用程序商店 否则 用户应该被重定向到我的网站 iOS应用程序 http itunes apple
  • Android Widget ID 是否持久

    在从桌面删除该 Widget 实例之前 您从操作系统收到的用户桌面上特定 Widget 实例的 Widget ID 是否一致 我找不到任何明确说明这一点的文档 但我假设这是因为文档说您可以使用小部件 id 来存储任何实例配置信息 我想将一些
  • 在 Android 中使用 awt

    我有一个绘制图表的 Java Swing 应用程序 它使用 Graphics2D 调用和 awt 对象 例如 Rectangle 等 在某些时候我可能想将其移植到 Android 上 我知道我无法在 Android 上使用 Graphics
  • AIRPLANE_MODE 的广播接收器无法与 SDK 26 一起使用

    通常 我使用简单的代码来放置Toast当用户改变AIRPLANE MODE 并且它可以使用targetSdkVersion 25 我的 AirPlaneModeReceiver public class AirPlaneModeReceiv
  • Android 中图像字节表示的每像素字节数

    我目前正在编写一个Android应用程序 需要在其中使用OCR 为了实现这一点 我将 Tesseract 与tesseract android tools 项目 http code google com p tesseract androi
  • Ajax 加载并淡入

    我正在尝试使用 ajax 在 html 中加载淡入淡出 它加载但没有褪色 我不知道我做错了什么 这是我的代码 artworks click function load artworks page content load artworks
  • 将清除会话标志设置为 FALSE 后,我丢失了已发布的值

    有人有一个合乎逻辑的解释为什么尽管我有clear session flage false当我未连接到经纪商时 我没有收到我订阅的更新的已发布消息 将 aore提到的标志设置为 false 后 我运行了我的应用程序 并且我不断向主题发布一些值
  • Android Studio APK META-INF/BCKEY.DSA 中复制的重复文件

    我的代码构建得很好 但是当我尝试在调试中运行它时 出现以下错误 Error Execution failed for task app transformResourcesWithMergeJavaResForDebug com andro
  • 如何从画布中删除路径区域(Android)

    我需要裁剪角落ImageView 不要将它们弄圆 而是擦除每个角上的三角形 似乎唯一的方法就是覆盖onDraw方法并使用从画布上删除这些区域Path 问题是我没有纯色背景 所以我需要擦除这些区域 但不要用某种颜色填充它们 我为此使用以下代码
  • 如何在Room的数据库迁移中正确添加索引?

    我在迁移 Room 数据库时遇到问题 在更新的数据库中 我必须将一个字段从整数更改为双精度值 我读到它并不像听起来那么容易 为了做到这一点 我必须使用这个更改后的属性创建新的临时表 复制前一个表中的所有值 删除旧的值 最后重命名临时表 我的
  • DialogFragment 关闭事件

    我需要处理 DialogFragment 的结尾 在调用 dismiss 之后 例如 我会在关闭后 包含 片段的活动内显示一个 toast 我该如何处理该事件 覆盖onDismiss 在你的DialogFragment中 或者使用setOn
  • Android 两个 Activity 之间的共享元素转换不起作用

    在我的应用程序中 我尝试使用新引入的活动之间共享的元素 如果共享元素具有固定位置 例如 android layout gravity top 但是当视图被锚定时问题就出现了 我的第一个活动如下所示
  • android - 如何让按钮每次按下时单击播放声音文件?

    我打开了一个新项目 现在我想做的是 通过按下按钮 我想要播放一个 mp3 文件 而且每次按下按钮时 声音文件都会再次从头开始播放 所以假设 mp3 长 10 秒 我按下按钮 它正在播放 4 秒后我再次按下按钮 声音将再次播放 现在我想知道的
  • Android - 检测视图上的双击和三次点击

    我一直在尝试构建一个可以检测双敲击和三敲击的敲击检测器 在我的努力失败后 我在网上搜索了很长时间以找到可以使用的东西 但没有运气 奇怪的是 像这样的图书馆如此稀缺 有什么帮助吗 你可以尝试这样的事情 尽管我通常建议不要使用三次点击作为一种模
  • JavaScript 点击事件在 Android 4.0.4 默认浏览器上的 Samsung Galaxy SIII 上不起作用

    我在 Android 4 0 4 上使用 Samsung Galaxy SIII 的默认浏览器时遇到了最奇怪的问题 对于以下页面 单击链接将不会触发 JavaScript 处理程序 从其中一个 div 的内容中删除单个 a 字母使它们再次工
  • 片段中的 SavedInstanceState 始终为 null

    我使用 XML 以及活动中的 setContentView 将片段附加到活动 A 有一个问题 因为我的片段中有非常动态的视图 所以当方向改变时 我必须恢复所有的观点状态 我有问题 因为我正在使用类似的东西 public void onSav
  • Android:我的应用程序太大并给出“无法执行 dex:方法 ID 不在 [0, 0xffff]: 65536”?

    我正在尝试将我的应用程序与 Box Dropbox 和 Google Drive 集成 所有这 3 项服务都需要许多第 3 方 jar 此外 我的应用程序已经需要一些第三方 jar 现在 当我尝试从 Eclipse 运行我的应用程序时 出现
  • 在两个片段之间拖放视图

    我目前正在尝试在两个片段之间实现拖放 我已经将它们添加到我的活动中 如下所示 FragmentManager fm getFragmentManager FragmentTransaction ft fm beginTransaction
  • 将主题应用到 v7 支持操作栏

    我正在使用support v7库来实现ActionBar在我的应用程序中 我的styles xml file

随机推荐

  • 从文本框中获取整数值,如何检查它是否为 NaN 或 null 等?

    我正在通过 JavaScript 从文本框中提取一个值 如果文本框为空 则返回NaN 如果它是 null 空等 我想返回一个空字符串 我该做什么检查 if NAN tb value 嗯 这里有些可疑 在什么浏览器中空文本框返回 NaN 我从
  • 使用 spring3 @Value 访问 PropertyPlaceholderConfigurer 值?

    我正在尝试使用 spring bean 设置字符串的值 Value 当我的财产来源是的子类时PropertyPlaceholderConfigurer 有人知道怎么做吗 老问题 但仍然值得回答 您可以像使用原始表达式一样使用该表达式Prop
  • 如何通过 JObject 进行枚举?

    我正在尝试确定如何访问 JObject 中的数据 但我无法确定如何使用它 JObject Object JObject Response Data my key 我可以通过 Console WriteLine Object 将其打印到控制台
  • 内联脚本,因为它违反了以下内容安全策略指令:“script-src 'self'”

    I use react create app构建我的 chrome 扩展 当我使用npm run build在react create app中我有错误 拒绝执行内联脚本 因为它违反了以下规定 内容安全策略指令 script src sel
  • 通过 Eclipse 调试 Pylons 应用程序

    我使用 PyDev 设置了 Eclipse 并且喜欢能够调试我的脚本 应用程序 我刚刚开始使用 Pylons 想知道是否有一种方法可以通过 Eclipse 启动 Paster 服务器 以便我可以调试我的 Web 应用程序 创建新的启动配置
  • Kotlin 中的 Getter 和 Setter

    例如 在 Java 中 我可以自己编写 getter 由 IDE 生成 或使用像 lombok 中的 Getter 这样的注释 这非常简单 然而 Kotlin 有默认情况下的 getter 和 setter 但我不明白如何使用它们 我想让它
  • jQuery 循环 pagerAnchorBuilder

    我正在使用 Cycle 插件在新闻旋转器中使用 这意味着我使用 Div 来填充幻灯片而不是图像 我的最终目标是制作一个寻呼机 而不是通常的 1 2 3 4 等 而是返回幻灯片中的第一个 H3 标签 我知道这可能是一个小选择问题 但这是我到目
  • 是否可以将自定义小部件添加到 QListView 中?

    我有大量日志数据 100 1000 100000 记录 我想通过以下方式将其可视化 哪个小部件 例如QListView QListWidget 我应该使用以及如何使用 以避免性能和内存问题 是否可以将自定义小部件添加到 QListView
  • 通过LTR和RTL内容的组合改变负数的方向

    这是我的 HTML 结构 div direction rtl span direction ltr div span 2 span div 这是预期结果 如你所见 符号应出现在数字的开头 我怎样才能做到这一点 Note 的方向div应该rt
  • 如何确定主语、宾语等词语?

    我正在尝试实现可以 通过将句子分成更小的部分来确定句子含义的应用程序 所以我需要知道哪些词是主语 宾语等 以便我的程序知道如何处理这个句子 这是一个开放的研究问题 您可以在维基百科上获得概述 http en wikipedia org wi
  • 如何使用 Node.js 将 Base64 编码的图像(字符串)直接上传到 Google Cloud Storage 存储桶?

    目前 我正在使用 google cloud 存储NPM 包可将文件直接上传到 Google Cloud Storage 存储桶 这需要一些技巧 因为我只有图像的 base64 编码字符串 我必须 解码字符串 将其另存为文件 将文件路径发送到
  • 我也可以通过单击其他元素来展开/折叠 JQuery ui Accordion 的内容吗?

    默认情况下 有内容标题来控制展开 折叠 但在我的情况下 我也可以通过其他元素展开 折叠内容 例如 jquery ui 手风琴代码的基本结构 div class demo div h3 a href Section 1 a h3 div p
  • 在python中按时间(TimestampType)连接两个spark数据帧

    我有两个数据帧 我想基于一列连接它们 但需要注意的是 该列是一个时间戳 并且该时间戳必须在一定的偏移量 5 秒 内才能连接记录 更具体地说 记录在dates df with date 1 3 2015 00 00 00应该加入events
  • 安装 pywin32 lib 后仍然收到错误“ImportError:没有名为 win32com.client 的模块”

    我已经从这里安装了 Python for Windows 扩展 库 http sourceforge net projects pywin32 files pywin32 但是当我在程序中导入 win32com client 时 我仍然收到
  • 与 Windows 7 兼容的最新 NodeJS [重复]

    这个问题在这里已经有答案了 我正在尝试为 Windows 7 安装 NodeJS 我尝试安装最新的 NodeJS 但它与 Windows 7 不兼容 我想知道是否有人知道可以在 Windows 7 上安装的最新版本的 NodeJS 是什么
  • 底层字符集是否仅取决于 C 实现?

    许多文本警告说 处理char整数值不可移植 例如假设 A 的值为 65 如 ASCII 所示 但是什么决定了该字符集是 ASCII 或扩展形式 还是其他字符集呢 是由操作系统决定的 还是由编译器决定的 我认为这不依赖于硬件 例如 Intel
  • C++ 向函数发送任何类型的参数

    事情是这样的 我想创建一个 void 函数 它将接收两种众所周知的值类型和另一种可以是任何类型的值 代码如下 void change settings string element short setting value switch se
  • 空感知函数调用? [复制]

    这个问题在这里已经有答案了 Dart 有一些空感知运算符 即可以执行以下操作 var obj obj foo foo is only called if obj null 这对于存储或传递给变量的函数也可能吗 通常的模式是 typedef
  • 禁用列表视图的交叉幻灯片选择

    我正在设计一个应用程序 它的中心有一个垂直平移的一维列表 用户可以通过翻转视图在列表之间水平翻转 当用户在列表视图中水平拖动时 它会选择该行 因为横向滑动 这不是我想要的行为 我最好希望 Flipview 开始左右平移 我认为这与rails
  • 允许在 Android Webview + jquery mobile 中进行远程 ajax 调用

    我正在使用 jquerymobile 开发一个 javascript HTML 应用程序 它向远程服务器发出 ajax 请求 该应用程序在 Chrome 上运行良好 仅在禁用网络安全的情况下启动 chrome 但是当我将其嵌入 Androi