New Case Study:See how Anthropic automated 95% of dependency reviews with Socket.Learn More
Socket
Sign inDemoInstall
Socket

com.shepeliev:webrtc-kmp-android

Package Overview
Dependencies
Maintainers
1
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

com.shepeliev:webrtc-kmp-android

WebRTC Kotlin Multiplatform SDK

  • 0.125.5
  • Source
  • Maven
  • Socket score

Version published
Maintainers
1
Source

WebRTC KMP Maven Central

WebRTC Kotlin Multiplatform SDK is a comprehensive toolkit for integrating WebRTC functionality into your multiplatform projects. It supports Android, iOS, JS. Other platforms - PRs are welcome.

API implementation map

APIAndroidiOSJS/WasmJS
Audio/Video:white_check_mark::white_check_mark::white_check_mark:
Data channel:white_check_mark::white_check_mark::white_check_mark:
Screen Capture:white_check_mark::white_check_mark:

WebRTC revision

Current revision: M125

Installation

The library is published to Maven Central.

Add dependency to your common source set:

commonMain.dependencies {
  dependencies {
    implementation("com.shepeliev:webrtc-kmp:$webRtcKmpVersion")
  }
}

Running on iOS

On iOS, the WebRTC SDK is not linked as a transitive dependency, so you need to add it to your iOS project manually. This can be done using CocoaPods or SPM, depending on your project setup. Here is an example of how to link the WebRTC SDK using CocoaPods in build.gradle.kts:

kotlin {
  cocoapods {
    version = "1.0.0"
    summary = "Shared module"
    homepage = "not published"
    ios.deploymentTarget = "13.0"
   
    pod("WebRTC-SDK") { 
      version = "125.6422.05"
      moduleName = "WebRTC"
    }
  
    podfile = project.file("../iosApp/Podfile")
  
    framework {
      baseName = "shared"
      isStatic = true  
    }
  
    xcodeConfigurationToNativeBuildType["CUSTOM_DEBUG"] = NativeBuildType.DEBUG
    xcodeConfigurationToNativeBuildType["CUSTOM_RELEASE"] = NativeBuildType.RELEASE
  }

    iosX64()
    iosArm64()
    iosSimulatorArm64()
}

Also add the following to your Podfile in the target section:

use_frameworks!
pod 'shared', :path => '../shared'

Usage

Please refer to sample.

Screen Share in Android

// Set MediaProjection permission intent using `MediaProjectionIntentHolder`
val mediaProjectionPermissionLauncher = rememberLauncherForActivityResult(
    contract = ActivityResultContracts.StartActivityForResult()
) { activityResult ->
    activityResult.data?.also {
        MediaProjectionIntentHolder.intent = it
    }
}

FAQs

Package last updated on 25 Sep 2024

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc