문 목록 구문

명세 목록은 잘 알려진 위치에 있는 JSON 인코딩 파일 또는 스니펫입니다.

명령문 목록의 위치

이 목록을 저장해야 하는 위치는 명령문 목록 만들기를 참고하세요.

구문

명세 목록 또는 스니펫은 하나 이상의 웹사이트 또는 앱 명세가 JSON 객체로 구성된 JSON 배열로 구성됩니다. 이러한 문은 순서에 관계없이 작성할 수 있습니다. 일반적인 구문은 다음과 같습니다.

[
  {
    "relation": ["relation_string"],
    "target": {target_object}
  } , ...
]
relation
타겟에 관해 선언되는 관계를 설명하는 하나 이상의 문자열 배열입니다. 정의된 관계 문자열 목록을 참고하세요. 예: delegate_permission/common.handle_all_urls
target
이 문이 적용되는 타겟 애셋입니다. 사용 가능한 타겟 유형:
relation_extensions (선택사항)

선택사항인 relation_extensions 필드를 문에 추가하여 부여하려는 권한 및 연결에 관한 자세한 정보를 제공할 수 있습니다. 이 필드는 각 키가 관계 문자열이고 값이 해당 관계의 확장 프로그램을 포함하는 객체인 객체여야 합니다. 이러한 명세서를 요청하는 클라이언트는 이러한 필드를 준수하도록 업데이트해야 합니다.

예를 들어 delegate_permission/common.handle_all_urls 관계의 relation_extensions는 다음과 같을 수 있습니다.

  {
    "relation": ["delegate_permission/common.handle_all_urls"],
    "target": {
      "namespace": "android_app",
      "package_name": "com.example.app",
      "sha256_cert_fingerprints": ["..."]
    },
    "relation_extensions": {
      "delegate_permission/common.handle_all_urls": {...}
    }
  }
  

DAL API는 요청에 return_relation_extensions=true 매개변수가 설정된 경우 API 호출에서 relation_extensions 반환을 지원합니다.

예시 문장 목록

웹사이트와 앱에 관한 명령문이 모두 포함된 웹사이트 명령문 목록의 예는 다음과 같습니다. http://example.digitalassetlinks.org/.well-known/assetlinks.json

수십 개 이상의 문으로 확장

경우에 따라 주 구성원이 여러 타겟에 관해 다양한 문을 작성할 수 있으며, 여러 주 구성원이 동일한 타겟 집합에 관해 문을 발급해야 할 수도 있습니다. 예를 들어 웹사이트가 여러 국가별 최상위 도메인에서 제공될 수 있으며, 이들 모두 동일한 모바일 앱에 관한 설명을 제공할 수 있습니다.

이러한 상황에서는 include statements가 유용할 수 있습니다. 이 메커니즘을 사용하면 여러 주체에서 모든 주체의 명령문을 정의하는 하나의 중앙 위치로 포인터를 설정할 수 있습니다.

예를 들어 중앙 위치가 `https://example.com/includedstatements.json`이라고 결정할 수 있습니다. 이 파일은 위의 예와 동일한 콘텐츠를 포함하도록 구성할 수 있습니다.

웹사이트에서 include 파일로 포인터를 설정하려면 `https://example.com/.well-known/assetlinks.json` 을 다음과 같이 변경합니다.

[{
  "include": "https://example.com/includedstatements.json"
}]

Android 앱에서 include 파일로 포인터를 설정하려면 `res/values/strings.xml` 을 다음과 같이 변경합니다.

<resources>
  ...
  <string name="asset_statements">
    [{
      \"include\": \"https://example.com/includedstatements.json\"
    }]
  </string>
</resources>

추가 정보

명세서 목록 형식과 기본 개념에 관한 자세한 설명은 사양 문서를 참고하세요.