INONE应用开发简介
1. 应用架构介绍
Inone应用层架构目录结构如下,用户需重点关注备注用户层代码部分。
--ProjectX
-native
-include (头文件)
-inonectrl (INONE控制层代码,用户无需关注)
-userctrl (用户层控制层代码,用户重点关注部分,涉及界面跳转控制和数据处理)
-projectx.cpp (用户层全局接口控制函数文件)
-projectx.h (用户层全局接口头文件,便于包含其它自定义头文件)
-main.cpp (用户层主页面接口控制函数文件)
-xxpage.cpp (用户层xxpage页面接口控制函数文件)
-... (用户层其它页面接口控制函数文件)
-Makefile (程序Makefile文件)
-out (成果和中间文件输出目录)
-objs (代码编译.o文件输出目录)
-projectx.res (projectx项目资源包文件)
-libprojectx.so (projectx项目控制代码库文件)
-resource (项目资源文件,包含UI和图片等信息)
-assets (资源类文件)
-drawable (图片资源文件目录)
-i18n (多语言字符目录)
-layout (PC端页面布局编辑文件)
-main.ino (PC端主页面布局编辑文件)
-xxpage.ino (PC端xxpage页面布局编辑文件)
-... (PC端其它页面布局编辑文件)
2. 用户层代码结构讲解
Inone应用层代码结构类Android应用层模型,下面为Inone应用层页面的生命周期:
OnPageCreate()--页面创建回调函数,此函数仅在页面第一次创建的时候被调用,所以在此部分可进行数据初始化创建动作;
OnPageStart()--页面开始回调函数,此函数在页面数据初始化完成后被调用且开始显示页面内容,代表在这之后可以进行用户逻辑操作,所以在此部分可进行变量和动作开始控制;
RUNNING--代表运行用户的业务逻辑代码,这时候页面层的事件回调函数会被调用
OnPageTimer【用户定时器回调函数】
OnPageTouchEvent【触摸事件回调函数】
OnPageKeyEvent【实体按键事件回调函数】
XXX_OnClick【XXX控件的点击事件回调函数】
XXX_OnLongClick【XXX控件的长按事件回调函数】
XXX_xxx【XXX控件的其它事件回调函数】
OnPageStop()--页面停止回调函数,此函数在页面被交换到后台被调用且页面停止显示页面内容,代表在这之后停止进行用户逻辑操作,所以在此部分可进行变量和动作停止控制;
OnPageDestroy()--页面销毁回调函数,此函数仅在页面被销毁的时候被调用,所以在此部分可进行数据销毁和保存动作;
3. 启动页面
启动应用接口函数为InoLaunchActivity(strAppName,iPageId);
strAppName :"应用名称"
iPageId :"应用内页面ID",如不传此参数,启动应用默认页面【main.ino】;
第一次启动页面会从OnPageCreate开始,如页面未销毁情况下,第二次再启动此页面仅从OnPageStart开始。
4. 消息传递
发送消息:InoPostMessage(iMsg, wParam, lParam, hWnd);
iMsg : "消息ID,自定义消息MSG_USER递增,如#define A (MSG_USER+x)"
wParam : 可以传自定义参数
lParam : 可以传自定义参数
hWnd : 接收对象,默认为NULL传递给ActivityManage