![](https://img-blog.csdnimg.cn/20201014180756916.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
android
文章平均质量分 77
Lespayne
追一个梦
展开
-
各大应用商店隐私政策出现的问题和更新
(1)APP、SDK未告知用户收集个人信息的目的、方式、范围且未经用户同意,私自收集用户个人信息的行为。修改提示:SmartyPants将ASCII标点字符转换为“智能”印刷标点HTML实体。如果APP中有“个性化推荐”、“为你推荐”等功能,需要给个性化推荐功能加上开关,并在。未经用户 同意,私自使用个人信息或私自向服务器发送共享个人信息。(3) 短时长、高频次,在用户明确拒绝权限申请后,频繁弹窗。(2)申请与当前服务场景无关权限的行为。(4)拒绝权限请求后无法进入App。原创 2022-09-29 16:00:54 · 3481 阅读 · 1 评论 -
项目架构之----注解反射
最近一段时间在重新整理项目架构,在整理过程中把一些有用的东西分享一下。那么注解和反射就手写butterknife来解释一下吧~1.注解的原理:我们可以理解为注解就是通过反射机制,调用注解标记的方法,实现和直接用对象调用方法一样的操作。2.注解使用 @interface (kotlin 使用 annotation)标记类,用@Target来描述它的作用范围,用@Retention描述它的生命周期。Target作用范围@Target(AnnotationTarget.CLASS)@Target(Ann原创 2022-03-03 11:10:45 · 2475 阅读 · 0 评论 -
RecyclerView缓存
RecyclerView分为四级缓存RecyclerView根据不同的状态可以分为:屏幕内缓存、屏幕外缓存、自定义缓存、缓存池。RecyclerView是通过内部类Recycler来管理缓存。一级缓存:屏幕内缓存(mAttachedScrap)屏幕内缓存指在屏幕中显示的ViewHolder,这些ViewHolder会缓存在mAttachedScrap、mChangedScrap中 :mChangedScrap 表示数据已经改变的ViewHolder列表,需要重新绑定数据(调用onBindViewHo原创 2022-01-04 13:43:02 · 1978 阅读 · 0 评论 -
Handler源码分析
Handler源码分析发送消息消息入队消息循环消息遍历消息的处理同步屏障机制阻塞唤醒机制总结Handler采用的一种生产者-消费者模型,handler就是生产者,通过它可以生产 需要执行的任务,而Looper则是消费者,不断从MessageQueue中取出Message对这些消息进行消费,下面我们看一下其具体的实现。发送消息关于post & sendMessageHandler 对外主要有两种方式来实现在其所在 Looper 所在线 程执行指定 Runnable——post 及 sendMe原创 2021-05-08 15:05:25 · 91 阅读 · 0 评论 -
转:Android系统架构
关于Android系统Android,本义指“机器人”,是Google于2007年11月5日宣布的基于Linux平台的操作系统。Android系统优缺点开放性在优势方面,Android平台首先就是其开发性,开发的平台允许任何移动终端厂商加入到Android联盟中来。显著的开放性可以使其拥有更多的开发者,随着用户和应用的日益丰富,一个崭新的平台也将很快走向成熟。开发性对于Android的发展而言,有利于积累人气,这里的人气包括消费者和厂商,而对于消费者来讲,最大的受益正是丰富的软件资源。开放的平台.转载 2020-06-04 10:04:57 · 403 阅读 · 0 评论 -
Android sdk 21~23 WebView加载报错
今天适配完成AndroidQ,Android5.1.1又出幺蛾子了,线上App首页大促活动崩了,首页A类活动....这是不是绩效都要清0了。拿出我尘封5000年的三星note3搞一波事情,我的天刚进去就炸了。啥都没干.......这怪谁...只能撸起袖子直接干,1、先找找问题在哪,刚开始以为是Android问题,定位bitmap对象发现根本不是,这是H5的问题呀2、自以为是H5的问题,然后去怼H5小姐姐,咋回事你们搞的我们加载不出来了。然后H5小姐姐就把去年的活动拉出来,结果还是加载不出来。去年原创 2020-05-28 10:43:45 · 775 阅读 · 0 评论 -
友盟Android10 (Q) 踩坑指南
友盟Android10的适配踩坑记录一下,经过上次升级AndroidX和AndroidQ之后,一直以为万事大吉,知道最近上线的时候才发现了问题。Android10手机初始化友盟崩溃........1、请看友盟大兄弟的代码老哥啊,竟然没有判空,这还怎么玩文档上面写的又是 U-push的6.0.1是最新的,万般无奈只能找友盟客服小姐姐去处理了,结果客服小姐姐说可以看里面的集成文档。what? 集成文档是6.0.5!!!那么撸起袖子搞他2、升级了半天才发现是我眼神不好使,明明是 com.ume..原创 2020-05-27 16:42:08 · 1407 阅读 · 2 评论 -
Android 10的适配
自从项目升级AndroidX之后,以前弄过的一些东西都不怎么好使了,关键的一些第三方库也需要升级,说道为啥使用Androidx,这就是个问题了,某天不小心把sdk升级到29之后发现support 库不维护了......(咋的,活不起了不想干活了吗),瞬间感觉自己是不是饭碗没了,不管三七二十一先百度一番,终于才知道jetpack新生态。算了扯远了 先聊聊Android10 需要升级的东西吧!!!1、需要重点升级的第三方库 Glide 4.11.0、友盟等,2、support 换Androidx 库..原创 2020-05-27 10:28:37 · 518 阅读 · 0 评论 -
kotlin-理解mvvm(二)
先说一下源码:mvvm地址前段时间在空闲的时间准备重写一下mvp,升级sdk的时候发现support包不推荐使用了......这是啥情况,不明觉厉的百度了一下才知道jetpack这么个东西。这是饭碗快没了呀,赶紧百度来一梭子代码看看到底需要什么样的神操作。看过别人的mvvm(我是谁?我在哪?我写的啥!)abstract class BaseActivity<VM : BaseViewModel, DB : ViewDataBinding> : AppCompatActivity()原创 2020-05-08 17:37:15 · 316 阅读 · 0 评论 -
kotlin-实战迁移项目(一)
说到基础就想起的是面向对象、封装、继承、多态......之类的,以前学习kotlin的时候都是从kotlin教程上学习简单的东西。学习完之后新需求就迎面而来,重构项目的计划就搁浅了(当时自己也真是想当然的以为kotlin没啥东西)。最近空余时间终于下手了公司项目才发现迁移起来有多麻烦1、数据类 java上面一个数据类型比如user ,省去了set、get方法。data clas...原创 2020-05-05 15:20:24 · 181 阅读 · 0 评论 -
Android 自定义Toast类
吐司是我们开发中常用到的,系统的吐司样式单一,位置获取麻烦.....(反正就是感觉拖泥带水的不干脆 ε=(´ο`*)))唉 ),最近上班之余搞搞MVP的基础框架,想到了写个自定义的吐司。主要为了简单,想了好久发现不会简化,那就搞个麻烦的。1、羡慕人家Glide的链式结构,自己也搞个出来 public static ToastUtils with(Context conte...原创 2019-08-02 17:11:03 · 265 阅读 · 1 评论 -
Viewpager自动循环播放
Viewpager的无限循环方式有两种,网上有很多现成的例子1、第二种就是无限型,在pagerAdapter的getCount方法设置一个很大的值 ① @Override public int getCount() { return Integer.MAX_VALUE; }这个值设置的比较大就可以 , 还有好多文章设置10000、1...原创 2019-03-29 13:38:27 · 320 阅读 · 0 评论 -
使用Retrofit+Rxjava实现轮播
ConvenientBanner实现轮播图效果转载请标明:http://write.blog.csdn.net/mdeditor#!postId=78402111本文是使用Retrofit+Rxjava及ConvenientBanner实现轮播效果,先看看效果: 轮播图效果实现步骤:1、集成第三方框架2、使用GsonFotmat生成BannerEntity3、BannerService接口原创 2017-10-31 12:40:50 · 428 阅读 · 0 评论