小编Ice*_*Ice的帖子

iOS 深层链接:从应用商店安装后打开应用

我正在尝试实现一个类似于这个问题的功能Android Deep linking: Use the same link for the app and the play store but for iOS app。目前,我的应用程序使用UniversalLink(例如:https://www.example/com/code/000000),如果应用程序未安装服务器,则通过链接重定向到App Store(https://apps.apple.com) /us/app/instagram/id389801252 - 例如)但是安装后如何打开应用程序内的链接?从这个信息https://support.google.com/authorizedbuyers/answer/6167336?hl=en 我知道需要一些参考,例如(https://apps.apple.com/us/app/instagram/id389801252?mt= 000000 ) 什么是 ?mt=0000 <- 这是深层链接还是其他?

如何实现这个算法在此输入图像描述

deep-linking ios swift ios-universal-links firebase-dynamic-links

7
推荐指数
0
解决办法
1228
查看次数

处理 URLSession 超时

我使用 URLSession 进行 POST 请求并获取玩家列表,但有时我会获取错误“Error Domain=NSURLErrorDomain Code=-1001”,我该如何处理?

我如何在“完成”中出现错误?

func addPlayer(playerCode: String, completion: @escaping (Error?) -> ()) {
    guard let url = URL(string: "\(url)") else { return }
    
    var urlRequest = URLRequest(url: url)
    urlRequest.httpMethod = "POST"
    
    let playerCode = [playerCode]
    
    let params = ["players": playerCode]
    do {
        let data = try JSONSerialization.data(withJSONObject: params, options: .init())
        
        urlRequest.httpBody = data
        urlRequest.setValue("application/json", forHTTPHeaderField: "content-type")
        
        let sessionConfig = URLSessionConfiguration.default
        sessionConfig.timeoutIntervalForRequest = 5.0
        
        DispatchQueue.global(qos: .background).async {
        URLSession(configuration: sessionConfig).dataTask(with: urlRequest) { (data, resp, err) in
    
            guard let …
Run Code Online (Sandbox Code Playgroud)

timeout session-timeout swift urlsession

5
推荐指数
1
解决办法
3376
查看次数

使用 URLSession 无法捕获“超时”错误

我使用 URLSession 来“POST”请求,但有时当在路上请求时,我会收到带有差异错误的错误代码,更常见的是:“超时”这是我在控制台中看到的错误消息示例“Error Domain=NSURLErrorDomain Code=” -1009“互联网连接似乎已离线。”

但我无法在代码中捕获此错误,我做错了什么?,我还收到另一个代码错误,但它不会改变情况。

错误信息:

2020-11-25 09:52:07.456207+0200 TestApp[40176:2305710] Connection 4: received failure notification
2020-11-25 09:52:07.456344+0200 TestApp[40176:2305710] Connection 4: failed to connect 1:50, reason -1
2020-11-25 09:52:07.456771+0200 TestApp[40176:2305710] Connection 4: encountered error(1:50)
2020-11-25 09:52:07.459696+0200 TestApp[40176:2305710] Task <888AA895-677A-403B-A436-599FF55DB3BB>.<1> HTTP load failed, 0/0 bytes (error code: -1009 [1:50])
2020-11-25 09:52:07.460557+0200 Venom[40176:2305710] Task <888AA895-677A-403B-A436-599FF55DB3BB>.<1> finished with error [-1009] 
Error Domain=NSURLErrorDomain Code=-1009 "The Internet connection appears to be offline." UserInfo={_kCFStreamErrorCodeKey=50, NSUnderlyingError=0x600000116880 
{Error Domain=kCFErrorDomainCFNetwork Code=-1009 "(null)" UserInfo={_kCFStreamErrorCodeKey=50, _kCFStreamErrorDomainKey=1}}, _NSURLErrorFailingURLSessionTaskErrorKey=LocalDataTask 
<888AA895-677A-403B-A436-599FF55DB3BB>.<1>, _NSURLErrorRelatedURLSessionTaskErrorKey=(
                "LocalDataTask <888AA895-677A-403B-A436-599FF55DB3BB>.<1>" …
Run Code Online (Sandbox Code Playgroud)

timeout request ios swift urlsession

4
推荐指数
1
解决办法
3206
查看次数

SwiftUI 从字符串解码图像(Base64)

我在字符串(基数 64)中有一个图像,如何使用 SwiftUI 为 Image() 解码该字符串。

知道我正在使用这种格式:

Image(imageFromAppGroup(key: "image0")).resizable().frame(width: 70, height: 70)
                            .cornerRadius(10)
                            .background(Color(red: 0.218, green: 0.215, blue: 0.25))
Run Code Online (Sandbox Code Playgroud)

我需要过去的 64 位图像而不是“image0”。我怎样才能做到这一点?

base64 image decoding swift swiftui

3
推荐指数
1
解决办法
5025
查看次数