小编You*_*uSS的帖子

在Swift 4上NSURLSession/NSURLConnection HTTP加载失败

我有swift 4的xcode 9.1,我无法使用webview进行身份验证.这是我的代码:

import UIKit

protocol AuthViewControllerDelegate{
    func getAccessToken(_ code: String)
}

class AuthViewController: UIViewController, NSURLConnectionDelegate {


    @IBOutlet weak var navItem: UINavigationItem!
    @IBOutlet weak var webView: UIWebView!

    var delegate: AuthViewControllerDelegate?

    override func viewDidLoad() {
        super.viewDidLoad()

        var link: "https://home.nest.com/login/oauth2?client_id=…"

        if let encodeURL = link.URLEncodedString(), let url = URL(string: encodeURL) {
            webView.loadRequest(URLRequest(url: url))
        }
    }


    override var preferredStatusBarStyle : UIStatusBarStyle {
        return .lightContent
    }

    @IBAction func CancelPressed(_ sender: UIBarButtonItem) {
        self.dismiss(animated: true, completion: nil)
    }

    func webView(_ webView: UIWebView, shouldStartLoadWithRequest request: URLRequest, …
Run Code Online (Sandbox Code Playgroud)

xcode uiwebview nsurlconnection ios swift

7
推荐指数
1
解决办法
5383
查看次数

当应用程序处于后台或被杀时,如何定期获取新位置

当我的应用程序处于后台或被杀时,我想每1分钟获取一个新位置.这是我的代码:

定位服务:

class LocationService: NSObject, CLLocationManagerDelegate {

    static let shared = LocationService()
    var locationManager = CLLocationManager()
    var significatLocationManager = CLLocationManager()
    var currentLocation: CLLocation!
    var timer = Timer()
    var bgTask = UIBackgroundTaskInvalid

    func startUpdatingLocation() {
        locationManager.requestAlwaysAuthorization()
        locationManager.desiredAccuracy = kCLLocationAccuracyBest
        locationManager.distanceFilter = kCLDistanceFilterNone
        if #available(iOS 9.0, *) {
            locationManager.allowsBackgroundLocationUpdates = true
        }
        locationManager.delegate = self
        locationManager.startUpdatingLocation()
    }

    func stopUpdatingLocation() {
        locationManager.stopUpdatingLocation()
        timer.invalidate()
    }

    func restartUpdatingLocation() {
        locationManager.stopMonitoringSignificantLocationChanges()
        timer.invalidate()
        startUpdatingLocation()
    }

    func startMonitoringLocation() {
        locationManager.stopUpdatingLocation()
        locationManager.startMonitoringSignificantLocationChanges()
        timer.invalidate()
    }

    func changeLocationAccuracy(){
        switch locationManager.desiredAccuracy { …
Run Code Online (Sandbox Code Playgroud)

cllocation ios swift3 xcode8

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

我的“ didFinishLaunchingWithOptions”如何才能等到调用api完成

我的应用程序如何才能等到我的调用api完成?

func application(application: UIApplication, didFinishLaunchingWithOptions launchOptions: [NSObject: AnyObject]?) -> Bool {

    GMSServices.provideAPIKey("AIzadGlsfR35k4BeHCXmRq3GDSQ-l_5gcD8")
    FlicAuth.sharedInstance

    //Call Api here

    application.registerUserNotificationSettings(UIUserNotificationSettings(forTypes: [.Alert, .Badge, .Sound], categories: nil))
    application.registerForRemoteNotifications()

    if(launchOptions?[UIApplicationLaunchOptionsLocationKey] != nil){
        LocationService.sharedInstance.startMonitoringLocation()
    }

    return FBSDKApplicationDelegate.sharedInstance().application(application, didFinishLaunchingWithOptions: launchOptions)
}
Run Code Online (Sandbox Code Playgroud)

提前致谢

api ios swift

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

使用Almofire 4 swift 3上传图像

我想用almofire将照片上传到服务器我现在正在使用此代码,但我正在暂停

let imageData = UIImageJPEGRepresentation(croppedImage, 1)

let urlRequest = self.urlRequestWithComponents(url, imageData: imageData!)
self.alamofire.upload(urlRequest.1, to: urlRequest.0 as! URLConvertible).responseJSON { response in
    guard response.result.isSuccess else {
        self.showError()
        return
    }

    guard let data = response.result.value else {
        self.showError()
        return
    }

    let json = JSON(data)
}

func urlRequestWithComponents(_ urlString:String, imageData:Data) -> (URLRequestConvertible, Data) {
    var urlRequest = URLRequest(url: URL(string: urlString)!)
    urlRequest.httpMethod = HTTPMethod.post.rawValue
    let boundary = generateBoundaryString()
    let contentType = "multipart/form-data;boundary=" + boundary
    urlRequest.setValue(contentType, forHTTPHeaderField: "Content-Type")

    let uploadData = NSMutableData()

    uploadData.append("\r\n--\(boundary)\r\n".data(using: String.Encoding.utf8)!)
    uploadData.append("Content-Disposition: form-data; …
Run Code Online (Sandbox Code Playgroud)

image-uploading swift alamofire

2
推荐指数
1
解决办法
7889
查看次数