笔记
文章平均质量分 70
HeartCircle
这个作者很懒,什么都没留下…
展开
-
Android GB∕T 19056-2021 汽车行驶记录仪-定位性能测试
Android GB∕T 19056-2021 汽车行驶记录仪-定位性能测试 (android版本)原创 2022-12-22 21:11:43 · 1255 阅读 · 3 评论 -
GSYVideoPlayer 播放m3u8格式视频遇到的坑
GSYVideoPlayer 播放m3u8格式视频遇到的坑,ijkplayer内核会对重定向的地址做解析原创 2022-04-07 10:13:27 · 3988 阅读 · 0 评论 -
Android 使用singleInstance启动Activity遇到的坑
Android 使用singleInstance启动Activity遇到的坑原创 2022-02-18 17:38:31 · 2303 阅读 · 0 评论 -
安卓逆向笔记-IDA动态调试so
年底了,在进行技术梳理,发现对于动态调试so方面还不太会,每年都说要学习,结果两年了还没学会,近期也是进行了补课,做一个笔记记录一下。原创 2022-01-12 16:55:46 · 4251 阅读 · 0 评论 -
Kotlin 基础学习笔记(三)
1. 面向对象1.1 创建一个类 + 构造方法说明class TestCons constructor() {}kotlin采用constructor 关键字来代表构造方法,其中的 constructor 可以省略,但是如果加上权限修饰符就不能省略了:class TestCons constructor() {}// 有参构造class TestCons constructor(age:Int, name:String) {}// 如果加上权限 private 修饰...原创 2021-08-06 18:05:30 · 456 阅读 · 0 评论 -
Kotlin 基础学习笔记(二)
1.函数 和 函数表达式1.1 函数 fun add(x : Int, y : Int) : Int { return x + y }==>如果函数语句只有一句,变形:fun add(x: Int, y: Int): Int = x + y1.2 函数表达式==>将一个函数表达式赋值给一个变量,然后调用: // 将一个函数表达式 赋 给了i var i = { x: Int, y: Int -> x + y } // 调用声明好的 函数表达式.原创 2021-07-26 17:01:16 · 208 阅读 · 0 评论 -
Kotlin 基础学习笔记(一)
1. Kotlin 语言特点var 类型推断 var 显示指定数据类型 val 声明常量2.Kotlin 函数加强2.1 函数格式 fun 函数名(参数名:参数类型):返回值类型 { }3.字符串模板 fun writeDairy(placeName: String): String { var story = """ 你好,我要去 ${placeName...原创 2021-07-22 10:31:59 · 453 阅读 · 2 评论 -
Android 关于模拟点击和Hook框架的杂谈
1. 背景 就跟我们以前玩页游挂机一样,Android端也有游戏,而且样式繁多,如果重复的操作每次都要自己重复一遍操作,那不得烦死,所以就有了这篇文章,本文仅探讨方案,大家可以尝试。而且现在的模拟器(比如MuMu,Nox)都提供录制脚本,然后在重复执行的功能,也很方便。2. 技术选型 从技术这方便看,大概需要三种技术,Android的模拟点击技术、Android设备支撑以及便于切换设备参数时用到的Hook框架。2.1Android的模拟点击技术2.1.1 使用模拟器自带的录...原创 2021-07-01 10:30:09 · 1068 阅读 · 0 评论 -
Android 优化 透明Activity展示loading关闭时闪烁
1. 背景 之前设计了一个支付SDK,因为需要展示loading以及支付页面,也为了不需要用户传入Activity引用,设计了一个透明得Activity,但是发现在实践得时候,关闭这个Activity会有闪烁一下的问题。本来觉得并不是什么大问题,产品硬是要说这是个bug,这是强行让我涨姿势啊,太难了,想了想还是把手中的扳????给放下了。2. 现实2.1 Activity采用对话框样式 <style name="ActivityDialogStyle" parent="@an原创 2021-05-19 15:19:28 · 1070 阅读 · 1 评论 -
Android TV使用gsyVideoPlayer快进操作视频会回退
1. 背景 今天TV产品优化,发现一个难以修改的问题,使用gsyVideoPlayer的时候,切换的是系统内核播放视频,然后遥控器在控制快进快退的时候会有进度条回退的问题,这对用户就不友好了啊。2. 原因探究 调查了之后发现,是因为关键帧的问题,快进的时候是按照视频的关键帧来进行快进的,如果视频背压缩的过于严重会导致视频的关键帧比较少,那么就会出现以下这种情况:现在播放到8秒,你要快进到18秒,但是视频的关键帧在第15秒,那么进度条就会从18退到15,因为进度条是按照真实的视频进...原创 2021-05-19 12:03:41 · 2637 阅读 · 4 评论 -
Android ImageView.setImageResource 出现 栈溢出问题 StackOverflowError
1. 背景 今天在测试应用的时候出现一个问题,分析之后,我觉得特别奇怪,可以看下面的报错:E/AndroidRuntime(29778): java.lang.StackOverflowErrorE/AndroidRuntime(29778): at android.graphics.drawable.BitmapDrawable.computeBitmapSize(BitmapDrawable.java:189)E/AndroidRuntime(29778): at a...原创 2021-03-18 10:34:49 · 768 阅读 · 0 评论 -
Android 自定义View之MarqueeText,实现跑马灯效果
1. 背景 需要做一个跑马灯效果的文字展示,本方案更适用于开发机顶盒应用的同学们。2. 需求 2.1 展示书籍的页面,文字过多的时候需要折叠 2.2 当焦点在此书籍上的时候,需要将折叠的文字滚动起来3. 需求剖析 3.1 正常情况下使用跑马灯,只需要设置Textview的以下属性即可android:ellipsize="marquee"android:marqueeRepeatLimit="marquee_forever"android:scr...原创 2021-02-23 20:14:46 · 1684 阅读 · 5 评论 -
Android 面试笔记之Binder详解
Android 面试笔记之Binder详解Binder 八问1.为什么面试要问Biner?1.1 Binder是什么?Activity, Service等组件都需要和AMS 进行交互,这些跨进程的通信都是 通过 Binder来完成的。三种角度看待Binder: 机制:一种跨进程通信的机制 驱动:虚拟物理设备驱动 应用层:Binder是一个能发起通信的Java类1.2 为什么要使用多进程?1.2.1 因为虚拟机分配给各个进程的内存是有限制的,可以突破 内存限制为什么现在的机器原创 2020-09-23 10:33:48 · 1381 阅读 · 0 评论 -
Android 面试笔记之Handler详解
Android 面试之Handler详解Handler八个问题1:一个线程有几个Handler?可以有多个Handler 发送消息2:一个线程有几个Looper?如何保证?2.1:只能有一个,在创建Handler的时候指定Looper,该Looper创建的线程,就是处理消息的线程2.2:如何保证?每一个线程 都有一个ThreadLocal ( 运用了HashMap),用来保存 线程的 状态,标志位等 上下文环境 (大量的key-value 键值对)如何保证一个key,只有一个value原创 2020-09-23 10:11:38 · 522 阅读 · 1 评论 -
Android 适配7.0及以上的安装更新
近期准备给APP增加一个下载更新的功能,原以为很简单,自己测试也通过了,但是发给测试后,发现apk下载完成,安装的页面弹不出来,郁闷了。 原来的方法是这么写的: /** * android1.x-6.x * * @param path 文件的路径 */ public void startInstall(Context context, String path) { Intent install = new Inte...原创 2020-06-29 10:27:50 · 417 阅读 · 0 评论 -
Android 7.0 之 FileProvider运用:拍照获取头像并设置
FileProvider 是android 7.0 之后才有的一个东西,其目的也是加强管理碎片化严重的android文件夹,避免其内的应用随意使用手机的内存。 使用一个例子,拍照获取图片,并设置到ImageView中: 把大象放到冰箱需要几个步骤? 步骤一:打开相机:// 相机public static final int CAMERA_REQUEST_CODE = 1004;SimpleDateFormat simpleDateFormat = new Si...原创 2020-05-14 18:12:46 · 2028 阅读 · 0 评论 -
Android Fragment 优化与切换
Fragment三个包 1.android.app.Fragment 2.android.app.v4.Fragment 向下兼容 3.androidx.fragment.app.FragmentFragment 关键类 1.FragmentManager 碎片化的管理类 2.FragmentTransation 操作Fragment做一些事务FragMent 切换方式 1.replace 会重新走生命周期 用的较少 2.show/...原创 2020-05-13 15:41:18 · 595 阅读 · 0 评论 -
Android APP启动优化知识点
APP启动优化启动类型 1.冷启动 第一次开始 或是 重装启动 2.热启动 第二次或之后启动 3.温启动 退到后台,由于某些原因被杀死,但整体数据还保存Shell命令 检测启动时间 1. shell命令 adb shell am start -S -W [packageName]/[packageName.MainActivity] 1. thisTime 最后一个Act的启动耗时 2. TotalTime 启动一连串...原创 2020-05-13 11:22:36 · 239 阅读 · 0 评论