Xây dựng giao diện Google Drive

Tiện ích bổ sung cho Google Workspace có thể cung cấp giao diện tuỳ chỉnh khi người dùng sử dụng Google Drive. Điều này cho phép bạn cung cấp cho người dùng thêm thông tin liên quan, tự động hoá nhiệm vụ và kết nối các hệ thống bên thứ ba với Google Drive.

Truy cập vào giao diện người dùng của tiện ích bổ sung

Bạn có thể mở Tiện ích bổ sung Google Workspace trong Google Drive nếu biểu tượng của tiện ích đó xuất hiện trong cột biểu tượng ở bên phải giao diện người dùng Drive. Tiện ích bổ sung Google Workspace có thể xác định giao diện trang chủ, giao diện chọn mục hoặc cả hai:

  • Nếu người dùng nhấp vào biểu tượng tiện ích bổ sung khi đang ở trong Google Drive, thì tiện ích bổ sung sẽ thực thi hàm drive.homepageTrigger tương ứng (nếu có). Hàm này tạo và trả về một thẻ trang chủ vào Google Drive để hiển thị. Nếu bạn không xác định hàm drive.homepageTrigger nào, thì thẻ trang chủ chung sẽ xuất hiện.
  • Nếu người dùng chọn một hoặc nhiều mục trong Google Drive rồi nhấp vào biểu tượng tiện ích bổ sung hoặc chọn các mục trong khi tiện ích bổ sung đang mở, thì tiện ích bổ sung sẽ thực thi hàm theo ngữ cảnh drive.onItemsSelectedTrigger tương ứng (nếu có). Hàm này xây dựng giao diện "các mục đã chọn" theo ngữ cảnh trên Google Drive của tiện ích bổ sung và trả về Google Drive để hiển thị.

Xây dựng giao diện tiện ích bổ sung trên Drive

Bạn có thể xây dựng giao diện mở rộng Google Drive bằng cách làm theo các bước chung sau:

  1. Quyết định xem bạn có muốn tiện ích bổ sung của mình có trang chủ dành riêng cho Drive hay không. Ngoài ra, hãy quyết định xem bạn có muốn cung cấp giao diện theo ngữ cảnh khi người dùng chọn các mục trên Drive hay không.
  2. Thêm các trường addOns.commonaddOns.drive thích hợp vào tệp kê khai của dự án tập lệnh bổ sung, bao gồm cả mọi phạm vi Drive bắt buộc.
  3. Nếu bạn cung cấp trang chủ dành riêng cho Drive, hãy triển khai hàm drive.homepageTrigger để tạo giao diện này. Bạn cũng có thể chọn sử dụng giao diện common.homepageTrigger cho nhiều máy chủ Google Workspace.
  4. Nếu đang cung cấp giao diện lựa chọn mục theo ngữ cảnh cho Drive, bạn phải triển khai hàm kích hoạt theo ngữ cảnh drive.onItemsSelectedTrigger để tạo giao diện này. Xem Giao diện theo ngữ cảnh của Drive cho các mục được chọn) để biết thông tin chi tiết.
  5. Triển khai các hàm callback được liên kết cần thiết để phản hồi các hoạt động tương tác trên giao diện người dùng của người dùng, chẳng hạn như lượt nhấp vào nút.

Trang chủ của Drive

Google Drive hỗ trợ hiển thị trang chủ của Tiện ích bổ sung Google Workspace. Để hiển thị trang chủ chung của tiện ích bổ sung trong Google Drive, bạn chỉ cần đảm bảo có trường addOns.drive trong tệp kê khai của tiện ích bổ sung.

Ngoài ra, bạn có thể thêm drive.homepageTrigger vào tệp kê khai tiện ích bổ sung để cung cấp trang chủ dành riêng cho Drive.

Trong cả hai trường hợp, bạn phải cung cấp tên của hàm kích hoạt trang chủ trong dự án tập lệnh của tiện ích bổ sung. Hàm này tự động được gọi để tạo trang chủ Drive khi cần. Bạn phải triển khai hàm này để tạo và trả về một Card hoặc một mảng các đối tượng Card tạo nên trang chủ. Hàm kích hoạt trang chủ được truyền một đối tượng sự kiện dưới dạng thông số chứa một số thông tin chung, chẳng hạn như nền tảng của ứng dụng. Bạn có thể sử dụng dữ liệu đối tượng sự kiện để điều chỉnh cấu trúc của trang chủ.

Giao diện theo bối cảnh của Drive cho các mục đã chọn

Google Drive dựa vào trình kích hoạt theo ngữ cảnh để xác định giao diện (nếu có) sẽ hiển thị khi người dùng chọn một hoặc nhiều mục trên Google Drive. Khi trình kích hoạt kích hoạt, nó sẽ thực thi hàm trình kích hoạt theo ngữ cảnh do trường drive.onItemsSelectedTrigger.runFunction chỉ định trong tệp kê khai của tiện ích bổ sung.

Để tạo giao diện lựa chọn mục theo ngữ cảnh cho Drive, bạn phải làm như sau:

  1. Đảm bảo tệp kê khai của tiện ích bổ sung có phạm vi https://www.googleapis.com/auth/drive.addons.metadata.readonly

  2. Đảm bảo tệp kê khai có phần drive.onItemsSelectedTrigger.

  3. Triển khai hàm có tên trong trường drive.onItemsSelectedTrigger. Hàm này chấp nhận một đối tượng sự kiện làm đối số và phải trả về một đối tượng Card hoặc một mảng các đối tượng Card.

  4. Giống như bất kỳ thẻ nào, bạn phải triển khai mọi hàm callback được dùng để cung cấp khả năng tương tác của tiện ích cho giao diện. Ví dụ: nếu bạn đưa một nút vào giao diện, nút đó phải có Thao tác đính kèm và một hàm callback được triển khai sẽ chạy khi người dùng nhấp vào nút đó.

Đối tượng sự kiện

Một đối tượng sự kiện được tạo và truyền đến hàm kích hoạt drive.homepageTrigger hoặc drive.onItemsSelectedTrigger khi các hàm đó được gọi. Hàm kích hoạt có thể sử dụng thông tin trong đối tượng sự kiện này để xác định cách tạo thẻ tiện ích bổ sung hoặc kiểm soát hành vi của tiện ích bổ sung.

Cấu trúc đầy đủ của các đối tượng sự kiện được mô tả trong phần Đối tượng sự kiện. Khi Drive là ứng dụng lưu trữ hoạt động của tiện ích bổ sung, các đối tượng sự kiện theo ngữ cảnh sẽ bao gồm trường đối tượng sự kiện Drive chứa thông tin ứng dụng dành riêng cho Drive.

Các đối tượng sự kiện Drive theo bối cảnh cho điều kiện kích hoạt lựa chọn mục bao gồm thông tin về các mục mà người dùng đã chọn khi điều kiện kích hoạt kích hoạt. Khi người dùng chọn nhiều mục trong Drive, một trong các mục được coi là một trong những mối quan tâm chính; mục này được gọi là mục con trỏ đang hoạt động.

Ví dụ sau đây cho thấy đối tượng sự kiện Drive được truyền đến hàm drive.onItemsSelectedTrigger:

    {
      "commonEventObject": { ... },
      "drive": {
        "activeCursorItem":{
          "addonHasFileScopePermission": true,
          "id":"0B_sX1fXRRU6Ac3RhcnRlcl9maWxl",
          "iconUrl": "https://drive-thirdparty.googleusercontent.com...",
          "mimeType":"application/pdf",
          "title":"How to get started with Drive"
        },
        "selectedItems": [
          {
            "addonHasFileScopePermission": true,
            "id":"0B_sX1fXRRU6Ac3RhcnRlcl9maWxl",
            "iconUrl":"https://drive-thirdparty.googleusercontent.com...",
            "mimeType":"application/pdf",
            "title":"How to get started with Drive"
          },
          ...
        ]
      },
      ...
    }