![](https://img-blog.csdnimg.cn/20201014180756757.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
【android】技术分享
文章平均质量分 95
Stephen2Wong
找一个感兴趣的方向干下去吧,哪条路上没有荆棘与悬崖
展开
-
RxJava学习总结
RxJava学习总结1. RxJava主要作用1.1 线程切换1.2 链式编程、响应式编程2. RxJava思想总结2.1 什么是ReactiveX2.2 与观察者模式思想的不同点3. RxJava如何实现线程切换4. 各类操作符说明及简单用法创建型操作符变换型操作符过滤型操作符条件型操作符合并型操作符异常型操作符5. 背压背压6.RxJava源码分析如何实现链式代码调用如何实现线程切换?1. RxJava主要作用1.1 线程切换实现了Android中Handler和AsyncTask的功能1.2原创 2021-04-22 18:01:34 · 210 阅读 · 0 评论 -
Gradle引入阿里云仓库,加快Gradle依赖构建速度
阿里云仓库更新地址:https://maven.aliyun.com/mvn/guiderepositories { maven { url 'https://maven.aliyun.com/repository/public/' } maven { url 'https://maven.aliyun.com/repository/google/' } maven { url 'https://maven.aliyun.com/repository/gradle-plu原创 2020-12-23 11:17:21 · 532 阅读 · 0 评论 -
百分比透明度转化成十六进制
百分比透明度转化成十六进制 百分比:0% , 十六进制值:00 百分比:1% , 十六进制值:03 百分比:2% , 十六进制值:05 百分比:3% , 十六进制值:08 百分比:4% , 十六进制值:0A 百分比:5% , 十六进制值:0D 百分比:6% , 十六进制值:0F 百分比:7% , 十六进制值:12 百分比:8% , 十六进制值:14 百分比:9% , 十六进制值:17 百分比:10%原创 2020-08-04 14:32:26 · 612 阅读 · 0 评论 -
Glide高级使用技巧解决缓存key问题,防止反复加载
参考资料:https://muyangmin.github.io/glide-docs-cn/doc/caching.html业务需求:获取视频流中的截图,虽然每次返回的图片URL都是不同的,但是图像没有改变.导致每次刷新都没有使用到glide缓存机制分析:首先glide源码4.8.0版本中,默认缓存key是通过model,signature,widthd,height,tr...原创 2020-04-20 14:08:58 · 1338 阅读 · 0 评论 -
Android夜间模式技术选型及快速开发-Android-skin-support
目前主流的Android夜间模式有两种第一种官方api模式,参考局限性在于每次切换夜间模式,栈中所有的Activity都会重启,相应的有很多保存、恢复操作。实现较为麻烦第二种Android-skin-support相比于官方api,Android-skin-support库不需要重启Activity,使用插件化方案更新资源本文接下来会主要介绍Android-skin-support...原创 2019-12-06 17:36:41 · 304 阅读 · 0 评论 -
Android创建实体类防止空指针、数组下标越界,有效降低崩溃率
Getter 模板修改开发过程中,经常会遇到空指针异常,尤其是在线上 bug 中,由于未进行 null 判断处理导致的 bug 比例肯定不低。另外,model 层经常需要根据服务端接口返回的数据结构进行建模,实体类中常见的有 String 类型和 List 类型的字段。而服务端的接口文档里通常都会说明哪些字段不会为空,所以移动端建模后使用相应的实体类数据时,很少或者说会经常性忘记去做 nul...转载 2018-04-18 10:00:32 · 2590 阅读 · 0 评论 -
这一次彻底弄明白Gradle相关配置
初识GradleGradle是一个基于Apache Ant和Apache Maven概念的项目自动化建构工具。它使用一种基于Groovy的特定领域语言来声明项目设置,而不是传统的XML。当前其支持的语言限于Java、Groovy和Scala,计划未来将支持更多的语言。怎么看上面都是一段很官方的解释,对于入门的人来说简直是一个噩梦般的解释(包括以前的我)。那下面我就用通俗一点语言说说我的理解。Gra...转载 2018-05-16 18:27:03 · 3225 阅读 · 2 评论 -
Android 8.0适配
轉自:https://blog.csdn.net/qq_17766199/article/details/80965631 1.谈谈Android 6.0 的动态权限管理 2.Android 7.0脱坑指南 1.准备工作将我们项目中的targetSdkVersion改为 26(8.0) 或者 27(8.1),记住不要超过27,毕竟我还没有告诉你Android P怎么适...转载 2018-07-24 09:32:10 · 254 阅读 · 0 评论 -
Android studio 的快捷键对应 MAC 和Win版本
转自:https://blog.csdn.net/zq019/article/details/54618185 功能描述 键盘布局对应名字 苹果电脑 赢/ Linux的 提示错误解决方案 显示意向操作 option + enter alt + enter AS配置界面 喜好 command + , control+alt+S ...转载 2018-08-31 19:38:11 · 1379 阅读 · 0 评论 -
Android开发中常见的设计模式
Android开发中常见的设计模式单例模式Build模式观察者模式原型模式策略模式对于开发人员来说,设计模式有时候就是一道坎,但是设计模式又非常有用,过了这道坎,它可以让你水平提高一个档次。而在android开发中,必要的了解一些设计模式又是非常有必要的。对于想系统的学习设计模式的同学,这里推荐2本书。一本是Head First系列的Head Hirst Design Pattern,英文好的可...转载 2018-11-15 11:25:21 · 208 阅读 · 1 评论 -
Android开发调试中常用ADB命令
查看当前内存使用情况,activity栈情况packageName表示apk包名adb shell dumpsys meminfo <packageName>adb命令安装apkadb install -t -r <apk绝对路径>原创 2018-11-21 20:21:17 · 326 阅读 · 0 评论 -
编写 Android Library 的最佳实践
作者:Mr_万能胶链接:https://juejin.im/post/5c9228e7f265da60fe7c2732如何做好一个Android Library的文章鲜有,非常感谢作者的分享,极具参考价值。1写在前面一直以来,技术圈里面只要涉及 Android Library 的文章,几乎都在讲如何发布到 Maven/Jcenter,却很少见到有文章来指导大家如...转载 2019-04-10 17:02:00 · 398 阅读 · 0 评论 -
项目首次上传至git仓库步骤
前提准备工作:安装git正式开始:进入命令行工具(两种方案)相应目录下右击键盘,Git Bash Here进入cmd,切入相应目录git仓库初始化git init文件添加到仓库git add .文件提交到仓库git commit -m "first commit"关联远程仓库git remote add origin http://***.git本地仓...原创 2019-08-02 14:34:41 · 636 阅读 · 0 评论 -
Android 图片压缩工具,仿微信朋友圈压缩策略。
项目描述目前做App开发总绕不开图片这个元素。但是随着手机拍照分辨率的提升,图片的压缩成为一个很重要的问题。单纯对图片进行裁切,压缩已经有很多文章介绍。但是裁切成多少,压缩成多少却很难控制好,裁切过头图片太小,质量压缩过头则显示效果太差。于是自然想到App巨头“微信”会是怎么处理,Luban(鲁班)就是通过在微信朋友圈发送近100张不同分辨率图片,对比原图与微信压缩后的图片逆向推算出来的压缩算法。...转载 2018-03-22 09:59:43 · 1623 阅读 · 0 评论 -
Android仿ios弹出框AndroidshowDialog库
在Android开发过程中,常常会因为感觉Android自带的Dialog的样式很丑,项目开发过程中会影响整体效果,会使得开发过程很是忧伤....(话唠时间结束!)本文我将介绍一款开源的Dialog仿IOS底部弹窗效果IOS_Dialog_Library的使用。我将通过几个简单的示例介绍IOS_Dialog_Library.zip的使用方法。1、IOS_Dialog_Library是开源的Dial...原创 2018-02-27 10:54:04 · 563 阅读 · 0 评论 -
MNImageBrowser图片浏览框架,向下滑动关闭
一个基本的图片浏览框架,向下滑动关闭,方便使用. 截图gif比较慢:截图: 如何添加方式一:Gradle添加:1.在Project的build.gradle中添加仓库地址 allprojects { repositories { ... maven { url "https://jitpack.io" } } }转载 2018-01-31 10:19:00 · 2298 阅读 · 0 评论 -
Android获取系统相册里的全部图片
只有获取本地图片地址功能,未做压缩,请自行进行压缩处理public static List getSystemPhotoList(Context context) { List result = new ArrayList(); Uri uri = MediaStore.Images.Media.EXTERNAL_CONTENT_URI; ContentResol原创 2017-02-28 11:55:03 · 1533 阅读 · 0 评论 -
Android与HTML+JS的交互
在Android开发中,越来越多的用到了Android原生与HTML的混合开发模式,那么相应的会产生很多Android原生代码与WebView进行相互交流的需求。比如点击WebView中的一个按钮调用打电话功能(JS调用原生代码),比如点击原生的按钮,调用JS部分代码(原生调用JS),以及两者之间的传值。首先是JS调用原生代码:Android端代码:webview添加JavaS原创 2017-02-13 15:54:48 · 626 阅读 · 0 评论 -
RadioButton自定义背景图及字体颜色
首先在res目录下创建drawable文件夹和color文件夹其次设置RadioButton的Drawable和TextColor<RadioButton android:id="@+id/activity_main_mine" android:layout_width="0dp" android:layout_height="wrap_cont原创 2017-02-21 14:52:24 · 1492 阅读 · 0 评论 -
AndroidStudio集成SVN
在setting中添加需要过滤的文件做出相应的设置按照下列步骤完成配置完成后项目应该是这个样子初次上传,需要一定的时间底部进度条完成后,跳出提示,表示成功原创 2017-02-14 17:32:36 · 465 阅读 · 0 评论 -
Glide图片加载使用心得
更详细的文档:https://mrfu.me/2016/02/27/Glide_Getting_Started/Glide.with(getContext())//Context,Activity,FragmentActivity,Fragment 上下文对象 .load("http://img3.imgtn.bdimg.com/it/u=214931719,160原创 2017-03-10 15:03:04 · 452 阅读 · 0 评论 -
Activity的LaunchMode和应用场景
首先Activity的启动模式就是栈类型所有我们创建的Activity都会被我们放进任务栈中,任务栈是一种"后进先出"的栈结构,每按一次back键就会有一个Activity出栈,直到任务栈为空,系统就会回收这个任务栈.(一)standard 标准模式:每次启动一个Activity如果没有在注册清单中声明,那么它的默认启动方式就是standard,不管实例有没有存在,都会新创建一个实原创 2017-03-28 15:38:17 · 587 阅读 · 0 评论 -
多个Spinner同时监听,判断是哪个Spinner做了回调
首先有3个spinner控件,分别是性别、民族、学历 为其添加适配器和数据源//性别spinner和适配器String[] sex = getResources().getStringArray(R.array.sexs);ArrayAdapter adapterSex = new ArrayAdapter(this,android.R.layout.simple_spinn原创 2017-03-13 11:56:48 · 4260 阅读 · 0 评论 -
Android中多图片选择器PhotoPicker库的使用(仿微信)
PhotoPicker基于 donglua/PhotoPicker、lovetuzitong/MultiImageSelector 修改的一个图片选择类库。Gradlecompile 'com.foamtrace:photopicker:1.0'效果图 使用方法ImageConfig可选属性, 用于过滤照片列表信息。Im转载 2017-03-30 17:17:15 · 4565 阅读 · 0 评论 -
混淆规则
转自: http://blog.csdn.net/catoop/article/details/47208833简介Java代码是非常容易反编译的。为了很好的保护Java源代码,我们往往会对编译好的class文件进行混淆处理。ProGuard是一个混淆代码的开源项目。它的主要作用就是混淆,当然它还能对字节码进行缩减体积、优化等,但转载 2017-04-11 09:39:01 · 2406 阅读 · 0 评论 -
安卓6.0权限适配 ----RxPermissions
原文地址 http://blog.csdn.net/windboy2014/article/details/52502259RxPermissions项目地址:https://github.com/tbruyelle/RxPermissions1.简介RxPermissions是基于RxJava开发的用于帮助在Android 6.0中处理运行时权限检测的框转载 2017-04-14 15:22:54 · 1642 阅读 · 0 评论 -
富文本解析器使用心得
RichTextAndroid平台下的富文本解析器流式操作低侵入性支持Html和Markdown格式文本支持图片点击和长按事件链接点击事件和长按事件支持设置加载中和加载错误时的图片支持自定义超链接的点击回调支持修正图片宽高支持GIF图片支持Base64编码自持自定义图片加载器支持内存和磁盘双缓存gradle中引用的方法compile 'com原创 2017-05-16 09:53:58 · 2776 阅读 · 0 评论 -
Android多进程
Android多进程多进程启动方式只有一种:在Mainfest.xml中声明四大组件的属性(android:process)一般来说,使用多进程会造成如下几方面的问题:静态成员和单例模式完全失效线程同步机制完全失效SharedPreference的可靠性下降.Application会多次创建第一个问题:Android为每个应用都分配了虚拟机,或者说为每个进程分配了虚拟机,不用的虚拟机在内存原创 2017-06-27 14:52:28 · 427 阅读 · 0 评论 -
Android中多图片选择器ImagePicker库的使用(仿微信、非常容易集成)
原文地址: https://github.com/jeasonlzy/ImagePickerImagePickerAndroid自定义相册,完全仿微信UI,实现了拍照、图片选择(单选/多选)、 裁剪 、旋转、等功能。由于个人时间有限,该项目停止维护如果你发现有bug,或者好的建议,可以提merge request,我测试通过后会立即合并并发布新版本,确保该库处于可用的状态。该项目参考了:https...转载 2017-03-31 09:37:01 · 28337 阅读 · 21 评论 -
广告栏(自动轮播,无限循环)-图片轮播控件Banner的简单使用总结
Gradledependencies{ compile 'com.youth.banner:banner:1.1.5' //指定版本 compile 'com.youth.banner:banner:+' //最新版本}常量方法名描述Banner.NOT_INDICATOR不显示指示器和标题Banner原创 2017-01-03 16:26:17 · 4610 阅读 · 0 评论