胖码哥软件工作室是一个IT个体户,胖码哥使用C++/Qt/Node.js/MySql/SQLite/CMake等技术可以解决一切应用问题。胖码哥专注桌面应用(Windows/Linux)和手机APP(Android和iOS)开发。为企业提供跨平台的复杂界面应用服务,为个人提供小型应用整体解决方案,为有想法的个人提供手机游戏开发服务。

项目简介

这是一个低保真原型手机应用,该应用已经实现显示公司网站/Web应用,提供手机客户端上传文件、手机实时定位显示人员当前位置,以及接收公司指定通知消息的通用框架程序功能。使用QML实现界面编程,C++实现底层业务逻辑的混合编程方式:QML的WebView控件实现H5网站/应用嵌套,C++代码实现文件上传;QML调用百度地图API,C++实现GPS定位;QML实现安卓 通知消息列表,C++实现底层调用安卓通知功能。只需要客户公司提供经过H5手机适配的网站域名、指定美术素材就可以快速定制开发的产品。

为什么手机APP内嵌H5网站?

使用定制APP直接打开公司官网,并且还附加了其它管理功能:上传文件、定位员工当前位置,以及接收公司专门通知消息。提高公司公司形象和管理手段,以及提高公司与员式之间的业务流程沟通效率。

  • 内嵌手机浏览器定制显示公司网站/Web应用
  • 使用桌面的百度地图API实时定位当前位置
  • 定制专门的公司手机通知格式消息,方便管理

程序框架说明

整个系统就是以QML模块为主实现的项目,C++代码只是辅助实现底层的业务逻辑。整个项目使用CMake(实事上的C++标准构建工具)对项目进行分模块构建、编译。

ApplicationWindow控件实现自定义浏览器界面效果,WebView控件实现网站内容呈现。

编写C++类继承QQmlPropertyValueSource类,自定义文件上传信号和槽函数,实现自定义QML的文件上传控件的自由使用

使用Qt的Positioning模块库,C++代码实现当前手机卫星实时定位经纬度,然后传给PC版本的百度地图API调用,实现当前手机的卫星定位效果

C++代码通过JNI编程呼叫Java代码调用Android系统通知服务,返回通知结果给C++代码,然后编写C++类继承QAbstractListModel类,把通知结果封装成QML数据源组件,供ListView控件显示通知消息内容