1package com.alivc.live.pusher;
3import android.content.Context;
4import android.util.Log;
6import com.alivc.live.pusher.basic.BasicLivePusherJNI;
7import com.alivc.live.biz.manager.AlivcLiveCommonParams;
8import com.alivc.live.biz.utils.FileUtil;
9import com.aliyun.common.AlivcNativeLoader;
11import java.util.HashMap;
26 private static final String TAG =
"AlivcLivePushInstance";
52 loadSdkInstance(context);
53 loadSdkConfigs(context);
65 mIsLibLoaded = AlivcNativeLoader.loadLibrary(LIB_SO_ALL_IN_ONE);
67 Log.d(TAG,
"load libraries success!");
74 private static void loadSdkInstance(Context context) {
75 if (context ==
null) {
78 AlivcLiveCommonParams.INSTANCE.initCommonProperties(context);
79 synchronized (AlivcLivePushInstance.class) {
80 if (!mIsSdkInstanceLoaded) {
81 HashMap<String, String> properties = AlivcLiveCommonParams.INSTANCE.getCommonProperties();
82 BasicLivePusherJNI.nativeInitSDKInstance(properties.keySet().toArray(
new String[0]), properties.values().toArray(
new String[0]));
83 Log.d(TAG,
"load sdk instance success!");
85 mIsSdkInstanceLoaded =
true;
96 return "---SDK_INFO---" +
'\n' +
97 "DEBUG:" + BuildConfig.DEBUG +
'\n' +
98 "BUILD_TYPE:" + BuildConfig.BUILD_TYPE +
'\n' +
99 "BUILD_INTERACTIVE:" + BuildConfig.BUILD_INTERACTIVE +
'\n' +
100 "HEAD_COMMIT_ID:" + BuildConfig.HEAD_COMMIT_ID +
'\n' +
101 "MTL_BUILD_ID:" + BuildConfig.MTL_BUILD_ID +
'\n' +
102 "MTL_BUILD_TIMESTAMP:" + BuildConfig.MTL_BUILD_TIMESTAMP +
'\n' +
103 "MTL_VERSION_CODE:" + BuildConfig.MTL_VERSION_CODE +
'\n' +
104 "MTL_VERSION_NAME:" + BuildConfig.MTL_VERSION_NAME;
113 HashMap<String, String> properties = AlivcLiveCommonParams.INSTANCE.getCommonProperties();
114 StringBuilder sb =
new StringBuilder(
"---CONTEXT_INFO---\n");
115 for (String key : properties.keySet()) {
116 sb.append(key).append(
":").append(properties.get(key)).append(
'\n');
118 return sb.toString().trim();
121 private static void loadSdkConfigs(Context context) {
122 if (context ==
null) {
125 synchronized (AlivcLivePushInstance.class) {
126 if (!mIsSdkConfigsLoaded) {
127 Log.d(TAG,
"load sdk configs success!");
128 HashMap<String, String> properties =
new HashMap<>(4);
129 properties.put(KEY_SDCARD_FILE_PATH, FileUtil.getExternalFileFolder(context));
130 properties.put(KEY_SDCARD_CACHE_PATH, FileUtil.getExternalCacheFolder(context));
131 properties.put(KEY_PACKAGE_NAME, context.getPackageName());
132 BasicLivePusherJNI.nativeInitSDKConfigs(properties.keySet().toArray(
new String[0]), properties.values().toArray(
new String[0]));
133 mIsSdkConfigsLoaded =
true;
Used to load sdk common instance,.
static void loadInstance(Context context)
static String getSdkContextInfo()
static String getSdkBuildInfo()
static void loadLibrariesOnce()