一个灵活的胖子的进击之路
文章平均质量分 71
早计划,早准备,早完成。
仅以此专栏记录我从小白的进击之路。
该专栏为我原创博客的汇总,所有原创均经过本人使用、测试无误后编写。欢迎大家前来交流学习、批评指正。
一个灵活的胖子_Mr.Wang
早计划,早准备,早完成。
GitHub:https://github.com/wangyang0313
简书:https://www.jianshu.com/u/e5e733d79b96
微信公众号:一个灵活的胖子MrWang
欢迎关注!交流!Star!
展开
-
Android 危险权限与所有权限大全
Android 危险权限大全自定义危险权限组工具类,供动态权限申请时使用。PermissionsDangerousGroupUtil 权限组(名称) 权限 权限名称 权限描述 CALENDAR(日历) android.permission.READ_CALENDAR ...原创 2020-04-08 21:46:10 · 1050 阅读 · 0 评论 -
工具篇——ThreadPoolUtil(用于进行线程的管理,防止重复创建、杀死线程)
代码如下:package com.wy.test.other;import android.support.annotation.NonNull;import java.util.concurrent.LinkedBlockingQueue;import java.util.concurrent.ThreadFactory;import java.util.concurrent....原创 2020-04-07 23:18:05 · 4626 阅读 · 3 评论 -
工具篇——PermissionsDangerousGroupUtil(用于动态权限的申请)
代码如下:package com.suirui.meetingcontrol.utils;import android.Manifest;import android.os.Build;/** * 危险权限组工具类 * 用于动态权限的申请 */public class PermissionsDangerousGroupUtil { public static fi...原创 2020-04-07 22:31:16 · 1193 阅读 · 0 评论 -
基础篇——抽象类和接口的区别
写代码的四点: 1.明确需求。要做什么? 2.分析思路。要怎么做?(1,2,3……) 3.确定步骤。每一个思路要用到哪些语句、方法和对象。 4.代码实现。用具体的语言代码将思路实现出来。学习新技术的四点: 1.该技术是什么? 2.该技术有什么特点?(使用需注意的方面) 3.该技术怎么使用?(写Demo)...原创 2018-10-25 14:35:11 · 319 阅读 · 0 评论 -
基础篇——四种启动模式
写代码的四点: 1.明确需求。要做什么? 2.分析思路。要怎么做?(1,2,3……) 3.确定步骤。每一个思路要用到哪些语句、方法和对象。 4.代码实现。用具体的语言代码将思路实现出来。学习新技术的四点: 1.该技术是什么? 2.该技术有什么特点?(使用需注意的方面) 3.该技术怎么使用?(写Demo)...原创 2018-10-24 17:36:52 · 620 阅读 · 0 评论 -
算法篇——冒泡排序
冒泡排序:对数组进行升序或降序的排序。原理:(以升序为例) 使用双重循环,依次比较数组中相邻的两个数,将小数放在前面,大数放在后面。 即第一趟:首先比较第1、2两个数,将小数放前,大数放后。然后比较第2、3两个数,将小数放前,大数放后。以此类推,直至比较最后两个数。至此第一趟结束,将最大的数放到了最后。 第二趟:仍然比较第1、2两个...原创 2018-10-12 17:34:16 · 245 阅读 · 0 评论 -
基础篇——重载(Overloading)和重写(Overriding)的区别
写代码的四点: 1.明确需求。要做什么? 2.分析思路。要怎么做?(1,2,3……) 3.确定步骤。每一个思路要用到哪些语句、方法和对象。 4.代码实现。用具体的语言代码将思路实现出来。学习新技术的四点: 1.该技术是什么? 2.该技术有什么特点?(使用需注意的方面) 3.该技术怎么使用?(写Demo)...原创 2018-10-11 17:58:12 · 504 阅读 · 0 评论 -
基础篇——final、finally、finalize的区别
写代码的四点: 1.明确需求。要做什么? 2.分析思路。要怎么做?(1,2,3……) 3.确定步骤。每一个思路要用到哪些语句、方法和对象。 4.代码实现。用具体的语言代码将思路实现出来。学习新技术的四点: 1.该技术是什么? 2.该技术有什么特点?(使用需注意的方面) 3.该技术怎么使用?(写Demo)...原创 2018-10-11 18:05:07 · 420 阅读 · 0 评论 -
基础篇——创建线程的两种方式
写代码的四点: 1.明确需求。要做什么? 2.分析思路。要怎么做?(1,2,3……) 3.确定步骤。每一个思路要用到哪些语句、方法和对象。 4.代码实现。用具体的语言代码将思路实现出来。学习新技术的四点: 1.该技术是什么? 2.该技术有什么特点?(使用需注意的方面) 3.该技术怎么使用?(写Demo)...原创 2018-10-11 18:19:05 · 398 阅读 · 0 评论 -
算法篇——二分查找法(折半查找法)
二分查找法(折半查找法):查找数组中是否包含指定元素。如果包含指定元素,则返回指定元素的index(从0开始);如果不包含指定元素,则返回-1; 前提:数组中的元素必须是有序的。 原理: 将被查找的数组分为三部分,依次是中值前、中值、中值后,将指定元素和数组的中值进行比较,如果指定元素小于中值则在(中值前)中找,如果指定元素大于中值...原创 2018-10-09 16:35:20 · 11791 阅读 · 0 评论 -
工具篇——DateUtil(用于获取时间)
写代码的四点: 1.明确需求。要做什么? 2.分析思路。要怎么做?(1,2,3……) 3.确定步骤。每一个思路要用到哪些语句、方法和对象。 4.代码实现。用具体的语言代码将思路实现出来。学习新技术的四点: 1.该技术是什么? 2.该技术有什么特点?(使用需注意的方面) 3.该技术怎么使用?(写Demo)...原创 2018-09-25 16:51:33 · 12149 阅读 · 0 评论 -
工具篇——NullMenuEditText(禁止复制粘贴功能的EditText)
写代码的四点: 1.明确需求。要做什么? 2.分析思路。要怎么做?(1,2,3……) 3.确定步骤。每一个思路要用到哪些语句、方法和对象。 4.代码实现。用具体的语言代码将思路实现出来。学习新技术的四点: 1.该技术是什么? 2.该技术有什么特点?(使用需注意的方面) 3.该技术怎么使用?(写Demo)...原创 2018-09-21 14:04:46 · 570 阅读 · 0 评论 -
基础篇——泛型(Generics)
写代码的四点: 1.明确需求。要做什么? 2.分析思路。要怎么做?(1,2,3……) 3.确定步骤。每一个思路要用到哪些语句、方法和对象。 4.代码实现。用具体的语言代码将思路实现出来。学习新技术的四点: 1.该技术是什么? 2.该技术有什么特点?(使用需注意的方面) 3.该技术怎么使用?(写Demo) ...原创 2018-09-13 16:58:27 · 339 阅读 · 0 评论 -
基础篇——View和ViewGroup的区别
写代码的四点: 1.明确需求。要做什么? 2.分析思路。要怎么做?(1,2,3……) 3.确定步骤。每一个思路要用到哪些语句、方法和对象。 4.代码实现。用具体的语言代码将思路实现出来。学习新技术的四点: 1.该技术是什么? 2.该技术有什么特点?(使用需注意的方面) 3.该技术怎么使用?(写Demo)...原创 2018-09-07 17:35:53 · 38007 阅读 · 14 评论 -
基础篇——Handler异步回调机制
写代码的四点: 1.明确需求。要做什么? 2.分析思路。要怎么做?(1,2,3……) 3.确定步骤。每一个思路要用到哪些语句、方法和对象。 4.代码实现。用具体的语言代码将思路实现出来。学习新技术的四点: 1.该技术是什么? 2.该技术有什么特点?(使用需注意的方面) 3.该技术怎么使用?(写Demo) ...原创 2018-08-27 15:15:58 · 1760 阅读 · 0 评论 -
Android 在Application中跳转到Activity的异常处理
项目需求:在Application中判断用户是否登录,如果登录则跳转到主页,如果未登录则跳转到登录页面。一般通过Intent跳转到Activity的方法:Intent intent = new Intent(this, MainActivity.class);startActivity(intent);在Application中通过以上方式跳转到Activity的话,会出现异常:原...原创 2018-08-13 11:54:33 · 8497 阅读 · 2 评论 -
Android 添加两个(多个)FileProvider节点(解决头像拍照和第三方SDK(例如融云)拍照的FileProvider冲突问题)
在android7.0以后,修改了对私有存储的限制,导致在获取资源的时候,不能通过Uri.fromFile(...)来获取Uri了;但是在写入数据的时候可以通过Uri.fromFile(...)来获取Uri。Android官方给出的方法是通过FileProvider来解决这一问题。 但是当此项目中用到了其它包含拍照功能的第三方SDK时,就会导致FileProvider冲突问题,因...原创 2018-08-12 12:37:18 · 1938 阅读 · 0 评论 -
工具篇——AESCBCUtil(用于AES加密解密)
写代码的四点: 1.明确需求。要做什么? 2.分析思路。要怎么做?(1,2,3……) 3.确定步骤。每一个思路要用到哪些语句、方法和对象。 4.代码实现。用具体的语言代码将思路实现出来。学习新技术的四点: 1.该技术是什么? 2.该技术有什么特点?(使用需注意的方面) 3.该技术怎么使用?(写Demo) ...原创 2018-08-01 16:43:49 · 7058 阅读 · 2 评论 -
Android 本地历史记录、及产品标签(支持单选、多选)实现(附源码)(使用鸿洋大神的FlowLayout开源库)
最近的项目需要做本地历史记录功能,以前写的有些过时了,就在网上查了查较好的开源库、实现方式等。最终选择了鸿洋大神的FlowLayout流式布局,再搭配SharedPreferencesUtil工具类来实现本地历史记录功能。同时FlowLayout开源库还非常适合实现产品标签(支持单选、多选)功能,所以在Demo中也有具体的使用,研究研究总是没错的。 开源库的下载、...原创 2018-07-26 17:05:26 · 2645 阅读 · 1 评论 -
Android 通用流行框架汇总(持续更新中)
本人GitHub项目(左源码、右博客)GitHub个人主页 ShoppingCarBestImplementations Android 购物车的最佳实现(博客) FragmentTabHostTwoImplementations 底部导航栏的两种实现(博客) InfiniteShufflingViewPager Android 自动无限轮播的轮播图(博客)...原创 2018-07-25 11:30:39 · 1054 阅读 · 0 评论 -
Android 底部导航栏的两种实现(附源码)(通过FragmentTabHost + Fragment实现)
Android底部导航栏是非常常见的功能,UI设计大致分为两种:第一种纯小图+文字组合;第二种除了小图+文字组合外,还将中间设置大图。两种方式都有很多APP使用,并无优劣,根据需求选用即可。在这里我用我最熟悉的FragmentTabHost+Fragment实现上述功能。 注:文章末尾附项目源码下载链接。 效果展示 主要功能包...原创 2018-07-20 17:29:57 · 10031 阅读 · 23 评论 -
Android 侧滑菜单栏SlidingMenu优化实现(附源码)(SlidingMenu + FragmentTabHost)
Android项目中使用侧滑菜单栏功能的有很多量级很大的APP,比如QQ、OFO、Mobike等,所以该功能属于较为常见的、用户熟悉的功能,因此可以在任意的项目中使用。我之前就用开源库SlidingMenu实现过侧滑菜单栏,尽管SlidingMenu已经很久没有维护了,我还是打算用它来实现,毕竟轻车熟路能避免很多坑,同时网上的经验也能帮助我使用的更加轻松。 使用S...原创 2018-07-19 15:54:12 · 5526 阅读 · 3 评论 -
Android 再按一次退出程序(模拟Home键退出)
Android项目中退出程序的方式有多种多样,但是基本的思想大致分为两种:1.通过finish()方法直接退出程序;2.模拟Home键操作退出程序。如果使用第一种方式finish()方法直接退出程序,那么当用户再次进入应用程序时,需要重新经过Splash、Advertisement等页面后,进入主界面并且需要重新请求数据。用户体验不好,并且浪费了用户的流量,因此不推荐使用。如果使用第二种方...原创 2018-07-18 18:12:27 · 1493 阅读 · 0 评论 -
Android 自动无限轮播的轮播图(附源码)(通过InfiniteShufflingViewPager解决冲突)
轮播图是绝大多数的项目都要实现的功能,因为比较常用且并不复杂,所以出现了各种各样的轮播图,今天就做一个可以自动无限轮播的轮播图。废话不多说,直接进入正题。 注:文章末尾附项目源码下载链接。 效果展示 主要功能包括:通过Handler实现自动无限轮播、小圆点背景选择器、InfiniteShufflingViewPager解决冲突、轮播图数量...原创 2018-07-10 16:49:05 · 3978 阅读 · 0 评论 -
工具篇——InfiniteShufflingViewPager(用于自动无限轮播的轮播图)
写代码的四点: 1.明确需求。要做什么? 2.分析思路。要怎么做?(1,2,3……) 3.确定步骤。每一个思路要用到哪些语句、方法和对象。 4.代码实现。用具体的语言代码将思路实现出来。学习新技术的四点: 1.该技术是什么? 2.该技术有什么特点?(使用需注意的方面) 3.该技术怎么使用?(写Demo) 4.该技术什么时候用?(在Pr...原创 2018-07-10 16:36:22 · 914 阅读 · 0 评论 -
工具篇——HtmlFilterUtil(过滤HTML标签)
写代码的四点: 1.明确需求。要做什么? 2.分析思路。要怎么做?(1,2,3……) 3.确定步骤。每一个思路要用到哪些语句、方法和对象。 4.代码实现。用具体的语言代码将思路实现出来。学习新技术的四点: 1.该技术是什么? 2.该技术有什么特点?(使用需注意的方面) 3.该技术怎么使用?(写Demo) 4.该技术什么时候用?(在Pr...原创 2018-07-06 15:06:54 · 7159 阅读 · 0 评论 -
工具篇——ScaleImageView(用于图片按比例缩放)
写代码的四点: 1.明确需求。要做什么? 2.分析思路。要怎么做?(1,2,3……) 3.确定步骤。每一个思路要用到哪些语句、方法和对象。 4.代码实现。用具体的语言代码将思路实现出来。学习新技术的四点: 1.该技术是什么? 2.该技术有什么特点?(使用需注意的方面) 3.该技术怎么使用?(写Demo) 4.该技术什么时候用?(在Pr...原创 2018-07-06 16:14:36 · 3007 阅读 · 0 评论 -
工具篇——JsonUtil(用于校验字符串是否是合法的JSON格式)
写代码的四点: 1.明确需求。要做什么? 2.分析思路。要怎么做?(1,2,3……) 3.确定步骤。每一个思路要用到哪些语句、方法和对象。 4.代码实现。用具体的语言代码将思路实现出来。学习新技术的四点: 1.该技术是什么? 2.该技术有什么特点?(使用需注意的方面) 3.该技术怎么使用?(写Demo) 4.该技术什么时候用?(在Pr...原创 2018-07-05 17:50:47 · 4913 阅读 · 0 评论 -
工具篇——MoneyFormatUtil(用于将人民币小写金额转换成大写金额)
写代码的四点: 1.明确需求。要做什么? 2.分析思路。要怎么做?(1,2,3……) 3.确定步骤。每一个思路要用到哪些语句、方法和对象。 4.代码实现。用具体的语言代码将思路实现出来。学习新技术的四点: 1.该技术是什么? 2.该技术有什么特点?(使用需注意的方面) 3.该技术怎么使用?(写Demo) 4.该技术什么时候用?(在Pr...原创 2018-07-05 17:17:00 · 1117 阅读 · 0 评论 -
工具篇——PhotoVerificationCodeUtil(用于生成图片验证码)
写代码的四点: 1.明确需求。要做什么? 2.分析思路。要怎么做?(1,2,3……) 3.确定步骤。每一个思路要用到哪些语句、方法和对象。 4.代码实现。用具体的语言代码将思路实现出来。学习新技术的四点: 1.该技术是什么? 2.该技术有什么特点?(使用需注意的方面) 3.该技术怎么使用?(写Demo) 4.该技术什么时候用?(在Pr...原创 2018-07-04 18:17:02 · 667 阅读 · 0 评论 -
Android 购物车的最佳实现(附源码)(通过ExpandableListView实现分店铺)
购物车是IT电商项目必不可少的功能之一,尽管该功能不算很复杂,但是却很重要。实现的方式也多种多样,就我而言就曾经通过三种方式开发过购物车:第一种方式是通过LinearLayout嵌套LinearLayout实现,这种方式会消耗更多的内存,数据过多时会造成页面的卡顿,还可能产生OOM异常,不可取;第二种方式是通过ListView嵌套LinearLayout实现,这种方式与第一种大同小...原创 2018-07-03 17:20:04 · 24491 阅读 · 53 评论 -
Android APK的代码混淆配置
程序猿经过漫长的项目开发之后,终于迎来了项目上线的曙光,这最后的一步就是APK代码混淆。代码混淆不仅仅能减少apk的体积,同时更是对我们劳动成果的保护、软件著作的尊重。混淆之后,一方面增加了被恶意破解、逆向解析的难度,另一方面也降低了代码的可阅读性,提高了软件的安全性。那么我们如何进行代码混淆配置呢?大致分为两步: 第一步:在app下的build.gradle文件中进...原创 2018-06-28 14:19:41 · 1873 阅读 · 0 评论 -
Android 开发、成长、辅助等工具汇总(持续更新中)
互联网的迅速发展,导致市面上各种各样的工具层出不穷,这本来是好事。但是过于频繁的尝试、更换工具,不仅仅浪费了我们的时间,最重要的是也影响了我们的成长。现如今同类工具的功能基本类似,优秀的ideal总会很快的被其它同类工具吸收消化,因此我们可以选择某一两种同类工具进行长期使用,可以有效的提高效率。 基于以上种种,我进行了该文章的编写,该文章仅作为对本人使用过的工具的...原创 2018-06-29 11:09:55 · 852 阅读 · 0 评论 -
工具篇——LogUtil(控制日志打印)
写代码的四点: 1.明确需求。要做什么? 2.分析思路。要怎么做?(1,2,3……) 3.确定步骤。每一个思路要用到哪些语句、方法和对象。 4.代码实现。用具体的语言代码将思路实现出来。学习新技术的四点: 1.该技术是什么? 2.该技术有什么特点?(使用需注意的方面) 3.该技术怎么使用?(写Demo) 4.该技术什么时候用?(在Pr...原创 2018-04-25 09:57:09 · 7951 阅读 · 0 评论 -
工具篇——MD5Util(加密字符串)
写代码的四点: 1.明确需求。要做什么? 2.分析思路。要怎么做?(1,2,3……) 3.确定步骤。每一个思路要用到哪些语句、方法和对象。 4.代码实现。用具体的语言代码将思路实现出来。学习新技术的四点: 1.该技术是什么? 2.该技术有什么特点?(使用需注意的方面) 3.该技术怎么使用?(写Demo)...原创 2018-04-25 16:10:23 · 14937 阅读 · 4 评论 -
工具篇——SharedPreferencesUtil(存放标记性数据和设置信息)
写代码的四点: 1.明确需求。要做什么? 2.分析思路。要怎么做?(1,2,3……) 3.确定步骤。每一个思路要用到哪些语句、方法和对象。 4.代码实现。用具体的语言代码将思路实现出来。学习新技术的四点: 1.该技术是什么? 2.该技术有什么特点?(使用需注意的方面) 3.该技术怎么使用?(写Demo)...原创 2018-04-25 16:32:17 · 4233 阅读 · 0 评论 -
工具篇——ToastUtil(覆盖上个Toast)
写代码的四点: 1.明确需求。要做什么? 2.分析思路。要怎么做?(1,2,3……) 3.确定步骤。每一个思路要用到哪些语句、方法和对象。 4.代码实现。用具体的语言代码将思路实现出来。学习新技术的四点: 1.该技术是什么? 2.该技术有什么特点?(使用需注意的方面) 3.该技术怎么使用?(写Demo)...原创 2018-04-26 10:08:28 · 909 阅读 · 0 评论 -
工具篇——ActivityCollectorUtil(随时随地的退出程序)
写代码的四点: 1.明确需求。要做什么? 2.分析思路。要怎么做?(1,2,3……) 3.确定步骤。每一个思路要用到哪些语句、方法和对象。 4.代码实现。用具体的语言代码将思路实现出来。学习新技术的四点: 1.该技术是什么? 2.该技术有什么特点?(使用需注意的方面) 3.该技术怎么使用?(写Demo) 4.该技术什么时候用?(在Pr...原创 2018-04-26 16:34:20 · 454 阅读 · 0 评论 -
工具篇——DensityUtil(dp与px的相互转换)
写代码的四点: 1.明确需求。要做什么? 2.分析思路。要怎么做?(1,2,3……) 3.确定步骤。每一个思路要用到哪些语句、方法和对象。 4.代码实现。用具体的语言代码将思路实现出来。学习新技术的四点: 1.该技术是什么? 2.该技术有什么特点?(使用需注意的方面) 3.该技术怎么使用?(写Demo) 4.该技术什么时候用?(在Pr...原创 2018-04-26 16:44:59 · 1945 阅读 · 0 评论 -
工具篇——DeviceIDUtil(获取设备ID)
写代码的四点: 1.明确需求。要做什么? 2.分析思路。要怎么做?(1,2,3……) 3.确定步骤。每一个思路要用到哪些语句、方法和对象。 4.代码实现。用具体的语言代码将思路实现出来。学习新技术的四点: 1.该技术是什么? 2.该技术有什么特点?(使用需注意的方面) 3.该技术怎么使用?(写Demo) 4.该技术什么时候用?(在Pr...原创 2018-04-26 16:50:46 · 8744 阅读 · 7 评论