Add a native iOS client for relay-based file sharing
The SwiftUI app bundles the Go swarm engine through gomobile, so an iPhone is a real peer using the existing PAKE handshake, chunk verification, and relay fallback. XcodeGen builds the project and devicectl installs it on the paired phone.
This commit is contained in:
@@ -0,0 +1,64 @@
|
||||
name: Share
|
||||
options:
|
||||
bundleIdPrefix: dev.tzgyn
|
||||
deploymentTarget:
|
||||
iOS: "16.0"
|
||||
xcodeVersion: "16.0"
|
||||
|
||||
settings:
|
||||
base:
|
||||
SWIFT_VERSION: "5.0"
|
||||
ENABLE_USER_SCRIPT_SANDBOXING: NO
|
||||
IPHONEOS_DEPLOYMENT_TARGET: "16.0"
|
||||
|
||||
targets:
|
||||
Share:
|
||||
type: application
|
||||
platform: iOS
|
||||
sources:
|
||||
- path: Share
|
||||
dependencies:
|
||||
# gomobile builds this from apps/ios/GoBridge by running
|
||||
# apps/ios/build-go.sh. It is a static framework, so it is linked
|
||||
# into the app rather than embedded as a separate bundle.
|
||||
- framework: Share.xcframework
|
||||
embed: false
|
||||
settings:
|
||||
base:
|
||||
PRODUCT_BUNDLE_IDENTIFIER: dev.tzgyn.share
|
||||
PRODUCT_NAME: Share
|
||||
# The app target is also called Share; without a distinct Swift
|
||||
# module name, `import Share` would resolve to the app itself and
|
||||
# the gomobile framework would be invisible.
|
||||
PRODUCT_MODULE_NAME: ShareIOS
|
||||
INFOPLIST_FILE: Share/Info.plist
|
||||
CODE_SIGN_STYLE: Automatic
|
||||
DEVELOPMENT_TEAM: RX6767S6BW
|
||||
CODE_SIGNING_ALLOWED[sdk=iphonesimulator*]: NO
|
||||
ASSETCATALOG_COMPILER_APPICON_NAME: AppIcon
|
||||
OTHER_LDFLAGS:
|
||||
- "$(inherited)"
|
||||
- "-ObjC"
|
||||
info:
|
||||
path: Share/Info.plist
|
||||
properties:
|
||||
CFBundleDisplayName: Share
|
||||
CFBundleName: Share
|
||||
CFBundleShortVersionString: "0.1.0"
|
||||
CFBundleVersion: "1"
|
||||
UILaunchScreen: {}
|
||||
UISupportedInterfaceOrientations:
|
||||
- UIInterfaceOrientationPortrait
|
||||
UIRequiresFullScreen: true
|
||||
UIUserInterfaceStyle: Dark
|
||||
NSLocalNetworkUsageDescription: Share connects directly to nearby devices on your local network. If a direct connection is not possible, it uses the relay instead.
|
||||
UIFileSharingEnabled: true
|
||||
LSSupportsOpeningDocumentsInPlace: true
|
||||
|
||||
schemes:
|
||||
Share:
|
||||
build:
|
||||
targets:
|
||||
Share: all
|
||||
run:
|
||||
config: Debug
|
||||
Reference in New Issue
Block a user