自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

CatMan_yy的博客

千里之行,始于足下

  • 博客(18)
  • 收藏
  • 关注

原创 Kotlin开发遇到java.lang.VerifyError问题记录

在使用Kotlin+协程时,编译apk会抛出java.lang.VerifyError: Verifier rejected class …原因:某个被协程标记的supend方法使用了@JvmStatic注解,造成编译解析代码时出现Verify错误。解决方法:将supend方法的注解去掉。参考:https://stackoverflow.com/questions/59113152/java-lang-verifyerror-verifier-rejected-class-code-working-f

2022-03-12 15:42:34 4418

原创 安卓startActivity的流程 基于API-28的源码解析(上)

启动流程:点击桌面App图标,Launcher进程采用Binder IPC向system_server进程发起startActivity请求; system_server进程接收到请求后,向zygote进程发送创建进程的请求; Zygote进程fork出新的子进程,即App进程; App进程,通过Binder IPC向sytem_server进程发起attachApplication请...

2019-06-17 20:31:29 472

原创 Rxjava2.0 超时处理 -- Observable.timeout() 操作符的源码解析

在开发的过程中,有一个需求要求在进行网络请求的时候,响应速度超过500毫秒就取消请求并沿用本地缓存数据。这时候就想起Rxjava的TimeOut操作符:* Returns an Observable that mirrors the source ObservableSource but applies a timeout policy for each emitted* item....

2019-05-14 16:33:32 11624

原创 RxJava线程切换的原理

1.当观察者订阅主题(被观察者)时:会马上执行ObservableCreate()方法中的subscribeActual()方法 在subscribeActual()方法中创建CreateEmitter()的实例,CreateEmitter()接口实现了Emitter(onNext,onError,onComplete)和Disposeable接口 observer 调用onSubscr...

2019-05-06 20:24:26 1365

转载 线程池ThreadPool知识点汇总

原文:https://www.jianshu.com/p/0e4a5e70bf0e1.定义:缓存了一定线程数量的区域2.作用:a.复用线程,减少性能开销 b.管理线程,统一分配、调优&监控线程,控制线程池的最大并发量3.优点:a.降低因线程的创建&销毁带来的性能开销(重用缓存在线程池的线程) b.提高线程的响应...

2019-03-28 17:06:15 259

原创 对Binder的一些了解

一、Binder的概念1. 从IPC角度来说,Binder是Android中的一种跨进程通信方式2.Binder是基于C/S结构的一种面向对象的IPC机制。包含:Client、Server、Binder驱动和ServiceManager四大组成部分二、与传统Linux的通信机制对比1. 目前linux支持的IPC包括传统的管道,消息队列、共享内存、信号量,以及socket,...

2019-03-28 14:26:56 292

原创 Retrofit的使用

Retrofit2.0的优势:1.性能最好,处理最快 2.简洁易用(RestfulAPI设计风格) 3.代码简化(更加高度的封装和注解写法) 4.解耦更彻底,易于其他框架联合使用Step 1. 创建...

2019-03-15 00:25:48 259

原创 Java基础知识点的简单记录

对于一个刚入门Android的渣渣,许多知识点都是在工作中一点点的积累。虽然目前掌握的技能能够应付日常的工作,但是越深入学习就越发的觉得到基础的重要性和自己基础有多薄弱。所以最近重新开始学习java,希望能够尽快把基础知识补好。在这里记录一下一些印象模糊或者已经忘掉的基础点。------------------------------------------------------...

2019-02-18 14:38:57 186

原创 在app内用webviewList实现多窗口页操作

之前在工作中,遇到了一个比较奇葩的问题。就是在webview通过QQ空间分享一篇文章成功后,点击网页“返回继续浏览”无响应,无法返回上一页面。经排查,是因为网页实现“返回继续浏览”的方法是window.close,window.close的作用是关闭当前窗口页,而当webivew在只有一个窗口页时,当前页面不能关闭,导致方法无效。当然有同学说可以通过webview的onCreateWi...

2018-12-26 22:57:03 1894

原创 RxJava2.0的简单使用Seminar(一)

关于RxJava2.0的文章,各大论坛上已经有很多大神写的很详细了。作为一个开发新人,在大佬面前只有递茶的份的渣渣。对Rxjava原理只有肤浅的理解,所以本篇只是简单介绍和记录一下Rxjava的使用,一些定义解析都是挪用大神的文字,请见谅。关于深入原理,同学可以找度娘观摩大神的文章。----------------------------------------------------...

2018-12-22 13:13:18 679

翻译 【翻译】关于jobIntentService的释义

目前在Android-P开发中,需要在接收到Push广播后,后台启动Service实现Notification的功能。在Android-O或O之前,可以在WakefulBroadcastReceiver通过startWakefulService(context,intent)正常启动服务。startWakefulService是通过context.StartService的同时,也通过Po...

2018-12-12 20:43:46 2437 1

原创 实现App带有控制悬浮窗的录屏小功能(下)

本小记继续上一篇的代码主要实现功能为:对编码器编译压缩后输出的视频流用MediaMuxer封装到MP4容器。//采用线程进行录屏的耗时操作public class VideoThread extends Thread { private Context mContext; private static final String MIME_TYPE = "video/a...

2018-11-13 11:47:41 1065

原创 实现App带有控制悬浮窗的录屏小功能(上)

最近在开发的过程中,需要调用录屏功能。大概功能就是:点击录屏button,返回主界面并显示半透明的自定义控件。                        控件可以随意拖动,点击“开始”就开始录制并由timer来计时。                        点击“停止”停止录制,点击“完成”停止录制并返回app。本篇先介绍如何实现自定义控件的功能:public c...

2018-11-13 11:47:12 1588 1

原创 如何避免Image上传到服务器后发生转角度Rotation错误

在社区、论坛我们经常会上传一些图片啊、视频啊等多媒体文件到服务器,但有时候上传一些从相机里选择的图片会显示错误,图片翻转了90度。。虽然对于程序员来说,偶尔动一下脖子歪着看问题也不大~但对于用户来说,这是一个很严重的问题。那原因是什么呢,明明在相册里的图片好好的,一上传到服务器就歪呢。经过分析,就是在相片的Rotation没有设置好,需要在上传之前再调整一次。那要怎么做呢-->1.根...

2018-11-13 11:46:35 384

原创 应用中安装第三方apk的两种方法:利用Intent跳转安装页面、利用PackageInstaller静默安装

目前网上大多数关于应用程序中安装apk方法的文章,都会提到智能安装(需要跳转安装页面,但不需用户操作,利用(Google辅助功能),第二种是利用adb命令把安装包push到手机中实现静默安装。但是本篇实现的方法有所不一样。一种是通过Intent实现(不需要root,跳转到安装界面,需要用户操作),一种是通过PackageInstaller.Session的方法实现静默安装(静默安装都是需要ro...

2018-11-12 20:18:49 5010 5

原创 实现在WebView点击打开手机相册功能

在日常开发中,WebView可能需要点击上传一些图片。那在WebView打开相册的功能是要怎样实现呢?答案就是在webview.setWebChromeClient()中实现openFileChooser()方法,具体代码如下:webView.setWebChromeClient(new WebChromeClient() { @Override ...

2018-03-26 15:22:06 1961

原创 实现RecyclerView上拉到底时加载新数据

在加载更多RecyclerView的时候,可以通过判断当前是否已经拉倒底部来决定是否进行刷新行为1.判断拉倒底部的条件//当前可见的子项个数int visibleItemCount = LayoutManager.getChildCount();//当前RecyclerView的所有子项int totalItemCount = LayoutManager.getItemCo...

2018-03-26 14:25:03 628

原创 关于RecyclerView加载多ITEM布局的小小笔记

在正常实现RecyclerView的Adapter时候,是这样构建的:pulic class MyRecyclerView extend RecyclerView.Adapter<MyRecyclerView.VH>{ public MyRecyclerView(){} @Override public VH onCreated...

2018-03-24 00:26:52 219

空空如也

空空如也

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

TA关注的人

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