mre应用和Native的交互之消息传递
现在以mtk 50_11BW1224_FTE的版本为基础,实现在主菜单进入短信服务时,便启动mre应用test.vxp,然后向其发送MESSAGE_ENTRY消息。test.vxp接收到MESSAGE_ENTRY,然后输出”进入短息服务“到屏幕上。
1、找到\plutommi\mmi\UnifiedMessage\UnifiedMessageSrc\uminterface.c 里面的void mmi_um_entry_main_message_menu(void)函数,这个函数就是进入短信服务界面的入口点了,这里修改mmi_um_entry_main_message_menu成如下,
#include "TimerEvents.h"
#include "vmpromng.h"
#include "Conversions.h"
#include "vmappcomm_sdk.h"
#include "vmio.h"//自定义消息值
#define MESSAGE_ENTRY 210static void mmi_send_msg_timer_func(void)
{U8* filepath = "E:\\mre\\test.vxp";U16 w_filepath[256] = {0};S32 mre_app_handle = 0;mmi_chset_convert(MMI_CHSET_GB2312, MMI_CHSET_UCS2, (U8*)filepath, (U8*)w_filepath, 256);StopTimer(AVATAR_DELAY_DECODE_0);mre_app_handle = srv_mre_get_running_handle(w_filepath);if(mre_app_handle > 0){srv_mre_send_msg(mre_app_handle,MESSAGE_ENTRY, NULL, NULL); //发送消息}
}void mmi_um_entry_main_message_menu(void)
{U8* filepath = "E:\\mre\\test.vxp";//test.vxp的存放路径,这里是放在T卡mre下U16 w_filepath[256] = {0};VMFILE fd = 0;mmi_chset_convert(MMI_CHSET_GB2312, MMI_CHSET_UCS2, (U8*)filepath, (U8*)w_filepath, 256);fd = vm_file_open(w_filepath, MODE_READ, 0);vm_file_close(fd);if(fd >= 0){vm_start_app(w_filepath, GRP_ID_ROOT, 1);//启动vxpif(mmi_sms_is_new_msg_come()){mmi_sms_set_new_msg_come(FALSE);//启动vxp是用timer启动的,而消息必须在vxp运行//起来后才能发送,故发消息也用timer延迟StartTimer(AVATAR_DELAY_DECODE_0, 500, mmi_send_msg_timer_func);}return;}
}
2、mre应用如何接受处理MESSAGE_ENTRY消息
首先要在vm_main里面为注册一个消息处理函数,下面的vm_reg_msg_proc(handle_msg);既是将handle_msg这个函数注册成为消息处理函数了。
void vm_main(void) {/* initialize layer handle */layer_hdl[0] = -1; /* register system events handler */vm_reg_sysevt_callback(handle_sysevt);/* register keyboard events handler */vm_reg_keyboard_callback(handle_keyevt);/* register pen events handler */vm_reg_pen_callback(handle_penevt);vm_reg_msg_proc(handle_msg);/* Init MRE resource */vm_res_init();
}
消息处理,在handle_msg这个函数中处理消息#define MESSAGE_ENTRY 210,这里需要保证native和mre应用中的两个消息值一致
#define MESSAGE_ENTRY 210VMINT handle_msg(VM_P_HANDLE sender, VMUINT msg_id, VMINT wparam, VMINT lparam)
{switch (msg_id){case MESSAGE_ENTRY:{VMWCHAR wstr[256] = {0};vm_gb2312_to_ucs2(wstr, 256, "进入短信服务!");draw_text(wstr);break;}}return 0;
}
转载于:https://www.cnblogs.com/WIT-Evan/archive/2012/07/19/7291486.html
mre应用和Native的交互之消息传递相关推荐
- mre应用和Native的交互之增加mre sdk接口
经常碰到mre sdk功能不够完善的情况,没有实现功能的API,这个时候怎么办呢?在mtk 的Native端(也就是CodeBase里)增加接口,扩展到mre的sdk中.下面是扩展mtk Mre sd ...
- dcloud html5 sdk,DCloud H5与Android Native的交互--5+ SDK插件开发
DCloud 5+ SDK插件开发 http://ask.dcloud.net.cn/docs/#http://ask.dcloud.net.cn/article/66 开发文档的链接 首先官方文档这 ...
- python多项式回归_如何在Python中实现多项式回归模型
python多项式回归 Let's start with an example. We want to predict the Price of a home based on the Area an ...
- Html5页面和Native App怎么进行交互
webview系列:Html5页面和Native App怎么进行交互 混合开发的App(Hybrid App)就是在一个App中内嵌一个轻量级的浏览器,一部分原生的功能改为Html5来开发,这部分功能 ...
- Native与H5交互的那些事
前言 Hybrid开发模式目前几乎每家公司都有涉及和使用,这种开发模式兼具良好的Native用户交互体验的优势与WebApp跨平台的优势,而这种模式,在Android中必然需要WebView作为载体来 ...
- c html联调,JS与native 交互简单应用
JS与native 交互简单应用 一.objectiveC 语法简介 二.简易项目浏览器搭建 新建项目步骤: 1> DraggedImage.png 2> 2222.png 3> 3 ...
- 【前端基础】Web与Native交互之The JSBridge FAQ
今天我们来简单聊一下JSBridge 为什么要聊JSBridge? 不为什么 好吧,JSBridge虽然也算比较古老了,但关于JSBridge的原理也是一个目前作为一名前端开发人员需要了解掌握的知识. ...
- 《React-Native系列》2、RN与native交互与数据传递
RN怎么与native交互的呢? 下面我们通过一个简单的Demo来实现:RN页面调起Native页面,Native页面选择电话本数据,将数据回传给RN展示. 首先是 Native侧 1.MainAct ...
- Duilib嵌入CEF以及JavaScript与C++交互
转载:http://blog.csdn.net/foruok/article/details/50573612 转载:http://blog.csdn.net/foruok/article/detai ...
最新文章
- ROI Align 在 R-FCN 中的推广:PSROI-Align(附代码)
- Kubernetes 容器编排
- idea查看方法的返回类型和自动出来变量
- 获取当前日期时间并格式化 - 常见格式
- 测试连接redis时报错redis.clients.jedis.exceptions.JedisConnectionException: Failed to create socket.
- squid via检测转发循环
- python双向索引什么意思_Python 双向链表的实现
- 打开浏览器不是主页_教你如何锁定电脑浏览器主页防止被篡改
- Profile Options In INV,PO,OM,MS/MRP
- spark 通过打散热点key解决数据倾斜问题
- 根据经纬度查询数据mysql
- 数值微积分与方程求解
- 经典搜索算法之B树与B+树
- AWS云计算题目总结
- 使用Python+Pandas+Statsmodels建立线性回归模型预测房价
- 尤雨溪告诉你为什么Vue比yox优秀
- C语言自学路之计算平方(输入验证)
- 工作了4年的JAVA程序员应该具备什么技能?
- 《为什么精英都是时间控》读书总结
- SOJ 4583 动态规划之分组背包
热门文章
- python微博自动投票_python自动投票(新手学python)
- 海康大华等网络摄像机监控视频RTSP/RTMP推流网页播放/直播无需插件低延迟解决方案研究
- app的维护成本怎么算?
- DHT11温湿度模块驱动程序
- sketch measure 导出html,Sketch measure 导出规范卡住的问题
- TDS 以及 FDS 光谱系统的成像光束
- dlt变换matlab,直接线性变换(DLT)简易程序实现
- AD7760转换原理及采集程序设计 (24位Σ-Δ型ADC)
- 新手摆摊进来看看(明确卖什么很关键)
- 使用Fireworks和Icofx制作一个ICO图标