发布时间:2023.2.28
* CSDN 博客/官网教程:https://blog.csdn.net/qq_39799899
* GitHub https://github.com/1079374315/GT
* 更新内容如下:
* 1.优化 Fragment 框架
* 2.优化 GT日志悬浮窗 部分功能
* 3.优化 GT_Floating 日志,具体详情参考教程:https://blog.csdn.net/qq_39799899/article/details/128497267?spm=1001.2014.3001.5502
* 4.优化 Glide 加载动态图设置圆角的问题
* 5.修改 Hibernate SQL插入数据的方式
* 6.优化 HttpUtil 网络请求框架 body 方式
* 7.优化 WebViewUtils 工具的 setWebViewKernel方法
* 8.增加 ImageViewTools 工具的 base64ToBitmap()方法
* 9.优化 Adapters GT封装的适配器
* 10.优化 GT_WebView 初始化默认不缓存参数
* 11.优化 GTImageView 优化圆角设置方法
* 12.优化 Frame ** ViewModel 框架(让所有页面共用同一个 ViewModel)
* 13.增强 ApplicationUtils
(1)增加屏蔽字库方法 shieldedCharacterLibrary()
(2)去掉结尾为0 removeZero()
(3)防止空数据的方法 notyNull()
(4)获取 字符串中的 电话号码 checkCellphone()
(5)获取当前手机所有app信息 getAllAppData2()
* 14.优化性能
第1章:集成GT库 (推荐指数:✪✪✪✪✪)(集成GT库成功!!!)
第2章:日志log类(推荐指数:✪✪✪✪✪)(可以让你轻轻松松找到日志处)
第3章:吐司类 (推荐指数:✪✪✪)(轻松自定义吐司)
第4章:DataSendReception(新品指数:✪✪✪✪✪)(跨APP/跨进程/收发消息)
第5章:SaveObject (推荐指数:✪✪✪)(数据永久性存储池)
第6章:GT_SharedPreferences(推荐指数:✪✪✪)(可存储实体类的SP)
第7章:GT_IO(推荐指数:✪✪)(内部 IO 流存储)
第8章:FileUtils(推荐指数:✪✪✪✪)(轻轻松松自定义可视文件组件)
第9章:Hibernate(热度推荐:✪✪✪✪✪✪)(对原生SQLite数据库的封装)
第10章:CleanDataUtils(推荐指数:✪✪)(管理手机数据)
第12章:SerialPortUtils(新品指数:✪✪✪✪✪)(串口类,无需增添第三文件,可直接构建使用!!!)
第13章:DataUtils(推荐指数:✪✪✪)(数据格式装换类)
第14章:Network(推荐指数:✪✪)(网络类用于判断是否可联网,获取P地址等...)
第15章:JSON(推荐指数:✪✪✪✪)(json 与 Bean 互转)
第16章:HttpUtil与HttpCall(推荐指数:✪✪✪✪✪✪)(超简单实用的网络请求框架)
第17章:WebViewUtils(推荐指数:✪✪✪✪)(轻松加载APP、PC网页、拔网页代码)
第18章:GT_Date(推荐指数:✪✪✪)(强大的日期工具包)
第19章:ScreenOperation(推荐指数:✪✪✪)(手机屏幕操作)
第21章:UpdateApp(推荐指数:✪✪✪✪)(下载APP并自动安装)
第22章:RepairAPP(推荐指数:✪✪✪✪)(APP热更新:悄无声息的解决线上bug)
第23章:BaseArrayAdapters(推荐指数:✪✪✪)(针对与 ArrayAdapter 进行封装)
第24章:BaseAdapter(推荐指数:✪✪✪✪)(针对与 RecyclerView.Adapter 进行封装)
第25章:Encryption(推荐指数:✪✪✪)(加密工具包)
第26章:ProgressDialogUtils(推荐指数:✪✪✪✪)(多种加载进度条)
第27章:GT_Animation(推荐指数:✪✪✪✪)(强大的GT动画库)
第28章:WindowUtils(推荐指数:✪✪✪✪)(WindowUtils 窗体类,封装了APP窗口类工具)
第29章:ViewUtils(推荐指数:✪✪✪✪)(自定义View工具集合,可直接添加到xml 布局文件中)
第30章:GT_Activity(推荐指数:✪✪✪✪✪✪)(封装 Activity 管理器)
第31章:GT_Fragment(推荐指数:✪✪✪✪✪✪)(封装 Fragment 管理器)
第32章:GT_Dialog(推荐指数:✪✪✪✪✪)(封装 Dialog 管理器)
第33章:GT_FloatingWindow(推荐指数:✪✪✪✪✪)(封装 悬浮窗 管理器)
第34章:设备监听类 DeviceListening(推荐指数:✪✪✪)(手机设备的监听)
第35章:多媒体类(推荐指数:✪✪✪)(手机设备的音乐、音频,视频等)
第36章:GT注解(推荐指数:✪✪✪✪✪✪)(GT高级使用方法)
第37章:GT线程(推荐指数:✪✪✪✪✪)(容易上瘾,请勿上头)
第38章:Permission(新品推荐:✪✪✪✪✪)(超级简单且轻量级的动态授权框架)
第39章:GT黑科技(新品指数:✪✪✪✪✪)(黑科技会越来越多,重点发展路线)
第40章:GT-DataBinding(新品指数:✪✪✪✪✪)(彻底解放 findViewById)
第43章:GT-MVVM架构(新品推荐:✪✪✪✪✪✪)(超简单GT_MVVM入门系列)
第41章:GT-EventBus(新品推荐:✪✪✪✪✪✪)(解决数据传递框架,支持跨进程传递)
第45章:GT-Observable(新品推荐:✪✪✪✪✪✪)(异步线程切换框架)
第46章:GT-Glide(新品推荐:✪✪✪✪✪✪)(加载图片,支持动态图)
第47章:GT-GT_Notification(新品推荐:✪✪✪✪✪)(轻松自定义 酷狗音乐播放状态栏)
第48章:GT-WebViews(新品推荐:✪✪✪✪✪✪)(安卓与H5交互,可支持侵入式开发)
第49章:GT_View(推荐指数:✪✪✪✪✪)(自定义底部弹窗支付页面)
1. 项目下app的build.gradle中依赖:
第一步 1. 将以下存储库将其添加到根构建中。存储库末尾的 settings.gradle
dependencyResolutionManagement {
repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS)
repositories {
...
maven { url 'https://jitpack.io' }//必要的
}
}
第二步 2. 添加依赖关系
dependencies {
//GT基础功能(必要的)
implementation 'com.github.1079374315:GSLS_Tool:v1.4.2.7'
//使用 gt-DataBinding 才需要添加以下注册,否则可以不添加
annotationProcessor 'com.github.1079374315:GSLS_Tool:v1.4.2.7'//注册 gt-DataBinding 功能
//同步后如果出现 :The number of method references in a .dex file cannot exceed 64K. 错误,
//请参考该篇文章解决错误:https://blog.csdn.net/qq_39799899/article/details/120165435?spm=1001.2014.3001.5501
}
2. GT包混淆: 整体项目混淆参考
#不混淆GT库
-keep public class com.gsls.gt.GT { *; }
#不混淆 继承GT类 或 继承GT内部类 的类
-keep public class * extends com.gsls.gt.GT { *; }
-keep public class * extends com.gsls.gt.GT$* { *; }
## 其余的看情况混淆
<!-- U盘操作 -->
<uses-permission android:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS" tools:ignore="ProtectedPermissions" />
<uses-permission android:name="android.permission.SYSTEM_ALERT_WINDOW" /> <!-- 悬浮窗 -->
<uses-permission android:name="android.permission.INTERNET" /> <!-- 网络权限 -->
<!-- SD读写权限 -->
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.READ_PHONE_STATE" /> <!-- 读取手机权限 -->
<uses-permission android:name="android.permission.READ_CONTACTS" />
<uses-permission android:name="android.permission.WAKE_LOCK" />
<uses-permission android:name="android.permission.WRITE_CONTACTS" />
<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" />
<uses-permission android:name="android.permission.SEND_SMS" />
<uses-permission android:name="android.permission.RECEIVE_SMS" />
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_LOCATION_EXTRA_COMMANDS" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />