20/09/2018, 15:33

[iOS] Giới thiệu về CMMotionActivity

Trong bài giới thiệu mới nhất về chiếc Apple Watch Series 4, Apple đã nhấn mạnh rất rõ việc đồng hồ thông minh phục vụ cho nhu cầu sức khỏe của người dùng thì cảm biến chính là phần quan trọng nhất. Apple Watch cảm biến con quay hồi chuyển phát hiện ra các chuyển động và phân tích được nhiều mức ...

Trong bài giới thiệu mới nhất về chiếc Apple Watch Series 4, Apple đã nhấn mạnh rất rõ việc đồng hồ thông minh phục vụ cho nhu cầu sức khỏe của người dùng thì cảm biến chính là phần quan trọng nhất. Apple Watch cảm biến con quay hồi chuyển phát hiện ra các chuyển động và phân tích được nhiều mức độ lực. Nhờ vậy mà nó có thể phân tích chính xác các động tác chuyển động, bộ môn thể thao mà bạn đang chơi. Trong bài viết này tôi sẽ giới thiệu đến các bạn một API trong framework mà Apple cung cấp để chúng ta có thể sử dụng cảm biến này. Đó chính là CMMotionActivity trong framework Core Motion.

Trên iOS và watchOS, CMMotionActivityManager lấy dữ liệu cảm biến từ thiết bị và cho chúng ta biếtngười dùng hiện có đang di chuyển hay không và liệu họ có đang đi bộ, chạy, đi xe đạp hoặc lái xe ô tô hay không?

Để sử dụng API này, bạn tạo một CMMotionActivityManager và bắt đầu lắng nghe các hoạt động bằng cách sử dụng phương thức startActivityUpdates. Mỗi khi thiết bị cập nhật hoạt động chuyển động, nó sẽ thực hiện trả về giá trị qua một closure, passing thông qua một đối tượng CMMotionActivity.

let manager = CMMotionActivityManager()
manager.startActivityUpdates(to: .main) { (activity) in
    guard let activity = activity else {
        return
    }

    var modes: Set<String> = []
    if activity.walking {
        modes.insert("            
0