GT库技术共享讨论群[QQ:814506562]
为了方便GT库友们:(创群日期:2023.10.23)
一起交流,一起贡献开源技术
希望在库友们的共同的努力下,
将我们开源GT库建设的越好用、越稳定。
致谢语:
非常感谢一路以来支持GT库的伙伴们,
因为GT库覆盖的技术方面太广涉及代码量太多,一人之力难以全面维护好,
所以在此创建 GT库官方群1 集齐GT友集体智慧,将库建设成为更好更全更稳定的库。
贡献名单:(贡献多者麻烦找我要个管理位,对GT库有疑惑的请发群里或请联系管理大大)
GT库官方教程
GT库官网最新版https://github.com/1079374315/GT
依赖注意事项:
1.最新版Android Studio Arctic Fox | 2020.3.1的引用库的地方在另外的一个文件夹上:
2.在 build.gradle(app模块中) 引入 'kotlin-kapt'
3.在 build.gradle(app模块中) 添加以下关系来解决:
4.如果出现 注解ID 资源爆红,就参考这个解决办法:
注解ID爆红解决办法:
提供复制粘贴:
android.nonFinalResIds=false
5.同步后如果出现 :The number of method references in a .dex file cannot exceed 64K. 错误,解决办法:
multiDexEnabled true //只需要将此设置为 true 即可
如需要使用GT库里的 GT-DataBinding功能,才需要参考下面教程:
分功能使用到的权限:(权限参考)
<!-- 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" />
<uses-permission
android:name="android.permission.WRITE_EXTERNAL_STORAGE"
tools:ignore="ScopedStorage" />
<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" />
<application ...
<!-- 自动安装APK -->
<provider
android:name="androidx.core.content.FileProvider"
android:authorities="com.gsls.gt.fileprovider"
android:exported="false"
android:grantUriPermissions="true">
<meta-data
android:name="android.support.FILE_PROVIDER_PATHS"
android:resource="@xml/file_paths" />
</provider>
</application>
GT混淆:
#不混淆GT类
#-keep public class com.gsls.gt.GT { *; }
-keep class com.gsls.** { *; }
#不混淆 继承GT类 或 继承GT内部类 的类
-keep public class * extends com.gsls.gt.GT { *; }
-keep public class * extends com.gsls.gt.GT$* { *; }
-keep public class * extends com.gsls.gtk.GTK { *; }
-keep public class * extends com.gsls.gtk.GTK$* { *; }