近日比较寂寞,公司的开发任务也比较轻松。于是向同学低价买了台2手魅族M8玩玩,初次接触惊叹于M8惊艳的电容触摸屏,感觉比Iphone的还好点,这就激起了我对研究这款机器的兴趣。下面就是我这几天研究的心得。

根据M8的SDK帮助文档描述,安装完Meizu M8 Application Wizard后可以在VS2005和VS2008中新建工程文件,顺序VC++ -> Meizu M8 Device MZFC App,但是我发现这样会创建工程文件失败。用尽各种GOOGLE来的方法都没效果,但是笔者发现Sample中的例子都能正常运行。

于是笔者发现只有以下唯一一种办法能新建立工程: VC++ -> 智能设备 -> 选择M8SDK 创建新工程,然后将新工程中的CPP内容清除,将Sample中Hello World的CPP内容copy过来,OK 运行正常。

关于M8模拟器/仿真器 显示过大的问题,因为M8真机的屏幕分辨率相当高,而PC上的仿真器分辨率和真机一样,但是我们PC上常用的分辨率(1024*768)比M8的要低,于是要将PC分辨率调整到1280*960才能正好完美显示魅族M8的仿真器。

如下图所示:

魅族M8所提供的SDK中的文件来看,M8对开发者操作底层的东西还是提供了很多支持,甚至感觉开放了些不该开放的内容,利用这些完全可以做邪恶的东西。

M8的库文件中有,d3dm.lib,d3dmx.lib,ddraw.lib 这3个支持DirectX的库文件,比正常的WM DirectX 少了对纹理支持及D3DM数学应用的库文件,  也没有相应的H文件支持。但是对3D操作上面,M8提供了对OPENGL ES的支持,但是这东西貌似不是通过硬件加速来渲染3D。  可能是DX3D的硬件开发成本比较高,技术上比较难搞定,M8虽然保留了DX3D的接口,但是并不提供相应的API,相对来说OPENGL ES是个不错的替代品(OPENGL ES,M8应该是采用三星CPU做硬件加速渲染,复杂的3D Mesh肯定会导致游戏卡死)。还没测试GAPI是否能在M8上面使用。

M8的程序结构并不是WinCE的标准结构,封装了很多基本的程序,省去了很多不必要的麻烦,程序精简干练了很多。个人感觉,M8的程序结构和用法更类似于J2ME。M8很多东西属于高度封装的,建议多参考SDK,个人感觉M8的SDK 比 MS的好多了。

建立简单的程序如下面2步:(摘入自M8SDK)

1. 从CMzWndEx派生一个新的窗口类(通常是程序的主窗口),重载 CMzWndEx::OnInitDialog() 并在其中初始化窗口中的控件。

2. 从CMzApp派生一个新的应用程序类(例如class MyApp: public CMzApp{...};), 并定义它的一个全局变量(例如 MyApp theApp;),重载 CMzApp::Init()成员函数并在其中创建并显示应用程序的窗口。

M8的控件使用简单来说分为以下几步: 注册控件(有些控件不需要) -> 设置控件属性 -> 添加控件到界面。

M8的控件响应操作(以按钮为例):

重载该方法 virtual void OnMzCommand(WPARAM wParam, LPARAM lParam) ---> 根据消息机制写相应的代码。

M8提供了Sqlite轻量型数据库的支持。类库也很丰富,对于熟悉VC++的人来说开发不是很困难。

M8的SDK目前不支持.net CF, 但是PPC的.net CF程序,可以运行在M8上面(或者通过LBE游戏助手的帮助)。

不要梦想WM的3D程序能很快的移植到M8上来,那是短期内不可能实现的。我试图移植1个以前用.net开发的2D连连看(WM 6),没有成功。

欢迎大家没事来我网站转转www.j2megame.com 仅提供技术资料~!~

魅族M8开发初识及一点思考相关推荐

  1. 魅族m8开发 step by step(1)(让程序跑起来)

    nokia 5800被偷,正好上段时间在学c++,看别人买了m8还可以,就下决心买了一个.m8虽然没iPhone强大,但在国内很受大家欢迎,目前国内的也就m8做的还比较像样.看sample,写个学习笔 ...

  2. 软件开发项目管理的一点思考

    项目管理的软件真的很多,基于SaaS的,基于Proprietary的,当然还有Open Source的,如下链接有完整的比较: http://en.wikipedia.org/wiki/Compari ...

  3. 我对软件开发的一点思考

    但凡是搞IT的 对软件架构.设计模式.XP编程(极限编程)或是敏捷开发.代码重构 这些软件开发的思想或方法都不陌生 但是它们之间究竟有什么联系??? 在实际的开发过程应该如何做??? 才能构建一个好的 ...

  4. 对软件项目开发的一点思考

    今天看到同事写的一些思考,感觉还不错,真的是通过这个项目让他成长起来了. 目录 I 1 引言 1 2 概念 1 3 国内软件项目角色分析 1 4 国内项目的一般性问题 2 5 客户与项目组对需求的认知 ...

  5. 为魅族M8手机开发的围棋打谱软件(M8WeiqiPu)发布0.1版

    M8围棋谱(M8WeiqiPu) v0.1 为魅族M8手机开发的围棋打谱软件,还在开发过程中,目前功能不全,但基本功能可用.现在仅支持SGF格式的围棋棋谱. 可到魅族官方论坛下载:http://bbs ...

  6. 为魅族M8手机开发的围棋打谱软件(M8WeiqiPu)发布0.8版,多图

    <M8围棋谱>v0.8,是我(liigo)为魅族M8手机开发的围棋打谱软件,还在开发过程中,目前功能不全,但基本功能可用. 基本功能:打开并解析SGF棋谱,单步向前向后,落子音效,自动提子 ...

  7. 为魅族M8手机开发软件《M8空中警报》(M8AirAlarm) ,已开源

    <M8空中警报>(M8AirAlarm) v1.0 作者:liigo, 2009/5, http://blog.csdn.net/liigo 当您的魅族M8手机不慎跌落时,本软件将在M8落 ...

  8. 一个 iPod touch 用户的魅族 M8 使用体验

    一个 iPod touch 用户的魅族 M8 使用体验 新闻来源:apple4.us 或许大多数「苹果真理教」教徒都很难理解,一个已经拥有二代 iPod touch 的用户怎么会去买一台魅族 M8 这 ...

  9. 国产手机寒冬?魅族M8,步步高OPPO或面临大考

    故事: 魅族要做手机的消息,早在两年前就"泄密"了,魅族甚至连"儿子"的名字都取好了,叫M8,几乎和iPhone同步"曝光",但也仅仅是&q ...

最新文章

  1. The Android Gradle plugin supports only Kotlin Gradle plugin version 1.3.0 and higher.
  2. mysql数据库对时间的函数吗_mysql 数据库 时间函数
  3. Bootstrap 的辅助类
  4. numeric库函数——accumulate函数
  5. PPT教程 从入门到实践
  6. [9i]多练扎马步,预防膝盖疼痛
  7. BZOJ3168. [HEOI2013]钙铁锌硒维生素(线性代数+二分图匹配)
  8. 【2-SAT初学+模板题讲解】POJ3683 Priest John's Busiest Day
  9. prometheus告警
  10. win10 wmware 花屏_用了N年浑不知!原来Win10竟有这么多隐藏功能
  11. 京东数科一面实习面经
  12. 系统分析师资料_自学该如何备战系统分析师考试?
  13. 宿州可以学中专计算机的学校有哪些,宿州中专学校排名榜,有哪些专业
  14. 【蓝桥杯选拔赛真题02】Scratch守护之盾 少儿编程scratch蓝桥杯选拔赛真题讲解
  15. 三代笔记本CPU 正式版代号(升级联想K29笔记本)
  16. 从程序员的角度,来拆解物联网系统中的开发工作
  17. PopStar(消灭星星)游戏源代码下载、分析及跨平台移植---第二篇(算法)
  18. C++ 实现输出 n个不重复整数任取m个数的所有组合(附C语言实现)
  19. DM8达梦数据库物理备份方法详细
  20. 如何搭建个人博客平台

热门文章

  1. python基于php+MySQL的网络精品课程教学平台
  2. SpringBoot中使用themeleaf
  3. 对求解最大公约数算法的一些思考
  4. ubuntu 下 gvim的字符间距设置
  5. 洛谷P4703 偷上网
  6. opencv删除小连通区域(轮廓)---iplImage版本
  7. Oracle 中关于差异增量备份与累积增量备份原理与区别
  8. 计算机编码 - 更易懂的打开方式
  9. C++中虚析构函数的作用及其原理分析
  10. excel中如何动态地创建控件以显示查询结果_年终汇报,Excel图表真难搞?80份可视化图表帮你10秒搞定...