1、删除打包x86架构的配置

2、声网SO不做动态加载
3、美颜so动态加载
This commit is contained in:
老皮
2024-09-24 18:20:38 +08:00
parent 13a373c73b
commit b300541ce9
11 changed files with 109 additions and 55 deletions

View File

@@ -68,18 +68,67 @@ android {
exclude 'lib/armeabi-v7a/libMNN_CL.so'
exclude 'lib/armeabi-v7a/libMNN_Express.so'
// 链接包剔除相心美颜SO
if (rootProject.ext.manifestPlaceholders.isGooglePlay == 0) {
// 链接包剔除相心美颜SO
exclude 'lib/armeabi-v7a/libCNamaSDK.so'
exclude 'lib/arm64-v8a/libCNamaSDK.so'
exclude 'lib/x86_64/libCNamaSDK.so'
exclude 'lib/x86/libCNamaSDK.so'
exclude 'lib/armeabi-v7a/libfuai.so'
exclude 'lib/arm64-v8a/libCNamaSDK.so'
exclude 'lib/arm64-v8a/libfuai.so'
exclude 'lib/x86_64/libfuai.so'
exclude 'lib/x86/libfuai.so'
/* // 剔除声网X86架构的so
exclude 'lib/x86/libagora-core.so'
exclude 'lib/x86/libagora-ffmpeg.so'
exclude 'lib/x86/libagora-fdkaac.so'
exclude 'lib/x86/libagora-soundtouch.so'
exclude 'lib/x86/libagora-rtc-sdk.so'
*//* exclude 'lib/x86/libagora_ai_echo_cancellation_extension.so'
exclude 'lib/x86/libagora_ai_noise_suppression_extension.so'
exclude 'lib/x86/libagora_audio_beauty_extension.so'
exclude 'lib/x86/libagora_clear_vision_extension.so'
exclude 'lib/x86/libagora_content_inspect_extension.so'
exclude 'lib/x86/libagora_face_detection_extension.so'
exclude 'lib/x86/libagora_face_capture_extension.so'
exclude 'lib/x86/libagora_lip_sync_extension.so'
exclude 'lib/x86/libagora_screen_capture_extension.so'
exclude 'lib/x86/libagora_segmentation_extension.so'
exclude 'lib/x86/libagora_spatial_audio_extension.so'
exclude 'lib/x86/libagora_video_av1_decoder_extension.so'
exclude 'lib/x86/libagora_video_decoder_extension.so'
exclude 'lib/x86/libagora_video_encoder_extension.so'
exclude 'lib/x86/libagora_video_quality_analyzer_extension.so'
exclude 'lib/x86/libagora_video_dec.so'
exclude 'lib/x86/libagora_video_enc.so'*//*
exclude 'lib/x86_64/libagora-core.so'
exclude 'lib/x86_64/libagora-ffmpeg.so'
exclude 'lib/x86_64/libagora-fdkaac.so'
exclude 'lib/x86_64/libagora-soundtouch.so'
exclude 'lib/x86_64/libagora-rtc-sdk.so'
*//* exclude 'lib/x86_64/libagora_clear_vision_extension.so'
exclude 'lib/x86_64/libagora_segmentation_extension.so'
exclude 'lib/x86_64/libagora_screen_capture_extension.so'
exclude 'lib/x86_64/libagora_audio_beauty_extension.so'
exclude 'lib/x86_64/libagora_spatial_audio_extension.so'
exclude 'lib/x86_64/libagora_video_decoder_extension.so'
exclude 'lib/x86_64/libagora_video_encoder_extension.so'
exclude 'lib/x86_64/libagora_video_av1_decoder_extension.so'
exclude 'lib/x86_64/libagora_content_inspect_extension.so'
exclude 'lib/x86_64/libagora_video_quality_analyzer_extension.so'
exclude 'lib/x86_64/libagora_face_detection_extension.so'
exclude 'lib/x86_64/libagora_face_capture_extension.so'
exclude 'lib/x86_64/libagora_ai_noise_suppression_extension.so'
exclude 'lib/x86_64/libagora_ai_echo_cancellation_extension.so'
exclude 'lib/x86_64/libagora_lip_sync_extension.so'
exclude 'lib/x86_64/libagora_video_dec.so'
exclude 'lib/x86_64/libagora_video_enc.so'*/
}
}
compileOptions {
sourceCompatibility JavaVersion.VERSION_18
targetCompatibility JavaVersion.VERSION_18
@@ -258,8 +307,8 @@ android {
println("处理ndk 版本 = " + tskReqStr)
def isLink = tskReqStr.contains("Link")
if (isLink) {//移除32位so库可以有效降低包体大小等需要时再弄
abiFilters "armeabi-v7a", "arm64-v8a", "x86", "x86_64"
// abiFilters "arm64-v8a", "x86_64"
// abiFilters "armeabi-v7a", "arm64-v8a", "x86", "x86_64"
abiFilters "armeabi-v7a", "arm64-v8a"
println("打包ndk 链接")
} else {
abiFilters "armeabi-v7a", "arm64-v8a"

View File

@@ -159,22 +159,22 @@ public class LauncherActivity extends AppCompatActivity implements View.OnClickL
e.printStackTrace();
}
SpUtil.getInstance().setBooleanValue("NOTIFICATION", NotificationManagerCompat.from(this).areNotificationsEnabled());
Log.i("downLoad","架构: " + Build.CPU_ABI);
if(CommonAppConfig.IS_GOOGLE_PLAY != 0){
//渠道包
mHandler.sendEmptyMessageDelayed(WHAT_GET_CONFIG, 1000);
}else {
if(CommonAppConfig.IS_GOOGLE_PLAY == 0){
//链接包 下载so库
checkFaceUnitySOFile();
checkAgoraSOFile();
// checkAgoraSOFile();
}else {
//渠道包
mHandler.sendEmptyMessageDelayed(WHAT_GET_CONFIG, 1000);
}
}
private void checkFaceUnitySOFile() {
File outputDir = new File(mContext.getDir("lib", Context.MODE_PRIVATE).getAbsoluteFile(), Constants.DOWNLOAD_FaceUnity_SO);
String cpuAbi = "";
cpuAbi = Build.CPU_ABI;
String cpuAbi = Build.CPU_ABI;
if (!outputDir.exists()) {
outputDir.mkdirs();
}
@@ -190,30 +190,29 @@ public class LauncherActivity extends AppCompatActivity implements View.OnClickL
Log.i("download", soUrl);
if (!fileSo.exists()) {
downloadSo(outputDir.getAbsolutePath(), soUrl,Constants.FaceUnity_SO_Name,false);
downloadSo(outputDir.getAbsolutePath(), soUrl,Constants.FaceUnity_SO_Name,true);
}else if (fileSo.exists() && getFileCount(outputDir.getAbsolutePath()) < 3) {
fileSo.delete();
downloadSo(outputDir.getAbsolutePath(), soUrl,Constants.FaceUnity_SO_Name,false);
downloadSo(outputDir.getAbsolutePath(), soUrl,Constants.FaceUnity_SO_Name,true);
}
}
private void checkAgoraSOFile() {
//存储路径 //检查是否下载过
File outputDir = new File(mContext.getDir("lib", Context.MODE_PRIVATE).getAbsoluteFile(), Constants.DOWNLOAD_Agora_SO);
Log.i("downLoad", "outputDir.getAbsolutePath() = " + outputDir.getAbsolutePath());
Log.i("downLoad", "outputDir.getAbsolutePath() 1 = " + outputDir.getAbsolutePath());
String cpuAbi = "";
cpuAbi = Build.CPU_ABI;
String cpuAbi = Build.CPU_ABI;
if (!outputDir.exists()) {
Log.e("downLoad", "outputDir:>>>" + outputDir.exists());
outputDir.mkdirs();
}
File fileSo = new File(outputDir, Constants.Agora_SO_Name);
Log.i("downLoad", "fileSo.getAbsolutePath() = " + fileSo.getAbsolutePath());
Log.i("downLoad", "fileSo.getAbsolutePath() 2 = " + fileSo.getAbsolutePath());
File fileSoList = new File(outputDir, cpuAbi);
Log.i("downLoad", "fileSoList.getAbsolutePath() = " + fileSoList.getAbsolutePath());
Log.i("downLoad", "fileSoList.getAbsolutePath() 3 = " + fileSoList.getAbsolutePath());
//解压后的文件数量必须要有22个
//如果文件存在,解压后 文件数量一致,直接进入下一步