swift3 playground无法获取路径的沙箱扩展

时间:2017-02-19 07:46:20

标签: ios swift3 swift-playground

当我在Playground中创建一个ImageView时,它会向我显示“沙盒扩展”错误。

let url = URL(string: "http://www.objc.io/images/covers/16.jpg")!
let image = CIImage(contentsOf: url)!
let imageView = UIImageView(frame: image.extent)
imageView.image = UIImage(ciImage: image )
PlaygroundPage.current.liveView = imageView

控制台消息:

2017-02-19 15:37:06.803 Chapter2[73915:885328] Failed to obtain sandbox extension for
path=/var/folders/3t/2tbk2tn96_v6_39rrjym3hsr0000gn/T/com.apple.dt.Xcode.pg/containers/
com.apple.dt.playground.stub.iOS_Simulator.Chapter2-8E7AB6A8-3EF4-47C0-BDA2-117817EA2934/Library/Caches/
com.apple.dt.playground.stub.iOS_Simulator.Chapter2-8E7AB6A8-3EF4-47C0-BDA2-117817EA2934. Errno:1

1 个答案:

答案 0 :(得分:7)

关键是将URLCache设置在游乐场的沙箱中。

试试这个:

import Foundation
import PlaygroundSupport
import UIKit

URLCache.shared = URLCache(memoryCapacity: 0, diskCapacity: 0, diskPath: nil)

func showObjIOImage() {
  guard let url = URL(string: "http://www.objc.io/images/covers/16.jpg") else {
        return
  }
  guard let image = CIImage(contentsOf: url) else {
    return
  }

  let imageView = UIImageView(frame: image.extent)
  imageView.image = UIImage(ciImage: image )
  PlaygroundPage.current.liveView = imageView
}

showObjIOImage()