[iOS] CocoaPods กับการใช้งาน 3rd-party library #2

ก่อนหน้านี้ได้พูดถึง CocoaPods ไปแล้วบางส่วน http://www.lordgift.in.th/2016/01/ios-cocoapods-3rd-party-library.html ครั้งนี้ เราจะสมมติสถานการณ์ดูว่า ถ้าเราต้องการหา library ซักอย่างมาใช้ เพื่อช่วยในงานบางอย่าง วิธีการเป็นอย่างไรบ้าง

เราสามารถค้นหา library ผ่านหน้าเว็บของ CocoaPods ได้เลย
https://cocoapods.org/


* Type here to search by name, version, author, keywords, summary, and dependencies.

แน่นอนว่าเราจะพบกับผลการค้นหามากมาย ซึ่งเราก็ต้องเลือกใช้ โดยจะมีรายละเอียดบางส่วนสามารถดูได้ รวมถึง link ไปยังเว็บหลักของ library นั้นๆ

สำหรับโจทย์วันนี้คือ QR Code & Barcode
ซึ่งหลังจากที่ผมได้ค้นหาและทดลองมาจบที่ PQScanner https://cocoapods.org/pods/PQScanner ซึ่งถ้าดูจากตัวอย่างจะเห็นว่าเป็น Objective-C เอามาจะเอามาใช้กับ Swift โพสก่อนหน้านี้ก็บอกว่าเราสามารถทำ Bridging Header ได้ (http://www.lordgift.in.th/2016/01/ios-bridging-header-swift-objective-c.html) ซึ่งในเคสของ CocoaPods จะต่างกันนิดหน่อย
  1. install library (PQScanner) ผ่าน cocoapods ให้เรียบร้อย
  2. เปิด View Controller ที่ต้องการใช้งาน
  3. import library *ถ้า bridging header จะไม่ต้อง import แบบ swift
    import PQScanner
    
  4. จากนั้นเราสามารถใช้งาน library โดยเขียนแบบ swift ได้เลย *ถ้ามี skill ทั้ง objective-c และ swift ก็จะแปลงได้ราบรื่น (Swift แต่ละเวอร์ชั่นก็ต่างกันอีกนิดหน่อย) การมีตัวช่วยก็ทำให้ชีวิตดีขึ้นไม่น้อย :D http://iswift.org/try https://objectivec2swift.com/#/converter/code
self.scanner = PQScanner(targetView: self.view!, withDelegate: self)
scanner.setupAVCapture()
scanner.startScan{(encodeStr:String!, codeType:String!) -> Void in
   //block
}
self.scanner.continueScan()
func scanner(scanner: PQScanner!, didOpenCaptureFaild error: NSError!) {
    print(error);
}

Facebook Comment

Recent Posts

Popular post of 7 days

Portal คืออะไรกันนะ???

[Java] ความแตกต่างระหว่าง Overloading กับ Overriding

Port Forwarding สำหรับคนใช้ AIS Fibre

Popular

Portal คืออะไรกันนะ???

[Java] ความแตกต่างระหว่าง Overloading กับ Overriding

มาตรฐานการตั้งชื่อตัวแปร (Naming Convention)

เรื่องของ ++i กับ i++

Port Forwarding สำหรับคนใช้ AIS Fibre

วิธีการสมัคร Apple Developer Program และ Enterprise Program ฉบับลงมือเอง

ลืมรหัสปลดล็อค Android เข้าเครื่องไม่ได้ มีทางออกครับ

ทดสอบ Mobile App แบบ Automated ด้วย Appium ทำยังไงกันนะ

Deeplink, Universal Links คืออะไร ทำงานร่วมกับ Mobile App ได้ยังไง

Android Auto & Apple Carplay คืออะไร ใช้งานยังไง