【问题标题】:Save image to Photos app in Simulator - Generate screenshot in iOS 13将图像保存到模拟器中的照片应用程序 - 在 iOS 13 中生成屏幕截图
【发布时间】:2019-06-05 03:24:43
【问题描述】:

编辑

  • 这似乎是运行 iOS 13 Beta 的模拟器的照片应用程序中的一个错误。
  • 事实上,尝试使用 Safari 从任何网站下载任何图像会导致相同的灰色“占位符”图像(下图)保存到“照片”中。
  • 此外,尝试共享此类图像会立即使照片应用程序崩溃(同时共享默认图像有效)。
  • 同样的代码可以在运行 iOS 13 的物理设备上运行(图像已正确创建和保存)。
  • 在“设置”>“此应用”>“允许应用访问”>“照片”下显示“仅添加”,但如果我点击它尝试更改它,“设置”应用会崩溃。

原文:

如何根据 iOS 13 中的屏幕内容创建图像?

在 iOS 12 中,此代码有效:

UIGraphicsBeginImageContextWithOptions(view.frame.size, false, 0.0)
view.drawHierarchy(in: view.frame, afterScreenUpdates: true)
let myImage = UIGraphicsGetImageFromCurrentImageContext()!
UIGraphicsEndImageContext()

但在使用 iOS 13 模拟器的 Xcode 11 中,它会生成带有一些文本的像素化图像:

有人知道应该改变什么吗? Xcode 11 似乎运行与 Xcode 10.2 (Swift 5) 相同的 Swift 版本。

【问题讨论】:

    标签: ios swift uigraphicscontext ios13


    【解决方案1】:

    此错误似乎已在 iOS 13 Developer Beta 2 / Xcode 11 beta 2 中修复。

    • 以上代码新生成截图
    • 从 Safari 下载的图像可以正确保存和显示
    • 尝试在“设置”中更改应用的照片访问权限仍然会导致“设置”崩溃
    • 尝试共享之前生成的损坏图像仍然会使照片应用崩溃

    Xcode 11.0 beta 2 (11M337n)
    iOS 13.0 (17A5508l)

    【讨论】:

      猜你喜欢
      • 2014-07-02
      • 2012-07-27
      • 2013-01-04
      • 2010-12-17
      • 1970-01-01
      • 1970-01-01
      • 2013-09-11
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多