fastlane: Metadata
Apple can reject an app for metadata issues like mentioning other platforms, bad-mouthing Apple, and others. Use fastlane
's precheck
to examine your app for App Store review rules compliance.
$ bundle exec fastlane precheck
precheck
is an alias for the check_app_store_metadata
.
Use Precheckfile
to store your precheck defaults, run fastlane precheck init
to create one. Set the desired level for the check: skip
, warn
, or error
:
# skip checking this metadata
negative_apple_sentiment(level: :skip)
# trigger a warning
curse_words(level: :warn)
# show error and stop after precheck
unreachable_urls(level: :error)
# check for words
custom_text(
data: ["chrome", "webos"],
level: :warn
)
By default all levels are set to :error
, so you need to list only those keys that you want to skip or warn.
At the time of writing, "precheck cannot check In-app purchases with the App Store Connect API Key (yet)", but the default is true
, so it makes sense to change it to false
.
Important: precheck
does not check Appfile
for App Store credentials and app identifiers, so you'd need to add them into Precheckfile
:
app_identifier APP_IDENTIFIER
username USERNAME
team_name TEAM_NAME
team_id TEAM_ID
Use in Fastfile
:
# run precheck alone
lane :check_metadata do
precheck
end
precheck
is also integrated with deliver
:
# Fastfile
lane :production do
# ...
# by default deliver will call precheck and warn you of any problems
# if you want precheck to halt submitting to app review, you can pass
# precheck_default_rule_level: :error
deliver(precheck_default_rule_level: :error)
# ...
end
For the full list of the keys to check and more see precheck - fastlane docs.