一,编译不同界面UI
1)make menuconfig 配置不同UI;
2)在8368U.TD/application/reference_td/tdLauncher/view/Makefile中会编译不同UI
ifeq ($(CONFIG_GLB_GMNCFG_ENABLE_800_480_UI),y) TD_RESOURCE_DIR := $(RESOURCE_DIR)/resources800 endif ifeq ($(CONFIG_GLB_GMNCFG_ENABLE_1024_600_UI),y) TD_RESOURCE_DIR := $(RESOURCE_DIR)/resources1024 endif ifeq ($(CONFIG_GLB_GMNCFG_ENABLE_1280_720_UI),y) TD_RESOURCE_DIR := $(RESOURCE_DIR)/resources1280 endif
二,ULOGD输出流程
8368U.TD/application/reference_td/solingtdLauncher/middleware/framework/include/utils/clog.h
#ifdef AP_DBG
#ifdef ENABLE_APP_DEBUG
#define AP_DBG
8368U.TD/application/reference_ui/build_qtap.sh
if [ "$CONFIG_GLB_GMNCFG_APP_LOG_DEBUG_ENABLE" == "y" ]; then echo 'ENABLE_APP_DEBUG' SDKQT_CONFIG="$SDKQT_CONFIG CONFIG+=ENABLE_APP_DEBUG" else echo 'DISABLE_APP_DEBUG'
8368U.TD/application/reference_ui/Makefile
#export CONFIG_GLB_GMNCFG_APP_LOG_DEBUG_ENABLE
三,TD工具显示UI的配置
[style]
"./resources1024/style/style_media.rc"
...... [layout] #"layout_smartphone.ini" #"layout_clnormal.ini" "./resources1024/etc/media/layout_audio.ini" [list_layout] "./bt/btlist_layout.ini" "./homeview/home_usblist_layout.ini"
四,在solingtdLauncher工程下面添加资源和cpp文件的流程
(以添加gotokeyboard来说明)
1,将资源文件拷贝到对应文件下(8368U.TD/application/reference_td/solingtdLauncher/view/resources/resources1024/style/common/GOTO)
2,将要加载的对应资源写到rc文件中,然后在ini文件中可以直接调用该资源(将gotokeyboard要用到的资源写到style_common.rc中,然后在layout_keyboard.ini中就可以使用该资源)
8368U.TD/application/reference_td/solingtdLauncher/view/resources/resources1024/style/style_common.rc
button.gotokeyboard_btn_0_bg { [na] bg="./common/GOTO/goto_keyboard_0_n.png",stretch_hv3 [s] bg="./common/GOTO/goto_keyboard_0_p.png" [d] bg="./common/GOTO/goto_keyboard_0_d.png" } ......
8368U.TD/application/reference_td/solingtdLauncher/view/resources/resources1024/etc/media/layout_keyboard.ini
gotokeyboard_0_btn={
type="button"
x=155
y=293
w=130
h=60
style="gotokeyboard_btn_0_bg"
} ......
3,在config.ini中添加该资源
8368U.TD/application/reference_td/solingtdLauncher/view/resources/config.ini
theme_media={ "../style/style_topbar.rc" "../style/style_volumebar.rc" "../style/style_select.rc" "../style/style_dialog.rc" "../style/style_media.rc" "../style/style_common.rc" }
4,在代码中加载该资源
void GotoKeyboard::initView() { TwStyleSwitchTheme("theme_media"); TwLayoutParseFile(getRootTWiget(), TGetExecutePath("../etc/media/layout_keyboard.ini"));
5,在Makefile中添加gotokeyboard.cpp文件
8368U.TD/application/reference_td/solingtdLauncher/view/activitys/media/Makefile
LIBLDFLAGS += -L$(TOP)/middleware/apis/dispctrl -ldispctrlmod
LIBSRCS := mediaview/mediaview.cpp mediaview/usbactivity.cpp mediaview/usbview.cpp mediaview/smediaplaylist.cpp mediaview/gotokeyboard.cpp
五,用vscode生成的HelloWorld程序,是C语言工程,需要支持CPP。
需要在Makefile文件中加入
...... CPPFLAGS := -std=c++11 ...... LIBSRCS := src/gotokeyboard.cpp
ACTIVITY_INSTALL = \ mkdir -p $(TOP)/lib/activity; \ mkdir -p $(ACTIVITY_DESTDIR); \ mv $(TOP)/lib/$(LIBNAME).so $(TOP)/lib/activity; \ cp -avrf $(TOP)/lib/activity/$(LIBNAME).so $(ACTIVITY_DESTDIR); ACTIVITY_DEF_INSTALL = \ mkdir -p $(TOP)/lib/activity/default; \ mkdir -p $(ACTIVITY_DESTDIR)/default; \ mv $(TOP)/lib/$(LIBNAME).so $(TOP)/lib/activity/default; \ cp -avrf $(TOP)/lib/activity/default/$(LIBNAME).so $(ACTIVITY_DESTDIR)/default; ACTIVITY_DIRECT_INSTALL = \ mkdir -p $(TOP)/lib/activity/directstage; \ mkdir -p $(ACTIVITY_DESTDIR)/directstage; \ mv $(TOP)/lib/$(LIBNAME).so $(TOP)/lib/activity/directstage; \ cp -avrf $(TOP)/lib/activity/directstage/$(LIBNAME).so $(ACTIVITY_DESTDIR)/directstage;
2,查看homeiew目录的Makefile文件,发现执行ACTIVITY_DEF_INSTALL这条命令,将libhomeactivity.so文件拷贝到default目录下。
all: $(LIBNAME) make install clean: +$(ACIVITY_CLEAN) install: +$(ACTIVITY_DEF_INSTALL)
3,将Activity属性设置为LauncherActivity
HomeActivity::HomeActivity(SelfQueue* queue):BaseObject(queue) { list<string> mIconPath; mQueue = queue; spCbk.reset(new HomeLauncherEventCbk(mQueue)); mProperty.reset(new HomeProperty(\ ACTIVITY_NAME, LauncherActvity,//SourceActivity,//NormalActivity, spCbk, mIconPath, NormalPriority, AnmNormal, 0));
七,androidauto配置文件路径
application/reference_td/pubtdLauncher/view/resources/resources1024/etc/smartphoneconfig/Androidauto/androidauto_config_1024_600_UI.xml