自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(16)
  • 收藏
  • 关注

原创 Handler

Handler:《消息管理机制:消息》-事务;线程间通信只是我们handler的一个附属的功能,handler真正的功能则是:我们所有的代码,都是在handler中运行,维持着我们Android app运行时的框架 Handler机制整个调用流程 handler.sendMessage(开始)-〉 messageQueue.enqueueMessage()将消息放到消息队列里面去-》 looper.loop()-〉 messagequeue.ne...

2021-01-25 16:25:38 175

原创 策略模式

/** * 定义一个策略接口 */interface Strategy { void strategyMethod(String text);}/** * 策略A实现接口,打印planeA */public class StrategyA implements Strategy { @Override public void strategyMethod(String text) { System.out.println("我是planeA

2021-01-19 14:06:47 154 1

原创 volatile、jvm、hashmap、http、socket

volatile:用于将变量标记为“储存于主内存中”。意思就是将变量储存于主内存中,而不是储存在cpu缓存中;相同的读取也是从主内存中读取,而不是从cpu缓存中读取 可见性:多线程进行操作时,只要一个线程使数据发生了变化,其他线程也能看到变化 happens-before保证:保证所有的volatile对象读写操作都在读写之后执行,不会被jvm重排序 不能确保原子性 http:基于tcp/ip协议的一个短连接 Socket:是一个抽象层;是对tcp/ip协议的一个封装,用户能通过socket

2021-01-18 15:55:09 156

原创 注解、死锁、多线程、动态代理、jvm调优

注解原理 注解本质是一个继承了Annotation的特殊接口,其具体实现类是Java运行时生成的动态代理类。我们通过反射获取注解时,返回的是Java运行时生成的动态代理对象。通过代理对象调用自定义注解的方法,会最终调用AnnotationInvocationHandler的invoke方法。该方法会从memberValues这个Map中索引出对应的值。而memberValues的来源是Java常量池。 死锁的预防及形成 死锁的四个必要条件:互斥、请求与保持、不可剥夺、循环等待

2021-01-18 11:30:20 77

原创 TCP三次握手,四次挥手

为什么建立连接要三次握手,断开连接要四次挥手(在服务端收到FIN报文时,客户端已经断开了连接,但是服务端的数据未必全部发送完了) 这是因为服务端在LISTEN状态下,收到建立连接请求的SYN报文后,把ACK和SYN放在一个报文里发送给客户端。而关闭连接时,当收到对方的FIN报文时,仅仅表示对方不再发送数据了但是还能接收数据,己方也未必全部数据都发送给对方了,所以己方可以立即close,也可以发送一些数据给对方后,再发送FIN报文给对方来表示同意现在关闭连接,因此,己方ACK和FIN一般都会分开发送。

2021-01-18 10:56:02 53

原创 TCP 和 UDP

tcp是有连接的,udp是无连接的tcp安全有序,udp不安全无序,如果数据报太大可能会导致丢包tcp需要先建立连接才能进行通讯,udp是无连接的,他的每个数据报中都给出了完整的地址信息tcp不限制传输数据的大小,udp最大只能传输64kb的数据报tcp传输效率不如udp高应用:TCP在网络通信上有极强的生命力,例如远程连接(Telnet)和文件传输(FTP)都需要不定长度的数据被可靠地传输。但是可靠的传输是要付出代价的,对数据内容正确性的检验必然占用计算机的处理时间和网络的带宽,因此TC.

2021-01-16 17:12:09 82

原创 wait和sleep

wait sleep Object类 Thread类 需要获取对象的锁,lock,并且要在锁下进行操作 直接调用thread.sleep 需要释放,notify/notifyAll/lock.wait(1000s) 设置的时间结束后自动继续执行操作 一般在多线程中使用 一般在单线程中使用 放弃...

2021-01-16 16:59:58 65

原创 String、StringBuffer、StringBuilder

String StringBuffer StringBuilder JDK1.0 JDK5.0 字符串常量,内容不可变 字符串变量,线程安全 字符串变量,线程不安全 发生改变时,一般是生成一个新的String对象,然后指针指向这个新的对象,所以内容经常改变的对象最好不要用String,因为每次生成新对象的时候,都会对系统的...

2021-01-16 16:57:24 92 1

原创 关于ButterKnife使用时的一些问题

关于ButterKnife使用时的一些问题 ButterKnife大家一定都很熟悉,多的我就不介绍了,这里我记录一个在使用过程中碰到的问题在新的项目中引入ButterKnife,并且开始使用的时候,可能会碰到空指针异常,并且这个空指针报错信息一般都是Attempt to invoke virtual method 'void android.widget.TextView.setText(java.lang.CharSequence)' on a null object reference这

2020-08-27 16:32:10 330

原创 有关Bugly全量更新使用时的一些常见问题

Bugly使用时的一些常见问题不出现更新弹窗 一般遇到这种情况,首先要判断是哪一步出现了问题,下面我罗列一些常见情况:检查Bugly配置是否正确,版本号是否比上个版本高,更新状态是否已启动app版本是否最新,若是最新版本当然不能更新了检查Bugly设置中,AppId是否和应用用设置的AppId保持一致5.若是以上配置都没问题,最后有一种情况就是,你上个app版本里的appId可能是配置错的,导致无法从上个版本更新到当前最新版本。(Bugly如果你上个版本appid配置是正确的

2020-08-13 11:02:26 1287

原创 AMapLocationListener 高德地图定位监听

AMapLocationListener 高德地图定位监听app内很多地方需要用到定位信息,我就自己封装了一个基于高德地图定位监听的类,以便于获取定位权限,和方便调用定位监听事件。我这边继承了LifecycleObserver,将定位事件和acticity的生命周期绑定在了一起,这样的话即便一开始定位没开或者获取定位失败了,还能在后面继续获取定位信息。AMapLocationListenerpackage cn.sunsapp.owner.util;import android.content.

2020-06-22 15:59:17 4269

原创 高得地图 +数据绑定(databinding) + BaseQuickAdapter 自定义地图选点!

自定义地图选择器 根据传入的经纬度定位到指定位置,如果为空就定位到当前所在位置 根据用户输入的字符串显示poi联想数据列表,点击item把对应的位置显示在地图上 点击确认按钮根据eventbus将数据回传 好了。话不多说,直接开冲!!!MapActivitypackage cn.sunsapp.owner.controller.activity;import android.graphics.Color;import android.location.Location

2020-06-22 14:50:52 1795

原创 Android XPopup弹窗

XPopup

2020-05-30 17:52:06 10925 3

原创 Android 查看应用MD5签名最简单的方法

Android 查看应用MD5签名最简单的方法近期公司要接入通过手机号码一键登录app的功能,这样就用到了中国移动的一键登录功能,这功能又要使用到

2020-05-30 14:02:33 3836 3

原创 BackgroudLibrary 通过标签直接生成shape,无需再写shape.xml,你值得拥有!!!

BackgroundLibraryHello,时隔多日,我球球又给大家来整活了,话不多说,喜欢的朋友点赞收藏➕关注,开冲!A framework for directly generating shape through Tags, no need to write shape.xml again(通过标签直接生成shape,无需再写shape.xml)上述描述为BackgroundLibrary在GitHub的官方描述,可以看出,它相当于一个类库,来帮助我们更加简.

2020-05-27 14:20:42 1662

原创 EventBus 3.0 事件公交车

EventBus 3.0 使用方法以及使用过程中遇到的一些问题嗯~本人为Android萌新程序猿一枚这是我在博客写的第一篇文章,怀着忐忑的心情终于落笔了各位来自天南海北的再生父母们,喜欢的话可以加个关注,点个赞(能打赏的话那真的是给您磕头了),谢谢铁汁????好了,废话不多说,直接开冲EventBus简介EventBus是一个Android端优化的publish/subscribe消息总线,简化了应用程序内各组件间、组件与后台线程间的通信。比如请求网络,等网络返回时通过

2020-05-22 17:15:51 993

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除