
Android进阶
文章平均质量分 93
做一个纯粹的技术人,希望能帮到需要的人!
黄小梁
新时代,做一个有技术的农民工。
展开
-
Android RecyclerView滚动到指定位置并且置顶方案
之前相关项目一直有用到RecyclerView,其中很多地方都需要列表滚动到某个位置,即RecyclerView滚动到指定位置,所以我们今天来总结下实现的方案。 在实现方案之前先了解下RecyclerView和滑动有关的几个方法:scrollTo(int x, int y)和scrollBy(int x, int y),前者无法实现滚动,里面是空实现;后者控制具体的滚动距离。scrollToPosition(int position),可以滚动到指定条目,但是当指定条目显示在屏幕中就不会滚动的也.原创 2021-09-02 20:42:38 · 10833 阅读 · 1 评论 -
MTPopup,Android一个简单强大的弹框
断断续续地,利用工作之余的不少时间才整合了这个XPopup。虽然没啥高深的技术,但是我认为这个库能给大家在项目上带来些许方便吧,使用它,大家就不必频繁的新建class了,直接链式调用,差不多所有的逻辑都可在上面完成,并且覆盖了Android所有的弹框类型,总结起来就是调用简单、功能强大。...原创 2022-05-11 20:29:06 · 3793 阅读 · 2 评论 -
Android 说说Bitmap那些事
过了一个年,发现自己懈怠,没怎么去写博客了,项目中遇到的问题也很想把它写出来,但是都没有付诸行动,最近重构完项目的一些烂代码,闲下来时也是时候把项目中遇到的问题分享给大家。好了,唠叨说完,今天主要说下图片压缩那些事,在Android开发中,我们无可避免地都会和图片打交道,其中图片压缩就是我们比较常见和棘手的问题,处理过程中需要注意失真和内存的问题:图片马赛克了,业务或测试就找上门了;Android大量位图(Bitmap)加载导致内存溢出。Android加载图片的对象就是我们老生常谈的Bitmap了,Bit.原创 2022-03-09 22:34:00 · 5869 阅读 · 1 评论 -
MVPArch - Android MVP 快速开发框架
MVPArch一个可有效提高Android开发效率的MVP框架封装Activity/Fragment基类-BaseActivity/BaseFragment(Fragment懒加载开关配置)封装MVP模式Activity/Fragment基类-BaseMVPActivity/BaseMVPFragment,V与P层生命周期监听和绑定,解决诸多内存泄漏问题使用 LoadingHelper实现可定制化的页面LCE视图LoadingDialog加载框定制化,可随意切换使用TitleBar 实现可全原创 2021-09-24 18:23:34 · 1582 阅读 · 1 评论 -
Android 优雅地管理Dialog弹框
我们应该都知道任何一个app的UI都会遵循一个统一的样式,比如我们的Dialog、Log、Toast等,统一管理好自己的组件库,对自己或后来人都会有很大地帮助的。记得自己刚开始接手某个项目时,发现这个项目什么规范都没有,命名啥的也不规范,虽然有一些统一管理的工具类,但是写地真是烂,唉,说多了都是泪。。。。接下来讲解下小球项目里Dialog,我们项目中Dialog居中显示,属性有标题、内容、按钮(1或2个),如我们的布局文件dialog_common_view.xml<?xml version="1.原创 2021-09-18 10:16:34 · 1249 阅读 · 1 评论 -
Android 组件导出风险及防范
文章目录前言一、四大组件二、组件导出必要性三、组件导出风险四、如何防范总结前言近年来,移动APP存在一个非常的重要的问题就是安全问题,造成的后果有可能是用户的隐私泄露和财产损失等,对于一款成熟的APP或者是金融银行类APP,这无疑是最致命的,所以对APP进行有效的防范也是很有必要。近段时间,公司安排了某安全公司对我们的APP进行了全方面的安全测试,根据文档检测结果看,整体上看还是很安全的,其中有一项就是组件导出风险,接下来我们说说四大组件、组件导出必要、风险以及如何防范。一、四大组件从事An原创 2021-09-08 18:32:04 · 6138 阅读 · 4 评论 -
Android Activity防劫持方案
最近,安全合规部门又对金融类、银行类app进行了大规模的多方面安全检查,其中有一项安全问题:Activity劫持。其实Android界面防劫持我们app这边也是做了的,但是为啥还会有这些问题呢?自我感觉就是绝不会有此类问题,于是我们向检测部门要了劫持工具,但是事实往往是打脸的。。。。。那么什么是Activity劫持呢?简单的说就是我们APP正常的Activity界面被恶意攻替换上仿冒的恶意Activity界面进行攻击和非法用途。界面劫持攻击通常难被识别出来,其造成的后果必然会给用户带来严重损失。举个例.原创 2021-08-25 19:02:56 · 5154 阅读 · 3 评论 -
Android 申请权限前简单封装弹框阐述申请理由工具类,应付app合规检查
近段时间,经常在网上看到,工信部通报很多app合规检查不合格,拒不整改,勒令全部下架这些新闻…确实自己也感觉到了这些年国家对互联网和app的整治风向和对于用户信息保护的决心。对于app的专项整改中,有一项就是app权限申请的规范:权限申请前需要向用户阐明申请权限的用处,接下来就是简单地封装了权限申请提示语弹框工具类,在申请权限时统一弹框阐明app申请权限地用处。项目中用到地三方权限申请框架是uitlcode库中...原创 2021-08-21 13:18:35 · 5610 阅读 · 6 评论 -
Android 最强RecyclerView分割线XRecyclerViewDivider重磅来袭!!
目录前言一、分割线绘制原理二、XRecyclerViewDivider的功能1.LinearLayoutManager2.GridLayoutManager2.StaggeredGridLayoutManager总结前言沉浸在Android前端这几年里,接触最多的业务就是RecyclerView列表展示数据了,每次写到需要分割线时都是到网上copy,有时候一些分割线又不能满足需求,只能在布局上做文章。虽然这样可以实现需求,但是总感觉这样写会写很多重复的代码,这边添加了View,那边又设置paddin原创 2021-06-02 22:23:23 · 3293 阅读 · 6 评论 -
Android 左右竖直滚动的Table(二)
前言 大家好呀,最近烦事特别多,现在好不容易静下心写第二篇Table系列文章,第一篇文章:Android 左右竖直滚动的Table(一)主要是用HorizontalScrollView+NestScrollView+RecyclerView实现Table复杂的滚动效果(效果动图可看上面第一篇文章),但是这个会带来一个致命的问题就是Item的不能够复用,因为ScrollView的特性,它会一次性渲染全部的item,所以数据量到几百的时候,要很久才能进来这个页面,这个东西给产品经理看到还不diss你。。。嗯原创 2021-05-29 01:30:41 · 573 阅读 · 2 评论 -
Android 左右竖直滚动的Table(一)
前言最近项目中接触的表格设计需求有点多,提示:这里可以添加本文要记录的大概内容:例如:随着人工智能的不断发展,机器学习这门技术也越来越重要,很多人都开启了学习机器学习,本文就介绍了机器学习的基础内容。提示:以下是本篇文章正文内容,下面案例可供参考一、pandas是什么?示例:pandas 是基于NumPy 的一种工具,该工具是为了解决数据分析任务而创建的。二、使用步骤1.引入库代码如下(示例):import numpy as npimport pandas as pdimport原创 2021-05-24 00:37:55 · 1661 阅读 · 2 评论 -
Android https 自签名和CA证书验证(基于OkHttp)
Android HTTPS自签名和CA证书验证(基于OkHttp)HTTPS介绍场景HTTPS介绍HTTPS是一种通过计算机网络进行安全通信的传输协议,经由HTTP进行通信,利用SSL/TLS建立全信道,加密数据包。HTTPS使用的主要目的是提供对网站服务器的身份认证,同时保护交换数据的隐私与完整性。简单来说,HTTPS就是“安全版”的HTTP, HTTPS = HTTP + SSL。HTTPS相当于在应用层和TCP层之间加入了一个SSL/TLS,SSL层对从应用层收到的数据进行加密。TLS/SSL中原创 2020-11-12 20:56:09 · 8565 阅读 · 5 评论 -
Android正确使用Scheme协议打开App,兼容浏览器scheme的二次跳转
Android中使用Scheme协议打开AppURL SchemeURL Scheme是一种页面内跳转协议,通过定义自己的URL Scheme协议,可以从一个APP中打开另外一个APP指定的页面,也可以从H5页面中跳转到APP指定的页面(实际上就是从一个浏览器中的一个页面跳转到APP指定页面)。URL Scheme协议格式:一个完整的完整的URL Scheme协议格式由scheme、host、port、path和query组成,其结构如下所示:<scheme>://<host&原创 2020-08-14 11:20:49 · 21528 阅读 · 7 评论