스마트워치 앱에 대하여

스마트폰만큼은 아니지만, 전 세계 스마트워치의 보급률은 빠르게 증가하고 있습니다. 애플 워치를 예로 들면, 1년 동안 3,600만 대가 판매된 것으로 보입니다. http://japan.cnet.com/news/business/35064877/
또한 애플과 구글은 스마트워치 앱 개발 플랫폼을 중심으로 하여 쉽게 앱을 만들 수 있습니다. 스마트폰을 주머니에서 꺼내지 않고도 스마트워치로 사용자 요구를 충족할 수 있는 시대가 코앞으로 다가왔습니다.
그래서 스마트워치(Apple Watch)와 MBass(Parse)를 연결하는 앱을 만들기로 했습니다. Parse는 여기를 클릭하세요
앱을 만들어 봅시다
스마트워치에서 로그아웃하는 앱을 만드는 것이 얼마나 쉬운지 소개하고자 합니다. 이 내용은 iOS 개발 경험이 있는 분들께 설명드리겠지만, 초보자도 빠르게 이해할 수 있는 수준이니 끝까지 읽어주시기 바랍니다.
개발 환경
- X코드 6.4
- IOS 8.4
- 스위프트
프로젝트 창설
- iOS용 새 프로젝트(싱글 뷰 애플리케이션) 생성.
- Xcode > 파일 > 새 > 타겟 선택
- WatchKit 앱 추가

Check In 버튼을 클릭하면 화면 1의 인터페이스가 호출됩니다. WatchKit 확장 폴더 아래에 CheckInController 파일을 생성하여 화면 1에 연결하세요. *Check Out도 마찬가지입니다.

- WatchKit 프레임워크를 가져오세요.
- WKI 인터페이스컨트롤러 클래스를 상속합니다.
- CheckInController가 호출될 때 먼저 실행되는 willActivate 메서드를 구현합니다.
- 현재 시간을 확인하세요.
- 이것이 핵심입니다! 처리 내용을 부모 앱(아이폰)에 전달하세요.
WatchKit 가져오기 // <1>
수입 재단
class CheckInController: WKInterfaceController { // <2>
@IBOutlet 약한 변 메시지: WKInterfaceLabel!
func awakeWithContext(문맥: AnyObject?) {
super.awakeWithContext(context)
인터페이스 객체를 여기에서 설정하세요.
message.setText("성공! 체크인");
}
override func willActivate() { // <3>
이 방법은 워치 뷰 컨트롤러가 사용자에게 보이기 직전일 때 호출됩니다
super.willActivate()
현재 시간 확인하세요 // <4>
이제 = NSDate()
let dateFormater = NSDateFormatter()
dateFormater.dateFormat = "yyyy/MM/dd HH:mm"
요청 = [
"type": "1",
"time": dateFormater.stringFromDate(now)as String
]
let isSuccess = WKInterfaceController.openParentApplication(request,reply:nil) // <5>
}
override func didDeactivate() {
이 방법은 시계 뷰 컨트롤러가 더 이상 보이지 않을 때 호출됩니다
super.didDeactivate()
}
}
Parse SDK 배포 iOS SDK를 다운로드하려면 SDK 다운로드 페이지를 방문하세요.
Linked Frameworks and Libraries에서 방금 다운로드한 프레임워크에서 Parse.framework와 Bolts.framework를 추가하세요.

Parse 프레임워크가 의존하는 다음 프레임워크들도 추가하겠습니다:
- SystemConfiguration.framework
- AudioToolbox.framework
- libsqlite3.dylib
파스 액세스 키
계정 생성과 앱 생성은 구글 검색에서 즉시 나타나기 때문에 파싱 기능은 생략됩니다.
설정 > 키 화면을 열고 Application ID와 클라이언트 키를 확인하세요.

이 앱에서 사용할 다음 열들을 추가해 보겠습니다.
- user_id (번호)
- 식별을 위한 타입(문자열) 체크 인/아웃 플래그
- 시간(날짜) 출퇴근 시간

- 파스 프레임워크 가져오기
- id에 대해 Parse의 Application ID를, 키에 대해 Parse의 클라이언트 키를 정의합니다.
- Watchkit 확장의 Contorller 내에서 WKInterfaceController.openParentApplication 메서드의 수신기 측면을 구현합니다
- 매개변수 (유형, 시간) 얻기
- 요점은 이겁니다! 신청 ID를 설정하세요.
- 구문 분석 객체 생성
- Parse에서 등록할 값을 설정하세요
- 파스(Parse)로 등록하기
import UIKit
import Parse // <1>
@UIApplicationMain
class AppDelegate: UIResponder, UIApplicationDelegate {
var window: UIWindow?
// <2>
id = "xxxxx"
키 = "xxxxx"
func application(application: UIApplication, handleWatchKitExtensionRequest userInfo:[NSObject:AnyObject]?, reply:(([NSObject:AnyObject]!) ->Void)!) { // <3>
<4>요청 메시지 받기
var dic = userInfo as! 사전<String,String>
var type = dic["type"]
var time = dic["time"]
var date_fomatter = NSDateFormatter()
date_fomatter.dateFormat = "yyyy/MM/dd HH:mm"
데이터 등록
Parse.setApplicationId(self.id, clientKey:self.key) // <5>
var time_history = PFObject(className: "time_history") // <6>
// <7>
time_history["user_id"] = 1 시 Int
time_history["type"] = 유형
time_history["time"] = date_fomatter.dateFromString(time!)
time_history.saveInBackgroundWithBlock{ // <8>
(성공: Bool, 오류: 이슈 오류?) -> 공백
만약 (성공) {
println("성공! 입력 데이터. 타입은 \(타입)이고 시간은 \(시간)"입니다.
}else {
println("실패! 입력 데이터. 타입은 \(타입)이고 시간은 \(time)입니다")
}
}
뷰컨트롤러 검사
let vc = self.window?. rootViewController as? ViewController
VC?. setMessage(type!, time: time!)
}
그거야!
앱을 실행합시다!
파싱
생각들
Apple Watch와 Parse를 연동해서 앱 개발을 하는 것이 예상보다 쉬웠습니다. 이 글에서는 데이터 등록만 소개했지만, 웹 서버 측에서 Parse에 등록된 데이터를 수집하고 분석할 수도 있습니다.
게다가 웨어러블 기기뿐만 아니라 IoT 기기 데이터도 Parse를 통해 수집할 수 있고, 무엇이든 연결할 수 있다고 생각했습니다! 그 데이터를 분석하고 처리하면 다양한 추가 가치를 얻을 수 있습니다.
개발자로서 저는 제가 생각하는 것을 빠르게 만들 수 있는 축복받은 세상에 태어난 것에 감사하고 있습니다! :)
</8></7></6></5></String,String></4></3></2></1>
</5></4></3></2></1>