代码拉取完成,页面将自动刷新
安卓 — 快速构建app框架
✔️ 1、图片库Glide
✔️ 2、沉浸式状态栏、刘海屏支持
✔️ 3、集成ButterKnife
✔️ 4、集成Activity堆栈管理器
✔️ 5、日志工具
✔️ 6、集成Retrofit网络请求框架
✔️ 7、基础BaseActivity
软件架构说明
** Glide官方要求说明 **
Android SDK 要求
Min Sdk Version - 使用 Glide 需要 min SDK 版本 API 14 (Ice Cream Sandwich) 或更高。
Compile Sdk Version - Glide 必须使用 API 27 (Oreo MR1) 或更高版本的 SDK 来编译。
Support Library Version - Glide 使用的支持库版本为 27。
如果你需要使用不同的支持库版本,你需要在你的 build.gradle 文件里去从 Glide 的依赖中去除 "com.android.support"。例如,假如你想使用 v26 的支持库:
dependencies {
implementation ("com.github.bumptech.glide:glide:4.9.0") {
exclude group: "com.android.support"
}
implementation "com.android.support:support-fragment:26.1.0"
}
使用与 Glide 依赖的支持库不同的版本可能会导致一些运行时异常 ,例如:
java.lang.NoSuchMethodError: No static method getFont(Landroid/content/Context;ILandroid/util/TypedValue;ILandroid/widget/TextView;)Landroid/graphics/Typeface; in class Landroid/support/v4/content/res/ResourcesCompat; or its super classes (declaration of 'android.support.v4.content.res.ResourcesCompat'
at android.support.v7.widget.TintTypedArray.getFont(TintTypedArray.java:119)
也可能造成 Glide 的 API 生成器失败,从而不能正确地生成 GlideApp 类.
请参阅 #2730 获取这方面的更多信息。
** 本库中使用要求 **
GlideApp
使用说明(只使用Glide无需设置)
dependencies {
annotationProcessor "com.github.bumptech.glide:compiler:$你的Glide版本"
}
AppGlideModule
或者SnailsGlideModule
类,如下:继承AppGlideModule
package com.ak.aigo; // 此处即为项目的包名
import com.bumptech.glide.annotation.GlideModule;
import com.bumptech.glide.module.AppGlideModule;
/**
* Glide设置:
* 注意:
* 1、此文件,在包名下,即一级目录
* 2、app模块的build.gradle中添加下面依赖:
* annotationProcessor "com.github.bumptech.glide:compiler:4.9.0"
* 3、使用GlideApp.with(fragment).load(myUrl).into(imageView);
* 代替Glide.with(fragment).load(myUrl).into(imageView);
* @author lawrence
* @date 2019-04-25 17:35
*/
@GlideModule
public class GlobalGlideModule extends AppGlideModule {
}
继承SnailsGlideModule
,SnailsGlideModule
也是继承AppGlideModule
实现一些默认设置。
package com.ak.aigo;
import com.bumptech.glide.annotation.GlideModule;
import com.snails.app.glide.SnailsGlideModule;
/**
* Glide设置:
* 注意:
* 1、此文件,在包名下,即一级目录
* 2、app模块的build.gradle中添加下面依赖:
* annotationProcessor "com.github.bumptech.glide:compiler:4.9.0"
* 3、使用GlideApp.with(fragment).load(myUrl).into(imageView);
* 代替Glide.with(fragment).load(myUrl).into(imageView);
* @author lawrence
* @date 2019-04-25 17:35
*/
@GlideModule
public class GlobalGlideModule extends SnailsGlideModule {
}
SnailsApp
import android.app.Application;
import com.snails.app.SnailsApp;
import com.snails.app.configuration.IConfiguration;
import com.snails.app.configuration.model.SnailsDebug;
import com.snails.app.configuration.model.SnailsNetwork;
public class AiGoApplication extends Application {
private IConfiguration iConfiguration = new IConfiguration() {
@Override
public SnailsDebug debug() {
return new SnailsDebug().tag("AiGo").debug(true);
}
@Override
public SnailsNetwork network() {
return new SnailsNetwork()
.isOnline(false) // 是否正式上线,默认 true-正式上线
.testUrl("http://www.test.com") // 测试地址
.productUrl("http://www.product.com"); // 生产地址
}
@Override
public SnailsRestful restful() {
return new SnailsRestful()
.cache(new File("cache/json"), 5 * 1024 * 1024)
.debug(true, "Snails-restful");
}
};
@Override
public void onCreate() {
super.onCreate();
SnailsApp.instance().init(this, iConfiguration);
}
}
SnailsApp
扩展功能
isTest(): boolean 得到当前环境状态,true-测试环境,false-生产环境
setTest(boolean isTest): void 设置当前环境状态,true-测试环境,false-生产环境
名称 | 描述 | 使用方法 |
---|---|---|
Glide | 图片下载、显示等 | Glide.md 注:中文非实时更新 |
Glide-transformations | Glide图片剪裁库 | transformations.md |
GlideHelper | Glide辅助工具 | GlideHelper.md |
ImmersionBar | 沉浸式状态栏、刘海屏支持 | ImmersionBar.md |
WeakHandler | 防内存泄漏的handler | WeakHandler.md |
StorageSingleton | 数据存储 | StorageSingleton.md |
DiskLruCacheUtil | 仿LruCache的磁盘文件存储工具 | DiskLruCacheUtil.md |
ToastUtil | toast提示 | ToastUtil.md |
Logger | 日志输出工具 | Logger.md |
EnvironmentUtil | 测试/生产环境切换工具 | EnvironmentUtil.md |
BaseActivity | 基础Activity | BaseActivity.md |
BaseFragment | 基础Fragment | BaseFragment.md |
DoubleClickHelper | 点击防抖 | DoubleClickHelper.md |
ActivityHelper | activity辅助工具 | ActivityHelper.md |
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。
1. 开源生态
2. 协作、人、软件
3. 评估模型