Android MTK 添加开关机动画

 

1, vender下添加开关机的压缩包

vender下创建文件夹 res,添加文件,并创建一个install.mk(mk文件名称可以随意起)

install.mk按如下编译

LOCAL_PATH := $(my-dir)

MY_PATH := vendor/res
SYSTEM_OUTDIR=out/target/product/k61v1_64_bsp/system
MEDIA_OUTPUT=$(SYSTEM_OUTDIR)/media
$(shell mkdir -p $(MEDIA_OUTPUT))
$(shell cp -r $(MY_PATH)/*.zip $(MEDIA_OUTPUT))
$(shell cp -r $(MY_PATH)/*.mp3 $(MEDIA_OUTPUT))

2,build\target\product\generic_no_telephony.mk下关联编译install.mk

$(call inherit-product, vendor/res/install.mk)

3 ,Enable MtkBootanimation

/vendor/mediatek/proprietary/operator/frameworks/bootanimation/
Rename Android_disable.mk to Android.mk

/vendor/mediatek/proprietary/operator/frameworks/bootanimation/MtkBootanimation/
Rename Android_disable.mk to Android.mk

/frameworks/base/cmds/bootanimation/
Rename Android.mk to Android_disable.mk

4, Configure MtkBootanimation lib and exe

/vendor/mediatek/proprietary/operator/frameworks/bootanimation/MtkBootanimation/Android.mk 
54ifeq (OP01,$(word 1,$(subst _, ,$(OPTR_SPEC_SEG_DEF))))
55 ifeq ($(strip $(MTK_BSP_PACKAGE)), yes)
56 include $(BUILD_EXECUTABLE)
57 endif
58else ifeq (OP02,$(word 1,$(subst _, ,$(OPTR_SPEC_SEG_DEF))))
59 ifeq ($(strip $(MTK_BSP_PACKAGE)), yes)
60 include $(BUILD_EXECUTABLE)
61 endif
62else ifeq (OP09,$(word 1,$(subst _, ,$(OPTR_SPEC_SEG_DEF))))
63 ifeq ($(strip $(MTK_BSP_PACKAGE)), yes)
64 include $(BUILD_EXECUTABLE)
65 endif
66endif
以上code删除,修改为
include $(BUILD_EXECUTABLE)

121ifeq (OP01,$(word 1,$(subst _, ,$(OPTR_SPEC_SEG_DEF))))
122 ifeq ($(strip $(MTK_BSP_PACKAGE)), yes)
123 include $(BUILD_SHARED_LIBRARY)
124 endif
125else ifeq (OP02,$(word 1,$(subst _, ,$(OPTR_SPEC_SEG_DEF))))
126 ifeq ($(strip $(MTK_BSP_PACKAGE)), yes)
127 include $(BUILD_SHARED_LIBRARY)
128 endif
129else ifeq (OP09,$(word 1,$(subst _, ,$(OPTR_SPEC_SEG_DEF))))
130 ifeq ($(strip $(MTK_BSP_PACKAGE)), yes)
131 include $(BUILD_SHARED_LIBRARY)
132 endif
133endif
以上code删除,修改为
include $(BUILD_SHARED_LIBRARY)

5 , Add resources

 

生成自定义bootanimation.zip和shutanimation.zip,并修改Makefile将resource文件放至目录system\media\,参考写法:

$(LOCAL_PATH)/bootanimation.zip:system/media/bootanimation.zip
$(LOCAL_PATH)/shutanimation.zip:system/media/shutanimation.zip

6 ,Enable Shutdown Animation 

/vendor/mediatek/proprietary/frameworks/base/services/core/java/com/mediatek/server/MtkShutdownThread.java
374 public static int isCustBootAnim() {
375 int mode = DEFAULT_MODE;
376 if(mShutOffAnimation == -1) {
377 String sysProp = SystemProperties.get(OPERATOR_SYSPROP, "0");
378 if(sysProp.equals("OP01")) {
379 if (RatConfiguration.isLteFddSupported() || RatConfiguration.isLteTddSupported()) {
380 mode = ANIMATION_MODE;
381 } else {
382 mode = DEFAULT_MODE;
383 }
384 }
385 else if(sysProp.equals("OP02")) {
386 mode = ANIMATION_MODE;
387 }
388 else if(sysProp.equals("OP09")) {
389 mode = ANIMATION_MODE;
390 }
391 else {
392 sysProp = "NONE";
393 mode = DEFAULT_MODE;
394 }

+++ mode = ANIMATION_MODE; //Enable Shutdown Animation

395 mShutOffAnimation = mode;
396 Log.i(TAG,"mShutOffAnimation: " + mode + " (" + sysProp + ")");
397 return mode;
398 } else {
399 return mShutOffAnimation;
400 }
401 }

7 ,Init AudioPath

vendor/mediatek/proprietary/operator/frameworks/bootanimation/MtkBootanimation/BootAnimation.cpp
bool BootAnimation::threadLoop()
{
bool r;
// We have no bootanimation file, so we use the stock android logo
// animation.
sp<MediaPlayer> mediaplayer;

--- const char* resourcePath = NULL;
+++ const char* resourcePath = initAudioPath();

status_t mediastatus = NO_ERROR;
if (resourcePath != NULL) {
bPlayMP3 = true;
ALOGD("sound file path: %s", resourcePath);
mediaplayer = new MediaPlayer();
……
}
……
}

8,Add mtkbootanimation Packages 

Add mtkbootanimation packages to device.mk, and make clean before rebuild all load.

Add below codes in alps\device\mediatek\$(platform_name)\device.mk
PRODUCT_PACKAGES += mtkbootanimation
PRODUCT_PACKAGES += libmtkbootanimation

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
要在 MTK 平台的 Android 系统中添加开机动画,您可以按照以下步骤进行操作: 1. 准备开机动画文件:首先,您需要准备一个适合设备分辨率的开机动画视频文件。确保视频文件格式符合 Android 系统的要求,例如使用 MP4 格式、H.264 编码等。 2. 进入 MTK 平台开发环境:下载并配置 MTK 平台的开发环境,包括 Android 开发工具包 (Android SDK) 和 MTK 平台特定的开发工具。 3. 查找开机动画文件位置:在 MTK 平台上,开机动画文件通常存储在 `bootanimation.zip` 或 `bootvideo.zip` 文件中。具体位置可能因设备型号、厂商定制和平台版本而有所不同。您可以查阅相关文档或者资料,以了解在您的具体设备上开机动画文件的位置。 4. 替换开机动画文件:将准备好的开机动画文件替换掉原始的 `bootanimation.zip` 或 `bootvideo.zip` 文件。确保您已经了解并遵循相关规范,例如文件名、文件结构等。 5. 编译和刷入修改后的系统:使用 MTK 平台提供的开发工具,编译并刷入您修改后的 Android 系统。请确保您已经了解和掌握了 MTK 平台的编译和刷机流程,并备份好原始系统以防万一。 请注意,以上步骤仅提供了一般的指导,具体操作可能因设备型号、厂商定制和平台变化而有所不同。在进行任何系统修改操作之前,请务必备份重要数据,并确保您具备足够的技术能力和知识来处理相关问题。建议您参考 MTK 平台的官方文档、论坛或者与相关开发者社区进行交流,以获取更精确和详细的指导。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值