前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >我常用的Android库-AndroidX

我常用的Android库-AndroidX

作者头像
码客说
发布2020-07-03 10:20:52
1.9K0
发布2020-07-03 10:20:52
举报
文章被收录于专栏:码客码客

前言

随着使用AndroidX,哪些我常用的库有些已经不能用了,所以就重新记录以下AndroidX下常用的库。

Android官方

代码语言:javascript
复制
implementation 'androidx.appcompat:appcompat:1.1.0'
implementation 'androidx.core:core-ktx:1.3.0'
implementation 'androidx.constraintlayout:constraintlayout:1.1.3'
implementation 'androidx.legacy:legacy-support-v4:1.0.0'
implementation 'androidx.multidex:multidex:2.0.1'
implementation 'androidx.multidex:multidex-instrumentation:2.0.0'
androidTestImplementation 'androidx.test.ext:junit:1.1.1'
androidTestImplementation 'androidx.test.espresso:espresso-core:3.2.0'

我的常用组件

Kotlin

Kotlin & anko

anko

project - build.gradle

代码语言:javascript
复制
buildscript {
    ext.kotlin_version = '1.1.51'
	  //....
    dependencies {
        //...
        classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
    }
}

app - build.gradle

代码语言:javascript
复制
apply plugin: 'kotlin-android'
apply plugin: 'kotlin-android-extensions'
apply plugin: 'kotlin-kapt'

dependencies {
    implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk7:$kotlin_version"
	implementation "org.jetbrains.anko:anko:$anko_version"
}

UI

下拉刷新

代码语言:javascript
复制
implementation 'com.scwang.smartrefresh:SmartRefreshLayout:1.1.0'
implementation 'com.scwang.smartrefresh:SmartRefreshHeader:1.1.0'

UI框架

QMUI https://qmuiteam.com/android

代码语言:javascript
复制
implementation 'com.qmuiteam:qmui:2.0.0-alpha10'

图片圆角&背景圆角

图片圆角RoundedImageView

背景圆角FlycoRoundView

代码语言:javascript
复制
//图片圆角
implementation 'com.makeramen:roundedimageview:2.3.0'
//背景圆角
implementation 'com.flyco.roundview:FlycoRoundView_Lib:1.1.4@aar'

消息提示

Toasty

代码语言:javascript
复制
implementation 'com.github.GrenderG:Toasty:1.2.8'

初始化样式

代码语言:javascript
复制
private fun initToast() {
    Toasty.Config.getInstance()
        .setTextColor(ZJColor.white)
        .setWarningColor(ZJColor.black_tran)
        .setSuccessColor(ZJColor.black_tran)
        .setInfoColor(ZJColor.black_tran)
        .setErrorColor(ZJColor.black_tran)
        .setTextSize(14)
        .setToastTypeface(Typeface.MONOSPACE)
        .apply()
}

弹出窗口

Material Dialogs

代码语言:javascript
复制
implementation 'com.afollestad.material-dialogs:core:0.9.6.0'

设置主题

代码语言:javascript
复制
MaterialDialog.Builder(this)
    .title("温馨提示")
    .theme(Theme.LIGHT)
    .content("您确定要删除吗?")
    .positiveText("确认")
    .negativeText("取消")
    .onPositive { dialog, which ->
    }
    .show()

不设置主题的话,在不同的系统下有的是亮色有的是暗色

设置自定义View

代码语言:javascript
复制
dialog = MaterialDialog.Builder(this)
    .theme(Theme.LIGHT)
    .title("加入群")
    .customView(R.layout.s_dialog_input, true)
    .positiveText("加入")
    .negativeText("取消")
    .onPositive { dialog, which ->

    }
    .show()

(dialog?.findViewById(R.id.input_edittext) as EditText).hint = "请输入要加入的群号"

Banner

Github:https://github.com/youth5201314/banner

代码语言:javascript
复制
implementation 'com.youth.banner:banner:2.0.11'

BGABanner-Android

代码语言:javascript
复制
//Banner
implementation 'cn.bingoogolapple:bga-banner:2.2.4@aar'

仿iOS Segment

SHSegmentControl

代码语言:javascript
复制
implementation 'com.7heaven.widgets:segmentcontrol:1.17'

加载HTML的TextView

html-textview

代码语言:javascript
复制
dependencies {
	implementation 'org.sufficientlysecure:html-textview:3.5'
}

视频播放器

DKPlayer

代码语言:javascript
复制
//# 必选,内部默认使用系统mediaplayer进行解码
implementation 'com.github.dueeeke.dkplayer:dkplayer-java:3.2.6'
//# 可选,包含StandardVideoController的实现
implementation 'com.github.dueeeke.dkplayer:dkplayer-ui:3.2.6'
//# 可选,使用exoplayer进行解码
implementation 'com.github.dueeeke.dkplayer:player-exo:3.2.6'

功能

权限

https://github.com/yanzhenjie/AndPermission

代码语言:javascript
复制
implementation 'com.yanzhenjie:permission:2.0.3'

Adapter

BaseRecyclerViewAdapterHelper

代码语言:javascript
复制
implementation 'com.github.CymChad:BaseRecyclerViewAdapterHelper:3.0.4'

网络请求

Retrofit+RX

代码语言:javascript
复制
//网络请求
implementation 'io.reactivex.rxjava2:rxjava:2.1.10'
implementation 'io.reactivex.rxjava2:rxandroid:2.0.2'
implementation 'io.reactivex:rxandroid:1.2.1'
implementation 'com.jakewharton.rxbinding2:rxbinding:2.1.1'

implementation 'com.squareup.retrofit2:retrofit:2.6.0'
implementation 'com.squareup.retrofit2:adapter-rxjava2:2.3.0'
implementation 'com.squareup.okhttp3:logging-interceptor:4.0.1'
implementation 'com.squareup.retrofit2:converter-gson:2.3.0'

implementation 'com.trello.rxlifecycle2:rxlifecycle:2.2.1'
implementation 'com.trello.rxlifecycle2:rxlifecycle-components:2.2.1'
implementation 'com.trello.rxlifecycle2:rxlifecycle-android:2.2.1'
//AutoDispose解决RxJava内存泄漏
implementation 'com.uber.autodispose:autodispose:0.7.0'
implementation 'com.uber.autodispose:autodispose-android:0.7.0'
implementation 'com.uber.autodispose:autodispose-android-archcomponents:0.7.0'

OkGo+FastJson

  • okhttp-OkGo
  • fastjson //网络请求 implementation 'com.lzy.net:okgo:3.0.4' implementation 'com.lzy.net:okrx2:2.0.2' //JSON implementation 'com.alibaba:fastjson:1.2.46'

数据库

android-lite-orm

代码语言:javascript
复制
引用Jar包

事件总线

EventBus

代码语言:javascript
复制
implementation 'org.greenrobot:eventbus:3.1.1'

图片加载

Glide

Glide

代码语言:javascript
复制
//Glide
implementation 'com.github.bumptech.glide:glide:4.9.0'

Gif加载

android-gif-drawable

代码语言:javascript
复制
implementation 'pl.droidsonroids.gif:android-gif-drawable:1.2.+'

事件视图绑定

Butterknife

代码语言:javascript
复制
implementation 'com.jakewharton:butterknife:8.8.1'
annotationProcessor 'com.jakewharton:butterknife-compiler:8.8.1'

如果编程语言为Kotlin, 替换 annotationProcessorkapt

Kotlin项目不建议再使用

代码语言:javascript
复制
implementation "org.jetbrains.anko:anko:$anko_version"

可以使用Anko代替

应用崩溃检测服务

Bugly

代码语言:javascript
复制
implementation 'com.tencent.bugly:crashreport_upgrade:1.4.5'
本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2020-07-02,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 前言
  • Android官方
  • 我的常用组件
    • Kotlin
      • Kotlin & anko
    • UI
      • 下拉刷新
      • UI框架
      • 图片圆角&背景圆角
      • 消息提示
      • 弹出窗口
      • Banner
      • 仿iOS Segment
      • 加载HTML的TextView
      • 视频播放器
    • 功能
      • 权限
      • Adapter
      • 网络请求
      • 数据库
      • 事件总线
      • 图片加载
      • Gif加载
      • 事件视图绑定
      • 应用崩溃检测服务
相关产品与服务
事件总线
腾讯云事件总线(EventBridge)是一款安全,稳定,高效的云上事件连接器,作为流数据和事件的自动收集、处理、分发管道,通过可视化的配置,实现事件源(例如:Kafka,审计,数据库等)和目标对象(例如:CLS,SCF等)的快速连接,当前 EventBridge 已接入 100+ 云上服务,助力分布式事件驱动架构的快速构建。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档