UIImage下载返回零和崩溃的应用程序(快速)

简单性

我有一个图片网址字符串:

var remoteImage: String = "http://server.com/wall-e.jpg"

然后,我使用Grand Central Dispatch作为字符串参数构造一个UIImage以在单独的线程上下载remoteImageNSURL

let getImage = UIImage(data: NSData(contentsOfURL: NSURL(string: remoteImage)!)!)

完成后,我返回主线程,将其保存在内部:

UIImageJPEGRepresentation(getImage, 1.0).writeToFile(imagePath, atomically: true)

在Wi-fi和LTE上,它可以正常下载,但是在测试边缘情况(例如在边缘网络上(无双关语))时,我不一致地收到错误消息:

fatal error: unexpectedly found nil while unwrapping an Optional value

现在,我想通过确保不nil添加来确保自己安全

if getImage != nil { ... }

但这似乎没有什么不同。它仍然会收到错误并突出显示let getImage上面写的。我在这里做错了什么?我应该以其他方式或方法检查nil吗?

塞族人

实际上,该错误确实存在:

    let getImage = UIImage(data: NSData(contentsOfURL: NSURL(string: remoteImage)!)!)

原因是最初返回nil的不是UIImage,很可能是NSData返回nil。您可以检查NSData是否返回nil,然后创建UIImage对象。

编辑:特定代码行在做的是假设NSData始终返回非零值,当您未连接时这可能不正确。当您未连接时,它将获得一个nil值,您尝试使用感叹号(!)将该值永远设为nil值。

我建议您进一步阅读Swift的工作原理。对于此特定示例,请看一下感叹号在Swift中的实际含义:感叹号在Swift语言中是什么意思?

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

UIImage下载返回零和崩溃的应用程序(快速)

来自分类Dev

如何快速检查变量为零并避免应用程序崩溃?

来自分类Dev

URLsession .failure使应用程序崩溃,因为错误为零

来自分类Dev

pyQt和线程应用程序崩溃

来自分类Dev

应用程序QT崩溃(通过进度栏下载ftp)

来自分类Dev

从Play商店下载后,应用程序崩溃了吗?

来自分类Dev

从Play商店下载后,应用程序崩溃了吗?

来自分类Dev

下载的应用程序

来自分类Dev

SwiftUI @FetchRequest使应用程序崩溃并返回错误

来自分类Dev

Android:返回并按下按钮后,应用程序崩溃

来自分类Dev

从 AsyncTask doInBackground 返回时应用程序崩溃

来自分类Dev

按下主屏幕按钮并返回应用程序会导致应用程序崩溃

来自分类Dev

由于内存问题,iOS应用程序在加载UIImage时崩溃

来自分类Dev

InflateException和ClassNotFoundException导致应用程序崩溃

来自分类Dev

WKWebView和UINavigationController导致应用程序崩溃

来自分类Dev

使用Multidex和Google Play服务的应用程序崩溃

来自分类Dev

如何区分应用程序崩溃和用户关闭

来自分类Dev

ANR导致登录和注册使应用程序崩溃

来自分类Dev

运行时PFQuery和PFRelation崩溃应用程序

来自分类Dev

应用程序可立即打开和关闭,而不会崩溃

来自分类Dev

尝试发送邮件和应用程序崩溃

来自分类Dev

android和应用程序中的空指针异常崩溃

来自分类Dev

grsec导致应用程序转储和内核崩溃

来自分类Dev

Android应用程序因Twitter数字和翻新而崩溃

来自分类Dev

当 popoverPresentationController 和键盘关闭时应用程序崩溃

来自分类Dev

带有 ConstraintLayout 的 ListView 和 ArrayAdapter 使应用程序崩溃

来自分类Dev

Firebase 文本和图片上传使应用程序崩溃

来自分类Dev

组合 ListView 和 Fragment 时应用程序崩溃

来自分类Dev

Facebook应用程序审核失败-“您的应用程序下载成功,但在打开时崩溃”

Related 相关文章

  1. 1

    UIImage下载返回零和崩溃的应用程序(快速)

  2. 2

    如何快速检查变量为零并避免应用程序崩溃?

  3. 3

    URLsession .failure使应用程序崩溃,因为错误为零

  4. 4

    pyQt和线程应用程序崩溃

  5. 5

    应用程序QT崩溃(通过进度栏下载ftp)

  6. 6

    从Play商店下载后,应用程序崩溃了吗?

  7. 7

    从Play商店下载后,应用程序崩溃了吗?

  8. 8

    下载的应用程序

  9. 9

    SwiftUI @FetchRequest使应用程序崩溃并返回错误

  10. 10

    Android:返回并按下按钮后,应用程序崩溃

  11. 11

    从 AsyncTask doInBackground 返回时应用程序崩溃

  12. 12

    按下主屏幕按钮并返回应用程序会导致应用程序崩溃

  13. 13

    由于内存问题,iOS应用程序在加载UIImage时崩溃

  14. 14

    InflateException和ClassNotFoundException导致应用程序崩溃

  15. 15

    WKWebView和UINavigationController导致应用程序崩溃

  16. 16

    使用Multidex和Google Play服务的应用程序崩溃

  17. 17

    如何区分应用程序崩溃和用户关闭

  18. 18

    ANR导致登录和注册使应用程序崩溃

  19. 19

    运行时PFQuery和PFRelation崩溃应用程序

  20. 20

    应用程序可立即打开和关闭,而不会崩溃

  21. 21

    尝试发送邮件和应用程序崩溃

  22. 22

    android和应用程序中的空指针异常崩溃

  23. 23

    grsec导致应用程序转储和内核崩溃

  24. 24

    Android应用程序因Twitter数字和翻新而崩溃

  25. 25

    当 popoverPresentationController 和键盘关闭时应用程序崩溃

  26. 26

    带有 ConstraintLayout 的 ListView 和 ArrayAdapter 使应用程序崩溃

  27. 27

    Firebase 文本和图片上传使应用程序崩溃

  28. 28

    组合 ListView 和 Fragment 时应用程序崩溃

  29. 29

    Facebook应用程序审核失败-“您的应用程序下载成功,但在打开时崩溃”

热门标签

归档