Lối tắt ứng dụng

Bản phát hành Android 7.1.1 cho phép nhà phát triển xác định các hành động cụ thể các lối tắt có thể hiển thị trong trình chạy trong ứng dụng của họ. Các ứng dụng này phím tắt giúp người dùng nhanh chóng bắt đầu các công việc phổ biến hoặc được đề xuất trong một .

Mỗi lối tắt tham chiếu đến một ý định khởi chạy một thao tác cụ thể trong ứng dụng khi người dùng chọn lối tắt. Ví dụ về những hành động mà bạn có thể thể hiện dưới dạng ứng dụng lối tắt bao gồm:

  • Điều hướng người dùng đến một vị trí cụ thể trong ứng dụng bản đồ
  • Gửi tin nhắn cho bạn bè trong ứng dụng liên lạc
  • Phát tập tiếp theo của một chương trình truyền hình trong ứng dụng đa phương tiện
  • Tải điểm lưu cuối cùng trong ứng dụng trò chơi

Ví dụ và nguồn

Bạn có thể tìm thấy cách triển khai chính của tính năng này trong các tệp sau:

frameworks/base/services/core/java/com/android/server/policy/ShortcutManager.java
frameworks/base/services/core/java/com/android/server/pm/ShortcutPackage.java
frameworks/base/services/core/java/com/android/server/pm/ShortcutUser.java
frameworks/base/services/core/java/com/android/server/pm/ShortcutPackageInfo.java
frameworks/base/services/core/java/com/android/server/pm/ShortcutLauncher.java
frameworks/base/services/core/java/com/android/server/pm/ShortcutParser.java
frameworks/base/services/core/java/com/android/server/pm/ShortcutService.java
frameworks/base/services/core/java/com/android/server/pm/LauncherAppsService.java
frameworks/base/services/core/java/com/android/server/pm/ShortcutPackageItem.java
frameworks/base/core/java/com/android/server/backup/ShortcutBackupHelper.java
frameworks/base/core/java/android/content/pm/ShortcutManager.java
frameworks/base/core/java/android/content/pm/ShortcutServiceInternal.java
frameworks/base/core/java/android/content/pm/ShortcutInfo.java
frameworks/base/core/java/android/content/pm/LauncherApps.java

Với các tệp sau cung cấp các tính năng hỗ trợ (được gọi là API ẩn trong ShortcutManager.java):

packages/apps/Settings/src/com/android/settings/DevelopmentSettings.java
frameworks/base/packages/SystemUI/src/com/android/systemui/statusbar/policy/RemoteInputView.java

Ví dụ: Trình chạy dự án nguồn mở Android phiên bản 3 hỗ trợ lối tắt:

packages/apps/Launcher3/

Cuối cùng, hãy xem các tệp sau cho Javadoc công khai.

frameworks/base/core/java/android/content/pm/ShortcutManager.java
frameworks/base/core/java/android/content/pm/ShortcutInfo.java
frameworks/base/core/java/android/content/pm/LauncherApps.java

Triển khai

AOSP Launcher3 đã hỗ trợ các phím tắt. Trong trường hợp đối tác có trình chạy riêng, trình chạy đó cũng sẽ hỗ trợ lối tắt.

  • Khi người dùng thực hiện một cử chỉ nhất định (ví dụ: nhấn và giữ) trên biểu tượng ứng dụng, trình chạy phải hiển thị các lối tắt động và lối tắt tệp kê khai được liên kết với mỗi biểu tượng hoạt động của trình chạy.
    Thứ tự sắp xếp lối tắt được xác định trong Javadoc của ShorctutManager bên trong "Thứ tự hiển thị lối tắt" . Ví dụ: hiện lối tắt của tệp kê khai rồi đến các lối tắt động. Các lối tắt được sắp xếp theo thứ hạng trong thứ tự tăng dần trong mỗi nhóm.
  • Người dùng phải có thể kéo từng lối tắt động/tệp kê khai và "ghim" nó vào màn hình chính.
  • Các lối tắt đã ghim cần được sao lưu và khôi phục. (Xem ShortcutManager javadoc để biết chi tiết)
  • Tạo "Trả lời tại chỗ" trên Thông báo sẽ gọi nội bộ ShortcutManager.onApplicationActive.

Ngoài ra, một số ứng dụng Dịch vụ dành cho thiết bị di động của Google (GMS) có lối tắt. OEM (Nhà sản xuất thiết bị gốc) trình chạy phải hiển thị các lối tắt cho chúng và lý tưởng nhất là hỗ trợ tính năng "ghim" (hoặc tạo một biểu tượng lối tắt).

Xem nguồn Launcher3 để biết thông tin chi tiết về cách tương tác với khung cho các phép toán trên.

Xác nhận kết quả

Sử dụng các bài kiểm thử Bộ kiểm tra tính tương thích (CTS) với Android sau đây để đảm bảo phiên bản của tính năng (ShortcutManager và LauncherApps) hoạt động như dự kiến:

cts/tests/tests/shortcutmanager/
cts/hostsidetests/shortcuts/

Bạn cũng có thể tìm các bài kiểm thử đơn vị để triển khai AOSP (Dự án nguồn mở Android) tại đây:

frameworks/base/services/tests/servicestests/

Trong đó bao gồm:

src/com/android/server/pm/ShortcutManagerTest*.java

Bạn cũng có thể sử dụng thử nghiệm Trình xác minh CTS cho trình quản lý lối tắt:

cts/apps/CtsVerifier/src/com/android/cts/verifier/notifications/ShortcutThrottlingResetActivity.java