1 Star 0 Fork 344

tgw / awtk

forked from zlgopen / awtk 
加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
克隆/下载
awtk_main.md 1.76 KB
一键复制 编辑 原始数据 按行查看 历史
xianjimli 提交于 2020-03-13 07:54 . improve awtk_main.inc

AWTK 应用程序的入口

一、背景

虽然 main 函数是 C 语言的标准入口,但是不同平台的入口函数仍然有多种不同的形式。比如:

  • 嵌入式系统用 gui_app_start
  • ios/android 用 SDL_main
  • Linux/MacOS 用 main
  • Windows 用 wWinMain

如果希望开发的程序要在多个平台上运行,就需要处理多种入口函数。为了简化这个过程,AWTK 把入口函数的处理封装到 awtk_main.inc 中,开发者只需要 include 进来即可。

二、基本用法

  • 实现 application_init 函数
ret_t application_init() {
  /*do sth.*/
  return RET_OK;
}
  • 实现 application_exit 函数
ret_t application_exit() {
  log_debug("application_exit\n");
  return RET_OK;
}
  • 包含 awtk_main.inc
#include "awtk_main.inc"

请参考完整的例子

三、高级用法

  • 指定APP TYPE和窗口大小
#define LCD_WIDTH 800
#define LCD_HEGHT 600
#define AWTK_APP_TYPE APP_DESKTOP

#include "awtk_main.inc"

请参考完整的例子

  • 处理命令行参数
static ret_t on_cmd_line(int argc, char* argv[]) {
  script_file = argc == 2 ? argv[1] : "./demos/demoui.js";

  return RET_OK;
}

#define ON_CMD_LINE on_cmd_line

#include "awtk_main.inc"

请参考完整的例子

  • 指定应用程序的名称

#define APP_NAME "AWTK-JS"

#include "awtk_main.inc"
  • 指定缺省字体

#define APP_DEFAULT_FONT "default_full"

#include "awtk_main.inc"

请参考完整的例子

马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
C
1
https://gitee.com/tuguiwang/awtk.git
git@gitee.com:tuguiwang/awtk.git
tuguiwang
awtk
awtk
master

搜索帮助

344bd9b3 5694891 D2dac590 5694891