Documentation
¶
Index ¶
- Constants
- type AgeRatingDeclaration
- type AppInfoLocalization
- type Build
- type CheckResult
- type IAP
- type IAPInput
- type IAPReport
- type Input
- type MetadataLengthIssue
- type Report
- type ReviewDetails
- type Screenshot
- type ScreenshotSet
- type Severity
- type Subscription
- type SubscriptionsInput
- type SubscriptionsReport
- type Summary
- type VersionLocalization
Constants ¶
const ( LimitDescription = 4000 LimitKeywords = 100 LimitWhatsNew = 4000 LimitPromotionalText = 170 LimitName = 30 LimitSubtitle = 30 )
App Store metadata character limits.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type AgeRatingDeclaration ¶
type AgeRatingDeclaration struct {
Advertising *bool
Gambling *bool
HealthOrWellnessTopics *bool
LootBox *bool
MessagingAndChat *bool
ParentalControls *bool
AgeAssurance *bool
UnrestrictedWebAccess *bool
UserGeneratedContent *bool
AlcoholTobaccoOrDrugUseOrReferences *string
Contests *string
GamblingSimulated *string
GunsOrOtherWeapons *string
MedicalOrTreatmentInformation *string
ProfanityOrCrudeHumor *string
SexualContentGraphicAndNudity *string
SexualContentOrNudity *string
HorrorOrFearThemes *string
MatureOrSuggestiveThemes *string
ViolenceCartoonOrFantasy *string
ViolenceRealistic *string
ViolenceRealisticProlongedGraphicOrSadistic *string
KidsAgeBand *string
AgeRatingOverride *string
AgeRatingOverrideV2 *string
KoreaAgeRatingOverride *string
DeveloperAgeRatingInfoURL *string
}
AgeRatingDeclaration represents age rating attributes for validation.
type AppInfoLocalization ¶
type AppInfoLocalization struct {
ID string
Locale string
Name string
Subtitle string
PrivacyPolicyURL string
}
AppInfoLocalization represents app info metadata.
type CheckResult ¶
type CheckResult struct {
ID string `json:"id"`
Severity Severity `json:"severity"`
Message string `json:"message"`
Remediation string `json:"remediation,omitempty"`
Locale string `json:"locale,omitempty"`
Field string `json:"field,omitempty"`
ResourceType string `json:"resourceType,omitempty"`
ResourceID string `json:"resourceId,omitempty"`
}
CheckResult represents a single validation check result.
type IAPReport ¶
type IAPReport struct {
AppID string `json:"appId"`
IAPCount int `json:"iapCount,omitempty"`
Summary Summary `json:"summary"`
Checks []CheckResult `json:"checks"`
Strict bool `json:"strict,omitempty"`
}
IAPReport is the top-level validate iap output.
func ValidateIAP ¶
ValidateIAP validates IAP review readiness and returns a report.
type Input ¶
type Input struct {
AppID string
AppInfoID string
VersionID string
VersionString string
VersionState string
Platform string
PrimaryLocale string
VersionLocalizations []VersionLocalization
AppInfoLocalizations []AppInfoLocalization
ReviewDetails *ReviewDetails
PrimaryCategoryID string
Build *Build
PriceScheduleID string
AvailabilityID string
AvailableTerritories int
ScreenshotSets []ScreenshotSet
Subscriptions []Subscription
SubscriptionFetchSkipReason string
AgeRatingDeclaration *AgeRatingDeclaration
}
Input collects the validation inputs.
type MetadataLengthIssue ¶
MetadataLengthIssue describes one over-limit metadata field.
func AppInfoLocalizationLengthIssues ¶
func AppInfoLocalizationLengthIssues(loc AppInfoLocalization) []MetadataLengthIssue
AppInfoLocalizationLengthIssues returns over-limit fields for one app-info localization.
func VersionLocalizationLengthIssues ¶
func VersionLocalizationLengthIssues(loc VersionLocalization) []MetadataLengthIssue
VersionLocalizationLengthIssues returns over-limit fields for one version localization.
type Report ¶
type Report struct {
AppID string `json:"appId"`
VersionID string `json:"versionId"`
VersionString string `json:"versionString,omitempty"`
Platform string `json:"platform,omitempty"`
Summary Summary `json:"summary"`
Checks []CheckResult `json:"checks"`
Strict bool `json:"strict,omitempty"`
}
Report is the top-level validation output.
type ReviewDetails ¶
type ReviewDetails struct {
ID string
ContactFirstName string
ContactLastName string
ContactEmail string
ContactPhone string
DemoAccountName string
DemoAccountPassword string
DemoAccountRequired bool
Notes string
}
ReviewDetails represents App Store review details for a version.
type Screenshot ¶
Screenshot represents a screenshot asset.
type ScreenshotSet ¶
type ScreenshotSet struct {
ID string
DisplayType string
Locale string
LocalizationID string
Screenshots []Screenshot
}
ScreenshotSet represents a screenshot set and its assets.
type Subscription ¶
type Subscription struct {
ID string
Name string
ProductID string
State string
GroupID string
HasImage bool
ImageCheckSkipped bool
ImageCheckSkipReason string
}
Subscription represents an auto-renewable subscription for review-readiness validation.
type SubscriptionsInput ¶
type SubscriptionsInput struct {
AppID string
Subscriptions []Subscription
}
SubscriptionsInput collects subscription validation inputs.
type SubscriptionsReport ¶
type SubscriptionsReport struct {
AppID string `json:"appId"`
SubscriptionCount int `json:"subscriptionCount,omitempty"`
Summary Summary `json:"summary"`
Checks []CheckResult `json:"checks"`
Strict bool `json:"strict,omitempty"`
}
SubscriptionsReport is the top-level validate subscriptions output.
func ValidateSubscriptions ¶
func ValidateSubscriptions(input SubscriptionsInput, strict bool) SubscriptionsReport
ValidateSubscriptions validates subscription review readiness and returns a report.