量产技巧之RK3588 Android12默认移除导航栏&状态栏

本文介绍使用源码编译默认去掉导航栏/状态栏方法,以触觉智能EVB3588开发板演示,Android12系统,搭载了瑞芯微RK3588芯片,该开发板是核心板加底板设计,音视频接口、通信接口等各类接口一应俱全,可帮助企业提高产品开发效率,缩短上市时间,降低成本和设计风险。

源码修改

源码修改说明:"-"表示需要去掉的内容,"+"表示需要添加的内容。

(1)导航栏修改:

修改

packages/apps/Launcher3/src/com/android/launcher3/DeviceProfile.java文件,修改内容如下:

复制代码
@@ -+241,9 @@ public class DeviceProfile {         availableHeightPx = windowBounds.availableSize.y;         mInfo = info;-        isTablet = info.isTablet(windowBounds);+        isTablet = false;

修改

device/rockchip/rk3588/rk3588_s/rk3588_s.mk文件,修改内容如下:

复制代码
 PRODUCT_PROPERTY_OVERRIDES += persist.sys.timezone=Asia/Shanghai PRODUCT_PROPERTY_OVERRIDES += persist.net.eth.mode= PRODUCT_PROPERTY_OVERRIDES += persist.net.eth1share.ipaddress=192.168.5.1
+PRODUCT_PROPERTY_OVERRIDES += qemu.hw.mainkeys=1

修改

frameworks/base/packages/SystemUI/res/values-sw900dp/config.xml文件,修改内容如下:

复制代码
 <resources>
      <!-- Nav bar button default ordering/layout -->-    <string name="config_navBarLayout" translatable="false">back,home,left;space;right,recent</string>+    <string name="config_navBarLayout" translatable="false">left;volume_sub,back,home,recent,volume_add,screenshot;right</string>
 </resources>

修改

frameworks/base/packages/SystemUI/src/com/android/systemui/navigationbar/NavigationBarController.java文件,修改内容如下:

复制代码
     /** @return {@code true} if taskbar is enabled, false otherwise */     private boolean initializeTaskbarIfNecessary() {-        if (mIsTablet) {+        if (false) {             // Remove navigation bar when taskbar is showing             removeNavigationBar(mContext.getDisplayId());             mTaskbarDelegate.init(mContext.getDisplayId());         } else {             mTaskbarDelegate.destroy();         }-        return mIsTablet;+        return false;     }
          @Override@@ -295,7 +295,7 @@ public class NavigationBarController implements         // We may show TaskBar on the default display for large screen device. Don't need to create         // navigation bar for this case.-        if (mIsTablet && isOnDefaultDisplay) {+        if (false) {             return;         }

(2)状态栏修改

修改

frameworks/base/packages/SystemUI/res/layout/status_bar.xml文件,修改内容如下:

复制代码
@@ -26,6 +26,7 @@     android:id="@+id/status_bar"     android:orientation="vertical"     android:focusable="false"+    android:visibility="gone"     android:descendantFocusability="afterDescendants"     android:accessibilityPaneTitle="@string/status_bar"     >

源码编译

以上内容全部修改完后,即可编译烧录测试,在源码根目录下执行编译命令:

复制代码
# source build/envsetup.sh # lunch 53# make -j4

编译完成在会在out/target/product/rk3588_s/目录生成super.img,可单独烧录该分区文件测试,也可合成整包固件,具体方法参考主板烧录手册。

根据烧录手册完成烧录后,导航栏和状态栏屏蔽成功。

产品介绍

触觉智能EVB3588开发板具有以下优势:

  • 支持开源鸿蒙OpenHarmony与麒麟

    KylinOS国产系统,以及Android/Linux;

  • 瑞芯微RK3588高性能SoC,集成四核A76

    和四核A55处理器,Mali-G610 四核GPU;

  • 支持48M ISP,多摄像头输入;

  • 6T AI高算力NPU,三核架构;

  • 支持HDMI2.1输出,最高8K@60FPS;

  • 支持HDMI2.0输入,最高4K@60FPS;

  • 2×独立千兆以太网口,支持WAN+LAN

    双IP,支持5G/4G/WiFi/蓝牙无线通信;

  • 板载4×USB3.0,2×全功能Type-C

相关推荐
mmsx11 小时前
osmdroid 屏幕坐标与测量坐标互转:中心点+比例尺仿射换算
android·源码·地图·osmdroid
00后程序员张11 小时前
Android证书绑定抓包失败?Android SSL Pinning绕过实战指南
android·网络协议·计算机网络·网络安全·adb·https·ssl
杉氧12 小时前
页面栈与路由:React Navigation 与 Expo Router 深度实践
android·前端·react native
XiaoLeisj12 小时前
Jetpack Compose 知识点
android·kotlin·android jetpack·compose
又见情义13 小时前
RK3568 Android 13开机时间优化-系统应用裁剪实践
android
hunterandroid14 小时前
Android 内存泄漏排查实战:从 LeakCanary 报警到根因定位
android·前端
我命由我1234514 小时前
Android 设备的日志缓冲区被写满,logcat: Unexpected EOF!
android·java·java-ee·android studio·android jetpack·android-studio·android runtime
171320330计算机毕设编程14 小时前
基于SpringBoot的在线拍卖系统
android·java·spring boot·小程序·课程设计
用户09340777351414 小时前
HarmonyOS WPS Open SDK 实践:OpenFileRequest 打开链路与沙箱拷贝
android·typescript·harmonyos
0xBADCODE15 小时前
动态DEX加载+反射+DES硬编码密钥:安卓三层逆向实战
android·java·python·安全·网络安全·逆向·ctf