Installation & Setup
This guide provides comprehensive installation and setup instructions for the Squad SDK across supported platforms.
Platform Requirements
iOS Requirements
- iOS 13.0 or later
- Xcode 13.0 or later
- Swift 5.3 or later
- Valid Apple Developer account
- Minimum deployment target iOS 13.0
Android Requirements
- Android API level 21 (Android 5.0) or higher
- Android Studio Arctic Fox (2020.3.1) or newer
- Kotlin 1.5.0 or later
- Gradle 7.0 or higher
- Java 8 or higher
Prerequisites
Before starting the installation:
-
Developer Account Setup
-
Create a Squad developer account at developer.squadforsports.com
- Generate your organization ID and API key
-
Note your credentials for SDK initialization
-
Project Preparation
- Ensure your project meets minimum platform requirements
- Verify you have necessary development environment setup
- Check network connectivity for package downloads
Platform-Specific Installation
iOS Installation
Swift Package Manager (Recommended)
// In Xcode:
// File > Add Package Dependencies
// Enter: https://github.com/withyoursquad/squad-sports-ios.git
CocoaPods
pod 'SquadSDK', '~> 1.0.0'
Detailed iOS Installation Guide →
Android Installation
Gradle Setup
// Project build.gradle
repositories {
mavenCentral()
}
// App build.gradle
dependencies {
implementation 'com.withyoursquad.sdk:squadline:1.0.0'
}
Detailed Android Installation Guide →
Basic Integration Steps
- SDK Initialization
// iOS
import SquadSDK
SquadSDK.initialize(
organizationId: "YOUR_ORG_ID",
apiKey: "YOUR_API_KEY"
)
// Android
import com.withyoursquad.sdk.SquadSDK
SquadSDK.Builder(context)
.setOrganizationId("YOUR_ORG_ID")
.setApiKey("YOUR_API_KEY")
.build()
.initialize()
- User Authentication
// iOS
try squadSDK.authenticateUser(
identifier: "user@example.com",
authType: .email
)
// Android
squadSDK.authenticateUser(
identifier = "user@example.com",
authType = AuthType.EMAIL
)
- WebView Integration
// iOS
let webView = try squadSDK.presentWebView()
view.addSubview(webView)
// Android
val webView = squadSDK.presentWebView(this)
setContentView(webView)
Required Permissions
iOS
Add to Info.plist:
<key>NSMicrophoneUsageDescription</key>
<string>Squad needs microphone access for voice calls</string>
Android
Add to AndroidManifest.xml:
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.RECORD_AUDIO" />
Verification Steps
-
Check SDK Installation
-
Verify build success
- Check for any dependency conflicts
-
Ensure proper permissions setup
-
Verify Initialization
-
Test SDK initialization
- Validate API credentials
-
Check debug logs
-
Test Basic Features
- Verify WebView loading
- Test user authentication
- Check voice permissions
Common Issues
iOS Common Issues
-
CocoaPods Integration
-
Run
pod repo update - Check Podfile syntax
-
Verify minimum iOS version
-
SPM Integration
- Clear derived data
- Check package resolution
- Verify Xcode version
Android Common Issues
-
Gradle Sync
-
Check Gradle version
- Verify repository access
-
Update Gradle plugin
-
ProGuard Configuration
- Add required rules
- Check mapping file
- Verify release build
Next Steps
-
Configuration
-
WebView Setup
-
Authentication
- User Authentication Guide
Additional Resources
Support
If you encounter any issues during installation:
- Review our Troubleshooting Guide
- Visit Support Center
- Contact support at support@squadforsports.com
- Check Documentation
Remember to reference platform-specific guides for detailed setup instructions and advanced configurations.