1.App build.gradle
android {
namespace 'com.xx.xx'
compileSdk 35
defaultConfig {
applicationId "com.xx.xx"
minSdk 24
targetSdk 35
versionCode 15
versionName "1.3.2"
testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
}
}
dependencies {
implementation "org.jetbrains.kotlin:kotlin-stdlib:1.9.24"
implementation 'androidx.core:core-ktx:1.15.0'
implementation 'androidx.appcompat:appcompat:1.7.0'
implementation 'com.google.android.material:material:1.12.0'
implementation 'androidx.constraintlayout:constraintlayout:2.1.4'
implementation project(path: ':common')
testImplementation 'junit:junit:4.13.2'
androidTestImplementation 'androidx.test.ext:junit:1.1.5'
androidTestImplementation 'androidx.test.espresso:espresso-core:3.5.1'
implementation 'com.github.CymChad:BaseRecyclerViewAdapterHelper:3.0.4'
implementation 'com.hwangjr.rxbus:rxbus:3.0.0'
implementation 'com.github.tbruyelle:rxpermissions:0.10.2'
//基础的 OkSocket 功能集成包.您的Socket开发无论是客户端还是Java,都需要此包 (必须集成)
implementation 'com.tonystark.android:socket:4.2.1'
implementation 'com.github.ybq:Android-SpinKit:1.4.0'
implementation 'com.guolindev.permissionx:permissionx:1.7.1'
/**
* room
* 2.4.3版本31
*/
def room_version = "2.3.0"
implementation "androidx.room:room-runtime:$room_version"
// 注解处理器(Kotlin 用 kapt,Java 用 annotationProcessor)
kapt "androidx.room:room-compiler:$room_version"
implementation "androidx.room:room-ktx:$room_version"//Coroutines support for Room 协程操作库
implementation "org.jetbrains.kotlinx:kotlinx-coroutines-android:1.5.2"
//lifecycle
implementation 'androidx.lifecycle:lifecycle-runtime-ktx:2.8.7'
implementation 'androidx.lifecycle:lifecycle-viewmodel-ktx:2.8.7'
}
===============
2.gradle.properties增加
android.overridePathCheck=true
3.gradle-wrapper.properties
distributionUrl=https\://services.gradle.org/distributions/gradle-8.7-all.zip
4.根目录的build.gradle
dependencies {
classpath "com.android.tools.build:gradle:8.6.0"
classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:1.9.24"
// NOTE: Do not place your application dependencies here; they belong
// in the individual module build.gradle files
}
5 themes.xml
<style name="FullScreen" parent="Theme.AppCompat.Light.NoActionBar">
<item name="colorPrimary">@color/colorPrimary</item>
<item name="colorPrimaryDark">@color/colorPrimary</item>
<item name="colorAccent">@color/colorPrimary</item>
<item name="windowNoTitle">true</item>
<item name="android:windowActionModeOverlay">true</item>
<item name="android:statusBarColor">@android:color/transparent</item>
<item name="android:navigationBarColor">@android:color/transparent</item>
</style>
6.BaseActivity
private fun setImmersiveFullscreen() {
// 允许内容延伸到系统栏区域
WindowCompat.setDecorFitsSystemWindows(window, false)
// Android 10+
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.Q) {
window.isStatusBarContrastEnforced = false
window.isNavigationBarContrastEnforced = false
}
// 透明
window.statusBarColor = Color.TRANSPARENT
window.navigationBarColor = Color.TRANSPARENT
val controller = WindowInsetsControllerCompat(
window,
window.decorView
)
// 隐藏状态栏 + 导航栏
controller.hide(WindowInsetsCompat.Type.systemBars())
// 沉浸式
controller.systemBarsBehavior =
WindowInsetsControllerCompat.BEHAVIOR_SHOW_TRANSIENT_BARS_BY_SWIPE
}
Android 35适配
baidu_247438612026-09-04 13:22
相关推荐
千里马学框架2 天前
一起学 Android 14:ShellTransition 屏幕旋转过程深度剖析美狐美颜SDK开放平台2 天前
开发直播APP时如何接入视频美颜SDK?开发流程与注意事项AFinalStone2 天前
Android7 SystemUI源码解析(七)Keyguard锁屏模块深度解析致远ccc2 天前
Google Play 上架前如何测试 App?多国家 Android 环境测试ttyyttemo2 天前
Kotlin 协程中的 Job 结构化并发与取消sun0077002 天前
tbox 4g/5g切换,导致wan ip 改变,导致车机旧网络不可用。需要重启车机才行其实防守也摸鱼2 天前
内网穿透与反向代理:原理、工具与实战指南AFinalStone2 天前
Android7 SystemUI 源码解析(四)NavigationBar 导航栏与 SystemBarsJMchen2 天前
属性动画原理与高级动画实现AFinalStone2 天前
Android7 SystemUI 源码解析(二)启动流程深度解析