JacquardToolkit 1.4

JacquardToolkit 1.4

Caleb Rudnicki 维护。



  • Caleb Rudnicki

JacquardToolkit

JacquardToolkit 是一个 iOS 框架,让开发者可以使用 Levi's Jacquard 来创建自己的应用程序。

我可以使用这个工具包做什么?

  • 允许您的应用程序的蓝牙开始搜索附近的设备
  • 可以轻松连接到您的个人 Levi's Jacquard
  • 向您的夹克发送彩虹光芒
  • 对用户在夹克上进行的动作做出反应
  • 在任何时间点访问每根特定丝线的值
  • 播放为用户提供的动作教程视频
  • 告诉您是否目前与夹克连接

安装

JacquardToolkit 目前仅作为 Cocoapod 提供。

  1. 在 Podfile 中为 JacquardToolkit 添加 pod 条目
pod 'JacquardToolkit'
  1. 运行以下命令更新您的 Podfile:
pod update
  1. 别忘了在目标类中包括必要的导入语句
import JacquardToolkit

开发

  1. 将“隐私 - 摄像头使用描述”添加到您的Info.plist文件中:Privacy - Camera Usage Description的图片

  2. 启用您设备的蓝牙功能,并通过传递您的夹克UUID来连接您的夹克

import UIKit
import JacquardToolkit

class ViewController: UIViewController {
    override func viewDidLoad() {
        super.viewDidLoad()
        JacquardService.shared.activateBluetooth { _ in 
            JacquardService.shared.connect(viewController: self)
        }
    }
}
  1. 向您夹克发送彩色的彩虹光芒
@IBAction func glowButtonTapped(_ sender: Any) {
    JacquardService.shared.rainbowGlowJacket()
}
  1. 使用JacquardServiceDelegate响应所有用户手势(包括双击、笔式进入、笔式退出、遮挡、刮擦和强触控)
override func viewDidLoad() {
    super.viewDidLoad()
    JacquardService.shared.delegate = self
}

extension ViewController: JacquardServiceDelegate {

    func didDetectDoubleTapGesture() {
        //Detected Double Tap Gesture
    }

    func didDetectBrushInGesture() {
        //Detected Brush In Gesture
    }

    func didDetectBrushOutGesture() {
        //Detected Brush Out Gesture
    }

    func didDetectCoverGesture() {
        //Detected Cover Gesture
    }

    func didDetectScratchGesture() {
        //Detected Scratch Gesture
    }

    func didDetectForceTouch() {
        //Detected Force Touch Gesture 
    }

}
  1. 此外,您还可以揭示每根特定线程的值
override func viewDidLoad() {
    super.viewDidLoad()
    JacquardService.shared.delegate = self
}

extension ViewController: JacquardServiceDelegate {

    func didDetectThreadTouch(threadArray: [Float]) {
        //Dected an array of 15 values that represent 
        //the intensity each thread is being touched by
    }

}
  1. 通过教程视频向您用户展示如何正确执行手势
@IBAction func doubleTapTutorialButtonTapped(_ sender: Any) {
    JacquardService.shared.playDoubleTapTutorial(viewController: self, showDismissButton: true)
}

@IBAction func brushInTutorialButtonTapped(_ sender: Any) {
    JacquardService.shared.playBrushInTutorial(viewController: self, showDismissButton: true)
}

@IBAction func brushOutTutorialButtonTapped(_ sender: Any) {
    JacquardService.shared.playBrushOutTutorial(viewController: self, showDismissButton: true)
}

@IBAction func coverTutorialButtonTapped(_ sender: Any) {
    JacquardService.shared.playCoverTutorial(viewController: self, showDismissButton: true)
}

@IBAction func scratchTutorialButtonTapped(_ sender: Any) {
    JacquardService.shared.playScratchTutorial(viewController: self, showDismissButton: true)
}

@IBAction func forceTouchTutorialButtonTapped(_ sender: Any) {
    JacquardService.shared.playForceTouchTutorial(viewController: self, showDismissButton: true)
}

一定要检查示例应用程序以获取更多信息(JacquardToolkitExample)。

想要贡献?!

这是一个开源项目,欢迎任何新增、修复或酷炫的新想法!如果您有兴趣为JacquardToolkit做出贡献,请确保创建自己的repo分叉,然后在完成后提交一个pull request。

电子纺织品黑客

这是我们乔治亚理工学院团队一直在开发的项目的一部分。如果您想了解更多关于我们的项目信息,请访问我们的Medium出版物

Jacquard Logo

许可证

MIT