方法 |
注释 |
get |
获取单例 DevHelper |
viewHelper |
获取 ViewHelper |
devHelper |
获取 DevHelper |
postRunnable |
在主线程 Handler 中执行任务 |
removeRunnable |
在主线程 Handler 中清除任务 |
startTimer |
运行定时器 |
closeTimer |
关闭定时器 |
recycle |
Bitmap 通知回收 |
saveBitmapToSDCardJPEG |
保存图片到 SDCard - JPEG |
saveBitmapToSDCardPNG |
保存图片到 SDCard - PNG |
saveBitmapToSDCardWEBP |
保存图片到 SDCard - WEBP |
saveBitmapToSDCard |
保存图片到 SDCard |
addTextChangedListener |
添加输入监听事件 |
removeTextChangedListener |
移除输入监听事件 |
setKeyListener |
设置 KeyListener |
record |
日志记录 |
cleanInternalCache |
清除内部缓存 - path /data/data/package/cache |
cleanInternalFiles |
清除内部文件 - path /data/data/package/files |
cleanInternalDbs |
清除内部数据库 - path /data/data/package/databases |
cleanInternalDbByName |
根据名称清除数据库 - path /data/data/package/databases/dbName |
cleanInternalSp |
清除内部 SP - path /data/data/package/shared_prefs |
cleanExternalCache |
清除外部缓存 - path /storage/emulated/0/android/data/package/cache |
cleanCustomDir |
清除自定义路径下的文件, 使用需小心请不要误删, 而且只支持目录下的文件删除 |
cleanApplicationData |
清除本应用所有的数据 |
copyText |
复制文本到剪贴板 |
copyUri |
复制 URI 到剪贴板 |
copyIntent |
复制意图到剪贴板 |
notifyMediaStore |
通知刷新本地资源 |
insertImageIntoMediaStore |
添加图片到系统相册 ( 包含原图、相册图, 会存在两张 ) - 想要一张, 直接调用 notifyMediaStore() |
insertVideoIntoMediaStore |
添加视频到系统相册 |
insertIntoMediaStore |
保存到系统相册 |
showDialog |
显示 Dialog |
closeDialog |
关闭 Dialog |
closeDialogs |
关闭多个 Dialog |
closePopupWindow |
关闭 PopupWindow |
closePopupWindows |
关闭多个 PopupWindow |
autoCloseDialog |
自动关闭 dialog |
autoClosePopupWindow |
自动关闭 PopupWindow |
openKeyboard |
打开软键盘 |
closeKeyboard |
关闭软键盘 |
closeKeyBoardSpecial |
关闭软键盘 - 特殊处理 |
judgeView |
设置某个 View 内所有非 EditText 的子 View OnTouchListener 事件 |
registerSoftInputChangedListener |
注册软键盘改变监听 |
registerSoftInputChangedListener2 |
注册软键盘改变监听 |
applyLanguage |
修改系统语言 (APP 多语言, 单独改变 APP 语言 ) |
setOnClicks |
设置点击事件 |
setOnLongClicks |
设置长按事件 |
addTouchArea |
增加控件的触摸范围, 最大范围只能是父布局所包含的的区域 |
cancelAllNotification |
移除通知 - 移除所有通知 ( 只是针对当前 Context 下的 Notification) |
cancelNotification |
移除通知 - 移除标记为 id 的通知 ( 只是针对当前 Context 下的所有 Notification) |
notifyNotification |
进行通知 |
saveAssetsFormFile |
获取 Assets 资源文件数据并保存到本地 |
saveRawFormFile |
获取 Raw 资源文件数据并保存到本地 |
setWindowSecure |
设置禁止截屏 |
setFullScreen |
设置屏幕为全屏 |
setLandscape |
设置屏幕为横屏 |
setPortrait |
设置屏幕为竖屏 |
toggleScreenOrientation |
切换屏幕方向 |
forceGetViewSize |
在 onCreate 中获取视图的尺寸 - 需回调 onGetSizeListener 接口, 在 onGetSize 中获取 View 宽高 |
vibrate |
震动 |
cancel |
取消震动 |
closeIO |
关闭 IO |
closeIOQuietly |
安静关闭 IO |
getNetTime |
获取网络时间 - 默认使用百度链接 |
waitForEndAsyn |
设置等待一段时间后, 通知方法 ( 异步 ) |
waitForEnd |
设置等待一段时间后, 通知方法 ( 同步 ) |
setAnimationListener |
设置动画事件 |
package dev.utils.app.helper;
import android.annotation.SuppressLint;
import android.app.Activity;
import android.app.Dialog;
import android.app.Notification;
import android.content.Context;
import android.content.Intent;
import android.graphics.Bitmap;
import android.net.Uri;
import android.os.Handler;
import android.support.annotation.IntRange;
import android.support.annotation.RawRes;
import android.support.v4.app.DialogFragment;
import android.text.TextWatcher;
import android.text.method.KeyListener;
import android.view.View;
import android.view.animation.Animation;
import android.widget.EditText;
import android.widget.PopupWindow;
import java.io.Closeable;
import java.io.File;
import java.util.Locale;
import dev.utils.app.AnalysisRecordUtils;
import dev.utils.app.CleanUtils;
import dev.utils.app.ClickUtils;
import dev.utils.app.ClipboardUtils;
import dev.utils.app.ContentResolverUtils;
import dev.utils.app.DialogUtils;
import dev.utils.app.EditTextUtils;
import dev.utils.app.HandlerUtils;
import dev.utils.app.KeyBoardUtils;
import dev.utils.app.LanguageUtils;
import dev.utils.app.ListenerUtils;
import dev.utils.app.NotificationUtils;
import dev.utils.app.ResourceUtils;
import dev.utils.app.ScreenUtils;
import dev.utils.app.SizeUtils;
import dev.utils.app.VibrationUtils;
import dev.utils.app.anim.AnimationUtils;
import dev.utils.app.assist.manager.TimerManager;
import dev.utils.app.image.BitmapUtils;
import dev.utils.app.image.ImageUtils;
import dev.utils.common.CloseUtils;
import dev.utils.common.HttpURLConnectionUtils;
import dev.utils.common.assist.TimeKeeper;
public final class DevHelper {
private TimeKeeper mTimeKeeper = new TimeKeeper();
private static final DevHelper HELPER = new DevHelper();
public static DevHelper get() {
return HELPER;
}
public ViewHelper viewHelper() {
return ViewHelper.get();
}
public DevHelper devHelper() {
return this;
}
public DevHelper postRunnable(final Runnable runnable) {
HandlerUtils.postRunnable(runnable);
return this;
}
public DevHelper postRunnable(final Runnable runnable, final long delayMillis) {
HandlerUtils.postRunnable(runnable, delayMillis);
return this;
}
public DevHelper postRunnable(final Runnable runnable, final long delayMillis, final int number, final int interval) {
HandlerUtils.postRunnable(runnable, delayMillis, number, interval);
return this;
}
public DevHelper postRunnable(final Runnable runnable, final long delayMillis, final int number, final int interval, final HandlerUtils.OnEndListener onEndListener) {
HandlerUtils.postRunnable(runnable, delayMillis, number, interval, onEndListener);
return this;
}
public DevHelper removeRunnable(final Runnable runnable) {
HandlerUtils.removeRunnable(runnable);
return this;
}
public DevHelper startTimer(final TimerManager.AbsTimer timer) {
if (timer != null) timer.startTimer();
return this;
}
public DevHelper closeTimer(final TimerManager.AbsTimer timer) {
if (timer != null) timer.closeTimer();
return this;
}
public DevHelper recycle(final Bitmap bitmap) {
BitmapUtils.recycle(bitmap);
return this;
}