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

Android 取消充电动画logo,直接显示图片即可

删除充电动画逻辑,直接设置显示图片logo:hvga_low_battery.bmp
vendor/mediatek/proprietary/external/libshowlogo/charging_animation.cpp
void show_battery_capacity(unsigned int capacity)
{
    anim_show_logo(LOW_BATTERY_INDEX);//*/rm animation add set low battery logo
    /*if (MTK_LOG_ENABLE == 1) {
        SLOGD("[libshowlogo: %s %d]capacity =%d\n",__FUNCTION__,__LINE__, capacity);
    }
    int has_fast_charging = getValue("ro.vendor.mtk_pump_express_plus_support" , "0" );
    if (draw_anim_mode == (DRAW_ANIM_MODE_FB)) {
        anim_fb_addr_switch();    
if( has_fast_charging == 1) {
        if (2 != show_animationm_ver && get_fast_charging_state()) {
            fill_animation_battery_by_ver(capacity, (void *)outBuffer.bits, dec_logo_addr, logo_addr, phical_screen, show_animationm_ver);
        } else {
            fill_animation_battery_by_ver(capacity, (void *)fb_addr, dec_logo_addr, logo_addr, phical_screen, show_animationm_ver);
        }
}
else {
        fill_animation_battery_by_ver(capacity, (void *)fb_addr, dec_logo_addr, logo_addr, phical_screen, show_animationm_ver);
}
        anim_fb_disp_update();
    } else {
        ARect tmpRect;
        tmpRect.left = 0;
        tmpRect.top = 0;
        tmpRect.right = phical_screen.width;
        tmpRect.bottom = phical_screen.height;

        status_t  lockResult = surface->lock(&outBuffer, &tmpRect);
        if (MTK_LOG_ENABLE == 1) {
            SLOGD("[libshowlogo: %s %d]outBuffer.bits = %d, surface->lock return =  0x%08x,\n",__FUNCTION__,__LINE__, (int)outBuffer.bits,lockResult);
        }

        if (0 == lockResult)
        {
if(has_fast_charging == 1) {
            if (2 != show_animationm_ver && get_fast_charging_state()) {
                fill_animation_battery_by_ver(capacity, (void *)outBuffer.bits, dec_logo_addr, logo_addr, phical_screen, show_animationm_ver);
            } else {
                fill_animation_battery_by_ver(capacity, (void *)outBuffer.bits, dec_logo_addr, logo_addr, phical_screen, show_animationm_ver);
            }
} else { 
            fill_animation_battery_by_ver(capacity, (void *)outBuffer.bits, dec_logo_addr, logo_addr, phical_screen, show_animationm_ver);
}
            surface->unlockAndPost();
        }
    }*/
}
 


http://www.kler.cn/news/356908.html

相关文章:

  • linux线程 | 全面理解同步与互斥 | 同步
  • python+docxtpl:word文件模版渲染
  • 近期股市热潮,现有架构模块下金融交易系统如何应对“冲击”?优化思路如下
  • package.json 里的 dependencies和devDependencies区别
  • C++游戏开发:从零开始构建一个简单的2D平台游戏《跳跃冒险》
  • 从头预训练一只迷你 LLaMA 3_llama3 预训练预处理
  • apifox发送请求,参数类型为枚举类
  • 力扣——环形链表(链表)C语言
  • 浏览器无法安全下载文件怎么解决
  • 使用 JAX 进行 LLM 分布式监督微调
  • 力扣 中等 19.删除链表的倒数第N个结点
  • 深入解析缓存技术
  • leetcode36:有效的数独
  • STM32学习笔记---独立看门狗
  • 【二刷hot-100】day 3
  • Python中的SQLAlchemy:解锁数据库操作的新世界
  • 8年测试工程师 —— 如何使用Playwright优化测试性能!
  • 一起搭WPF架构之livechart的MVVM使用介绍
  • VTK的学习方法-第二类型应用
  • 【Git】常用Git命令