一、编译apk源码后,点击OUTPUT IMAGE,apk闪退
未依赖libcompute_color-jni.so库和libsave_baseparameter_util.so库
解决办法
进入apk源码jni文件夹,mm -B编译生成so库
二、调节好参数后OUTPUT IMAGE fail
这种情况是没找到baseparameter分区,路径/dev/block/platform/ff0f0000.dwmmc/by-name/baseparameter
解决办法
1.确定在/device/rockchip/rk3288/init.rk3288.rc中添加了baseparameter分区信息
# baseparameter
chown system system /dev/block/by-name/baseparameter
chmod 0660 /dev/block/by-name/baseparameter
chown system system /dev/block/platform/ff0f0000.dwmmc/by-name/baseparameter
chmod 0660 /dev/block/platform/ff0f0000.dwmmc/by-name/baseparameter
chown system system /dev/block/mmcblk1p4
chmod 0660 /dev/block/mmcblk1p4
2.修改/device/rockchip/rk3288/parameter.txt中的CMDLINE
我修改了之后,发现这个parameter.txt是拷贝过来的,拷贝路径是/device/rockchip/common/BoardConfig.mk,具体如下:
ifeq ($(strip $(BOARD_BASEPARAMETER_SUPPORT)), true)
TARGET_RECOVERY_OVERSCAN_PERCENT := 2
TARGET_BASE_PARAMETER_IMAGE ?= device/rockchip/common/baseparameter/baseparameter_fb1080.img
PRODUCT_PACKAGES += saveBaseParameter
ifeq ($(strip $(TARGET_BOARD_PLATFORM)),rk3399)
LOCAL_POST_PROCESS_COMMAND :=$(shell cp -a device/rockchip/common/parameter_have_baseparameter.txt device/rockchip/rk3399/rk3399_all/parameter.txt)
TARGET_BASE_PARAMETER_IMAGE := device/rockchip/common/baseparameter/baseparameter_fb1080_3399_all.img
endif
ifeq ($(strip $(TARGET_BOARD_PLATFORM)),rk3288)
LOCAL_POST_PROCESS_COMMAND :=$(shell cp -a device/rockchip/common/parameter_have_baseparameter_3288.txt device/rockchip/rk3288/parameter.txt)
endif
else
# use the parameter in device/rockchip/rk3399/rk3399_all/
# ifeq ($(strip $(TARGET_BOARD_PLATFORM)),rk3399)
# LOCAL_POST_PROCESS_COMMAND :=$(shell cp -a device/rockchip/common/parameter_no_baseparameter.txt device/rockchip/rk3399/rk3399_all/parameter.txt)
# endif
ifeq ($(strip $(TARGET_BOARD_PLATFORM)),rk3288)
LOCAL_POST_PROCESS_COMMAND :=$(shell cp -a device/rockchip/common/parameter_no_baseparameter_3288.txt device/rockchip/rk3288/parameter.txt)
endif
endif
3.修改/device/rockchip/rk3288/recovery.emmc.fstab,增加信息
/dev/block/platform/ff0f0000.dwmmc/by-name/baseparameter /baseparameter emmc defaults defaults
4.生成节点文件后,要给定/dev/block/platform/ff0f0000.dwmmc/by-name/baseparameter可执行权限,/device/rockchip/common/ueventd.rockchip.rc
#for baseparameter function
/dev/block/platform/ff0f0000.dwmmc/by-name/baseparameter 0660 system system
最后点击OUTPUT IMAGE,成功生成/sdcard/baseparameter.img
三、将该baseparameter.img打包到升级固件中
/device/rockchip/common/BoardConfig.mk
/device/rockchip/rk3288/BoardConfig.mk
TARGET_BASE_PARAMETER_IMAGE := device/rockchip/common/baseparameter/baseparameter_fb1080.img
将sdcard/baseparameter.img生成的固件替换成该目录相应文件名,全编译打包就行了