...
Code Block |
---|
|
wget httphttps://flashphoner.com/downloads/builds/flashphoner_client/wcs-android-sdk/1.1/wcs-android-sdk-1.1.0.x.aar
cp wcs-android-sdk-1.1.0.x.aar export |
...
Результатом сборки будут .apk файлы в соответствующих директориях 2players/build, click-to-call/build, и т.д.
Файл Android SDK находится в проекте по следующему пути: libs/wcs-android-sdk-1.0.1.2.aar
Сборка отдельного примера
Если необходимо собрать отдельный пример, или нет возможности выполнить скрипт экспорта всех примеров, пример для сборки может быть подготовлен вручную следующим образом:
1. Скачайте примеры
Code Block |
---|
|
git clone -b 1.1 https://github.com/flashphoner/wcs-android-sdk-samples.git |
2. Скопируйте нужный пример в отдельный каталог
Code Block |
---|
|
cd wcs-android-sdk-samples
cp streaming-min gradle.properties ~/streaming-min |
3. Скачайте aar библиотеку и положите ее в папку libs в примере
Code Block |
---|
|
wget https://flashphoner.com/downloads/builds/flashphoner_client/wcs-android-sdk/1.1/wcs-android-sdk-1.1.0.x.aar
mkdir ~/streaming-min/libs
cp wcs-android-sdk-1.1.0.x.aar ~/streaming-min/libs |
4. Добавьте в начало файла build.gradle
в каталоге примера секцию buildscript
:
Code Block |
---|
|
buildscript {
repositories {
jcenter()
mavenCentral()
maven { url 'https://maven.google.com' }
google()
}
dependencies {
classpath 'com.android.tools.build:gradle:7.0.0'
classpath 'com.github.triplet.gradle:play-publisher:1.1.5'
}
} |
5. Добавьте в файл build.gradle
в каталоге примера секцию repositories
:
Code Block |
---|
|
repositories {
jcenter()
mavenCentral()
maven { url 'https://maven.google.com' }
google()
flatDir{
dirs 'libs'
}
} |
5. Замените в секции dependencies
файла build.gradle
в каталоге примера строку
Code Block |
---|
|
implementation project(':fp_wcs_api') |
на
Code Block |
---|
|
implementation 'com.flashphoner.fpwcsapi:wcs-android-sdk-1.1.0.x@aar' |
где wcs-android-sdk-1.1.0.x
- имя aar файла, скачанного на шаге 3.
6. Пример файла build.gradle
Code Block |
---|
theme | RDark |
---|
title | build.gradle |
---|
collapse | true |
---|
|
apply plugin: 'com.android.application'
apply plugin: 'com.github.triplet.play'
buildscript {
repositories {
jcenter()
mavenCentral()
maven { url 'https://maven.google.com' }
google()
}
dependencies {
classpath 'com.android.tools.build:gradle:7.0.0'
classpath 'com.github.triplet.gradle:play-publisher:1.1.5'
}
}
Properties signingProps = null
android {
compileSdkVersion 31
buildToolsVersion '31.0.0'
defaultConfig {
applicationId "com.flashphoner.wcsexample.two_way_streaming"
minSdkVersion 26
targetSdkVersion 31
versionCode 2600001
versionName "1.1"
}
def signingPropsFile = System.getenv('SIGNING_PROPERTIES')
if (signingPropsFile && new File(signingPropsFile).exists()) {
signingProps = new Properties()
signingProps.load(new FileInputStream(file(signingPropsFile)))
signingConfigs {
release {
storeFile file(signingProps['keystore'])
storePassword signingProps['keystore.password']
keyAlias signingProps['key.alias']
keyPassword signingProps['key.password']
}
}
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
if (signingProps) {
signingConfig signingConfigs.release
}
}
}
compileOptions {
sourceCompatibility JavaVersion.VERSION_1_8
targetCompatibility JavaVersion.VERSION_1_8
}
}
repositories {
jcenter()
mavenCentral()
maven { url 'https://maven.google.com' }
google()
flatDir{
dirs 'libs'
}
}
dependencies {
implementation 'com.flashphoner.fpwcsapi:wcs-android-sdk-1.1.0.x@aar'
implementation fileTree(include: ['*.jar'], dir: 'libs')
testImplementation 'junit:junit:4.12'
implementation 'androidx.appcompat:appcompat:1.4.0'
implementation 'com.google.android.material:material:1.4.0'
}
play {
if(signingProps) {
track = 'production'
serviceAccountEmail = signingProps['service.account.email']
pk12File = file(signingProps['service.account.pk12file'])
}
} |
6. Для сборки в Android Studio откройте каталог примера. Android Studio выполнит Gradle sync и установит необходимую версию gradle
Image Added
7. Для сборки с помощью Gradle установите Gradle wrapper и выполните команду
Известные ограничения
1. Невозможно управлять уровнем громкости микрофона при публикации потока в Android SDK.