瑞通宝项目说明(Android)
- 使用cordova 实现h5与native进行混合开发
- native为辅H5为主开发方式
- 使用CordovaPlugin扩展类进行2端的交互,通信数据结构为JSONArray
项目结构说明:
- com 目录下主要处理 android native逻辑
- plugins 处理与H5交互的页面
- bottombar 主页底部条目录
- BottomBar 底部条,视图文件通过转换布局而成,布局文件名称为:bottombar.xml
- Bottom_Item 底部条 单个选项item扩展LinearLayout 垂直布局,上为:ImageView 下为 TextView,视图文件通过转换布局文件而成,布局文件名称为:bottombar_item.xml
- webview 目录为与h5交互的文件,核心文件说明:
- Certification –信用
文件所在: plugins.webview.Fragment_WebView_Reserve- Home–生活
文件所在: plugins.webview.Fragment_WebView_HomePage- Account–我的
文件所在:plugins.webview.Fragment_WebView_Account- Message—-消息 plugins.webview.Fragment_WebView_Reserve
- Home—–首页 plugins.webview.Fragment_WebView_HomePage
- 其中底部条的ImageView 与TextView 内容 选中与普通颜色皆从服务器获取。
- 项目使用
- assets h5资源文件目录,存放项目中所有h5资源
- 插件说明
- CDVMyPlugin 项目核心交互插件。
- AlertViewPlugin h5调用本地弹窗
- LocationPlugin 定位插件
- PluginKeyBoard 键盘插件
- 加载h5/url核心文件
- Scene_WebView_Other 主裁加载url
- Scene_WebView_Root 加载本地h5文件
核心逻辑说明
- 启动页面逻辑:
1.检查版本信息,发送的是ClientUpdate.Req 请求收到响应后判断是否是最版本,如果是,则弹出升级的对话框。否则,转步骤2
2.发送获取用户须知 请求(SelUserNote.Req),
通过修改 qtpayApplication.setValue(“SelUserNote.Req”);
实现收到响应进行解析 用户须知信息,
将/WebPlugin/version.txt 与 /WebPlugin/bottom_version.txt
传送给服务器,更改qtpayApplication.setValue(“CompareLoad.Req”);
转步骤3
3.发送CompareLoad.Req 请求,收到回调之后,解析数据并判断底 部数据是否需要更新,当底部条数据需要改变的时候就读取接口的
4.发送NewUserLogin.Req 走的是父类的回调接口,收到回调之后,转步骤5
5.发送SelPublicPic.Req 广告请求,收到回调之后,解析 广告数据,转步骤 6:
6 发送获取通知公告请求 :SelPublicNotice.Req,解析通知公告数据,