离子框架和angularjs imgcache无法在iOS设备上运行

时间:2015-05-28 16:31:44

标签: angularjs caching cors ionic-framework hybrid-mobile-app

我已经使用离子框架构建了一个混合应用程序。 我使用了角度imgcache(https://github.com/jBenes/angular-imgcache.js/tree/master)来允许缓存从外部站点获取的图像。

我使用的代码如下:

<img img-cache ic-src="{{src}}"/>

在命令行中,它在浏览器中使用(在使用'离子服务'之后)。 我在离子视图iOS应用程序中测试过它。 我现在已经使用它创建的xcodeproj并将其分发用于测试,但图像不会加载。

我甚至添加了cordova白名单插件并设置了metas以允许CORS请求。

是否有人有任何其他想法可能是什么问题?

2 个答案:

答案 0 :(得分:3)

首先,确保在ImgCacheProvider.manualInit = true;函数中将img缓存设置为手动初始化app.config

第二步 - 在deviceready事件之后的任何时间调用ImgCache.$init()(在您的情况下,在$ionicPlatform.ready函数中的某个地方)。

答案 1 :(得分:0)

如果您没有访问HTTPS端点,则可以通过检查.plist文件中的App Transport Security设置(在platforms / ios / {app_name} / {app_name} -Info.plist中找到)

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs$
<plist version="1.0">
  <dict>
    ...
    <key>NSAppTransportSecurity</key>
    <dict>
      <key>NSAllowsArbitraryLoads</key>
      <true/>
    </dict>
  </dict>
</plist>

从此资源:Publishing an Ionic Angular App for iOS - The Hidden Steps & Pitfalls