IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 移动开发 -> IOS 常用第三方库 -> 正文阅读

[移动开发]IOS 常用第三方库

1.图文网络加载:

Kingfisher:https://github.com/onevcat/Kingfisher

imgview.kf.setImage(with: uri,placeholder: UIImage(named: imgdefault))

2.消息总线

SwiftEventBus
(https://github.com/onevcat/Kingfisher)

//不使用的时候注销
override func viewDidDisappear(_ animated: Bool) {
      SwiftEventBus.unregister(self)
}

//处理消息
 SwiftEventBus.onMainThread(self, name: "xxxx", handler: { params in
           //object发送过来的参数类型
           let productId = params!.object as! Int
 })

//发送消息,sender为任意类型,这里以Int为例
SwiftEventBus.post("xxxx", sender: Int)

3.Http请求

SwiftHttp

1.GET
HTTP.GET(url,parameters: params,headers: headers)

2.POST
HTTP.POST(url,parameters: params)

3.发送文件,需要构造Upload对象
headers["Content-Type"] = "multipart/form-data";

postParas["pic"] = Upload.init(data: fileList[index], fileName:"pic.jpeg" , mimeType: "application/octet-stream")

4.用例:
fileprivate func doPost(url:String,params:[String:Any],headers:[String:String],completion:@escaping (_:Bool,_:String?,_:[String:Any]?)->Void,userParam:[String:Any]?){
        
        print("doPost:\(url):\(params)")
        HTTP.POST(url,parameters: params){ response in
                if let err = response.error{
                    print("error:\(err.localizedDescription)")
                    if Thread.isMainThread{
                        completion(false,err.localizedDescription,userParam)
                    }else{
                        DispatchQueue.main.async {
                            completion(false,err.localizedDescription,userParam)
                        }
                    }
                }else{
                    print("data:\(String(describing: response.text))")
                    if Thread.isMainThread{
                        completion(true,response.text,userParam)
                    }else{
                        DispatchQueue.main.async {
                            completion(true,response.text,userParam)
                        }
                    }
                }
            }
        
    }

4.ping请求

SwiftyPing:https://github.com/samiyr/SwiftyPing
这个在网上有很多,但是只有一个功能正常,且不存在内存泄漏

5.解析Json

SwiftyJSON

6.内购

SwiftyStoreKit

使用很简单但是,请注意在确认订单完(verifyPurchase)之前不要调用:finishTransaction,否则在验证订单的时候会提示该订单不存在。

fetchReceipt或者verifyPurchase之后,该笔订单会将不在需要finishTransaction。
  移动开发 最新文章
Vue3装载axios和element-ui
android adb cmd
【xcode】Xcode常用快捷键与技巧
Android开发中的线程池使用
Java 和 Android 的 Base64
Android 测试文字编码格式
微信小程序支付
安卓权限记录
知乎之自动养号
【Android Jetpack】DataStore
上一篇文章      下一篇文章      查看所有文章
加:2021-10-19 12:00:17  更:2021-10-19 12:02:11 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/24 0:43:53-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码