Google Drive 인터페이스 빌드

Google Workspace 부가기능은 사용자가 Google Drive를 사용할 때 맞춤 인터페이스를 제공할 수 있습니다. 이를 통해 사용자에게 관련 정보를 추가로 제공하고, 작업을 자동화하고, 서드 파티 시스템을 Google Drive에 연결할 수 있습니다.

부가기능 UI 액세스

Google Drive 사용자 인터페이스의 오른쪽에 있는 아이콘 열에 아이콘이 표시되면 Google Drive에서 Google Workspace 부가기능을 열 수 있습니다. Google Workspace 부가기능은 홈페이지 인터페이스, 항목 선택 인터페이스 또는 둘 다를 정의할 수 있습니다.

  • 사용자가 Google Drive에 있는 동안 부가기능 아이콘을 클릭하면 부가기능이 해당 drive.homepageTrigger 함수를 실행합니다 (있는 경우). 이 함수는 표시를 위해 Google Drive에 홈페이지 카드를 빌드하고 반환합니다. drive.homepageTrigger 함수가 정의되지 않은 경우 일반 홈페이지 카드가 대신 표시됩니다.
  • 사용자가 Google Drive에서 하나 이상의 항목을 선택한 다음 부가기능 아이콘을 클릭하거나 부가기능이 열려 있는 동안 항목을 선택하면 부가기능이 해당 drive.onItemsSelectedTrigger 컨텍스트 함수 (있는 경우)를 실행합니다. 이 함수는 부가기능의 Google Drive 컨텍스트 '선택한 항목' 인터페이스를 빌드하고 표시를 위해 Google Drive에 반환합니다.

부가기능 Drive 인터페이스 빌드

다음 일반적인 단계에 따라 Google Drive를 확장하는 인터페이스를 빌드할 수 있습니다.

  1. 부가기능에 Drive 전용 홈페이지를 사용할지 결정합니다. 사용자가 Drive 항목을 선택할 때 상황별 인터페이스를 제공할지 여부도 결정합니다.
  2. 필요한 Drive 범위를 포함하여 적절한 addOns.commonaddOns.drive 필드를 부가기능 스크립트 프로젝트 매니페스트에 추가합니다.
  3. 드라이브 전용 홈페이지를 제공하는 경우 drive.homepageTrigger 함수를 구현하여 이 인터페이스를 빌드합니다. 여러 Google Workspace 호스트에 common.homepageTrigger 인터페이스를 사용할 수도 있습니다.
  4. Drive 컨텍스트 항목 선택 인터페이스를 제공하는 경우 drive.onItemsSelectedTrigger 컨텍스트 트리거 함수를 구현하여 이 인터페이스를 빌드해야 합니다. 자세한 내용은 선택한 항목의 드라이브 컨텍스트 인터페이스를 참고하세요.
  5. 버튼 클릭과 같은 사용자의 UI 상호작용에 응답하는 데 필요한 연결된 콜백 함수를 구현합니다.

Drive 홈페이지

Google Drive는 Google Workspace 부가기능 홈페이지 표시를 지원합니다. Google Drive에 부가기능의 공통 홈페이지를 표시하려면 부가기능의 매니페스트에 addOns.drive 필드가 있는지 확인하세요.

또는 부가기능 매니페스트에 drive.homepageTrigger를 추가하여 Drive 전용 홈페이지를 제공할 수 있습니다.

어떤 경우든 부가기능의 스크립트 프로젝트에 홈페이지 트리거 함수의 이름을 제공해야 합니다. 이 함수는 필요할 때 Drive 홈페이지를 빌드하기 위해 자동으로 호출됩니다. 이 함수를 구현하여 홈페이지를 구성하는 단일 Card 또는 Card 객체 배열을 빌드하고 반환해야 합니다. 홈페이지 트리거 함수에는 클라이언트의 플랫폼과 같은 일반적인 정보가 포함된 이벤트 객체가 매개변수로 전달됩니다. 이벤트 객체 데이터를 사용하여 홈페이지의 구성을 맞춤설정할 수 있��니다.

선택한 항목의 Drive 컨텍스트 인터페이스

Google Drive는 상황별 트리거를 사용하여 사용자가 하나 이상의 Google Drive 항목을 선택할 때 표시할 인터페이스(있는 경우)를 결정합니다. 트리거가 실행되면 부가기능 매니페스트drive.onItemsSelectedTrigger.runFunction 필드에 지정된 컨텍스트 트리거 함수가 실행됩니다.

Drive의 컨텍스트 항목 선택 인터페이스를 만들려면 다음을 실행해야 합니다.

  1. 애드온의 매니페스트에 https://www.googleapis.com/auth/drive.addons.metadata.readonly 범위가 포함되어 있는지 확인합니다.

  2. 매니페스트에 drive.onItemsSelectedTrigger 섹션이 포함되어 있는지 확인합니다.

  3. drive.onItemsSelectedTrigger 필드에 지정된 함수를 구현합니다. 이 함수는 이벤트 객체를 인수로 허용하며 단일 Card 객체 또는 Card 객체의 배열을 반환해야 합니다.

  4. 다른 카드와 마찬가지로 인터페이스의 위젯 상호작용을 제공하는 데 사용되는 ���백 함수를 구현해야 합니다. 예를 들어 인터페이스에 버튼을 포함하는 경우 버튼이 클릭될 때 실행되는 작업이 연결되어 있고 콜백 함수가 구현되어 있어야 합니다.

이벤트 객체

이벤트 객체는 함수가 호출될 때 생성되어 drive.homepageTrigger 또는 drive.onItemsSelectedTrigger 트리거 함수에 전달됩니다. 트리거 함수는 이 이벤트 객체의 정보를 사용하여 부가기능 카드를 구성하는 방법이나 부가기능 동작을 제어하는 방법을 결정할 수 있습니다.

이벤트 객체의 전체 구조는 이벤트 객체에 설명되어 있습니다. Drive가 부가기능의 호스트 앱으로 작동하는 경우 컨텍스트 이벤트 객체에는 Drive 관련 클라이언트 정보를 전달하는 Drive 이벤트 객체 필드가 포함됩니다.

항목 선택 트리거의 컨텍스트 Drive 이벤트 객체에는 트리거가 실행될 때 사용자가 선택한 항목에 관한 정보가 포함됩니다. 사용자가 Drive에서 두 개 이상의 항목을 선택하면 항목 중 하나가 기본 관심 항목으로 간주됩니다. 이 항목을 활성 커서 항목이라고 합니다.

다음 예시는 drive.onItemsSelectedTrigger 함수에 전달되는 Drive 이벤트 객체를 보여줍니다.

    {
      "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"
          },
          ...
        ]
      },
      ...
    }