Android快速开发工具集合——YUtils

举报
yechaoa 发表于 2022/05/30 22:26:29 2022/05/30
【摘要】 Android快速开发工具集合——YUtils 最近更新 2021.01.26 How to use Step 1 project:build.gradle allprojects { re...

Android快速开发工具集合——YUtils

最近更新 2021.01.26

How to use

  • Step 1 project:build.gradle
	allprojects {
		repositories {
			...
			maven { url 'https://www.jitpack.io' }
		}
	}

  
 
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • Step 2 app:build.gradle(以下3种引用方式,三选一即可)
dependencies {
    //kotlin 版本
    implementation 'com.github.yechaoa.YUtils:yutilskt:3.2.0'

    //java 版本
    implementation 'com.github.yechaoa.YUtils:yutils:3.2.0'

    //kotlin && java 版本
    implementation 'com.github.yechaoa:YUtils:3.2.0'
}

  
 
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10

一、初始化

in your Application

//初始化
YUtils.init(this);
        
//打印开关(可选,默认false不打印)
LogUtil.setIsLog(true); 

  
 
  • 1
  • 2
  • 3
  • 4
  • 5

二、功能

1.YUtils(各种小工具)

  • void init(Application app)
    Application 中初始化

  • Application getApp()
    获取全局上下文

  • void showLoading(Activity activity,String msg)
    Loading加载框

  • void hideLoading()
    hideLoading

  • boolean loadingIsShowing()
    loading是否显示

  • void finishBySleep(final long millis)
    根据时间休眠然后关闭当前页面,比如:3秒自动返回

  • String getVersionName()
    获取版本名

  • int getVersionCode()
    获取版本号

  • boolean checkPhoneNumber(String mobiles)
    校验手机号

  • String MD5(String data)
    MD5加密

  • void copyToClipboard(String text)
    复制文本到粘贴板

  • View Foreground(View view, int color, int start, int end)
    字体高亮(TextView、EditText、Button)like this —》 YUtils.Foreground(mEditText, Color.RED,1,2);

  • void showSoftKeyboard(View view)
    弹出软键盘

  • void closeSoftKeyboard()
    关闭软键盘

  • Boolean hasSim()
    是否有sim卡 即设备是否可以拨打电话等

2.ToastUtil(任意线程,不重复显示,可取消).

  • show(final String msg)
    底部显示(默认),任何线程且不会超长显示

  • void showCenter(final String msg)
    showCenter 居中显示

  • void cancel()
    取消Toast,onDestroy时调用,或onPause,当前页面finish之后在下一个页面不会再显示

3.LogUtil(日志打印,带方法行数链接,可超长打印)

  • void setIsLog(boolean isLog)
    是否打印

  • setIsLog(boolean isLog, String tag)
    带全局tag

  • void i(String msg)
    不带tag

  • void i(String TAG, String msg)
    带tag

  • void d(String msg)

  • void d(String TAG, String msg)

  • void e(String msg)

  • void e(String TAG, String msg)

4.ActivityUtil(Activity管理)

  • Activity getCurrentActivity()
    获得当前栈顶Activity

  • String getCurrentActivityName()
    获得当前Activity名字

  • void start(Class<?> targetActivity)
    启动指定Activity 无参

  • void start(Class<?> targetActivity, Bundle bundle)
    启动指定Activity,带Bundle参数(kotlin调用参数可选)

  • void finish(Activity activity)
    关闭指定Activity

  • void closeAllActivity()
    关闭所有Activity

5.SpUtil(SharedPreferences)

  • void setString(String key, String value)
    String

  • String getString(String key)

  • void setStringSet(String key, Set value)
    StringSet

  • Set getStringSet(String key)

  • void setInt(String key, String value)
    Int

  • String getInt(String key)

  • void setBoolean(String key, String value)
    Boolean

  • String getBoolean(String key)

  • void setFloat(String key, String value)
    Float

  • String getFloat(String key)

  • void setLong(String key, String value)
    Long

  • String getLong(String key)

  • void removeByKey(String key)
    根据key移除

  • void removeAll()
    移除所有

6.ShareUtil(调用系统分享)

  • void shareImage(String title, Uri uri)
    分享图片

  • void shareText(String title, String text)
    分享文字

7.TimeUtil

  • String getDate()
    获取当前年月日

  • String getTime()
    获取当前时分秒

  • String getDateAndTime()
    获取当前年月日时分秒

  • Long getTimeForLong()
    获取当前时间,返回Long类型

  • String formatDate(String mDate)
    转换为年月日

8.ParseUtil(直接解析 Json)

2.0.8版本之后简化了解析方式,且不兼容更新

like this

{
     "code": "0",
     "data": "修改成功",
     "flag": true,
     "info": null
 }

  
 
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • String parseCode(String response)
    解析Code

  • boolean parseFlag(String response)
    解析Flag

  • String parseData(String response)
    解析data

  • String parseInfo(String response)
    解析info

  • String parseByKey(String response, String key)
    根据key值解析,只支持json中的一级字段

9.GsonUtil

  • String GsonString(Object object)
    转成json

  • T GsonToBean(String gsonString, Class cls)
    转成bean

  • List GsonToList(String gsonString, Class cls)
    转成list

  • GsonToMaps(String gsonString)

10.DisplayUtil

  • int dp2px(float dp)
    dp2px

  • float px2dp(int px)
    px2dp

  • int getScreenWidth()
    获取屏幕宽度

  • int getScreenHeight()
    获取屏幕高度

  • int getStatusBarHeight()
    获取状态栏高度

  • int getActionBarHeight()
    获取ActionBar高度

  • int getNavBarHeight()
    获取导航栏高度


更新记录

3.2.0(2021-01-26)

  • targetSdkVersion 30
  • ToastUtil适配Android 11

3.1.5(2020-12-29)

  • 初始化校验
  • YUtils新增sim卡判断

3.1.4(2020-12-26)

  • SpUtil优化

3.1.3(2020-10-30)

  • 添加DisplayUtil
  • 优化。

3.1.2 (2020-10-22)

优化。

3.1.1

优化引用方式,可以kotlin和java分开引用,也可以一起引用。

3.1.0

简化了部分util原有的调用方式,属于兼容更新。

3.0.0

  • 3.0.0以后新增了kotlin版本;
  • 此外,java版本和kotlin版本都删除了ExitUtils
  • kotlin版本没有GsonUtil

混淆

#YUtils
-keep class com.yechaoa.yutils.**{*;}

  
 
  • 1
  • 2

GitHub

https://github.com/yechaoa/YUtils

文章来源: blog.csdn.net,作者:yechaoa,版权归原作者所有,如需转载,请联系作者。

原文链接:blog.csdn.net/yechaoa/article/details/68953307

【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。