android - Apache Cordova for android 不加载资源

标签 android cordova angular

我已经创建了一个 Angular 2 应用程序,我正在寻找使用 Apache Cordova 创建一个 Android 应用程序。当我在 Marshmallow 模拟器中加载应用程序时,应用程序不会加载任何已声明的资源。如果我使用浏览器插件,它会按预期工作。使用 Chrome 检查设备的控制台会显示以下输出。

Chrome 控制台输出:

console

如果我运行 Cordova 初始示例,它可以在同一个 Android 模拟器中运行,所以它一定是源代码有问题。可以在 Github repository 中查看代码.该应用程序位于 www 目录中,为了进行测试,需要添加 android 平台。

$ cordova platform add android
$ cordova run android

我找不到这个问题的答案:

  • 资源看起来不错 - 排除文件路径问题。
  • 浏览器插件有效 (Chrome) - 丢弃应用程序错误和安全策略。
  • cordova 示例在 Android 上按预期工作 - 丢弃环境错误。

拜托,有人知道这个设置有什么问题吗?

最佳答案

我找到了根本原因。问题是通过使用 angular-cli工具,标签 <base href="/">正在自动添加。根据tag documentation , 它是解析所有文档的相对 URL 的基础。

对于此用例,删除基本标记或将其配置为有效值,如 <base href="/android_asset/www/">解决问题。由于我还没有使用路由功能,我觉得删除它或设置一个像 <base href="."/> 这样的值会更舒服。它适用于更多平台构建。

关于android - Apache Cordova for android 不加载资源,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39589695/

相关文章:

java - 如何在用指数显示之前确定 DecimalFormat 的最大大小?

android - Firebase notification_key 发送通知

javascript - 从 XML 文件中分离出一个结果

html - Paypal 混合应用

android - 在 Android 中获取 subview 以 match_parent

android - list .xml 错误

android - Visual Studio Cordova 混合应用程序 "release"与 "distribution"

javascript - Angular Material sidenav 指令在 app.component 中不起作用

angular - SSR - Angular Universal 9 加载我的根两次并挂起

angular - ng2-图表 : How to show percentage values inside the chart?