最近做Android9.0的项目定制出现开机动画铃声的问题,以下是解决方案
解决预置开机动画,铃声无效果的问题
1.device/mediatek/mt6739/device.mk
PRODUCT_PACKAGES += mtkbootanimation
PRODUCT_PACKAGES += libmtkbootanimation
2.device/mediatek/sepolicy/basic/non_plat/audioserver.te
allow audioserver bootanim:binder call;
3.frameworks/base/cmds/bootanimation/
在改文件夹下面将Android.mk文件修改为Android_disable.mk(当然删掉也是一样的)
4.vendor/mediatek/proprietary/operator/frameworks/bootanimation/
在改文件夹下面将Android_disable.mk文件修改为Android.mk
5.vendor/mediatek/proprietary/operator/frameworks/bootanimation/MtkBootanimation/
在改文件夹下面将Android_disable.mk文件修改为Android.mk
6.vendor/mediatek/proprietary/frameworks/base/services/core/java/com/mediatek/server/MtkShutdownThread.java
private boolean showShutdownAnimation(Context context) {
.................
bootanimCust(context);
return true;
}
- return false;
+ return true;
}
private static void bootanimCust(Context context) {
........
public static int isCustBootAnim() {
.........................
sysProp = "NONE";
mode = DEFAULT_MODE;
}
+ mode = ANIMATION_MODE; //Enable Shutdown Animation
mShutOffAnimation = mode;
Log.i(TAG,"mShutOffAnimation: " + mode + " (" + sysProp + ")");
return mode;
}
7.vendor/mediatek/proprietary/operator/frameworks/bootanimation/MtkBootanimation/BootAnimation.cpp
bool BootAnimation::threadLoop()
{
.......
// 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