iOS: A few changes to fix/improve app store submission (#16988)

This commit is contained in:
Eric Warmenhoven 2024-09-11 01:13:25 -04:00 committed by GitHub
parent a15d8d558a
commit 853c2cc14e
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
3 changed files with 64 additions and 6 deletions

View File

@ -33,6 +33,7 @@ platform :ios do
)
ensure_git_status_clean
git_pull
sh("git log -1")
app_store_build_number(
app_identifier: "com.libretro.dist.RetroArch",
platform: "ios",
@ -61,14 +62,41 @@ platform :ios do
plist["CFBundleShortVersionString"] = next_version_number
end
)
update_code_signing_settings(
targets: "RetroArchiOS",
use_automatic_signing: false,
path: "RetroArch_iOS13.xcodeproj",
team_id: "UK699V5ZS8",
code_sign_identity: "iPhone Distribution",
sdk: "iphoneos*",
profile_name: "App Store Distribution"
)
update_code_signing_settings(
targets: "RetroArchWidgetExtensionExtension",
use_automatic_signing: false,
path: "RetroArch_iOS13.xcodeproj",
team_id: "UK699V5ZS8",
bundle_identifier: "com.libretro.dist.RetroArch.RetroArchWidgetExtension",
code_sign_identity: "iPhone Distribution",
sdk: "iphoneos*",
profile_name: "App Store Widget"
)
build_app(
workspace: "RetroArch.xcworkspace",
scheme: "RetroArch iOS Release",
xcconfig: "iOS/AppStore.xcconfig"
xcconfig: "iOS/AppStore.xcconfig",
xcodebuild_formatter: 'xcbeautify --renderer github-actions',
buildlog_path: "buildlog",
export_options: {
provisioningProfiles: {
"com.libretro.dist.RetroArch" => "App Store Distribution",
"com.libretro.dist.RetroArch.RetroArchWidgetExtension" => "App Store Widget"
}
}
)
upload_to_testflight(
distribute_external: true,
groups: "Invaders, Patreons",
groups: ['Invaders', 'Patreons'],
changelog: "Rebuild frontend from latest master branch and take latest build of all cores."
)
end
@ -92,6 +120,7 @@ platform :appletvos do
)
ensure_git_status_clean
git_pull
sh("git log -1")
app_store_build_number(
app_identifier: "com.libretro.dist.RetroArch",
platform: "appletvos",
@ -120,14 +149,41 @@ platform :appletvos do
plist["CFBundleShortVersionString"] = next_version_number
end
)
update_code_signing_settings(
targets: "RetroArchTV",
use_automatic_signing: false,
path: "RetroArch_iOS13.xcodeproj",
team_id: "UK699V5ZS8",
code_sign_identity: "iPhone Distribution",
sdk: "appletvos*",
profile_name: "tvOS App Store"
)
update_code_signing_settings(
targets: "RetroArchTopShelfExtension",
use_automatic_signing: false,
path: "RetroArch_iOS13.xcodeproj",
team_id: "UK699V5ZS8",
bundle_identifier: "com.libretro.dist.RetroArch.RetroArchTopShelfExtension",
code_sign_identity: "iPhone Distribution",
sdk: "appletvos*",
profile_name: "tvOS Top Shelf App Store"
)
build_app(
workspace: "RetroArch.xcworkspace",
scheme: "RetroArch tvOS Release",
xcconfig: "iOS/AppStore.xcconfig"
xcconfig: "iOS/AppStore.xcconfig",
xcodebuild_formatter: 'xcbeautify --renderer github-actions',
buildlog_path: "buildlog",
export_options: {
provisioningProfiles: {
"com.libretro.dist.RetroArch" => "tvOS App Store",
"com.libretro.dist.RetroArch.RetroArchTopShelfExtension" => "tvOS Top Shelf App Store"
}
}
)
upload_to_testflight(
distribute_external: true,
groups: "Invaders, Patreons",
groups: ['Invaders', 'Patreons'],
changelog: "Rebuild frontend from latest master branch and take latest build of all cores."
)
end

View File

@ -83,6 +83,8 @@
<true/>
<key>NSBluetoothAlwaysUsageDescription</key>
<string>RetroArch uses direct Bluetooth communication for some types of controllers</string>
<key>NSBluetoothPeripheralUsageDescription</key>
<string>RetroArch uses direct Bluetooth communication for some types of controllers</string>
<key>NSBonjourServices</key>
<array>
<string>_altserver._tcp</string>

View File

@ -40,11 +40,11 @@ for dylib in $(find "$BASE_DIR"/modules -maxdepth 1 -type f -regex '.*libretro.*
fwDir="${OUTDIR}/${fwName}.framework"
mkdir -p "$fwDir"
lipo -create "$dylib" -output "$fwDir/$fwName"
if [ "$PLATFORM_FAMILY_NAME" = "iOS" ] ; then
build_sdk=$(vtool -show-build "$dylib" | grep sdk | awk '{print $2}')
vtool -set-version-min ios "${IPHONEOS_DEPLOYMENT_TARGET}" "${build_sdk}" -replace -output "$fwDir/$fwName" "$fwDir/$fwName"
vtool -set-build-version ios "${IPHONEOS_DEPLOYMENT_TARGET}" "${build_sdk}" -set-source-version 0.0 -replace -output "$dylib" "$dylib"
fi
lipo -create "$dylib" -output "$fwDir/$fwName"
sed -e "s,%CORE%,$fwName," -e "s,%BUNDLE%,$fwName," -e "s,%IDENTIFIER%,$fwName," iOS/fw.tmpl > "$fwDir/Info.plist"
echo "signing $fwName"
codesign --force --verbose --sign "${CODE_SIGN_IDENTITY_FOR_ITEMS}" "$fwDir"