Method: appstoreappsreview.updateappstorehostedapp

Cập nhật thông tin chi tiết cho một ứng dụng được lưu trữ trên cửa hàng ứng dụng. Sử dụng thông tin này để cung cấp thông tin chi tiết cho một ứng dụng mới hoặc để cập nhật thông tin chi tiết cho một ứng dụng hiện có. Bản cập nhật sẽ được gửi đi xem xét ngay sau khi bạn tạo.

Yêu cầu HTTP

POST https://androidpublisher.googleapis.com/androidpublisher/v3/appstore/{appStorePackageName}/apps:update

URL sử dụng cú pháp Chuyển mã gRPC.

Tham số đường dẫn

Tham số
appStorePackageName

string

Bắt buộc. Tên gói của cửa hàng ứng dụng bên thứ ba.

Nội dung yêu cầu

Nội dung yêu cầu chứa dữ liệu với cấu trúc sau:

Biểu diễn dưới dạng JSON
{
  "packageName": string,
  "appDetails": {
    object (AppStoreAppDetails)
  },
  "activeLocalizedStoreListings": [
    {
      object (AppStoreAppStoreListing)
    }
  ],
  "activeApks": {
    object (AppStoreAppActiveApks)
  },
  "policyDeclarations": [
    {
      object (AppStoreAppPolicyDeclaration)
    }
  ]
}
Trường
packageName

string

Bắt buộc. Tên gói của ứng dụng.

appDetails

object (AppStoreAppDetails)

Bắt buộc. Thông tin chung về nhà phát triển của ứng dụng.

activeLocalizedStoreListings[]

object (AppStoreAppStoreListing)

Bắt buộc. Thông tin chi tiết về bản cập nhật trang thông tin trên Cửa hàng Play đã bản địa hoá.

activeApks

object (AppStoreAppActiveApks)

Bắt buộc. Các APK đang được phân phối của ứng dụng.

policyDeclarations[]

object (AppStoreAppPolicyDeclaration)

Bắt buộc. Nội dung khai báo theo chính sách được cung cấp cho ứng dụng.

Nội dung phản hồi

Nếu thành công, phần nội dung phản hồi sẽ trống.

Phạm vi uỷ quyền

Yêu cầu phạm vi OAuth sau:

  • https://www.googleapis.com/auth/androidpublisher

AppStoreAppDetails

Thông tin chi tiết về ứng dụng.

Biểu diễn dưới dạng JSON
{
  "developerName": string,
  "contactEmail": string,
  "developerWebsite": string
}
Trường
developerName

string

Bắt buộc. Tên của nhà phát triển ứng dụng.

contactEmail

string

Bắt buộc. Địa chỉ email liên hệ của nhà phát triển ứng dụng.

developerWebsite

string

Không bắt buộc. Đường liên kết đến trang web của nhà phát triển hoặc ứng dụng.

AppStoreAppStoreListing

Một trang thông tin trên Cửa hàng Play đã bản địa hoá. Đây là thông tin chi tiết về ứng dụng xuất hiện trong cửa hàng ứng dụng.

Biểu diễn dưới dạng JSON
{
  "languageCode": string,
  "appName": string,
  "fullDescription": string,
  "shortDescription": string,
  "appIconId": string,
  "screenshotId": [
    string
  ],
  "videoLink": string
}
Trường
languageCode

string

Bắt buộc. Mã ngôn ngữ (ví dụ: "en-US") của trang thông tin.

appName

string

Bắt buộc. Tiêu đề của ứng dụng.

fullDescription

string

Bắt buộc. Văn bản mô tả toàn diện về ứng dụng.

shortDescription

string

Không bắt buộc. Tóm tắt nhanh về ứng dụng.

appIconId

string

Bắt buộc. Mã nhận dạng hình ảnh được tạo từ appstoreappsreview.uploadimage cho biểu tượng ứng dụng chính.

screenshotId[]

string

Bắt buộc. Nhiều mã nhận dạng hình ảnh cho các thư viện ảnh chụp màn hình.

AppStoreAppActiveApks

Thông tin về các APK đang hoạt động của một ứng dụng do cửa hàng ứng dụng lưu trữ.

Biểu diễn dưới dạng JSON
{
  "activeApkSets": [
    {
      object (AppStoreAppActiveApkSet)
    }
  ]
}
Trường
activeApkSets[]

object (AppStoreAppActiveApkSet)

Bắt buộc. Danh sách chỉ định những bộ APK được phân phối cùng nhau. Danh sách này phải chứa tất cả các APK mà bạn đang phân phối cho ứng dụng này. Hãy thêm một mục cho từng nhóm APK có thể cài đặt riêng lẻ.

AppStoreAppActiveApkSet

Một tập hợp có thể cài đặt gồm các tệp APK đang hoạt động. Tất cả APK trong tập hợp này phải thuộc cùng một phiên bản của ứng dụng. Một tập hợp APK có thể chỉ chứa 1 APK nếu ứng dụng có liên quan phát hành bằng APK. Nếu ứng dụng sử dụng gói ứng dụng (hoặc một công nghệ tương tự), thì tập hợp này phải chứa tất cả các APK (kể cả APK không bắt buộc) có thể được cài đặt cho ứng dụng này. Một tập hợp APK phải có thể cài đặt cùng nhau. Nếu một số APK loại trừ lẫn nhau và không thể cài đặt cùng nhau, thì bạn nên tạo một AppStoreAppActiveApkSet riêng.

Biểu diễn dưới dạng JSON
{
  "baseApkId": string,
  "splitApkId": [
    string
  ],
  "versionCode": string,
  "alreadyPublishedOnPlay": boolean
}
Trường
baseApkId

string

Bắt buộc. Mã nhận dạng cho mô-đun ứng dụng cơ sở chính. Ví dụ: base.apk hoặc app.apk.

splitApkId[]

string

Không bắt buộc. Mã nhận dạng cho các mô-đun phân tách có thể được cài đặt kết hợp với tệp APK cơ sở. Có thể trống nếu không dùng gói ứng dụng (hoặc một công nghệ tương tự). Ví dụ: config.en.apk.

versionCode

string (int64 format)

Không bắt buộc. Mã phiên bản cho phiên bản mà bộ APK này đại diện.

alreadyPublishedOnPlay

boolean

Không bắt buộc. Tất cả APK được tham chiếu trong nhóm APK đang hoạt động này có được xuất bản trên Cửa hàng Play hay không (hoặc có nguồn gốc từ một gói ứng dụng được xuất bản trên Cửa hàng Play hay không). Khi bạn đặt giá trị này, bạn phải cung cấp versionCode.

AppStoreAppPolicyDeclaration

Khai báo tuân thủ chính sách cùng với các câu trả lời.

Biểu diễn dưới dạng JSON
{
  "declarationId": string,
  "responses": [
    {
      object (PolicyResponse)
    }
  ]
}
Trường
declarationId

string

Bắt buộc. Mã nhận dạng của khai báo tuân thủ chính sách.

responses[]

object (PolicyResponse)

Bắt buộc. Câu trả lời được cung cấp cho nội dung khai báo này.

PolicyResponse

Câu trả lời riêng lẻ cho một câu hỏi về chính sách liên quan đến ứng dụng.

Biểu diễn dưới dạng JSON
{
  "questionId": string,

  // The following is a list of mutually exclusive fields. At most one of the
  // fields will be set in a response:
  "stringResponse": {
    object (PolicyStringResponse)
  },
  "singleChoiceResponse": {
    object (PolicySingleChoiceResponse)
  },
  "multipleChoiceResponse": {
    object (PolicyMultipleChoiceResponse)
  },
  "groupResponse": {
    object (PolicyGroupResponse)
  },
  "keyedGroupResponse": {
    object (PolicyKeyedGroupResponse)
  },
  "booleanResponse": {
    object (PolicyBooleanResponse)
  },
  "documentResponse": {
    object (PolicyDocumentResponse)
  }
  // End of mutually exclusive fields.
}
Trường
questionId

string

Bắt buộc. Mã nhận dạng của câu hỏi đang được trả lời.

Giá trị phản hồi cụ thể. Sau đây là danh sách các trường loại trừ lẫn nhau. Tối đa một trong các trường sẽ được đặt trong phản hồi:
stringResponse

object (PolicyStringResponse)

Không bắt buộc. Một câu trả lời dạng chuỗi.

singleChoiceResponse

object (PolicySingleChoiceResponse)

Không bắt buộc. Câu trả lời một lựa chọn.

multipleChoiceResponse

object (PolicyMultipleChoiceResponse)

Không bắt buộc. Câu trả lời trắc nghiệm.

groupResponse

object (PolicyGroupResponse)

Không bắt buộc. Phản hồi theo nhóm.

keyedGroupResponse

object (PolicyKeyedGroupResponse)

Không bắt buộc. Phản hồi theo nhóm có khoá.

booleanResponse

object (PolicyBooleanResponse)

Không bắt buộc. Một phản hồi boolean.

documentResponse

object (PolicyDocumentResponse)

Không bắt buộc. Câu trả lời là một tài liệu.

Kết thúc các trường xung khắc.

PolicyStringResponse

Mọi phản hồi đều được mã hoá tốt nhất dưới dạng một chuỗi. Bao gồm các URL và trường văn bản có nhiều dòng.

Biểu diễn dưới dạng JSON
{
  "value": string
}
Trường
value

string

Bắt buộc. Giá trị chuỗi được cung cấp.

PolicySingleChoiceResponse

Mọi câu trả lời mà người dùng chọn một lựa chọn trong số nhiều lựa chọn có thể.

Biểu diễn dưới dạng JSON
{
  "value": string
}
Trường
value

string

Bắt buộc. Giá trị đã cung cấp.

PolicyMultipleChoiceResponse

Mọi câu trả lời mà người dùng có thể chọn nhiều lựa chọn trong số nhiều khả năng.

Biểu diễn dưới dạng JSON
{
  "values": [
    string
  ]
}
Trường
values[]

string

Không bắt buộc. Giá trị đã cung cấp.

PolicyGroupResponse

Một nhóm phản hồi lặp lại.

Biểu diễn dưới dạng JSON
{
  "groups": [
    {
      object (Group)
    }
  ]
}
Trường
groups[]

object (Group)

Không bắt buộc. Nhóm câu trả lời cho các câu hỏi.

Nhóm

Một nhóm phản hồi.

Biểu diễn dưới dạng JSON
{
  "responses": [
    {
      object (NestedPolicyResponse)
    }
  ]
}
Trường
responses[]

object (NestedPolicyResponse)

Bắt buộc. Câu trả lời trong một nhóm.

NestedPolicyResponse

Một câu trả lời riêng lẻ được lồng vào nhau cho một câu hỏi về chính sách đối với một ứng dụng. Câu trả lời được lồng vào nhau giống như câu trả lời thông thường nhưng không có nhóm.

Biểu diễn dưới dạng JSON
{
  "questionId": string,

  // The following is a list of mutually exclusive fields. At most one of the
  // fields will be set in a response:
  "stringResponse": {
    object (PolicyStringResponse)
  },
  "singleChoiceResponse": {
    object (PolicySingleChoiceResponse)
  },
  "multipleChoiceResponse": {
    object (PolicyMultipleChoiceResponse)
  },
  "booleanResponse": {
    object (PolicyBooleanResponse)
  },
  "documentResponse": {
    object (PolicyDocumentResponse)
  }
  // End of mutually exclusive fields.
}
Trường
questionId

string

Bắt buộc. Mã nhận dạng của câu hỏi đang được trả lời.

Giá trị phản hồi cụ thể. Sau đây là danh sách các trường loại trừ lẫn nhau. Tối đa một trong các trường sẽ được đặt trong phản hồi:
stringResponse

object (PolicyStringResponse)

Không bắt buộc. Một câu trả lời dạng chuỗi.

singleChoiceResponse

object (PolicySingleChoiceResponse)

Không bắt buộc. Câu trả lời một lựa chọn.

multipleChoiceResponse

object (PolicyMultipleChoiceResponse)

Không bắt buộc. Câu trả lời trắc nghiệm.

booleanResponse

object (PolicyBooleanResponse)

Không bắt buộc. Một phản hồi boolean.

documentResponse

object (PolicyDocumentResponse)

Không bắt buộc. Câu trả lời là một tài liệu.

Kết thúc các trường xung khắc.

PolicyBooleanResponse

Các phản hồi sẽ chỉ là giá trị boolean.

Biểu diễn dưới dạng JSON
{
  "value": boolean
}
Trường
value

boolean

Bắt buộc. Giá trị boolean được cung cấp.

PolicyDocumentResponse

Một tài liệu đã tải lên. Phải là một tài liệu logic duy nhất (ví dụ: giấy phép tài chính).

Biểu diễn dưới dạng JSON
{
  "documentId": string,

  // The following is a list of mutually exclusive fields. At most one of the
  // fields will be set in a response:
  "expiryDate": {
    object (Date)
  },
  "nonExpiring": boolean
  // End of mutually exclusive fields.
}
Trường
documentId

string

Bắt buộc. Mã nhận dạng của tài liệu được tải lên.

Thông tin về thời gian hết hạn của tài liệu. Sau đây là danh sách các trường loại trừ lẫn nhau. Tối đa một trong các trường sẽ được đặt trong phản hồi:
expiryDate

object (Date)

Không bắt buộc. Ngày hết hạn của giấy tờ.

nonExpiring

boolean

Không bắt buộc. Đúng nếu bạn xác nhận rằng giấy tờ không có ngày hết hạn.

Kết thúc các trường xung khắc.

PolicyKeyedGroupResponse

Một nhóm phản hồi, mỗi phản hồi được xác định bằng một khoá riêng biệt trong một tập hợp được phép.

Biểu diễn dưới dạng JSON
{
  "groups": [
    {
      object (KeyedGroup)
    }
  ]
}
Trường
groups[]

object (KeyedGroup)

Không bắt buộc. Nhóm câu trả lời cho các câu hỏi. Mỗi KeyedGroup.key phải là duy nhất trong danh sách này.

KeyedGroup

Một nhóm các phản hồi, có khoá.

Biểu diễn dưới dạng JSON
{
  "key": string,
  "responses": [
    {
      object (NestedPolicyResponse)
    }
  ]
}
Trường
key

string

Bắt buộc. Khoá cho nhóm này.

responses[]

object (NestedPolicyResponse)

Bắt buộc. Các câu trả lời trong nhóm này.