The broadcast upload extension never appeared in the iOS broadcast picker (or Control Center screen-recording list) because its Info.plist set RPBroadcastProcessMode to the invalid string "BroadcastUpload". iOS only recognises "RPBroadcastProcessModeSampleBuffer" for a sample-buffer upload extension and silently rejects any other value, hiding the extension. Also sign VoiceCatCore.xcframework in build-xcframework.sh: Xcode 15+ rejects unsigned binary XCFrameworks consumed as SwiftPM binary targets. Signs with CODESIGN_IDENTITY, else the first Apple Development identity, else ad-hoc.
32 lines
1.0 KiB
Plaintext
32 lines
1.0 KiB
Plaintext
<?xml version="1.0" encoding="UTF-8"?>
|
|
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
|
|
<plist version="1.0">
|
|
<dict>
|
|
<key>CFBundleDisplayName</key>
|
|
<string>VoiceCat Screen Audio</string>
|
|
<key>CFBundleExecutable</key>
|
|
<string>$(EXECUTABLE_NAME)</string>
|
|
<key>CFBundleIdentifier</key>
|
|
<string>$(PRODUCT_BUNDLE_IDENTIFIER)</string>
|
|
<key>CFBundleInfoDictionaryVersion</key>
|
|
<string>6.0</string>
|
|
<key>CFBundleName</key>
|
|
<string>$(PRODUCT_NAME)</string>
|
|
<key>CFBundlePackageType</key>
|
|
<string>$(PRODUCT_BUNDLE_PACKAGE_TYPE)</string>
|
|
<key>CFBundleShortVersionString</key>
|
|
<string>0.0.1</string>
|
|
<key>CFBundleVersion</key>
|
|
<string>1</string>
|
|
<key>NSExtension</key>
|
|
<dict>
|
|
<key>NSExtensionPointIdentifier</key>
|
|
<string>com.apple.broadcast-services-upload</string>
|
|
<key>NSExtensionPrincipalClass</key>
|
|
<string>$(PRODUCT_MODULE_NAME).SampleHandler</string>
|
|
<key>RPBroadcastProcessMode</key>
|
|
<string>RPBroadcastProcessModeSampleBuffer</string>
|
|
</dict>
|
|
</dict>
|
|
</plist>
|