본문으로 건너뛰기

Utils

BandwidthItem Class

com.kollus.sdk.media.content.BandwidthItem

적응형 비트레이트(ABR) 콘텐츠 재생 시, 현재 재생 중인 영상의 대역폭 정보를 관리하고 식별하기 위한 클래스입니다.

Public Methods

  • BandwidthItem(int bandwidth, String bandwidthName)
  • int getBandwidth()
  • String getBandwidthName()

Constructors & Destructors

com.kollus.sdk.media.content.BandwidthItem.BandwidthItem(int bandwidth, String bandwidthName)

Internal SDK Only  대역폭 정보를 관리하는 객체를 생성합니다.

  • 파라미터
    • bandwidth: 대역폭 수치
    • bandwidthName: 대역폭 식별 명칭

Method Details

int com.kollus.sdk.media.content.BandwidthItem.getBandwidth()

onChangedBandwidth 콜백이 발생했을 때, 현재 재생 중인 영상의 실제 대역폭 수치를 반환합니다.

  • 반환값: 대역폭 (bps)

String com.kollus.sdk.media.content.BandwidthItem.getBandwidthName()

onChangedBandwidth 콜백이 발생했을 때, 현재 재생 중인 영상의 대역폭 명칭을 반환합니다. 해상도 정보가 존재할 경우 '1080P'와 같은 형식으로 반환되며, 정보가 없을 경우 Kbps 단위의 수치로 반환됩니다.

  • 반환값: 대역폭 식별 명칭 (예: '1080P' 또는 '5000Kbps')

Utils Class

com.kollus.sdk.media.util.Utils

SDK 내부 및 애플리케이션 개발 시 범용적으로 사용되는 유틸리티 클래스입니다.

Static Public Methods

  • static<T> T checkNotNull(T object)
  • static void closeSilently(Closeable c)
  • static void closeSilently(ParcelFileDescriptor fd)
  • static void closeSilently(Cursor cursor)
  • static void deleteDirectory(String path)
  • static long getAvailableMemorySize(String path)
  • static DEVICE_TYPE getDeviceType(Context context)
  • static String getDirectoryJSON(Context context, String prefKey)
  • static String getDirectoryJSONByPath(Context context, String path, String prefKey)
  • static File[] getExternalFilesDirs(@NonNull Context context, @Nullable String type)
  • static String getFileMD5(File updateFile)
  • static long getFolderSize(File directory)
  • static String getPlayerId(Context context)
  • static String getPlayerIdMd5(Context context)
  • static String getPlayerIdSha1(Context context)
  • static String getStoragePath(Context context)
  • static String getString(JSONObject json, String key)
  • static long getTotalMemorySize(String path)
  • static Object invoke(Object obj, String methodName, Object[] objList)
  • static boolean isRooting()
  • static boolean makeDirectory(String path)
  • static String makeMD5(String param)
  • static String makeSHA1(String param)
  • static void saveDirectoryJSON(Context context, String dbPath, String jsonString)
  • static void setPlayerId(String id)
  • static void setStoragePath(Context context, String path)
  • static String stringForTime(String dayString, String hourString, String minString, String secString, int timeMs)
  • static String stringForTime(int timeMs)
  • static String stringForTimeHHMMSS(int timeMs)
  • static String stringForTimeHMMSS(int timeMs)
  • static String stringForTimeMMSS(int timeMs)

Static Public Properties

  • static final int PLAYER_TYPE_NONE = 0
  • static final int PLAYER_TYPE_NATIVE = 1
  • static final int PLAYER_TYPE_KOLLUS = 2
  • static final int PLAYER_TYPE_EXO = 3
  • static final boolean USE_EXO_PLAYER = false

Method Details

static void com.kollus.sdk.media.util.Utils.deleteDirectory(String path)

지정된 경로의 디렉터리를 삭제합니다.

  • 파라미터
    • path: 디렉터리 경로

static long com.kollus.sdk.media.util.Utils.getAvailableMemorySize(String path)

지정된 경로(내장 메모리 또는 SD카드)의 사용 가능한 여유 공간을 조회합니다.

  • 파라미터
    • path: 용량을 확인할 스토리지 경로
  • 반환값: 잔여 용량

static DEVICE_TYPE com.kollus.sdk.media.util.Utils.getDeviceType(Context context)

현재 애플리케이션이 실행 중인 디바이스의 유형을 조회합니다.

  • 파라미터
    • context: 애플리케이션 컨텍스트
  • 반환값: 디바이스 유형 (참고: DEVICE_TYPE)

static String com.kollus.sdk.media.util.Utils.getDirectoryJSON(Context context, String prefKey)

디렉터리 구조 JSON 데이터를 로드합니다.

  • 파라미터
    • context: 애플리케이션 컨텍스트
    • prefKey: 저장된 JSON 데이터의 키
  • 반환값: JSON 데이터

static String com.kollus.sdk.media.util.Utils.getDirectoryJSONByPath(Context context, String path, String prefKey)

지정한 경로의 디렉터리 구조 JSON 데이터를 로드합니다.

  • 파라미터
    • context: 애플리케이션 컨텍스트
    • path: 데이터가 저장된 파일 경로
    • prefKey: 저장된 JSON 데이터의 키
  • 반환값: JSON 데이터

static String com.kollus.sdk.media.util.Utils.getFileMD5(File updateFile)

지정된 파일의 데이터 무결성 검증을 위한 MD5 체크섬(Checksum)을 추출합니다.

  • 파라미터
    • updateFile: 체크섬을 생성할 파일
  • 반환값: MD5 해시 문자열

static long com.kollus.sdk.media.util.Utils.getFolderSize(File directory)

지정된 디렉터리의 용량을 조회합니다.

  • 파라미터
    • directory: 디렉터리
  • 반환값: 전체 점유 용량

static String com.kollus.sdk.media.util.Utils.getPlayerId(Context context)

디바이스에 할당된 플레이어 ID를 조회합니다.

  • 파라미터
    • context: 애플리케이션 컨텍스트
  • 반환값: 플레이어 ID

static String com.kollus.sdk.media.util.Utils.getPlayerIdMd5(Context context)

내부 로직용으로 사용할 MD5 기반 플레이어 ID를 생성합니다. (16진수(hex) 문자열 32자)

  • 파라미터
    • context: 애플리케이션 컨텍스트
  • 반환값: MD5 해시 처리된 플레이어 ID

static String com.kollus.sdk.media.util.Utils.getPlayerIdSha1(Context context)

외부 시스템 식별용 SHA-1 기반 플레이어 ID를 생성합니다. (길이 제한 없음)

  • 파라미터
    • context: 애플리케이션 컨텍스트
  • 반환값: SHA-1 해시 처리된 플레이어 ID

static String com.kollus.sdk.media.util.Utils.getStoragePath(Context context)

현재 플레이어가 콘텐츠 저장 및 관리를 위해 사용 중인 스토리지 경로를 조회합니다.

  • 파라미터
    • context: 애플리케이션 컨텍스트
  • 반환값: 스토리지 경로

static String com.kollus.sdk.media.util.Utils.getString(JSONObject json, String key)

JSON 객체에서 지정된 키(Key)에 해당하는 문자열 값을 추출합니다.

  • 파라미터
    • json: JSON 데이터
    • key: 키
  • 반환값: 해당 키의 문자열 값

static long com.kollus.sdk.media.util.Utils.getTotalMemorySize(String path)

지정된 경로(내장 메모리 또는 SD카드)의 전체 물리적 용량을 조회합니다.

  • 파라미터
    • path: 경로
  • 반환값: 전체 용량

static Object com.kollus.sdk.media.util.Utils.invoke(Object obj, String methodName, Object[] objList)

특정 클래스의 메서드를 동적으로 실행(Invoke)합니다.

  • 파라미터
    • obj: 대상 메서드가 포함된 클래스 객체
    • methodName: 실행할 메서드 명칭
    • objList: 메서드 실행 시 전달할 인자(Arguments) 리스트
  • 반환값: 실행된 메서드의 반환 결과 객체

static boolean com.kollus.sdk.media.util.Utils.isRooting()

현재 디바이스의 루팅(Rooting) 여부를 확인합니다.

  • 반환값: 루팅 여부

static boolean com.kollus.sdk.media.util.Utils.makeDirectory(String path)

지정된 경로에 새로운 디렉터리를 생성합니다.

  • 파라미터
    • path: 경로
  • 반환값
    • true: 성공
    • false: 실패

static String com.kollus.sdk.media.util.Utils.makeMD5(String param)

입력된 문자열을 MD5 해시 알고리즘을 통해 체크섬 데이터로 변환합니다.

  • 파라미터
    • param: 해시를 생성할 문자열
  • 반환값: 생성된 MD5 해시 문자열

static String com.kollus.sdk.media.util.Utils.makeSHA1(String param)

입력된 문자열을 SHA-1 해시 알고리즘을 통해 체크섬 데이터로 변환합니다.

  • 파라미터
    • param: 해시를 생성할 문자열
  • 반환값: 생성된 SHA-1 해시 문자열

static void com.kollus.sdk.media.util.Utils.saveDirectoryJSON(Context context, String dbPath, String jsonString)

디렉터리 구조를 나타내는 JSON 데이터를 지정된 로컬 경로에 영구적으로 저장합니다.

  • 파라미터
    • context: 애플리케이션 컨텍스트
    • dbPath: 저장할 위치
    • jsonString: 저장할 JSON 데이터

static void com.kollus.sdk.media.util.Utils.setPlayerId(String id)

외부에서 수동으로 플레이어 ID를 지정합니다.

  • 파라미터
    • id: 플레이어 ID

static void com.kollus.sdk.media.util.Utils.setStoragePath(Context context, String path)

플레이어가 콘텐츠 다운로드 및 관리에 사용할 기본 스토리지 경로를 지정합니다.

  • 파라미터
    • context: 애플리케이션 컨텍스트
    • path: 경로

static String com.kollus.sdk.media.util.Utils.stringForTime(int timeMs)

밀리초(ms) 단위의 시간을 재생 시각 표기에 적합한 문자열 형식(예: 1:10:59 또는 10:59)으로 변환합니다.

  • 파라미터
    • timeMs: 변환할 시간 데이터 (ms)
  • 반환값: 변환된 시간 문자열

static String com.kollus.sdk.media.util.Utils.stringForTime(String dayString, String hourString, String minString, String secString, int timeMs)

밀리초(ms) 단위의 시간을 '1일 1시간 1분 1초' 형식으로 변환합니다.

  • 파라미터
    • dayString: 날짜 구분자
    • hourString: 시간 구분자
    • minString: 분 구분자
    • secString: 초 구분자
    • timeMs: 변환할 시간 데이터 (ms)
  • 반환값: 변환된 시간 문자열

static String com.kollus.sdk.media.util.Utils.stringForTimeHHMMSS(int timeMs)

밀리초(ms) 단위의 시간을 00:00:00 형식(시:분:초, 각 2자리 고정)의 문자열로 변환합니다.

  • 파라미터
    • timeMs: 변환할 시간 데이터 (ms)
  • 반환값: 변환된 시간 문자열

static String com.kollus.sdk.media.util.Utils.stringForTimeHMMSS(int timeMs)

밀리초(ms) 단위의 시간을 0:00:00 형식(시:분:초)의 문자열로 변환합니다.

  • 파라미터
    • timeMs: 변환할 시간 데이터 (ms)
  • 반환값: 변환된 시간 문자열

static String com.kollus.sdk.media.util.Utils.stringForTimeMMSS(int timeMs)

밀리초(ms) 단위의 시간을 00:00 형식(분:초)의 문자열로 변환합니다.

  • 파라미터
    • timeMs: 변환할 시간 데이터 (ms)
  • 반환값: 변환된 시간 문자열

Property Details

속성설명
PLAYER_TYPE_EXO3ExoPlayer 엔진 (Android 4.1 Jelly Bean, API Level 16 이상 지원)
PLAYER_TYPE_KOLLUS2Kollus 보안 플레이어
PLAYER_TYPE_NATIVE1내장 플레이어
PLAYER_TYPE_NONE0플레이어 엔진이 생성되지 않았거나 지정되지 않은 상태