본 문서에서는 SDK를 프로젝트로 가져오는 방법을 설명합니다.
TRTC SDK를 mavenCentral에 이미 배포했다면 gradle 자동 다운로드 설정을 통해 업데이트할 수 있습니다.
dependencies에서 TRTCSDK 종속을 추가합니다.
dependencies{
implementation ’com.tencent.liteav:LiteAVSDK_TRTC:latest.release’
}
defaultConfig에서 App이 사용하는 CPU 구성을 지정합니다.
defaultConfig {
ndk {
abiFilters "armeabi-v7a", "arm64-v8a"
}
}
설명:현재 TRTC SDK는 armeabi-v7a, arm64-v8a를 지원합니다.
defaultConfig {
ndk {
abiFilters "armeabi", "armeabi-v7a", "arm64-v8a"
}
}
설명:현재 TRTC SDK는 armeabi, armeabi-v7a, arm64-v8a를 지원합니다.
AndroidManifest.xml에서 App 권한을 설정합니다. TRTC SDK는 다음 권한 허용이 필요합니다.
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
<uses-permission android:name="android.permission.RECORD_AUDIO" />
<uses-permission android:name="android.permission.MODIFY_AUDIO_SETTINGS" />
<uses-permission android:name="android.permission.BLUETOOTH" />
<uses-permission android:name="android.permission.CAMERA" />
<uses-feature android:name="android.hardware.camera.autofocus" />
주의:
android:hardwareAccelerated="false"
를 설정하지 마십시오. 하드웨어 가속을 비활성화하면 상대방의 비디오 스트리밍을 렌더링할 수 없습니다.
proguard-rules.pro 파일에서 TRTC SDK 관련 사항을 비난독화 리스트에 추가합니다.
-keep class com.tencent.** { *; }
개발에 Java 대신 C++ 인터페이스 사용을 선호하는 경우 이 단계를 수행할 수 있습니다. Java 언어를 사용하여 TRTC SDK를 호출하는 경우 이 단계를 생략하시기 바랍니다.
먼저 상기 가이드에 따라 jar 및 so 라이브러리 가져오기를 통해 TRTC SDK를 통합합니다.
헤더 파일 복사: SDK의 C++ 헤더 파일을 프로젝트(경로: SDK/LiteAVSDK_TRTC_xxx/libs/include
)에 복사하고 CMakeLists.txt에 include 폴더 경로 및 so 라이브러리의 동적 링크를 구성합니다.
cmake_minimum_required(VERSION 3.6)
# C++ 인터페이스 헤더 파일 경로 구성
include_directories(
${CMAKE_CURRENT_SOURCE_DIR}/include # SDK/LiteAVSDK_TRTC_xxx/libs/include에서 복사
)
add_library(
native-lib
SHARED
native-lib.cpp)
# libliteavsdk.so 동적 라이브러리 경로 구성
add_library(libliteavsdk SHARED IMPORTED)
set_target_properties(libliteavsdk PROPERTIES IMPORTED_LOCATION ${CMAKE_CURRENT_SOURCE_DIR}/../../../libs/${ANDROID_ABI}/libliteavsdk.so)
find_library(
log-lib
log)
# libliteavsdk.so 동적 링크 구성
target_link_libraries(
native-lib
libliteavsdk
${log-lib})
네임스페이스 사용: trtc 네임스페이스에는 C++ 전체 플랫폼 인터페이스의 메소드 및 유형 등이 정의되어 있습니다. 더 간략한 코딩을 위해 trtc 네임스페이스를 사용할 것을 권장합니다.
using namespace trtc;
설명:
- Android Studio C/C++ 개발 환경을 구성하려면 Android Studio 공식 홈페이지 설명서를 참고하십시오. Android 프로젝트에 C 및 C++ 코드 추가 .
- 현재 TRTC 버전의 SDK만 C++ 인터페이스를 지원합니다. C++ 인터페이스 사용 방법은 전체 플랫폼 (C++) API 개요를 참고하십시오.
문제 해결에 도움이 되었나요?