fastlane 2.185.0 → 2.188.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/README.md +96 -96
- data/fastlane/lib/fastlane/actions/appetize.rb +0 -7
- data/fastlane/lib/fastlane/actions/appium.rb +40 -65
- data/fastlane/lib/fastlane/actions/appledoc.rb +45 -45
- data/fastlane/lib/fastlane/actions/apteligent.rb +3 -2
- data/fastlane/lib/fastlane/actions/artifactory.rb +5 -6
- data/fastlane/lib/fastlane/actions/automatic_code_signing.rb +7 -13
- data/fastlane/lib/fastlane/actions/backup_xcarchive.rb +2 -2
- data/fastlane/lib/fastlane/actions/badge.rb +9 -13
- data/fastlane/lib/fastlane/actions/build_and_upload_to_appetize.rb +1 -3
- data/fastlane/lib/fastlane/actions/bundle_install.rb +8 -10
- data/fastlane/lib/fastlane/actions/carthage.rb +1 -15
- data/fastlane/lib/fastlane/actions/changelog_from_git_commits.rb +8 -17
- data/fastlane/lib/fastlane/actions/chatwork.rb +3 -2
- data/fastlane/lib/fastlane/actions/clean_build_artifacts.rb +0 -1
- data/fastlane/lib/fastlane/actions/clean_cocoapods_cache.rb +0 -1
- data/fastlane/lib/fastlane/actions/cloc.rb +9 -13
- data/fastlane/lib/fastlane/actions/cocoapods.rb +9 -15
- data/fastlane/lib/fastlane/actions/commit_github_file.rb +1 -3
- data/fastlane/lib/fastlane/actions/commit_version_bump.rb +6 -7
- data/fastlane/lib/fastlane/actions/copy_artifacts.rb +3 -4
- data/fastlane/lib/fastlane/actions/crashlytics.rb +7 -11
- data/fastlane/lib/fastlane/actions/create_app_on_managed_play_store.rb +70 -76
- data/fastlane/lib/fastlane/actions/create_keychain.rb +13 -11
- data/fastlane/lib/fastlane/actions/create_pull_request.rb +0 -9
- data/fastlane/lib/fastlane/actions/danger.rb +6 -11
- data/fastlane/lib/fastlane/actions/deploygate.rb +1 -2
- data/fastlane/lib/fastlane/actions/docs/build_app.md +1 -1
- data/fastlane/lib/fastlane/actions/docs/capture_android_screenshots.md +26 -27
- data/fastlane/lib/fastlane/actions/docs/capture_ios_screenshots.md +2 -2
- data/fastlane/lib/fastlane/actions/docs/create_app_online.md +171 -67
- data/fastlane/lib/fastlane/actions/download_app_privacy_details_from_app_store.rb +1 -1
- data/fastlane/lib/fastlane/actions/download_dsyms.rb +3 -4
- data/fastlane/lib/fastlane/actions/dsym_zip.rb +1 -1
- data/fastlane/lib/fastlane/actions/ensure_git_branch.rb +0 -1
- data/fastlane/lib/fastlane/actions/ensure_git_status_clean.rb +3 -4
- data/fastlane/lib/fastlane/actions/ensure_no_debug_code.rb +3 -5
- data/fastlane/lib/fastlane/actions/ensure_xcode_version.rb +1 -2
- data/fastlane/lib/fastlane/actions/environment_variable.rb +13 -21
- data/fastlane/lib/fastlane/actions/erb.rb +2 -5
- data/fastlane/lib/fastlane/actions/get_build_number_repository.rb +1 -1
- data/fastlane/lib/fastlane/actions/get_ipa_info_plist_value.rb +0 -1
- data/fastlane/lib/fastlane/actions/get_managed_play_store_publishing_rights.rb +29 -34
- data/fastlane/lib/fastlane/actions/get_push_certificate.rb +1 -1
- data/fastlane/lib/fastlane/actions/git_add.rb +5 -10
- data/fastlane/lib/fastlane/actions/git_commit.rb +2 -6
- data/fastlane/lib/fastlane/actions/git_remote_branch.rb +57 -0
- data/fastlane/lib/fastlane/actions/github_api.rb +2 -5
- data/fastlane/lib/fastlane/actions/gradle.rb +12 -20
- data/fastlane/lib/fastlane/actions/hg_commit_version_bump.rb +1 -1
- data/fastlane/lib/fastlane/actions/hg_push.rb +1 -1
- data/fastlane/lib/fastlane/actions/hipchat.rb +4 -5
- data/fastlane/lib/fastlane/actions/hockey.rb +5 -12
- data/fastlane/lib/fastlane/actions/ifttt.rb +3 -6
- data/fastlane/lib/fastlane/actions/import_from_git.rb +2 -4
- data/fastlane/lib/fastlane/actions/increment_build_number.rb +1 -2
- data/fastlane/lib/fastlane/actions/install_on_device.rb +3 -6
- data/fastlane/lib/fastlane/actions/installr.rb +22 -25
- data/fastlane/lib/fastlane/actions/ipa.rb +2 -2
- data/fastlane/lib/fastlane/actions/jazzy.rb +8 -14
- data/fastlane/lib/fastlane/actions/latest_testflight_build_number.rb +3 -4
- data/fastlane/lib/fastlane/actions/lcov.rb +0 -4
- data/fastlane/lib/fastlane/actions/mailgun.rb +21 -27
- data/fastlane/lib/fastlane/actions/make_changelog_from_jenkins.rb +1 -1
- data/fastlane/lib/fastlane/actions/modify_services.rb +59 -24
- data/fastlane/lib/fastlane/actions/nexus_upload.rb +2 -2
- data/fastlane/lib/fastlane/actions/notarize.rb +1 -4
- data/fastlane/lib/fastlane/actions/number_of_commits.rb +1 -1
- data/fastlane/lib/fastlane/actions/oclint.rb +15 -14
- data/fastlane/lib/fastlane/actions/pod_push.rb +0 -2
- data/fastlane/lib/fastlane/actions/podio_item.rb +0 -7
- data/fastlane/lib/fastlane/actions/prompt.rb +3 -4
- data/fastlane/lib/fastlane/actions/push_git_tags.rb +1 -1
- data/fastlane/lib/fastlane/actions/puts.rb +1 -2
- data/fastlane/lib/fastlane/actions/register_devices.rb +0 -1
- data/fastlane/lib/fastlane/actions/reset_git_repo.rb +5 -8
- data/fastlane/lib/fastlane/actions/reset_simulator_contents.rb +0 -2
- data/fastlane/lib/fastlane/actions/resign.rb +2 -9
- data/fastlane/lib/fastlane/actions/rsync.rb +3 -6
- data/fastlane/lib/fastlane/actions/run_tests.rb +1 -1
- data/fastlane/lib/fastlane/actions/s3.rb +1 -1
- data/fastlane/lib/fastlane/actions/say.rb +2 -3
- data/fastlane/lib/fastlane/actions/scp.rb +4 -10
- data/fastlane/lib/fastlane/actions/set_build_number_repository.rb +1 -1
- data/fastlane/lib/fastlane/actions/set_changelog.rb +1 -1
- data/fastlane/lib/fastlane/actions/set_github_release.rb +2 -8
- data/fastlane/lib/fastlane/actions/set_info_plist_value.rb +1 -1
- data/fastlane/lib/fastlane/actions/set_pod_key.rb +3 -4
- data/fastlane/lib/fastlane/actions/setup_ci.rb +1 -2
- data/fastlane/lib/fastlane/actions/setup_circle_ci.rb +1 -1
- data/fastlane/lib/fastlane/actions/setup_jenkins.rb +7 -12
- data/fastlane/lib/fastlane/actions/setup_travis.rb +1 -1
- data/fastlane/lib/fastlane/actions/sh.rb +2 -4
- data/fastlane/lib/fastlane/actions/slack.rb +6 -8
- data/fastlane/lib/fastlane/actions/slather.rb +3 -19
- data/fastlane/lib/fastlane/actions/sonar.rb +12 -19
- data/fastlane/lib/fastlane/actions/sourcedocs.rb +62 -98
- data/fastlane/lib/fastlane/actions/splunkmint.rb +2 -2
- data/fastlane/lib/fastlane/actions/spm.rb +3 -3
- data/fastlane/lib/fastlane/actions/ssh.rb +5 -10
- data/fastlane/lib/fastlane/actions/testfairy.rb +0 -1
- data/fastlane/lib/fastlane/actions/tryouts.rb +2 -3
- data/fastlane/lib/fastlane/actions/twitter.rb +0 -5
- data/fastlane/lib/fastlane/actions/unlock_keychain.rb +3 -3
- data/fastlane/lib/fastlane/actions/update_app_group_identifiers.rb +1 -4
- data/fastlane/lib/fastlane/actions/update_code_signing_settings.rb +8 -15
- data/fastlane/lib/fastlane/actions/update_fastlane.rb +2 -2
- data/fastlane/lib/fastlane/actions/update_icloud_container_identifiers.rb +1 -4
- data/fastlane/lib/fastlane/actions/update_info_plist.rb +1 -1
- data/fastlane/lib/fastlane/actions/update_keychain_access_groups.rb +1 -4
- data/fastlane/lib/fastlane/actions/update_plist.rb +1 -1
- data/fastlane/lib/fastlane/actions/update_project_provisioning.rb +2 -2
- data/fastlane/lib/fastlane/actions/update_urban_airship_configuration.rb +0 -1
- data/fastlane/lib/fastlane/actions/update_url_schemes.rb +15 -26
- data/fastlane/lib/fastlane/actions/upload_app_privacy_details_to_app_store.rb +1 -2
- data/fastlane/lib/fastlane/actions/upload_symbols_to_sentry.rb +3 -10
- data/fastlane/lib/fastlane/actions/validate_play_store_json_key.rb +40 -44
- data/fastlane/lib/fastlane/actions/version_get_podspec.rb +1 -2
- data/fastlane/lib/fastlane/actions/xcode_server_get_assets.rb +3 -3
- data/fastlane/lib/fastlane/documentation/docs_generator.rb +1 -1
- data/fastlane/lib/fastlane/documentation/markdown_docs_generator.rb +1 -1
- data/fastlane/lib/fastlane/helper/crashlytics_helper.rb +4 -4
- data/fastlane/lib/fastlane/helper/git_helper.rb +17 -5
- data/fastlane/lib/fastlane/plugins/template/.circleci/config.yml +1 -1
- data/fastlane/lib/fastlane/plugins/template/.github/workflows/test.yml +1 -1
- data/fastlane/lib/fastlane/setup/setup_ios.rb +3 -3
- data/fastlane/lib/fastlane/swift_fastlane_function.rb +4 -4
- data/fastlane/lib/fastlane/version.rb +1 -1
- data/fastlane/swift/Deliverfile.swift +1 -1
- data/fastlane/swift/DeliverfileProtocol.swift +1 -1
- data/fastlane/swift/Fastlane.swift +1239 -1222
- data/fastlane/swift/Gymfile.swift +1 -1
- data/fastlane/swift/GymfileProtocol.swift +1 -1
- data/fastlane/swift/Matchfile.swift +1 -1
- data/fastlane/swift/MatchfileProtocol.swift +1 -1
- data/fastlane/swift/Precheckfile.swift +1 -1
- data/fastlane/swift/PrecheckfileProtocol.swift +1 -1
- data/fastlane/swift/Scanfile.swift +1 -1
- data/fastlane/swift/ScanfileProtocol.swift +1 -1
- data/fastlane/swift/Screengrabfile.swift +1 -1
- data/fastlane/swift/ScreengrabfileProtocol.swift +4 -4
- data/fastlane/swift/Snapshotfile.swift +1 -1
- data/fastlane/swift/SnapshotfileProtocol.swift +1 -1
- data/fastlane/swift/formatting/Brewfile.lock.json +19 -11
- data/fastlane_core/lib/fastlane_core/configuration/config_item.rb +13 -0
- data/fastlane_core/lib/fastlane_core/print_table.rb +5 -3
- data/fastlane_core/lib/fastlane_core/project.rb +7 -3
- data/match/lib/match/importer.rb +3 -0
- data/match/lib/match/nuke.rb +2 -3
- data/pilot/lib/pilot.rb +0 -1
- data/pilot/lib/pilot/build_manager.rb +0 -3
- data/pilot/lib/pilot/manager.rb +4 -1
- data/produce/lib/produce/commands_generator.rb +99 -27
- data/produce/lib/produce/developer_center.rb +42 -4
- data/produce/lib/produce/options.rb +1 -1
- data/produce/lib/produce/service.rb +270 -179
- data/screengrab/lib/screengrab/android_environment.rb +2 -52
- data/screengrab/lib/screengrab/dependency_checker.rb +0 -20
- data/screengrab/lib/screengrab/options.rb +5 -2
- data/screengrab/lib/screengrab/runner.rb +109 -107
- data/snapshot/lib/assets/SnapfileTemplate +2 -1
- data/snapshot/lib/assets/SnapfileTemplate.swift +2 -1
- data/snapshot/lib/assets/SnapshotHelper.swift +14 -10
- data/snapshot/lib/snapshot/reports_generator.rb +3 -1
- data/snapshot/lib/snapshot/test_command_generator.rb +17 -3
- data/spaceship/lib/spaceship/client.rb +13 -3
- data/spaceship/lib/spaceship/connect_api/api_client.rb +30 -5
- data/spaceship/lib/spaceship/connect_api/models/{.app_store_version_submission.rb.swp → .bundle_id.rb.swp} +0 -0
- data/spaceship/lib/spaceship/connect_api/models/beta_tester.rb +3 -1
- data/spaceship/lib/spaceship/connect_api/models/build.rb +3 -1
- data/spaceship/lib/spaceship/connect_api/models/bundle_id.rb +8 -0
- data/spaceship/lib/spaceship/connect_api/models/bundle_id_capability.rb +58 -17
- data/spaceship/lib/spaceship/connect_api/provisioning/provisioning.rb +41 -1
- data/spaceship/lib/spaceship/connect_api/testflight/testflight.rb +13 -0
- data/spaceship/lib/spaceship/portal/.app.rb.swp +0 -0
- data/spaceship/lib/spaceship/spaceauth_runner.rb +19 -6
- metadata +25 -28
- data/fastlane/lib/fastlane/.erb_template_helper.rb.swp +0 -0
- data/fastlane/lib/fastlane/actions/.git_commit.rb.swp +0 -0
- data/gym/lib/gym/generators/.package_command_generator_xcode7.rb.swp +0 -0
- data/pilot/lib/pilot/features.rb +0 -0
- data/spaceship/lib/spaceship/.DS_Store +0 -0
@@ -47,7 +47,10 @@ module Fastlane
|
|
47
47
|
commands << Fastlane::Actions.sh("security unlock-keychain -p #{escaped_password} #{keychain_path}", log: false) if params[:unlock]
|
48
48
|
|
49
49
|
command = "security set-keychain-settings"
|
50
|
-
|
50
|
+
|
51
|
+
# https://ss64.com/osx/security-keychain-settings.html
|
52
|
+
# omitting 'timeout' option to specify "no timeout" if required
|
53
|
+
command << " -t #{params[:timeout]}" if params[:timeout] > 0
|
51
54
|
command << " -l" if params[:lock_when_sleeps]
|
52
55
|
command << " -u" if params[:lock_after_timeout]
|
53
56
|
command << " #{keychain_path}"
|
@@ -105,46 +108,45 @@ module Fastlane
|
|
105
108
|
env_name: "KEYCHAIN_NAME",
|
106
109
|
description: "Keychain name",
|
107
110
|
conflicting_options: [:path],
|
108
|
-
is_string: true,
|
109
111
|
optional: true),
|
110
112
|
FastlaneCore::ConfigItem.new(key: :path,
|
111
113
|
env_name: "KEYCHAIN_PATH",
|
112
114
|
description: "Path to keychain",
|
113
|
-
is_string: true,
|
114
115
|
conflicting_options: [:name],
|
115
116
|
optional: true),
|
116
117
|
FastlaneCore::ConfigItem.new(key: :password,
|
117
118
|
env_name: "KEYCHAIN_PASSWORD",
|
118
119
|
description: "Password for the keychain",
|
119
120
|
sensitive: true,
|
121
|
+
code_gen_sensitive: true,
|
120
122
|
optional: false),
|
121
123
|
FastlaneCore::ConfigItem.new(key: :default_keychain,
|
122
124
|
description: 'Should the newly created Keychain be the new system default keychain',
|
123
|
-
|
125
|
+
type: Boolean,
|
124
126
|
default_value: false),
|
125
127
|
FastlaneCore::ConfigItem.new(key: :unlock,
|
126
128
|
description: 'Unlock keychain after create',
|
127
|
-
|
129
|
+
type: Boolean,
|
128
130
|
default_value: false),
|
129
131
|
FastlaneCore::ConfigItem.new(key: :timeout,
|
130
|
-
description: 'timeout interval in seconds. Set `
|
131
|
-
|
132
|
+
description: 'timeout interval in seconds. Set `0` if you want to specify "no time-out"',
|
133
|
+
type: Integer,
|
132
134
|
default_value: 300),
|
133
135
|
FastlaneCore::ConfigItem.new(key: :lock_when_sleeps,
|
134
136
|
description: 'Lock keychain when the system sleeps',
|
135
|
-
|
137
|
+
type: Boolean,
|
136
138
|
default_value: false),
|
137
139
|
FastlaneCore::ConfigItem.new(key: :lock_after_timeout,
|
138
140
|
description: 'Lock keychain after timeout interval',
|
139
|
-
|
141
|
+
type: Boolean,
|
140
142
|
default_value: false),
|
141
143
|
FastlaneCore::ConfigItem.new(key: :add_to_search_list,
|
142
144
|
description: 'Add keychain to search list',
|
143
|
-
|
145
|
+
type: Boolean,
|
144
146
|
default_value: true),
|
145
147
|
FastlaneCore::ConfigItem.new(key: :require_create,
|
146
148
|
description: 'Fail the action if the Keychain already exists',
|
147
|
-
|
149
|
+
type: Boolean,
|
148
150
|
default_value: false)
|
149
151
|
]
|
150
152
|
end
|
@@ -165,7 +165,6 @@ module Fastlane
|
|
165
165
|
code_gen_sensitive: true,
|
166
166
|
default_value: ENV["GITHUB_API_TOKEN"],
|
167
167
|
default_value_dynamic: true,
|
168
|
-
is_string: true,
|
169
168
|
conflicting_options: [:api_bearer],
|
170
169
|
optional: true),
|
171
170
|
FastlaneCore::ConfigItem.new(key: :api_bearer,
|
@@ -173,24 +172,20 @@ module Fastlane
|
|
173
172
|
description: "Use a Bearer authorization token. Usually generated by Github Apps, e.g. GitHub Actions GITHUB_TOKEN environment variable",
|
174
173
|
sensitive: true,
|
175
174
|
code_gen_sensitive: true,
|
176
|
-
is_string: true,
|
177
175
|
conflicting_options: [:api_token],
|
178
176
|
optional: true,
|
179
177
|
default_value: nil),
|
180
178
|
FastlaneCore::ConfigItem.new(key: :repo,
|
181
179
|
env_name: "GITHUB_PULL_REQUEST_REPO",
|
182
180
|
description: "The name of the repository you want to submit the pull request to",
|
183
|
-
is_string: true,
|
184
181
|
optional: false),
|
185
182
|
FastlaneCore::ConfigItem.new(key: :title,
|
186
183
|
env_name: "GITHUB_PULL_REQUEST_TITLE",
|
187
184
|
description: "The title of the pull request",
|
188
|
-
is_string: true,
|
189
185
|
optional: false),
|
190
186
|
FastlaneCore::ConfigItem.new(key: :body,
|
191
187
|
env_name: "GITHUB_PULL_REQUEST_BODY",
|
192
188
|
description: "The contents of the pull request",
|
193
|
-
is_string: true,
|
194
189
|
optional: true),
|
195
190
|
FastlaneCore::ConfigItem.new(key: :draft,
|
196
191
|
env_name: "GITHUB_PULL_REQUEST_DRAFT",
|
@@ -210,21 +205,17 @@ module Fastlane
|
|
210
205
|
FastlaneCore::ConfigItem.new(key: :head,
|
211
206
|
env_name: "GITHUB_PULL_REQUEST_HEAD",
|
212
207
|
description: "The name of the branch where your changes are implemented (defaults to the current branch name)",
|
213
|
-
is_string: true,
|
214
|
-
code_gen_sensitive: true,
|
215
208
|
default_value: Actions.git_branch,
|
216
209
|
default_value_dynamic: true,
|
217
210
|
optional: true),
|
218
211
|
FastlaneCore::ConfigItem.new(key: :base,
|
219
212
|
env_name: "GITHUB_PULL_REQUEST_BASE",
|
220
213
|
description: "The name of the branch you want your changes pulled into (defaults to `master`)",
|
221
|
-
is_string: true,
|
222
214
|
default_value: 'master',
|
223
215
|
optional: true),
|
224
216
|
FastlaneCore::ConfigItem.new(key: :api_url,
|
225
217
|
env_name: "GITHUB_PULL_REQUEST_API_URL",
|
226
218
|
description: "The URL of GitHub API - used when the Enterprise (default to `https://api.github.com`)",
|
227
|
-
is_string: true,
|
228
219
|
code_gen_default_value: 'https://api.github.com',
|
229
220
|
default_value: 'https://api.github.com',
|
230
221
|
optional: true),
|
@@ -45,61 +45,56 @@ module Fastlane
|
|
45
45
|
FastlaneCore::ConfigItem.new(key: :use_bundle_exec,
|
46
46
|
env_name: "FL_DANGER_USE_BUNDLE_EXEC",
|
47
47
|
description: "Use bundle exec when there is a Gemfile presented",
|
48
|
-
|
48
|
+
type: Boolean,
|
49
49
|
default_value: true),
|
50
50
|
FastlaneCore::ConfigItem.new(key: :verbose,
|
51
51
|
env_name: "FL_DANGER_VERBOSE",
|
52
52
|
description: "Show more debugging information",
|
53
|
-
|
53
|
+
type: Boolean,
|
54
54
|
default_value: false),
|
55
55
|
FastlaneCore::ConfigItem.new(key: :danger_id,
|
56
56
|
env_name: "FL_DANGER_ID",
|
57
57
|
description: "The identifier of this Danger instance",
|
58
|
-
is_string: true,
|
59
58
|
optional: true),
|
60
59
|
FastlaneCore::ConfigItem.new(key: :dangerfile,
|
61
60
|
env_name: "FL_DANGER_DANGERFILE",
|
62
61
|
description: "The location of your Dangerfile",
|
63
|
-
is_string: true,
|
64
62
|
optional: true),
|
65
63
|
FastlaneCore::ConfigItem.new(key: :github_api_token,
|
66
64
|
env_name: "FL_DANGER_GITHUB_API_TOKEN",
|
67
65
|
description: "GitHub API token for danger",
|
68
66
|
sensitive: true,
|
69
|
-
|
67
|
+
code_gen_sensitive: true,
|
70
68
|
optional: true),
|
71
69
|
FastlaneCore::ConfigItem.new(key: :fail_on_errors,
|
72
70
|
env_name: "FL_DANGER_FAIL_ON_ERRORS",
|
73
71
|
description: "Should always fail the build process, defaults to false",
|
74
|
-
|
72
|
+
type: Boolean,
|
75
73
|
optional: true,
|
76
74
|
default_value: false),
|
77
75
|
FastlaneCore::ConfigItem.new(key: :new_comment,
|
78
76
|
env_name: "FL_DANGER_NEW_COMMENT",
|
79
77
|
description: "Makes Danger post a new comment instead of editing its previous one",
|
80
|
-
|
78
|
+
type: Boolean,
|
81
79
|
optional: true,
|
82
80
|
default_value: false),
|
83
81
|
FastlaneCore::ConfigItem.new(key: :remove_previous_comments,
|
84
82
|
env_name: "FL_DANGER_REMOVE_PREVIOUS_COMMENT",
|
85
83
|
description: "Makes Danger remove all previous comment and create a new one in the end of the list",
|
86
|
-
|
84
|
+
type: Boolean,
|
87
85
|
optional: true,
|
88
86
|
default_value: false),
|
89
87
|
FastlaneCore::ConfigItem.new(key: :base,
|
90
88
|
env_name: "FL_DANGER_BASE",
|
91
89
|
description: "A branch/tag/commit to use as the base of the diff. [master|dev|stable]",
|
92
|
-
is_string: true,
|
93
90
|
optional: true),
|
94
91
|
FastlaneCore::ConfigItem.new(key: :head,
|
95
92
|
env_name: "FL_DANGER_HEAD",
|
96
93
|
description: "A branch/tag/commit to use as the head. [master|dev|stable]",
|
97
|
-
is_string: true,
|
98
94
|
optional: true),
|
99
95
|
FastlaneCore::ConfigItem.new(key: :pr,
|
100
96
|
env_name: "FL_DANGER_PR",
|
101
97
|
description: "Run danger on a specific pull request. e.g. \"https://github.com/danger/danger/pull/518\"",
|
102
|
-
is_string: true,
|
103
98
|
optional: true),
|
104
99
|
FastlaneCore::ConfigItem.new(key: :fail_if_no_pr,
|
105
100
|
env_name: "FL_DANGER_FAIL_IF_NO_PR",
|
@@ -157,13 +157,12 @@ module Fastlane
|
|
157
157
|
description: "Release note for distribution page"),
|
158
158
|
FastlaneCore::ConfigItem.new(key: :disable_notify,
|
159
159
|
optional: true,
|
160
|
-
|
160
|
+
type: Boolean,
|
161
161
|
default_value: false,
|
162
162
|
env_name: "DEPLOYGATE_DISABLE_NOTIFY",
|
163
163
|
description: "Disables Push notification emails"),
|
164
164
|
FastlaneCore::ConfigItem.new(key: :distribution_name,
|
165
165
|
optional: true,
|
166
|
-
is_string: true,
|
167
166
|
env_name: "DEPLOYGATE_DISTRIBUTION_NAME",
|
168
167
|
description: "Target Distribution Name")
|
169
168
|
]
|
@@ -148,8 +148,8 @@ Optional: If _gym_ can't automatically detect the provisioning profiles to use,
|
|
148
148
|
```ruby
|
149
149
|
build_app(
|
150
150
|
scheme: "Release",
|
151
|
+
export_method: "app-store",
|
151
152
|
export_options: {
|
152
|
-
method: "app-store",
|
153
153
|
provisioningProfiles: {
|
154
154
|
"com.example.bundleid" => "Provisioning Profile Name",
|
155
155
|
"com.example.bundleid2" => "Provisioning Profile Name 2"
|
@@ -29,7 +29,7 @@ gem install fastlane
|
|
29
29
|
androidTestImplementation 'tools.fastlane:screengrab:x.x.x'
|
30
30
|
```
|
31
31
|
|
32
|
-
The latest version is [ ![Download](https://
|
32
|
+
The latest version is [ ![Download](https://maven-badges.herokuapp.com/maven-central/tools.fastlane/screengrab/badge.svg)](https://search.maven.org/artifact/tools.fastlane/screengrab)
|
33
33
|
|
34
34
|
As of Screengrab version 2.0.0, all Android test dependencies are AndroidX dependencies. This means a device with API 18+, Android 4.3 or greater is required. If you wish to capture screenshots with an older Android OS, then you must use a 1.x.x version.
|
35
35
|
|
@@ -38,21 +38,28 @@ As of Screengrab version 2.0.0, all Android test dependencies are AndroidX depen
|
|
38
38
|
Ensure that the following permissions exist in your **src/debug/AndroidManifest.xml**
|
39
39
|
|
40
40
|
```xml
|
41
|
-
|
42
|
-
|
43
|
-
<uses-permission android:name="android.permission.WAKE_LOCK"/>
|
41
|
+
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
|
42
|
+
xmlns:tools="http://schemas.android.com/tools">
|
44
43
|
|
45
|
-
<!-- Allows
|
46
|
-
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
|
47
|
-
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
|
44
|
+
<!-- Allows storing screenshots on external storage, where it can be accessed by ADB -->
|
45
|
+
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" android:maxSdkVersion="18" />
|
48
46
|
|
49
|
-
<!-- Allows changing locales -->
|
50
|
-
<uses-permission
|
47
|
+
<!-- Allows changing locales -->
|
48
|
+
<uses-permission
|
49
|
+
android:name="android.permission.CHANGE_CONFIGURATION"
|
50
|
+
tools:ignore="ProtectedPermissions" />
|
51
|
+
|
52
|
+
<!-- Allows changing SystemUI demo mode -->
|
53
|
+
<uses-permission
|
54
|
+
android:name="android.permission.DUMP"
|
55
|
+
tools:ignore="ProtectedPermissions" />
|
56
|
+
|
57
|
+
</manifest>
|
51
58
|
```
|
52
59
|
|
53
60
|
##### Configuring your <a href="#ui-tests">UI Tests</a> for Screenshots
|
54
61
|
|
55
|
-
1. Add `LocaleTestRule` to your tests class to handle automatic switching of locales.
|
62
|
+
1. Add `LocaleTestRule` to your tests class to handle automatic switching of locales.
|
56
63
|
If you're using Java use:
|
57
64
|
```java
|
58
65
|
@ClassRule
|
@@ -63,7 +70,7 @@ Ensure that the following permissions exist in your **src/debug/AndroidManifest.
|
|
63
70
|
@Rule @JvmField
|
64
71
|
val localeTestRule = LocaleTestRule()
|
65
72
|
```
|
66
|
-
|
73
|
+
The `@JvmField` annotation is important. It won't work like this:
|
67
74
|
```kotlin
|
68
75
|
companion object {
|
69
76
|
@get:ClassRule
|
@@ -79,7 +86,7 @@ Ensure that the following permissions exist in your **src/debug/AndroidManifest.
|
|
79
86
|
- You can also create a lane and use `build_android_app`:
|
80
87
|
```ruby
|
81
88
|
desc "Build debug and test APK for screenshots"
|
82
|
-
lane :
|
89
|
+
lane :build_and_screengrab do
|
83
90
|
build_android_app(
|
84
91
|
task: 'assemble',
|
85
92
|
build_type: 'Debug'
|
@@ -88,6 +95,7 @@ Ensure that the following permissions exist in your **src/debug/AndroidManifest.
|
|
88
95
|
task: 'assemble',
|
89
96
|
build_type: 'AndroidTest'
|
90
97
|
)
|
98
|
+
screengrab()
|
91
99
|
end
|
92
100
|
```
|
93
101
|
- Once complete run `fastlane screengrab` in your app project directory to generate screenshots
|
@@ -163,7 +171,7 @@ public class JUnit4StyleTests {
|
|
163
171
|
public static final LocaleTestRule localeTestRule = new LocaleTestRule();
|
164
172
|
|
165
173
|
@Rule
|
166
|
-
public
|
174
|
+
public ActivityScenarioRule<MainActivity> activityRule = new ActivityScenarioRule<>(MainActivity.class);
|
167
175
|
|
168
176
|
@Test
|
169
177
|
public void testTakeScreenshot() {
|
@@ -181,7 +189,7 @@ Kotlin:
|
|
181
189
|
@RunWith(JUnit4.class)
|
182
190
|
class JUnit4StyleTests {
|
183
191
|
@get:Rule
|
184
|
-
var activityRule =
|
192
|
+
var activityRule = ActivityScenarioRule(MainActivity::class.java)
|
185
193
|
|
186
194
|
@Rule @JvmField
|
187
195
|
val localeTestRule = LocaleTestRule()
|
@@ -208,22 +216,13 @@ When using JUnit 3 you'll need to add a bit more code:
|
|
208
216
|
- Use `LocaleUtil.changeDeviceLocaleTo(LocaleUtil.getEndingLocale());` in `tearDown()`
|
209
217
|
- Use `Screengrab.screenshot("name_of_screenshot_here");` to capture screenshots at the appropriate points in your tests
|
210
218
|
|
211
|
-
If you're having trouble getting your device unlocked and the screen activated to run tests, try using `ScreenUtil.activateScreenForTesting(activity);` in your test setup.
|
212
|
-
|
213
219
|
## Clean Status Bar
|
214
220
|
|
215
|
-
Screengrab can clean your status bar to make your screenshots even more beautiful.
|
221
|
+
Screengrab can clean your status bar to make your screenshots even more beautiful.
|
222
|
+
It is simply a wrapper that allows configuring SystemUI DemoMode in your code.
|
216
223
|
Note: the clean status bar feature is only supported on devices with *API level >= 23*.
|
217
224
|
|
218
|
-
|
219
|
-
```xml
|
220
|
-
<!-- Indicates the use of the clean status bar feature -->
|
221
|
-
<uses-feature android:name="tools.fastlane.screengrab.cleanstatusbar"/>
|
222
|
-
<!-- Allows for changing the status bar -->
|
223
|
-
<uses-permission android:name="android.permission.DUMP"/>
|
224
|
-
```
|
225
|
-
|
226
|
-
After that you can enable and disable the clean status bar at any moment during your tests.
|
225
|
+
You can enable and disable the clean status bar at any moment during your tests.
|
227
226
|
In most cases you probably want to do this in the @BeforeClass and @AfterClass methods.
|
228
227
|
```java
|
229
228
|
@BeforeClass
|
@@ -237,7 +236,7 @@ public static void afterAll() {
|
|
237
236
|
}
|
238
237
|
```
|
239
238
|
|
240
|
-
Have a look at the methods of the `CleanStatusBar` class to customize the status bar even more.
|
239
|
+
Have a look at the methods of the `CleanStatusBar` class to customize the status bar even more.
|
241
240
|
You could for example show the Bluetooth icon and the LTE text.
|
242
241
|
```java
|
243
242
|
new CleanStatusBar()
|
@@ -2,7 +2,7 @@
|
|
2
2
|
<img src="/img/actions/snapshot.png" width="250">
|
3
3
|
</p>
|
4
4
|
|
5
|
-
###### Automate taking localized screenshots of your iOS and
|
5
|
+
###### Automate taking localized screenshots of your iOS, tvOS, and watchOS apps on every device
|
6
6
|
|
7
7
|
<hr />
|
8
8
|
<h4 align="center">
|
@@ -10,7 +10,7 @@
|
|
10
10
|
</h4>
|
11
11
|
<hr />
|
12
12
|
|
13
|
-
_snapshot_ generates localized iOS and
|
13
|
+
_snapshot_ generates localized iOS, tvOS, and watchOS screenshots for different device types and languages for the App Store and can be uploaded using ([_deliver_](https://docs.fastlane.tools/actions/deliver/)).
|
14
14
|
|
15
15
|
You have to manually create 20 (languages) x 6 (devices) x 5 (screenshots) = **600 screenshots**.
|
16
16
|
|
@@ -68,7 +68,7 @@ Options for create:
|
|
68
68
|
-y, --sku STRING SKU Number (e.g. '1234') (PRODUCE_SKU)
|
69
69
|
-j, --platform STRING The platform to use (optional) (PRODUCE_PLATFORM)
|
70
70
|
-m, --language STRING Primary Language (e.g. 'English', 'German') (PRODUCE_LANGUAGE)
|
71
|
-
-c, --company_name STRING The name of your company. Only required if it's the first app you create (PRODUCE_COMPANY_NAME)
|
71
|
+
-c, --company_name STRING The name of your company. It's used to set company name on App Store Connect team's app pages. Only required if it's the first app you create (PRODUCE_COMPANY_NAME)
|
72
72
|
-i, --skip_itc [VALUE] Skip the creation of the app on App Store Connect (PRODUCE_SKIP_ITC)
|
73
73
|
-d, --skip_devcenter [VALUE] Skip the creation of the app on the Apple Developer Portal (PRODUCE_SKIP_DEVCENTER)
|
74
74
|
-s, --itc_users ARRAY Array of App Store Connect users. If provided, you can limit access to this newly created app for users with the App Manager, Developer, Marketer or Sales roles (ITC_USERS)
|
@@ -131,27 +131,62 @@ fastlane produce enable_services --help
|
|
131
131
|
```
|
132
132
|
|
133
133
|
```no-highlight
|
134
|
-
--
|
135
|
-
--
|
136
|
-
--
|
137
|
-
--
|
138
|
-
--
|
139
|
-
--
|
140
|
-
--
|
141
|
-
--
|
142
|
-
--
|
143
|
-
--
|
144
|
-
--
|
145
|
-
--
|
146
|
-
--
|
147
|
-
--
|
148
|
-
--
|
149
|
-
--
|
150
|
-
--
|
151
|
-
--
|
152
|
-
--
|
153
|
-
--
|
154
|
-
--
|
134
|
+
--access-wifi Enable Access Wifi
|
135
|
+
--app-attest Enable App Attest
|
136
|
+
--app-group Enable App Group
|
137
|
+
--apple-pay Enable Apple Pay
|
138
|
+
--associated-domains Enable Associated Domains
|
139
|
+
--auto-fill-credential Enable Auto Fill Credential
|
140
|
+
--class-kit Enable Class Kit
|
141
|
+
--icloud STRING Enable iCloud, suitable values are "xcode5_compatible" and "xcode6_compatible"
|
142
|
+
--custom-network-protocol Enable Custom Network Protocol
|
143
|
+
--data-protection STRING Enable Data Protection, suitable values are "complete", "unlessopen" and "untilfirstauth"
|
144
|
+
--extended-virtual-address-space Enable Extended Virtual Address Space
|
145
|
+
--game-center STRING Enable Game Center, suitable values are "ios" and "macos
|
146
|
+
--health-kit Enable Health Kit
|
147
|
+
--hls-interstitial-preview Enable Hls Interstitial Preview
|
148
|
+
--home-kit Enable Home Kit
|
149
|
+
--hotspot Enable Hotspot
|
150
|
+
--in-app-purchase Enable In App Purchase
|
151
|
+
--inter-app-audio Enable Inter App Audio
|
152
|
+
--low-latency-hls Enable Low Latency Hls
|
153
|
+
--managed-associated-domains Enable Managed Associated Domains
|
154
|
+
--maps Enable Maps
|
155
|
+
--multipath Enable Multipath
|
156
|
+
--network-extension Enable Network Extension
|
157
|
+
--nfc-tag-reading Enable NFC Tag Reading
|
158
|
+
--personal-vpn Enable Personal VPN
|
159
|
+
--passbook Enable Passbook (deprecated)
|
160
|
+
--push-notification Enable Push Notification
|
161
|
+
--sign-in-with-apple Enable Sign In With Apple
|
162
|
+
--siri-kit Enable Siri Kit
|
163
|
+
--system-extension Enable System Extension
|
164
|
+
--user-management Enable User Management
|
165
|
+
--vpn-configuration Enable Vpn Configuration (deprecated)
|
166
|
+
--wallet Enable Wallet
|
167
|
+
--wireless-accessory Enable Wireless Accessory
|
168
|
+
--car-play-audio-app Enable Car Play Audio App
|
169
|
+
--car-play-messaging-app Enable Car Play Messaging App
|
170
|
+
--car-play-navigation-app Enable Car Play Navigation App
|
171
|
+
--car-play-voip-calling-app Enable Car Play Voip Calling App
|
172
|
+
--critical-alerts Enable Critical Alerts
|
173
|
+
--hotspot-helper Enable Hotspot Helper
|
174
|
+
--driver-kit Enable DriverKit
|
175
|
+
--driver-kit-endpoint-security Enable DriverKit Endpoint Security
|
176
|
+
--driver-kit-family-hid-device Enable DriverKit Family HID Device
|
177
|
+
--driver-kit-family-networking Enable DriverKit Family Networking
|
178
|
+
--driver-kit-family-serial Enable DriverKit Family Serial
|
179
|
+
--driver-kit-hid-event-service Enable DriverKit HID EventService
|
180
|
+
--driver-kit-transport-hid Enable DriverKit Transport HID
|
181
|
+
--multitasking-camera-access Enable Multitasking Camera Access
|
182
|
+
--sf-universal-link-api Enable SFUniversalLink API
|
183
|
+
--vp9-decoder Enable VP9 Decoder
|
184
|
+
--music-kit Enable MusicKit
|
185
|
+
--shazam-kit Enable ShazamKit
|
186
|
+
--communication-notifications Enable Communication Notifications
|
187
|
+
--group-activities Enable Group Activities
|
188
|
+
--health-kit-estimate-recalibration Enable HealthKit Estimate Recalibration
|
189
|
+
--time-sensitive-notifications Enable Time Sensitive Notifications
|
155
190
|
```
|
156
191
|
|
157
192
|
```no-highlight
|
@@ -159,27 +194,62 @@ fastlane produce disable_services --help
|
|
159
194
|
```
|
160
195
|
|
161
196
|
```no-highlight
|
162
|
-
--
|
163
|
-
--
|
164
|
-
--
|
165
|
-
--
|
166
|
-
--
|
167
|
-
--
|
168
|
-
--
|
169
|
-
--
|
170
|
-
--
|
171
|
-
--
|
172
|
-
--
|
173
|
-
--
|
174
|
-
--
|
175
|
-
--
|
176
|
-
--
|
177
|
-
--
|
178
|
-
--
|
179
|
-
--
|
180
|
-
--
|
181
|
-
--
|
182
|
-
--
|
197
|
+
--access-wifi Disable Access Wifi
|
198
|
+
--app-attest Disable App Attest
|
199
|
+
--app-group Disable App Group
|
200
|
+
--apple-pay Disable Apple Pay
|
201
|
+
--associated-domains Disable Associated Domains
|
202
|
+
--auto-fill-credential Disable Auto Fill Credential
|
203
|
+
--class-kit Disable Class Kit
|
204
|
+
--icloud STRING Disable iCloud
|
205
|
+
--custom-network-protocol Disable Custom Network Protocol
|
206
|
+
--data-protection STRING Disable Data Protection
|
207
|
+
--extended-virtual-address-space Disable Extended Virtual Address Space
|
208
|
+
--game-center STRING Disable Game Center
|
209
|
+
--health-kit Disable Health Kit
|
210
|
+
--hls-interstitial-preview Disable Hls Interstitial Preview
|
211
|
+
--home-kit Disable Home Kit
|
212
|
+
--hotspot Disable Hotspot
|
213
|
+
--in-app-purchase Disable In App Purchase
|
214
|
+
--inter-app-audio Disable Inter App Audio
|
215
|
+
--low-latency-hls Disable Low Latency Hls
|
216
|
+
--managed-associated-domains Disable Managed Associated Domains
|
217
|
+
--maps Disable Maps
|
218
|
+
--multipath Disable Multipath
|
219
|
+
--network-extension Disable Network Extension
|
220
|
+
--nfc-tag-reading Disable NFC Tag Reading
|
221
|
+
--personal-vpn Disable Personal VPN
|
222
|
+
--passbook Disable Passbook (deprecated)
|
223
|
+
--push-notification Disable Push Notification
|
224
|
+
--sign-in-with-apple Disable Sign In With Apple
|
225
|
+
--siri-kit Disable Siri Kit
|
226
|
+
--system-extension Disable System Extension
|
227
|
+
--user-management Disable User Management
|
228
|
+
--vpn-configuration Disable Vpn Configuration (deprecated)
|
229
|
+
--wallet Disable Wallet
|
230
|
+
--wireless-accessory Disable Wireless Accessory
|
231
|
+
--car-play-audio-app Disable Car Play Audio App
|
232
|
+
--car-play-messaging-app Disable Car Play Messaging App
|
233
|
+
--car-play-navigation-app Disable Car Play Navigation App
|
234
|
+
--car-play-voip-calling-app Disable Car Play Voip Calling App
|
235
|
+
--critical-alerts Disable Critical Alerts
|
236
|
+
--hotspot-helper Disable Hotspot Helper
|
237
|
+
--driver-kit Disable DriverKit
|
238
|
+
--driver-kit-endpoint-security Disable DriverKit Endpoint Security
|
239
|
+
--driver-kit-family-hid-device Disable DriverKit Family HID Device
|
240
|
+
--driver-kit-family-networking Disable DriverKit Family Networking
|
241
|
+
--driver-kit-family-serial Disable DriverKit Family Serial
|
242
|
+
--driver-kit-hid-event-service Disable DriverKit HID EventService
|
243
|
+
--driver-kit-transport-hid Disable DriverKit Transport HID
|
244
|
+
--multitasking-camera-access Disable Multitasking Camera Access
|
245
|
+
--sf-universal-link-api Disable SFUniversalLink API
|
246
|
+
--vp9-decoder Disable VP9 Decoder
|
247
|
+
--music-kit Disable MusicKit
|
248
|
+
--shazam-kit Disable ShazamKit
|
249
|
+
--communication-notifications Disable Communication Notifications
|
250
|
+
--group-activities Disable Group Activities
|
251
|
+
--health-kit-estimate-recalibration Disable HealthKit Estimate Recalibration
|
252
|
+
--time-sensitive-notifications Disable Time Sensitive Notifications
|
183
253
|
```
|
184
254
|
|
185
255
|
## Creating Apple Pay merchants and associating them with an App ID
|
@@ -236,30 +306,64 @@ lane :release do
|
|
236
306
|
# Optional
|
237
307
|
# App services can be enabled during app creation
|
238
308
|
enable_services: {
|
239
|
-
access_wifi: "on",
|
240
|
-
|
241
|
-
|
242
|
-
|
243
|
-
|
244
|
-
|
245
|
-
|
246
|
-
|
247
|
-
|
248
|
-
|
249
|
-
|
250
|
-
|
251
|
-
|
252
|
-
|
253
|
-
|
254
|
-
|
255
|
-
|
256
|
-
|
257
|
-
|
258
|
-
|
259
|
-
|
260
|
-
|
261
|
-
|
262
|
-
|
309
|
+
access_wifi: "on", # Valid values: "on", "off"
|
310
|
+
app_attest: "on", # Valid values: "on", "off"
|
311
|
+
app_group: "on", # Valid values: "on", "off"
|
312
|
+
apple_pay: "on", # Valid values: "on", "off"
|
313
|
+
associated_domains: "on", # Valid values: "on", "off"
|
314
|
+
auto_fill_credential: "on", # Valid values: "on", "off"
|
315
|
+
car_play_audio_app: "on", # Valid values: "on", "off"
|
316
|
+
car_play_messaging_app: "on", # Valid values: "on", "off"
|
317
|
+
car_play_navigation_app: "on", # Valid values: "on", "off"
|
318
|
+
car_play_voip_calling_app: "on", # Valid values: "on", "off"
|
319
|
+
class_kit: "on", # Valid values: "on", "off"
|
320
|
+
icloud: "xcode5_compatible", # Valid values: "xcode5_compatible", "xcode6_compatible", "off"
|
321
|
+
critical_alerts: "on", # Valid values: "on", "off"
|
322
|
+
custom_network_protocol: "on", # Valid values: "on", "off"
|
323
|
+
data_protection: "complete", # Valid values: "complete", "unlessopen", "untilfirstauth", "off"
|
324
|
+
extended_virtual_address_space: "on", # Valid values: "on", "off"
|
325
|
+
file_provider_testing_mode: "on", # Valid values: "on", "off"
|
326
|
+
fonts: "on", # Valid values: "on", "off"
|
327
|
+
game_center: "ios", # Valid values: "ios", "macos", off"
|
328
|
+
health_kit: "on", # Valid values: "on", "off"
|
329
|
+
hls_interstitial_preview: "on", # Valid values: "on", "off"
|
330
|
+
home_kit: "on", # Valid values: "on", "off"
|
331
|
+
hotspot: "on", # Valid values: "on", "off"
|
332
|
+
hotspot_helper: "on", # Valid values: "on", "off"
|
333
|
+
in_app_purchase: "on", # Valid values: "on", "off"
|
334
|
+
inter_app_audio: "on", # Valid values: "on", "off"
|
335
|
+
low_latency_hls: "on", # Valid values: "on", "off"
|
336
|
+
managed_associated_domains: "on", # Valid values: "on", "off"
|
337
|
+
maps: "on", # Valid values: "on", "off"
|
338
|
+
multipath: "on", # Valid values: "on", "off"
|
339
|
+
network_extension: "on", # Valid values: "on", "off"
|
340
|
+
nfc_tag_reading: "on", # Valid values: "on", "off"
|
341
|
+
passbook: "on", # Valid values: "on", "off" (deprecated)
|
342
|
+
personal_vpn: "on", # Valid values: "on", "off"
|
343
|
+
push_notification: "on", # Valid values: "on", "off"
|
344
|
+
sign_in_with_apple: "on", # Valid values: "on", "off"
|
345
|
+
siri_kit: "on", # Valid values: "on", "off"
|
346
|
+
system_extension: "on", # Valid values: "on", "off"
|
347
|
+
user_management: "on", # Valid values: "on", "off"
|
348
|
+
vpn_configuration: "on", # Valid values: "on", "off" (deprecated)
|
349
|
+
wallet: "on", # Valid values: "on", "off"
|
350
|
+
wireless_accessory: "on", # Valid values: "on", "off"
|
351
|
+
driver_kit: "on", # Valid values: "on", "off"
|
352
|
+
driver_kit_endpoint_security: "on", # Valid values: "on", "off"
|
353
|
+
driver_kit_family_hid_device: "on", # Valid values: "on", "off"
|
354
|
+
driver_kit_family_networking: "on", # Valid values: "on", "off"
|
355
|
+
driver_kit_family_serial: "on", # Valid values: "on", "off"
|
356
|
+
driver_kit_hid_event_service: "on", # Valid values: "on", "off"
|
357
|
+
driver_kit_transport_hid: "on", # Valid values: "on", "off"
|
358
|
+
multitasking_camera_access: "on", # Valid values: "on", "off"
|
359
|
+
sf_universal_link_api: "on", # Valid values: "on", "off"
|
360
|
+
vp9_decoder: "on", # Valid values: "on", "off"
|
361
|
+
music_kit: "on", # Valid values: "on", "off"
|
362
|
+
shazam_kit: "on", # Valid values: "on", "off"
|
363
|
+
communication_notifications: "on", # Valid values: "on", "off"
|
364
|
+
group_activities: "on", # Valid values: "on", "off"
|
365
|
+
health_kit_estimate_recalibration: "on", # Valid values: "on", "off"
|
366
|
+
time_sensitive_notifications: "on", # Valid values: "on", "off"
|
263
367
|
}
|
264
368
|
)
|
265
369
|
|