Tham chiếu API

Packages

Liệt kê ứng dụng đã cài đặt, xem siêu dữ liệu APK và quản lý thẻ.

Định nghĩa kiểu

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!
}

Thao tác

query

packages

Tìm kiếm gói đã cài đặt. Để query trống để liệt kê tất cả.

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

Tra cứu trạng thái cài đặt và timestamp updatedAt cho một danh sách tên gói.

bash
query GetPackageStatuses($ids: [ID!]!) {
  packageStatuses(ids: $ids) { id installed updatedAt }
}
query

packageCount

Đếm các gói khớp với một query.

bash
query GetPackageCount($query: String!) {
  packageCount(query: $query)
}
mutation

installPackage

Cài đặt (hoặc cập nhật) một APK theo đường dẫn tệp tuyệt đối. Trả về tên gói, thời gian cập nhật cuối cùng, và liệu gói có mới được cài đặt hay không.

bash
mutation InstallPackage($path: String!) {
  installPackage(path: $path) { packageName updatedAt isNew }
}
mutation

uninstallPackages

Khởi chạy lời nhắc gỡ cài đặt hệ thống cho mỗi ID gói. Người dùng phải xác nhận trên thiết bị.

bash
mutation UninstallPackages($ids: [ID!]!) {
  uninstallPackages(ids: $ids)
}