• imx6 android 进入文件系统闪屏


    imx6进入文件系统的时候都会闪屏,应该是framebuffer未初始化,就已经打开了背光。目前解决办法,在kenel阶段关闭背光,显示android的开机动画之后(此时framebuffer已经初始化),再打开背光,这样就看不到闪屏现象,而动画持续时间比较长,所以也能看到开机动画。

    参考链接

      http://www.iloveandroid.net/2015/09/24/Android_init_1/

      http://blog.csdn.net/andrewblog/article/details/17122303

    文件分析

    主要修改ramdisk的init.rc文件,将开机动画的操作进行更改。大致分析记录如下,并附上更改的内容。

    import /init.usb.rc     # 导入其他脚本文件 
    import /init.${ro.hardware}.rc
    import /init.trace.rc
    
    on init             # 初始化阶段 , 运行的command 
    	chmod 666 /dev/ttymxc0      # command
    	chmod 666 /dev/ttymxc1
    	chmod 666 /dev/ttymxc2
    	chmod 666 /dev/ttymxc3
    	chmod 666 /dev/ttymxc4
    	chmod 666 /dev/i2c-0
    	chmod 666 /dev/i2c-1
    	chmod 666 /dev/i2c-2
    	chmod 666 /dev/i2c-3
    	chmod 666 /dev/buzzer
    	chmod 666 /dev/mx6check
    	chmod 666 /dev/shutdown
    # 设置环境变量
    # setup the global environment
        export PATH /sbin:/vendor/bin:/system/sbin:/system/bin:/system/xbin
        export LD_LIBRARY_PATH /vendor/lib:/system/lib
        export ANDROID_BOOTLOGO 1
        export ANDROID_ROOT /system
        export ANDROID_ASSETS /system/app
        export ANDROID_DATA /data
        export ANDROID_STORAGE /storage
        ......
        
        chown system system /sys/class/leds/keyboard-backlight/brightness
        echo 122 > /sys/class/backlight/pwm-backlight.1/brightness      # 背光
        chown system system /sys/class/leds/lcd-backlight/brightness
    
    # Tony 2016-8-29
    service bootanim /system/etc/bootanimation.sh # 开启启动画面调用的脚本
        class main
        oneshot
    # 原来的bootanim注释掉
    #service bootanim /system/bin/bootanimation # 开启启动画面调用的脚本, bootanimation是一个可执行文件,直接在shell中执行,会显示开机动画。
    #    class main          # 所属类
    #    user system         # 切换用户名
    #    group graphics      # 切换组名
    #    disabled            # 服务不会自动运行,必须显式地通过start命令来启动。
    #    oneshot             # 当此服务退出时不会自动重启.
    

    自己实现的脚本,当要显示android动画时调用

    bootanimation.sh

    #!/system/bin/sh
    
    /etc/backlight.sh &      #后台运行,打开背光
    
    #android boot animation
    /system/bin/bootanimation   #显示开机动画
    

    backlight.sh

    #!/system/bin/sh
    
    sleep 1 #延时1s再背光,等framebuffer已经初始化,android已经动画已经显示,再开背光。
    
    # 开启2个LVDS的背光
    #lvds 0 backlight enable
    echo 175 > /sys/class/gpio/export
    echo out > /sys/class/gpio/gpio175/direction
    echo 1   > /sys/class/gpio/gpio175/value
    echo 175 > /sys/class/gpio/unexport
    
    #lvds 0 backlight enable
    echo 176 > /sys/class/gpio/export
    echo out > /sys/class/gpio/gpio176/direction
    echo 1   > /sys/class/gpio/gpio176/value
    echo 176 > /sys/class/gpio/unexport
    

    Author

    Tony Liu

    2016-8-29

  • 相关阅读:
    练习四十:数组逆向输出
    练习三十九:数组插入排序
    Java awt组件间的继承关系
    java ArrayList
    java Scanner中的hasNext()方法
    java中String对象的存储位置
    java初始化块执行顺序
    java二维数组
    java数组变量
    Java数组初始
  • 原文地址:https://www.cnblogs.com/helloworldtoyou/p/5819649.html
Copyright © 2020-2023  润新知