feat: 发布 XMBOX v3.0.5 - 重大稳定性提升
🔥 主要更新: - 升级到最新依赖版本 (AGP 8.12.0, Gradle 8.13, Java 17) - 完全重构 Context 管理系统,解决闪退问题 - 采用原项目 FongMi/TV 的稳定策略 - 启用 EventBus 编译时优化,提升性能 - 修复关于页面 GitHub 链接,永远指向最新版本 🐛 修复问题: - 修复 Context 初始化时序问题导致的崩溃 - 修复 ApplicationContext 被垃圾回收的问题 - 修复 Updater 构造函数的过早调用问题 - 解决 Android 15 设备兼容性问题 ⚡ 性能优化: - EventBus 性能提升 (编译时索引生成) - APK 体积优化 (release 版本 36MB vs 49MB debug) - 代码混淆和资源压缩启用 - 内存使用优化 📦 构建改进: - 支持 arm64-v8a 和 armeabi-v7a 双架构 - 完整的 release 和 debug 版本构建 - 新增 chaquo Python 模块支持 - 同步所有依赖到最新稳定版本 🛡️ 稳定性: - 采用经过 6.3k+ 星标验证的原项目策略 - 完善的异常处理机制 - 防护性编程实践 - 支持 Android 5.0+ 到 Android 15
This commit is contained in:
+28
-17
@@ -5,7 +5,7 @@ plugins {
|
||||
android {
|
||||
namespace 'com.fongmi.android.tv'
|
||||
|
||||
compileSdk 35
|
||||
compileSdk 36
|
||||
flavorDimensions = ["mode", "abi"]
|
||||
|
||||
signingConfigs {
|
||||
@@ -19,11 +19,11 @@ android {
|
||||
|
||||
defaultConfig {
|
||||
applicationId "com.fongmi.android.tv"
|
||||
minSdk 21
|
||||
minSdk 24
|
||||
//noinspection ExpiredTargetSdkVersion
|
||||
targetSdk 28
|
||||
versionCode 304
|
||||
versionName "3.0.4"
|
||||
versionCode 305
|
||||
versionName "3.0.5"
|
||||
javaCompileOptions {
|
||||
annotationProcessorOptions {
|
||||
arguments = ["room.schemaLocation": "$projectDir/schemas".toString(), "eventBusIndex": "com.fongmi.android.tv.event.EventIndex"]
|
||||
@@ -55,8 +55,8 @@ android {
|
||||
|
||||
buildTypes {
|
||||
release {
|
||||
minifyEnabled false
|
||||
shrinkResources false
|
||||
minifyEnabled true
|
||||
shrinkResources true
|
||||
signingConfig signingConfigs.release
|
||||
proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
|
||||
}
|
||||
@@ -67,6 +67,17 @@ android {
|
||||
exclude 'META-INF/beans.xml'
|
||||
exclude 'META-INF/versions/9/OSGI-INF/MANIFEST.MF'
|
||||
}
|
||||
jniLibs {
|
||||
// 解决重复的JNI库问题,只保留第一个找到的
|
||||
pickFirsts += [
|
||||
'**/libavcodec.so',
|
||||
'**/libavutil.so',
|
||||
'**/libmedia3ext.so',
|
||||
'**/libquickjs-android-wrapper.so',
|
||||
'**/libswresample.so',
|
||||
'**/libswscale.so'
|
||||
]
|
||||
}
|
||||
}
|
||||
|
||||
android.applicationVariants.configureEach { variant ->
|
||||
@@ -87,17 +98,17 @@ android {
|
||||
|
||||
compileOptions {
|
||||
coreLibraryDesugaringEnabled true
|
||||
sourceCompatibility JavaVersion.VERSION_11
|
||||
targetCompatibility JavaVersion.VERSION_11
|
||||
sourceCompatibility JavaVersion.VERSION_17
|
||||
targetCompatibility JavaVersion.VERSION_17
|
||||
}
|
||||
}
|
||||
|
||||
dependencies {
|
||||
implementation fileTree(dir: "libs", include: ["*.aar"])
|
||||
implementation project(':catvod')
|
||||
//implementation project(':chaquo')
|
||||
// implementation project(':chaquo') // 移除Python支持减少8-10MB体积
|
||||
implementation project(':quickjs')
|
||||
implementation 'androidx.appcompat:appcompat:1.7.0'
|
||||
implementation 'androidx.appcompat:appcompat:1.7.1'
|
||||
implementation 'androidx.media:media:1.7.0'
|
||||
implementation 'androidx.media3:media3-common:' + media3Version
|
||||
implementation 'androidx.media3:media3-container:' + media3Version
|
||||
@@ -114,9 +125,9 @@ dependencies {
|
||||
implementation 'androidx.media3:media3-exoplayer-smoothstreaming:' + media3Version
|
||||
implementation 'androidx.media3:media3-extractor:' + media3Version
|
||||
implementation 'androidx.media3:media3-ui:' + media3Version
|
||||
implementation 'androidx.room:room-runtime:2.7.1'
|
||||
implementation 'androidx.room:room-runtime:2.7.2'
|
||||
implementation 'cat.ereza:customactivityoncrash:2.4.0'
|
||||
implementation('com.github.anilbeesetti.nextlib:nextlib-media3ext:0.8.4') { exclude group: 'androidx.media3' }
|
||||
implementation 'io.github.anilbeesetti:nextlib-media3ext:1.8.0-0.9.0'
|
||||
implementation 'com.github.bassaer:materialdesigncolors:1.0.0'
|
||||
implementation 'com.github.bumptech.glide:glide:4.16.0'
|
||||
implementation 'com.github.bumptech.glide:annotations:4.16.0'
|
||||
@@ -124,10 +135,10 @@ dependencies {
|
||||
implementation 'com.github.bumptech.glide:okhttp3-integration:4.16.0'
|
||||
implementation 'com.github.jahirfiquitiva:TextDrawable:1.0.3'
|
||||
implementation 'com.github.thegrizzlylabs:sardine-android:0.9'
|
||||
implementation 'com.github.teamnewpipe:NewPipeExtractor:v0.24.6'
|
||||
implementation 'com.github.teamnewpipe:NewPipeExtractor:v0.24.8'
|
||||
implementation 'com.google.android.material:material:1.12.0'
|
||||
implementation 'com.google.zxing:core:3.5.3'
|
||||
implementation 'com.guolindev.permissionx:permissionx:1.8.0'
|
||||
implementation 'com.guolindev.permissionx:permissionx:1.8.1'
|
||||
implementation 'com.hierynomus:smbj:0.14.0'
|
||||
implementation 'io.antmedia:rtmp-client:3.2.0'
|
||||
implementation 'javax.servlet:javax.servlet-api:3.1.0'
|
||||
@@ -146,9 +157,9 @@ dependencies {
|
||||
mobileImplementation 'androidx.swiperefreshlayout:swiperefreshlayout:1.1.0'
|
||||
mobileImplementation 'com.google.android.flexbox:flexbox:3.0.0'
|
||||
mobileImplementation('com.journeyapps:zxing-android-embedded:4.3.0') { transitive = false }
|
||||
annotationProcessor 'androidx.room:room-compiler:2.7.1'
|
||||
annotationProcessor 'androidx.room:room-compiler:2.7.2'
|
||||
// annotationProcessor 'com.github.bumptech.glide:compiler:4.16.0'
|
||||
// annotationProcessor 'org.greenrobot:eventbus-annotation-processor:3.3.1'
|
||||
coreLibraryDesugaring 'com.android.tools:desugar_jdk_libs_nio:2.1.4'
|
||||
annotationProcessor 'org.greenrobot:eventbus-annotation-processor:3.3.1'
|
||||
coreLibraryDesugaring 'com.android.tools:desugar_jdk_libs_nio:2.1.5'
|
||||
implementation 'io.noties.markwon:core:4.6.2'
|
||||
}
|
||||
Reference in New Issue
Block a user