Shortcut: nó là gì, kịch bản tự động hóa trên iOS

Tác giả: IT Sectr Đã đăng: 2026-02-15 Thời gian đọc: 9 phút

Shortcut là một kịch bản tự động hóa trong ứng dụng Shortcuts của Apple, kết nối hành động của nhiều ứng dụng và dịch vụ mà không cần viết mã. Shortcuts được khởi chạy bằng giọng nói qua Siri, theo lịch trình, khi vào hoặc ra khỏi vùng địa lý, khi chạm vào widget hoặc chạm thẻ NFC. Kịch bản được tạo trực quan qua trình xây dựng Actions bằng cách kéo và thả các khối. Để biết thêm chi tiết, hãy xem Hướng dẫn sử dụng Shortcuts.

Những điểm chính

  • Shortcut — một kịch bản tự động hóa kết nối hành động ứng dụng mà không cần mã
  • Ứng dụng Shortcuts — trình xây dựng trực quan với các khối Actions cho iOS và iPadOS
  • Tích hợp Siri — Shortcuts được khởi chạy bằng giọng nói qua cụm từ do người dùng đặt
  • Trình kích hoạt — thời gian, vùng địa lý, NFC, widget, mở ứng dụng và chế độ tập trung
  • App Intents — framework để thêm Actions của ứng dụng bên thứ ba vào Shortcuts

Shortcut là gì — một kịch bản tự động hóa?

Shortcut là một chuỗi các hành động (Actions) kết hợp thành một kịch bản duy nhất để tự động hóa tác vụ trên iOS, iPadOS, macOS và watchOS. Không giống như ứng dụng thông thường, Shortcut không có giao diện cố định — nó chạy trong nền hoặc hiển thị hộp thoại nhanh chỉ để nhập dữ liệu. Người dùng tạo kịch bản trong ứng dụng Shortcuts bằng cách kết hợp các khối từ thư viện Actions và khởi chạy nó bằng một chạm, giọng nói hoặc tự động qua trình kích hoạt.

Ứng dụng Shortcuts — trình xây dựng tự động hóa tích hợp của Apple, có sẵn trên tất cả thiết bị chạy iOS 13+, iPadOS, macOS 12+ và watchOS. Thư viện Actions bao gồm hơn 300 khối tích hợp: hệ thống (gửi tin nhắn, gọi điện, mở ứng dụng), đa phương tiện (ảnh, nhạc, podcast), internet (API REST qua Get Contents of URL), làm việc với tệp và tài liệu. Thư viện chứa các kịch bản có sẵn từ Apple và cộng đồng — từ gửi ETA cho một liên hệ đến đổi tên tệp hàng loạt.

Thư viện Actions được mở rộng bởi các ứng dụng bên thứ ba qua framework App Intents. Nhà phát triển đăng ký intents trong Intents.intentdefinition và chúng tự động xuất hiện trong thư viện Shortcuts. Ví dụ: Things 3 thêm Actions «Tạo tác vụ» và «Hiển thị tác vụ hôm nay», còn CARROT Weather thêm «Dự báo hôm nay» với tham số vị trí.

Shortcuts hoạt động như thế nào trên iOS

Shortcuts hoạt động trong môi trường sandbox iOS — kịch bản chạy trong tiến trình nền gọi là shortcuted với quyền hạn chế. Mỗi Action là một lời gọi đến trình xử lý được xác định trước, nhận tham số đầu vào, thực hiện thao tác và trả về kết quả. Hệ thống chuyển đầu ra của một Action làm đầu vào cho Action tiếp theo qua một pipeline — người dùng thấy điều này như các điểm kết nối màu xanh giữa các khối trong trình chỉnh sửa.

Luồng thực thi của Shortcut là tuyến tính: các Actions thực thi tuần tự từ trên xuống dưới. Các nhánh có điều kiện được thực hiện bằng khối If — hệ thống đánh giá điều kiện và thực thi nhánh tương ứng. Có sẵn các vòng lặp: Repeat (lặp N lần), Repeat with Each (lặp qua các mục danh sách) và For Each. Lỗi trong một Action sẽ làm gián đoạn toàn bộ kịch bản trừ khi có khối Try/Catch được thêm vào.

swift
import Intents

class OrderCoffeeIntentHandler: NSObject, OrderCoffeeIntentHandling {
    func handle(intent: OrderCoffeeIntent,
                completion: @escaping (OrderCoffeeIntentResponse) -> Void) {
        let order = Order(coffee: intent.coffee, size: intent.size)
        placeOrder(order) { success in
            let response = success
                ? OrderCoffeeIntentResponse.success(coffee: intent.coffee)
                : OrderCoffeeIntentResponse.failure(error: "Order failed")
            completion(response)
        }
    }
}

Mỗi trình xử lý Intents được đăng ký trong Info.plist qua khóa INIntentsSupported. Khi Shortcut được khởi chạy qua Siri, hệ thống tìm IntentHandler phù hợp và thực thi nó một cách bất đồng bộ. Phản hồi được trả về dưới dạng đối tượng INIntentResponse chứa trạng thái, thông báo và dữ liệu tùy chọn để hiển thị cho người dùng.

Tạo kịch bản trong ứng dụng Shortcuts

Tạo Shortcut bắt đầu bằng cách chạm «+» trong thư viện ứng dụng Shortcuts. Người dùng chọn Actions từ các danh mục: Ứng dụng, Tập lệnh, Web, Tệp, Sức khỏe, Nhạc và các danh mục khác. Mỗi Action có thể cấu hình — trường nhập liệu, công tắc, danh sách. Sau khi lắp ráp, kịch bản được kiểm tra bằng nút Play và khối có vấn đề được làm nổi bật nếu có lỗi. Để chia sẻ, Shortcut được xuất dưới dạng tệp .shortcut để gửi qua AirDrop hoặc iMessage.

Biến và Phép thuật Shortcuts hỗ trợ biến — dữ liệu đầu ra của một Action có thể được chuyển sang Action khác. Biến ma thuật được xác định tự động: nếu Action trước trả về hình ảnh, hệ thống sẽ đề xuất nó trong tham số của Action tiếp theo. Người dùng cũng có thể tạo biến có tên qua khối Set Variable và sử dụng chúng ở bất kỳ đâu trong kịch bản.

swift
import AppIntents

struct CreateTaskIntent: AppIntent {
    static var title: LocalizedStringResource = "Create Task"
    static var description = IntentDescription(
        "Creates a new task in your to-do list"
    )

    @Parameter(title: "Task Title")
    var taskTitle: String

    func perform() async throws -> some IntentResult {
        let task = TaskModel(title: taskTitle)
        try await Database.shared.save(task)
        return .result(dialog: "Task created")
    }
}

App Intents là một framework hiện đại của Apple (iOS 16+, SwiftUI) đã thay thế Intents cho các intents tùy chỉnh. Không giống SiriKit cũ, App Intents hoạt động mà không cần môi trường runtime Objective-C, hỗ trợ bất đồng bộ qua async/await và tự động tạo hội thoại cho Siri. Struct CreateTaskIntent được đánh dấu bằng giao thức AppIntent và các tham số được đánh dấu bằng thuộc tính @Parameter. Framework tự động tạo một Action trong thư viện Shortcuts.

Trình kích hoạt và tích hợp hệ thống

Trình kích hoạt Shortcuts là các điều kiện mà theo đó kịch bản tự động khởi chạy. Cấu hình được thực hiện trong tab Tự động hóa của ứng dụng Shortcuts. Trình kích hoạt được chia thành cá nhân (thời gian, vị trí, sạc), cảm biến (NFC, lắc), hệ thống (mở ứng dụng, chế độ tập trung, kết nối CarPlay) và dựa trên sự kiện (nhận email, sự kiện lịch, thông báo). Mỗi trình kích hoạt có thể được đặt để thực thi ngay lập tức hoặc yêu cầu xác nhận.

Trình kích hoạtĐiều kiện khởi chạyVí dụ sử dụng
Thời gianThời gian cụ thể, mặt trời mọc/lặnBật Không làm phiền lúc 22:00
Vùng địa lýVào hoặc ra khỏi khu vựcGửi «Đang về nhà» khi rời khỏi nơi làm việc
NFCChạm thẻ NFCKhởi chạy kịch bản «Nhà thông minh» khi chạm thẻ
Ứng dụngMở hoặc đóng ứng dụngNhắc tắt hẹn giờ khi đóng YouTube
Tập trungThay đổi chế độ tập trungBật chủ đề tối khi kích hoạt Chế độ ngủ
SạcKết nối/ngắt nguồn điệnMở widget sạc khi kết nối MagSafe

Tự động hóa là tính năng chính của Shortcuts, không có sẵn cho các ứng dụng thông thường mà không có đặc quyền nhà phát triển. Người dùng thiết lập trình kích hoạt một lần và quên — kịch bản chạy trong nền mà không cần can thiệp. Ví dụ: tự động hóa «Khi tôi về đến nhà, bật Wi-Fi và tắt chế độ im lặng» được kích hoạt khi vào vùng địa lý nhà. Hệ thống yêu cầu quyền tự động hóa trong quá trình thiết lập ban đầu và có thể tắt nó nếu ít được sử dụng.

Shortcuts trên macOS — từ macOS 12 Monterey, Shortcuts có sẵn trên Mac. Các kịch bản đồng bộ qua iCloud giữa tất cả thiết bị Apple. Trên Mac, các Actions hệ thống được hỗ trợ: Finder, Terminal, Automator và AppleScript. Nhà phát triển macOS có thể thêm Actions qua App Intents tương tự như iOS.

App Intents và framework Intents cho nhà phát triển

App Intents là framework chính để tích hợp ứng dụng với Shortcuts trên iOS 16+ và macOS 13+. Nhà phát triển tạo một struct triển khai giao thức AppIntent, mô tả tham số qua property wrappers và triển khai phương thức perform(). Hệ thống tự động đăng ký intent trong Shortcuts, Siri và Spotlight. Để hỗ trợ các phiên bản iOS cũ (10–15), framework Intents với INIntent và IntentHandler được sử dụng.

swift
import Intents

class IntentHandler: INExtension {
    override func handler(for intent: INIntent) -> AnyObject? {
        if intent is OrderCoffeeIntent {
            return OrderCoffeeIntentHandler()
        }
        return .none
    }
}

Kiểm tra App Intents — việc gỡ lỗi intents được thực hiện qua Xcode: chọn lược đồ ứng dụng, truyền -intents trong Arguments và trình mô phỏng sẽ hiển thị danh sách intents đã đăng ký để kiểm tra. Để kiểm tra Shortcut trong môi trường gần với thực tế, hãy xây dựng kho lưu trữ ứng dụng và cài đặt trên thiết bị qua TestFlight. Shortcuts từ ứng dụng xuất hiện trong thư viện sau lần khởi chạy đầu tiên.

Tính năng nâng cao App Intents hỗ trợ tham số với tự động hoàn thành (tùy chọn động), xác nhận trước khi thực thi, intents cho Siri (phím tắt giọng nói) và tạo widget với nút khởi chạy. Indexed intents (iOS 17+) là intents mà Siri tự động đề xuất cho người dùng dựa trên ngữ cảnh: thời gian, vị trí và lịch sử hành động.

Câu hỏi thường gặp

Shortcut khác với ứng dụng thông thường như thế nào?

Shortcut là một kịch bản kết nối hành động của các ứng dụng khác nhau, không phải là một ứng dụng độc lập. Người dùng không viết mã mà lắp ráp kịch bản từ các khối Actions có sẵn. Shortcut được kích hoạt và thực thi mà không cần mở ứng dụng Shortcuts, trong khi ứng dụng thông thường yêu cầu khởi chạy qua biểu tượng trên màn hình.

Shortcuts hỗ trợ những trình kích hoạt nào?

Shortcuts hỗ trợ các trình kích hoạt: thời gian theo lịch trình, vùng địa lý khi vào hoặc ra khỏi khu vực, thẻ NFC khi chạm iPhone, mở ứng dụng, chạm widget, lệnh thoại Siri, kết nối sạc, chế độ ngủ và chế độ tập trung, cũng như thông báo cụ thể từ ứng dụng. Cấu hình được thực hiện trong tab Tự động hóa.

Tôi có thể chia sẻ Shortcut với người dùng khác không?

Có, Shortcut được xuất dưới dạng tệp .shortcut và có thể được gửi qua AirDrop, iMessage hoặc xuất bản trong thư viện Shortcuts qua iCloud. Người nhận nhập kịch bản và có thể sử dụng nó. Khi tải xuống từ internet, iOS yêu cầu xác nhận và cảnh báo về việc chạy các kịch bản không đáng tin cậy do rủi ro bảo mật tiềm ẩn.

Shortcuts tích hợp với ứng dụng bên thứ ba như thế nào?

Ứng dụng bên thứ ba thêm Actions qua framework App Intents trên iOS 16+ hoặc framework Intents trên các phiên bản cũ hơn. Nhà phát triển đăng ký hành động trong Intents.intentdefinition và chúng xuất hiện trong thư viện Actions của ứng dụng Shortcuts. Người dùng kết hợp Actions từ các ứng dụng khác nhau — ví dụ: gửi liên kết từ Safari đến ghi chú Bear.

Có cần lập trình để tạo Shortcuts không?

Không, Shortcuts được tạo trực quan mà không cần mã. Người dùng kéo và thả các khối Actions từ danh sách, cấu hình tham số và kết nối chúng tuần tự. Đối với các kịch bản nâng cao, có sẵn các khối như Run Script Over SSH, Get Contents of URL và Control Flow If, Repeat, For Each, nhưng kinh nghiệm lập trình không bắt buộc.

Tóm tắt

  • Shortcut — kịch bản tự động hóa cho iOS, iPadOS và macOS, được lắp ráp từ các khối Actions
  • Ứng dụng Shortcuts — trình xây dựng trực quan với thư viện hơn 300 Actions tích hợp
  • Trình kích hoạt — thời gian, vùng địa lý, NFC, widget, tập trung, sạc — tự động khởi chạy kịch bản
  • Tích hợp Siri — Shortcuts được khởi chạy bằng lệnh thoại mà không cần chạm màn hình
  • App Intents — framework cho iOS 16+ thêm Actions của ứng dụng bên thứ ba vào Shortcuts
  • Biến ma thuật — truyền dữ liệu tự động giữa các Actions mà không cần cấu hình thủ công
  • Đồng bộ iCloud — kịch bản có sẵn trên tất cả thiết bị Apple qua iCloud

Chúng tôi sẽ phát triển ứng dụng di động chìa khóa trao tay

IT Sectr tạo các ứng dụng iOS và Android cho các công ty khởi nghiệp và doanh nghiệp từ năm 2017. Chúng tôi sẽ tư vấn và đề xuất giải pháp tốt nhất cho bạn.

Thảo luận dự án

Đọc thêm