项目地址 Github
EBrowser
基础功能
1.annotation+processor 用于编译期生成代码
2.RouterUtil 用于内部路由,服务器下发路由,集中处理内部跳转方便数据统计与跳转调整
3.ScreenRecordService 录屏功能,适配Android 10
自定义控件View
1.LoadingView用于展示加载更多,加载中…的状态控件
2.Toolbar用于加载常规的标题栏,可以设置菜单Menu
3.DragViewGroup用于拖拽控件的父布局,可拖动
界面功能
1.WebActivity 原生webview开发,加载比较稳定,可以上传文件,可以配置是否下载,可收藏,可分享[本身不做下载,丢给默认浏览器下载,采用系统分享功能,分享网址]
2.QRCodeScanActivity用于二维码扫描,可选择图片解析【扫描结果直接放入剪贴板】
3.FileTransferActivity用于局域网内文件双向传输(可发送APP)【接收网页未完成】。
4.DeviceInfoActivity,CmdUtil获取Android设备信息(TextView滑动显示所有信息)
5.MobileAppsActivity获取设备所有App信息,复制包名和复制APK
6.RetrofitActivity用于测试retrifit2.0+rxjava3.0结合请求网络
单元测试
1.androidTest(junit):可以运行于设备上的测试【项目中未使用】
2.test(junit):方便做一些小测试,可以运行Java,kotlin代码(不会运行到设备),print(),println()直接打印结果
部分技术点
1.LifecycleObserver[生命周期观察者]:可在WebviewConfig中找到如何使用的,在Activity中使用lifecycle.addObserver(webviewConfig)来绑定Activtiy的生命周期,MVP中用于BasePresenter
2.协程coroutine用法:参考MobileAppsActivity,BaseCoroutlineActivity使用
后续功能
1.投屏