API 참조
Packages
설치된 앱 나열, APK 메타데이터 보기, 태그 관리를 수행합니다.
타입 정의
bash
type Package {
id: ID! # package name e.g. "com.example.app"
name: String! # display name
type: String! # "user" | "system"
version: String! # "versionName (versionCode)"
path: String! # APK path
size: Int! # bytes
certs: [PackageCert!]!
installedAt: String! # ISO 8601
updatedAt: String!
tags: [Tag!]!
}
type PackageCert {
issuer: String!
subject: String!
serialNumber: String!
validFrom: String!
validTo: String!
}
type PackageStatus {
id: ID! # package name
installed: Boolean!
updatedAt: String # ISO 8601, null when not installed
}
type PackageInstallPending {
packageName: String!
updatedAt: String!
isNew: Boolean!
}작업
query
packages
설치된 패키지를 검색합니다. 모두 나열하려면 쿼리를 비워 두십시오.
bash
query GetPackages($offset: Int!, $limit: Int!, $query: String!, $sortBy: FileSortBy!) {
packages(offset: $offset, limit: $limit, query: $query, sortBy: $sortBy) {
id name type version path size
certs { issuer subject serialNumber validFrom validTo }
installedAt updatedAt
tags { id name }
}
}query
packageStatuses
패키지 이름 목록의 설치 상태와 updatedAt 타임스탬프를 조회합니다.
bash
query GetPackageStatuses($ids: [ID!]!) {
packageStatuses(ids: $ids) { id installed updatedAt }
}query
packageCount
쿼리와 일치하는 패키지 수를 셉니다.
bash
query GetPackageCount($query: String!) {
packageCount(query: $query)
}mutation
installPackage
절대 파일 경로로 APK를 설치 (또는 업데이트)합니다. 패키지 이름, 마지막 업데이트 시간, 패키지가 새로 설치되었는지 여부를 반환합니다.
bash
mutation InstallPackage($path: String!) {
installPackage(path: $path) { packageName updatedAt isNew }
}mutation
uninstallPackages
각 패키지 ID에 대해 시스템 제거 프롬프트를 시작합니다. 사용자가 기기에서 확인해야 합니다.
bash
mutation UninstallPackages($ids: [ID!]!) {
uninstallPackages(ids: $ids)
}