Skip to content

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:

  1. Developer Account Setup

  2. Create a Squad developer account at developer.squadforsports.com

  3. Generate your organization ID and API key
  4. Note your credentials for SDK initialization

  5. Project Preparation

  6. Ensure your project meets minimum platform requirements
  7. Verify you have necessary development environment setup
  8. Check network connectivity for package downloads

Platform-Specific Installation

iOS Installation

// 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

  1. 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()
  1. User Authentication
// iOS
try squadSDK.authenticateUser(
    identifier: "user@example.com",
    authType: .email
)
// Android
squadSDK.authenticateUser(
    identifier = "user@example.com",
    authType = AuthType.EMAIL
)
  1. 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

  1. Check SDK Installation

  2. Verify build success

  3. Check for any dependency conflicts
  4. Ensure proper permissions setup

  5. Verify Initialization

  6. Test SDK initialization

  7. Validate API credentials
  8. Check debug logs

  9. Test Basic Features

  10. Verify WebView loading
  11. Test user authentication
  12. Check voice permissions

Common Issues

iOS Common Issues

  1. CocoaPods Integration

  2. Run pod repo update

  3. Check Podfile syntax
  4. Verify minimum iOS version

  5. SPM Integration

  6. Clear derived data
  7. Check package resolution
  8. Verify Xcode version

Android Common Issues

  1. Gradle Sync

  2. Check Gradle version

  3. Verify repository access
  4. Update Gradle plugin

  5. ProGuard Configuration

  6. Add required rules
  7. Check mapping file
  8. Verify release build

Next Steps

  1. Configuration

  2. iOS Configuration Guide

  3. Android Configuration Guide

  4. WebView Setup

  5. iOS WebView Management

  6. Android WebView Management

  7. Authentication

  8. User Authentication Guide

Additional Resources

Support

If you encounter any issues during installation:

Remember to reference platform-specific guides for detailed setup instructions and advanced configurations.