当前位置: 首页 > news >正文

创建软件网站全网自媒体平台大全

创建软件网站,全网自媒体平台大全,画册设计公司收费,网站建设ipMTK APP实现动态修改logo和开机动画 前言一、修改对新分区的权限1.修改开机动画对新分区的权限2.修改系统APP对新分区的权限3.修改SE权限,不然编译会报错4.修改开机动画文件#xff0c;让其加载新分区中的文件 二、系统APP代码使用1.系统app修改开机logo2.系统app修改开机动画… MTK APP实现动态修改logo和开机动画 前言一、修改对新分区的权限1.修改开机动画对新分区的权限2.修改系统APP对新分区的权限3.修改SE权限,不然编译会报错4.修改开机动画文件让其加载新分区中的文件 二、系统APP代码使用1.系统app修改开机logo2.系统app修改开机动画3.系统app修改开机音乐 三、如何定制开机logo总结 前言 之前写过如何动态替换开机logo的MTK修改动态切换开机logo恢复出厂设置不还原 以及OTA升级开机logo的MTK android10修改Logo OTA AB分区 但是又有需求动态替换开机动画开机logo不随OTA升级变化但是开机动画实际上是在system分区中的OTA升级如果有修改就会替换而且开机动画文件是只读文件就相出了一个方法 新建一个分区把开机动画放入新分区中这个分区不加入OTA升级 先看新加分区的修改MTK Android10添加分区 不同平台或者android版本的话大部分是一样的修改思路相同 一、修改对新分区的权限 1.修改开机动画对新分区的权限 diff --git a/alps/device/mediatek/sepolicy/basic/non_plat/mtkbootanimation.te b/alps/device/mediatek/sepolicy/basic/non_plat/mtkbootanimation.te index 491cf8eada..a378ead82e 100755 --- a/alps/device/mediatek/sepolicy/basic/non_plat/mtkbootanimation.teb/alps/device/mediatek/sepolicy/basic/non_plat/mtkbootanimation.te-51,6 51,8 allow mtkbootanimation proc_perfmgr:file {open read ioctl};allow mtkbootanimation mediaextractor:dir search;allow mtkbootanimation debugfs_ion:dir search; allow mtkbootanimation xunye_file:dir rw_dir_perms; allow mtkbootanimation xunye_file:file { read write open ioctl map};allow mediaserver mtkbootanimation:dir search;allowxperm mtkbootanimation proc_ged:file ioctl { proc_ged_ioctls };2.修改系统APP对新分区的权限 diff --git a/alps/device/mediatek/sepolicy/bsp/non_plat/system_app.te b/alps/device/mediatek/sepolicy/bsp/non_plat/system_app.te index 20cffc85b6..566650df89 100755 --- a/alps/device/mediatek/sepolicy/bsp/non_plat/system_app.teb/alps/device/mediatek/sepolicy/bsp/non_plat/system_app.te-253,3 253,7 allow system_app ttyS_device:chr_file { rw_file_perms };allow system_app app_data_file:file { rw_file_perms };# add for xunye allow system_app xunye_file:file { getattr unlink open read write create }; allow system_app xunye_file:dir rw_dir_perms;这里包括了systemapp对logo.bin的修改权限 diff --git a/alps/device/mediatek/mt8168/sepolicy/basic/system_app.te b/alps/device/mediatek/mt8168/sepolicy/basic/system_app.te index 319bd99c59..378aa02a98 100644 --- a/alps/device/mediatek/mt8168/sepolicy/basic/system_app.teb/alps/device/mediatek/mt8168/sepolicy/basic/system_app.te-14,3 14,9 allow system_app system_data_file:file create;allow system_app system_data_file:dir write;allow system_app system_data_file:dir read;allow system_app system_data_file:dir add_name; allow system_app apk_data_file:dir write; allow system_app logo_block_device:blk_file write; allow system_app logo_block_device:blk_file read; allow system_app logo_block_device:blk_file open; allow system_app logo_block_device:blk_file getattr; allow system_app xunye_file:file setattr; 3.修改SE权限,不然编译会报错 diff --git a/alps/system/sepolicy/prebuilts/api/29.0/public/app.te b/alps/system/sepolicy/prebuilts/api/29.0/public/app.te index d5a079b769..aa094cd2cc 100644 --- a/alps/system/sepolicy/prebuilts/api/29.0/public/app.teb/alps/system/sepolicy/prebuilts/api/29.0/public/app.te-371,7 371,7 binder_call({ appdomain -coredomain }, ashmemd)neverallow { appdomain -bluetooth -network_stack } self:capability_class_set *;# Block device access. -neverallow appdomain dev_type:blk_file { read write }; neverallow { appdomain -system_app } dev_type:blk_file { read write };# Access to any of the following character devices.neverallow appdomain {-467,7 467,7 neverallow {appdomain -system_app} system_data_file:dir_file_class_set# Write to various other parts of /data.neverallow appdomain drm_data_file:dir_file_class_set{ create write setattr relabelfrom relabelto append unlink link rename }; -neverallow { appdomain -platform_app } neverallow { appdomain -platform_app -system_app}apk_data_file:dir_file_class_set{ create write setattr relabelfrom relabelto append unlink link rename };neverallow { appdomain -platform_app } diff --git a/alps/system/sepolicy/prebuilts/api/29.0/public/domain.te b/alps/system/sepolicy/prebuilts/api/29.0/public/domain.te index f348701819..ef839d1e6d 100644 --- a/alps/system/sepolicy/prebuilts/api/29.0/public/domain.teb/alps/system/sepolicy/prebuilts/api/29.0/public/domain.te-818,6 818,7 full_treble_only(# /data/vendorneverallow {coredomain-domain-appdomain # TODO(b/34980020) remove exemption for appdomain-data_between_core_and_vendor_violators-init-836,6 837,7 full_treble_only(-vold_prepare_subdirs} {data_file_type-data_file_type-core_data_file_type# TODO(b/72998741) Remove exemption. Further restricted in a subsequent# neverallow. Currently only getattr and search are allowed. diff --git a/alps/system/sepolicy/public/app.te b/alps/system/sepolicy/public/app.te index d5a079b769..aa094cd2cc 100644 --- a/alps/system/sepolicy/public/app.teb/alps/system/sepolicy/public/app.te-371,7 371,7 binder_call({ appdomain -coredomain }, ashmemd)neverallow { appdomain -bluetooth -network_stack } self:capability_class_set *;# Block device access. -neverallow appdomain dev_type:blk_file { read write }; neverallow { appdomain -system_app } dev_type:blk_file { read write };# Access to any of the following character devices.neverallow appdomain {-467,7 467,7 neverallow {appdomain -system_app} system_data_file:dir_file_class_set# Write to various other parts of /data.neverallow appdomain drm_data_file:dir_file_class_set{ create write setattr relabelfrom relabelto append unlink link rename }; -neverallow { appdomain -platform_app } neverallow { appdomain -platform_app -system_app}apk_data_file:dir_file_class_set{ create write setattr relabelfrom relabelto append unlink link rename };neverallow { appdomain -platform_app } diff --git a/alps/system/sepolicy/public/domain.te b/alps/system/sepolicy/public/domain.te index f348701819..ef839d1e6d 100644 --- a/alps/system/sepolicy/public/domain.teb/alps/system/sepolicy/public/domain.te-818,6 818,7 full_treble_only(# /data/vendorneverallow {coredomain-domain-appdomain # TODO(b/34980020) remove exemption for appdomain-data_between_core_and_vendor_violators-init-836,6 837,7 full_treble_only(-vold_prepare_subdirs} {data_file_type-data_file_type-core_data_file_type# TODO(b/72998741) Remove exemption. Further restricted in a subsequent# neverallow. Currently only getattr and search are allowed.4.修改开机动画文件让其加载新分区中的文件 复制文件到新分区中 diff --git a/alps/device/mediateksample/xxxxxxxx/device.mk b/alps/device/mediateksample/xxxxxxxx/device.mk index 22e9bdc759..8fd857fd9c 100755 --- a/alps/device/mediateksample/xxxxxxxx/device.mkb/alps/device/mediateksample/xxxxxxxx/device.mk-277,6 277,9 PRODUCT_COPY_FILES $(call add-to-product-copy-files-if-exists, vendor/het/appPRODUCT_COPY_FILES $(call add-to-product-copy-files-if-exists, vendor/het/app/ClifeScreenReceive/lib/libndkbitmap.so:system/lib/libndkbitmap.so)PRODUCT_COPY_FILES $(call add-to-product-copy-files-if-exists, vendor/het/app/ClifeScreenReceive/lib/libsfftranscoder.so:system/lib/libsfftranscoder.so)PRODUCT_COPY_FILES $(call add-to-product-copy-files-if-exists, vendor/het/images/1024_600/bootanimation.zip:xunye/media/bootanimation.zip) PRODUCT_COPY_FILES $(call add-to-product-copy-files-if-exists, vendor/het/audios/bootaudio.mp3:xunye/media/bootaudio.mp3)修改bootanimation.cpp 这个其实比较简单 把默认加载system/media的目录改成xunye/media即可 diff --git a/alps/vendor/mediatek/proprietary/operator/frameworks/bootanimation/MtkBootanimation/BootAnimation.cpp b/alps/vendor/mediatek/proprietary/operator/frameworks/bootanimation/MtkBootanimation/BootAnimation.cpp index 5ebc874a13..927944e61f 100755 --- a/alps/vendor/mediatek/proprietary/operator/frameworks/bootanimation/MtkBootanimation/BootAnimation.cppb/alps/vendor/mediatek/proprietary/operator/frameworks/bootanimation/MtkBootanimation/BootAnimation.cpp-121,12 121,12 static const char* mResourcePath[MNC_COUNT][PATH_COUNT] #if !(defined(MSSI_MTK_CARRIEREXPRESS_PACK) defined(MTK_TER_SERVICE))static const char* mAudioPath[2][PATH_COUNT] - {{/system/media/bootaudio.mp3, /custom/media/bootaudio.mp3, /data/local/bootaudio.mp3} , /* bootaudio path */ - {/system/media/shutaudio.mp3, /custom/media/shutaudio.mp3, /data/local/shutaudio.mp3} /* shutaudio path */{{/xunye/media/bootaudio.mp3, /custom/media/bootaudio.mp3, /data/local/bootaudio.mp3} , /* bootaudio path */{/xunye/media/shutaudio.mp3, /custom/media/shutaudio.mp3, /data/local/shutaudio.mp3} /* shutaudio path */};#endifstatic const char* myAudioPath[2] - {/system/media/bootaudio.mp3, /system/media/1/bootaudio.mp3};{/xunye/media/bootaudio.mp3, /system/media/1/bootaudio.mp3};namespace android { -136,10 136,10 static const char SYSTEM_SHUTANIMATION_FILE[] /system/media/shutanimation.zipstatic const char CUSTOM_SHUTANIMATION_FILE[] /custom/media/shutanimation.zip;static const char USER_SHUTANIMATION_FILE[] /data/local/shutanimation.zip;-static const char OEM_BOOTANIMATION_FILE[] /oem/media/bootanimation.zip; static const char OEM_BOOTANIMATION_FILE[] /xunye/media/bootanimation.zip;static const char SYSTEM_BOOTANIMATION_FILE[] /system/media/bootanimation.zip;static const char SYSTEM_ENCRYPTED_BOOTANIMATION_FILE[] /system/media/bootanimation-encrypted.zip; -static const char OEM_SHUTDOWNANIMATION_FILE[] /oem/media/shutdownanimation.zip; static const char OEM_SHUTDOWNANIMATION_FILE[] /xunye/media/shutdownanimation.zip;static const char SYSTEM_SHUTDOWNANIMATION_FILE[] /system/media/shutdownanimation.zip;static const char SYSTEM_DATA_DIR_PATH[] /data/system;-535,6 535,7 status_t BootAnimation::readyToRun() {for (const char* f : (bBootOrShutDown ? bootFiles : shutdownFiles)) {if (access(f, R_OK) 0) {mZipFileName f;ALOGE( bootFiles mZipFileName f%s,f);return NO_ERROR;}}-1097,7 1098,7 bool BootAnimation::movie()if(strcmp(nvram_logo_index, 1) 0){mZipFileName/system/media/1/bootanimation.zip;} - ALOGE(movie mZipFileName: %s, mZipFileName.string());Animation* animation loadAnimation(mZipFileName);if (animation NULL)return false; 二、系统APP代码使用 1.系统app修改开机logo public static void copyLogoBin() {File srcFile new File(/sdcard/logo.bin);if(!srcFile.exists())return;String logoPath dev/block/platform/bootdevice/by-name/logo; // String logoPath /dev/block/mmcblk0p19;Log.e(logo,logoPathlogoPath);File dstFile new File(logoPath);OutputStream os null;try {FileInputStream is new FileInputStream(srcFile);os new BufferedOutputStream(new FileOutputStream(dstFile, false));int curSize 0;byte[] data new byte[1024];for (int len; (len is.read(data)) ! -1; ) {os.write(data, 0, len);curSize len;}} catch (Exception e) {e.printStackTrace();}finally {try {if (os ! null) {os.close();}} catch (IOException e) {e.printStackTrace();} // srcFile.delete();}}2.系统app修改开机动画 public static void copyLogoBootanimation() {File srcFile new File(/sdcard/bootanimation.zip);if(!srcFile.exists())return;String logoPath /xunye/media/bootanimation.zip; // String logoPath /dev/block/mmcblk0p19;Log.e(logo,BootanimationPathlogoPath);File dstFile new File(logoPath);if(dstFile.exists())dstFile.delete();try {dstFile.createNewFile();} catch (IOException e) {throw new RuntimeException(e);}try {Os.chmod(dstFile.getAbsolutePath(), 0777);} catch (ErrnoException e) {e.printStackTrace();}OutputStream os null;try {FileInputStream is new FileInputStream(srcFile);os new BufferedOutputStream(new FileOutputStream(dstFile, false));int curSize 0;byte[] data new byte[1024];for (int len; (len is.read(data)) ! -1; ) {os.write(data, 0, len);curSize len;}} catch (Exception e) {e.printStackTrace();}finally {try {if (os ! null) {os.close();}} catch (IOException e) {e.printStackTrace();} // srcFile.delete();}}3.系统app修改开机音乐 public static void copyBootAudio() {File srcFile new File(/sdcard/bootaudio.mp3);if(!srcFile.exists())return;String logoPath /xunye/media/bootaudio.mp3; // String logoPath /dev/block/mmcblk0p19;Log.e(logo,bootaudio.mp3 PathlogoPath);File dstFile new File(logoPath);if(dstFile.exists())dstFile.delete();try {dstFile.createNewFile();} catch (IOException e) {throw new RuntimeException(e);}try {Os.chmod(dstFile.getAbsolutePath(), 0777);} catch (ErrnoException e) {e.printStackTrace();}OutputStream os null;try {FileInputStream is new FileInputStream(srcFile);os new BufferedOutputStream(new FileOutputStream(dstFile, false));int curSize 0;byte[] data new byte[1024];for (int len; (len is.read(data)) ! -1; ) {os.write(data, 0, len);curSize len;}} catch (Exception e) {e.printStackTrace();}finally {try {if (os ! null) {os.close();}} catch (IOException e) {e.printStackTrace();} // srcFile.delete();}}三、如何定制开机logo 需要几个文件在linux下编译 vendor/mediatek/proprietary/bootable/bootloader/lk/dev/logo/tool/bmp_to_raw vendor/mediatek/proprietary/bootable/bootloader/lk/dev/logo/tool/zpipe vendor/mediatek/proprietary/bootable/bootloader/lk/dev/logo/img_hdr_logo.cfg vendor/mediatek/proprietary/bootable/bootloader/lk/scripts/mkimage 然后复制一下logo.bin编译的脚本修改成make_logo.sh文件 如下 #!/bin/bashif [ $1 ]; thenecho Please input BOOT_LOGO name,echo xunyeexit fiBASELOGO$1 BOOT_LOGO_RESOURCEboot_logo.raw echo BASELOGO${BASELOGO}# step 1 make hdplus1560_uboot.raw hdplus1560_kernel.raw echo step 1 bmp_to_raw make uboot and kernel raw #./bmp_to_raw ./${BASELOGO}/${BASELOGO}_kernel.raw logo.bmp #./bmp_to_raw ./${BASELOGO}/${BASELOGO}_uboot.raw logo.bmp./bmp_to_raw ./temp0.raw ./${BASELOGO}/${BASELOGO}_uboot.bmp ./bmp_to_raw ./temp1.raw ./${BASELOGO}/${BASELOGO}_battery.bmp ./bmp_to_raw ./temp2.raw ./${BASELOGO}/${BASELOGO}_low_battery.bmp ./bmp_to_raw ./temp3.raw ./${BASELOGO}/${BASELOGO}_charger_ov.bmp ./bmp_to_raw ./temp4.raw ./${BASELOGO}/${BASELOGO}_num_0.bmp ./bmp_to_raw ./temp5.raw ./${BASELOGO}/${BASELOGO}_num_1.bmp ./bmp_to_raw ./temp6.raw ./${BASELOGO}/${BASELOGO}_num_2.bmp ./bmp_to_raw ./temp7.raw ./${BASELOGO}/${BASELOGO}_num_3.bmp ./bmp_to_raw ./temp8.raw ./${BASELOGO}/${BASELOGO}_num_4.bmp ./bmp_to_raw ./temp9.raw ./${BASELOGO}/${BASELOGO}_num_5.bmp ./bmp_to_raw ./temp10.raw ./${BASELOGO}/${BASELOGO}_num_6.bmp ./bmp_to_raw ./temp11.raw ./${BASELOGO}/${BASELOGO}_num_7.bmp ./bmp_to_raw ./temp12.raw ./${BASELOGO}/${BASELOGO}_num_8.bmp ./bmp_to_raw ./temp13.raw ./${BASELOGO}/${BASELOGO}_num_9.bmp ./bmp_to_raw ./temp14.raw ./${BASELOGO}/${BASELOGO}_num_percent.bmp ./bmp_to_raw ./temp15.raw ./${BASELOGO}/${BASELOGO}_bat_animation_01.bmp ./bmp_to_raw ./temp16.raw ./${BASELOGO}/${BASELOGO}_bat_animation_02.bmp ./bmp_to_raw ./temp17.raw ./${BASELOGO}/${BASELOGO}_bat_animation_03.bmp ./bmp_to_raw ./temp18.raw ./${BASELOGO}/${BASELOGO}_bat_animation_04.bmp ./bmp_to_raw ./temp19.raw ./${BASELOGO}/${BASELOGO}_bat_animation_05.bmp ./bmp_to_raw ./temp20.raw ./${BASELOGO}/${BASELOGO}_bat_animation_06.bmp ./bmp_to_raw ./temp21.raw ./${BASELOGO}/${BASELOGO}_bat_animation_07.bmp ./bmp_to_raw ./temp22.raw ./${BASELOGO}/${BASELOGO}_bat_animation_08.bmp ./bmp_to_raw ./temp23.raw ./${BASELOGO}/${BASELOGO}_bat_animation_09.bmp ./bmp_to_raw ./temp24.raw ./${BASELOGO}/${BASELOGO}_bat_animation_10.bmp ./bmp_to_raw ./temp25.raw ./${BASELOGO}/${BASELOGO}_bat_10_01.bmp ./bmp_to_raw ./temp26.raw ./${BASELOGO}/${BASELOGO}_bat_10_02.bmp ./bmp_to_raw ./temp27.raw ./${BASELOGO}/${BASELOGO}_bat_10_03.bmp ./bmp_to_raw ./temp28.raw ./${BASELOGO}/${BASELOGO}_bat_10_04.bmp ./bmp_to_raw ./temp29.raw ./${BASELOGO}/${BASELOGO}_bat_10_05.bmp ./bmp_to_raw ./temp30.raw ./${BASELOGO}/${BASELOGO}_bat_10_06.bmp ./bmp_to_raw ./temp31.raw ./${BASELOGO}/${BASELOGO}_bat_10_07.bmp ./bmp_to_raw ./temp32.raw ./${BASELOGO}/${BASELOGO}_bat_10_08.bmp ./bmp_to_raw ./temp33.raw ./${BASELOGO}/${BASELOGO}_bat_10_09.bmp ./bmp_to_raw ./temp34.raw ./${BASELOGO}/${BASELOGO}_bat_10_10.bmp ./bmp_to_raw ./temp35.raw ./${BASELOGO}/${BASELOGO}_bat_bg.bmp ./bmp_to_raw ./temp36.raw ./${BASELOGO}/${BASELOGO}_bat_img.bmp ./bmp_to_raw ./temp37.raw ./${BASELOGO}/${BASELOGO}_bat_100.bmp ./bmp_to_raw ./temp38.raw ./${BASELOGO}/${BASELOGO}_kernel.bmp ./bmp_to_raw ./temp39.raw ./${BASELOGO}/${BASELOGO}_uboot_clife.bmp ./bmp_to_raw ./temp40.raw ./${BASELOGO}/${BASELOGO}_kernel_clife.bmp echo done# step 2 zpipe all raw to boot_logo.raw echo step 2 zpipe all raws get ${BASELOGO}.raw #./zpipe -l 9 ${BOOT_LOGO_RESOURCE} ./${BASELOGO}/${BASELOGO}_uboot.raw ./${BASELOGO}/${BASELOGO}_uboot_clife.raw ./${BASELOGO}/${BASELOGO}_battery.raw ./${BASELOGO}/${BASELOGO}_low_battery.raw ./${BASELOGO}/${BASELOGO}_charger_ov.raw ./${BASELOGO}/${BASELOGO}_num_0.raw ./${BASELOGO}/${BASELOGO}_num_1.raw ./${BASELOGO}/${BASELOGO}_num_2.raw ./${BASELOGO}/${BASELOGO}_num_3.raw ./${BASELOGO}/${BASELOGO}_num_4.raw ./${BASELOGO}/${BASELOGO}_num_5.raw ./${BASELOGO}/${BASELOGO}_num_6.raw ./${BASELOGO}/${BASELOGO}_num_7.raw ./${BASELOGO}/${BASELOGO}_num_8.raw ./${BASELOGO}/${BASELOGO}_num_9.raw ./${BASELOGO}/${BASELOGO}_num_percent.raw ./${BASELOGO}/${BASELOGO}_bat_animation_01.raw ./${BASELOGO}/${BASELOGO}_bat_animation_02.raw ./${BASELOGO}/${BASELOGO}_bat_animation_03.raw ./${BASELOGO}/${BASELOGO}_bat_animation_04.raw ./${BASELOGO}/${BASELOGO}_bat_animation_05.raw ./${BASELOGO}/${BASELOGO}_bat_animation_06.raw ./${BASELOGO}/${BASELOGO}_bat_animation_07.raw ./${BASELOGO}/${BASELOGO}_bat_animation_08.raw ./${BASELOGO}/${BASELOGO}_bat_animation_09.raw ./${BASELOGO}/${BASELOGO}_bat_animation_10.raw ./${BASELOGO}/${BASELOGO}_bat_10_01.raw ./${BASELOGO}/${BASELOGO}_bat_10_02.raw ./${BASELOGO}/${BASELOGO}_bat_10_03.raw ./${BASELOGO}/${BASELOGO}_bat_10_04.raw ./${BASELOGO}/${BASELOGO}_bat_10_05.raw ./${BASELOGO}/${BASELOGO}_bat_10_06.raw ./${BASELOGO}/${BASELOGO}_bat_10_07.raw ./${BASELOGO}/${BASELOGO}_bat_10_08.raw ./${BASELOGO}/${BASELOGO}_bat_10_09.raw ./${BASELOGO}/${BASELOGO}_bat_10_10.raw ./${BASELOGO}/${BASELOGO}_bat_bg.raw ./${BASELOGO}/${BASELOGO}_bat_img.raw ./${BASELOGO}/${BASELOGO}_bat_100.raw ./${BASELOGO}/${BASELOGO}_kernel.raw ./${BASELOGO}/${BASELOGO}_kernel_clife.raw ./zpipe -l 9 ${BOOT_LOGO_RESOURCE} temp0.raw temp1.raw temp2.raw temp3.raw temp4.raw temp5.raw temp6.raw temp7.raw temp8.raw temp9.raw temp10.raw temp11.raw temp12.raw temp13.raw temp14.raw temp15.raw temp16.raw temp17.raw temp18.raw temp19.raw temp20.raw temp21.raw temp22.raw temp23.raw temp24.raw temp25.raw temp26.raw temp27.raw temp28.raw temp29.raw temp30.raw temp31.raw temp32.raw temp33.raw temp34.raw temp35.raw temp36.raw temp37.raw temp38.raw temp39.raw temp40.raw rm -rf ./temp0.raw ./temp1.raw ./temp2.raw ./temp3.raw ./temp4.raw ./temp5.raw ./temp6.raw ./temp7.raw ./temp8.raw ./temp9.raw ./temp10.raw ./temp11.raw ./temp12.raw ./temp13.raw ./temp14.raw ./temp15.raw ./temp16.raw ./temp17.raw ./temp18.raw ./temp19.raw ./temp20.raw ./temp21.raw ./temp22.raw ./temp23.raw ./temp24.raw ./temp25.raw ./temp26.raw ./temp27.raw ./temp28.raw ./temp29.raw ./temp30.raw ./temp31.raw ./temp32.raw ./temp33.raw ./temp34.raw ./temp35.raw ./temp36.raw ./temp37.raw ./temp38.raw ./temp39.raw ./temp40.raw ./bootlogo.raw echo conversion finishedecho done# step 3 make logo.bin echo step 3 make logo.bin ./mkimage ${BOOT_LOGO_RESOURCE} img_hdr_logo.cfg logo.bin echo alldonerm ${BOOT_LOGO_RESOURCE} -rf 编译的时候替换xunye文件夹中的xxxxxx_uboot.bmpxxxxxx_kernel.bmp两个文件即logo图片 ./make_logo.sh xunye就行生成的logo.bin放入sd卡中替换 总结 logo.bin没有修改动态修改logo.bin只是修改了系统app对logo分区的修改权限 开机动画与开机音乐是加入到新分区中的然后对新分区修改SE权限和读写权限让系统APP能够修改同时该分区不随OTA升级所以用户即使替换了升级之后也没有变化
http://www.dnsts.com.cn/news/121399.html

相关文章:

  • 重庆网站建设子沃科技公司杭州品牌设计公司
  • wordpress企业站源码新手如何建立网站
  • 电子商务平台有哪些主要功能seo网站诊断优化流程
  • 网站上传教程做个网站商场需要多少
  • 网站控制面板 地址黄冈网站建设有哪些
  • 网站建设的语言与工具网站 建设网站
  • 眉山市网站建设百度竞价推广是什么意思
  • 安徽股票配资网站建设网站怎样做seo推广
  • 做网站 分类搜索站长之家网站介绍
  • 开通网站申请书姑苏区最新通告
  • 家具网站开发设计任务书与执行方案网页源码在线查看
  • 团购网站案例最新网页游戏公益服
  • 优秀网站设计分析深圳住建局官网查询系统
  • 固安网站建设给网站做游戏视频怎么赚钱
  • 南阳微网站制作网站主机免备案
  • 微信版网站开发网站的发展历史
  • 做公众号选择图片的网站凡客诚品官网商城首页
  • 大型flash网站面试网站建设需要的简历
  • 企业网站多少钱惠安网站建设报价
  • 网站正在建设中 色车载cms是什么意思
  • 网站开发的目的以下属于购物搜索广告的是
  • 海尔网站建设水平乐清网吧什么时候恢复营业
  • 营销外贸网站建设手机门户网站源码
  • 代搭建网站做网页去哪些网站找素材较好
  • 上海网站备案管理中心外贸网网站建设
  • 如何建设网站app新浪舆情通官网
  • 佛山做网站yunzhanfs网页设计与网站建设案例课堂
  • 电商网站设计公司可找亿企邦免费代加工项目合作
  • 网站做百科百度推广账号
  • 郑州网站建设技术外包不备案 国内网站吗