android
小李飞飞砖
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
Retrift
Retrift原创 2023-01-02 21:56:25 · 807 阅读 · 0 评论 -
Android网络知识总结
网络原创 2022-12-31 21:07:25 · 134 阅读 · 0 评论 -
Android AIDL跨进程通信
RPC原创 2022-10-01 21:26:09 · 1470 阅读 · 0 评论 -
ContentProvider执行时机
调用顺序: Application 构造方法 –> Application.attachBaseContext –> ContentProvider.onCreate –> Application.onCreate –> Activity.onCreate。原创 2022-09-29 11:17:19 · 380 阅读 · 0 评论 -
The binary version of its metadata is 1.6.0, expected version is 1.4.2.
kotlin 版本不一致导致编译不过原创 2022-07-29 12:13:37 · 4597 阅读 · 0 评论 -
Android中 DialogFragment 全屏时 在android11机型失效的问题
由于 Window 的 decorView 默认是设置有 10dp 的padding。需要获取到decorView后设置其padding为(0, 0, 0, 0) 即可。override fun onStart() { Logger.i(TAG, "onStart") super.onStart() setWindowParam() } /** * 设置dialog的 window 参数 */ private f原创 2021-10-13 10:28:36 · 598 阅读 · 1 评论 -
设置图片的透明度从左到右渐变
一、设置图片的透明度从左到右渐变/** * 设置图片的透明度从左到右渐变,使右边缘平滑过渡(注意只跟着x坐标变) * * @param num 范围为0-100,0为全透明,100为不透明 */ public static Bitmap getTransAlphaBitmap(Bitmap sourceImg, float num) { if (sourceImg == null) { return null;原创 2021-09-09 16:24:02 · 2489 阅读 · 1 评论 -
Gradle知识点
1、applicationVariants参考:https://developer.android.com/reference/tools/gradle-api/7.0/com/android/build/api/variant/ApplicationVariantbuild.gradleandroid.applicationVariants.all { variant -> println("applicationVariants") println(variant.name原创 2021-05-22 11:02:20 · 566 阅读 · 0 评论 -
Android单元测试
1、Android-UnitTest2、Android单元测试(四):Robolectric框架的使用原创 2020-06-27 18:29:44 · 229 阅读 · 0 评论 -
图片打标签之获取图片在ImageView中的坐标
android matrix 最全方法详解与进阶(完整篇)imageView = findViewById(R.id.imageview); imageView.setOnClickListener(new View.OnClickListener() { @Override public void onClick...原创 2020-04-19 17:30:36 · 1069 阅读 · 0 评论 -
RecyclerView滚动到指定位置
1、mLayoutManagerprivate void moveToPosition(int position) { if (position >= 0) { mLayoutManager.scrollToPositionWithOffset(3, 0); } }2、LinearSmoothScrollermTopSm...原创 2020-04-10 16:26:56 · 625 阅读 · 0 评论 -
android计算bitmap内存及内存优化
参考:https://www.cnblogs.com/dasusu/p/9789389.htmlhttp://www.cocoachina.com/articles/30884计算公式:1、如果设置了inSampleSize=1,2,4,8 , 则相应的Sample高度 = 原图高度 * 1,1/2, 1/4, 1/8;Sample宽度 = 原图宽度 * 1,1/2, 1/4, 1/8...原创 2020-01-11 21:51:15 · 592 阅读 · 0 评论 -
requestLayout() 、invalidate()、postInvalidate()原理
参考:https://www.cnblogs.com/tiger-wang-ms/p/6592189.htmlhttps://blog.youkuaiyun.com/a553181867/article/details/51583060结论:view调用invalidate将导致当前view的重绘(draw调用),view的父类将不会执行draw方法;viewGroup调用invalidate会使vi...原创 2019-12-21 23:54:59 · 291 阅读 · 0 评论 -
activity主题
1、沉浸式主题<style name="Theme.Gallery" parent="android:Theme.Light.NoTitleBar.Fullscreen"> <item name="android:windowBackground">@color/black</item> <item name="andro...原创 2019-11-22 17:53:12 · 228 阅读 · 0 评论 -
BroadcastReceiver
文章目录一、广播1、定义2、场景3、种类二、实现广播-receiver1、静态注册:2、动态注册:三、广播实现机制四、LocalBroadcastManager详解一、广播1、定义1)、类似观察者模式2、场景1)、同一个app内多个进程的不同组件之间的消息通信2)、不同的app之间的组件之间消息通信3、种类1)、普通广播:Context.sendBroadcast()2)、有序...原创 2018-11-26 23:02:01 · 213 阅读 · 0 评论 -
WebView常见问题
文章目录一、WebView 常见的一些坑二、关于WebView的内存泄漏问题一、WebView 常见的一些坑二、关于WebView的内存泄漏问题上面的1用的多一些,因为一方面是可以给主进程减少了内存容量,另一方面当webView使用完之后直接关闭进程就可以了。...原创 2018-11-26 23:19:56 · 162 阅读 · 0 评论 -
Binder相关知识
文章目录一、Linux内核的基础知识1、进程隔离/虚拟地址空间2、系统调用----Linux内核中重要概念二、Binder通信机制的介绍1、为什么使用Binder2、Binder通信模型3、Binder通信机制原理三、Aidl一、Linux内核的基础知识1、进程隔离/虚拟地址空间进程隔离技术是依靠虚拟地址空间的不同来进行进程之间的隔离的。2、系统调用----Linux内核中重要概念1)、...原创 2018-11-27 00:02:26 · 313 阅读 · 0 评论 -
android插件化
文章目录一、插件化的由来二、插件化要解决的问题1、动态加载APK2、资源加载3、代码加载一、插件化的由来方法数限制:因为现在的一个app中功能模块的解耦和运维团队的分离越来越厉害,如果每一个功能模块升级都对所有的模块进行升级,这样,发布流程的效率就太低了。因此产生了插件化技术。二、插件化要解决的问题1、动态加载APK有一个宿主程序,他会到我们指定的sd卡中加载apk, 会通过代理...原创 2018-12-04 23:14:08 · 182 阅读 · 0 评论 -
热修复
文章目录一、热更新的流程二、主流热更新框架介绍1、Dexposed2、AndFix3、Nuwa三、热更新原理1、Android类加载机制2、热修复机制一、热更新的流程二、主流热更新框架介绍1、Dexposed2、AndFix3、Nuwa三、热更新原理1、Android类加载机制1)、DexClassLoader 主要是加载一些dex文件,jar包,apk包;2)、PathCla...原创 2018-12-04 23:35:59 · 539 阅读 · 0 评论 -
android进程保活
文章目录一、android进程的优先级二、android进程的回收策略三、进程保活方案1、利用系统广播拉活2、利用系统Service机制拉活3、利用native进程拉活4、 利用JobScheduler机制拉活5、利用账户同步机制拉活一、android进程的优先级二、android进程的回收策略三、进程保活方案1、利用系统广播拉活缺点:1)、系统广播不可控,只有在系统广播发生的时候...原创 2018-12-05 00:17:24 · 272 阅读 · 0 评论 -
AsyncTask
文章目录一、什么是AsyncTask二、AsyncTask的使用方法三、AsyncTask的内部原理四、AsyncTask的注意事项1、内存泄漏的解决方案2、生命周期3、结果丢失4、并行 or 串行一、什么是AsyncTask1、本质上就是一个封装了线程池和handler的异步框架二、AsyncTask的使用方法1、三个参数params是执行AsyncTask时需要传入的参数,可用于...原创 2018-11-28 10:32:27 · 212 阅读 · 0 评论 -
android滑动的六种方式
public class MyView extends View { int lastX; int lastY; Scroller mScroller; public MyView(Context context, AttributeSet attributeSet){ super(context, attributeSet); ...原创 2018-12-01 16:25:25 · 235 阅读 · 0 评论 -
android点击事件流程
文章目录1、activity中dispatchTouchEvent()和onTouchEvent()2、ViewGroupA中重写dispatchTouchEvent 、onInterceptTouchEvent 、onTouchEvent3、ViewGroupB中重写dispatchTouchEvent 、onInterceptTouchEvent 、onTouchEvent4、MyView中重...原创 2018-11-29 21:02:50 · 1106 阅读 · 0 评论 -
Service
文章目录一、service的应用场景以及和Thread的区别1、service是什么?2、service和Thread的区别二、开启service的两种方式以及区别一、service的应用场景以及和Thread的区别1、service是什么?1)可以在后台处理一些耗时的逻辑、2)可以执行长时间运行的任务在后台开启、3)可以在程序退出的时候仍让service保持一定的状态即service...原创 2018-11-26 10:05:48 · 213 阅读 · 0 评论 -
android 的动画类型
1.帧动画 Frame 一帧一帧的 2.补间动画 Tween 慢慢过渡,设置初值和末值,并用插值器来控制过渡 包括(alpha淡入淡出,scale缩放,translate平移和rotate旋转) 3.属性动画 ObjectAnimation ValueAnimation 控制属性来实现动画。 属性动画是3.0以后加入的动画。三种动画各有各的好处和原创 2016-07-26 16:54:48 · 338 阅读 · 0 评论 -
Android错误总结
Error:Can't read [D:\android-sdk-windows\platforms\android-24\android.jar] (Can't process class [dalvik/annotation/TestTargetClass.class] (Unsupported class version number [52.0] (maximum 51.0, Java 1.原创 2016-12-22 14:53:47 · 702 阅读 · 0 评论 -
android margin
欢迎使用Markdown编辑器写博客本Markdown编辑器使用StackEdit修改而来,用它写博客,将会带来全新的体验哦:Markdown和扩展Markdown简洁的语法代码块高亮图片链接和图片上传LaTex数学公式UML序列图和流程图离线写博客导入导出Markdown文件丰富的快捷键快捷键加粗 Ctrl + B 斜体 Ctrl + I 引用 Ctrl原创 2017-08-17 12:12:39 · 715 阅读 · 0 评论 -
Drawable setBounds()中的rect
setBounds(int left, int top, int right, int bottom)drawable绘制在canvas内部(int left, int top, int right, int bottom)表示的矩形区内(这个矩形区域的坐标是以canvas左上角为坐标原点的)转载 2017-08-20 13:36:34 · 2098 阅读 · 0 评论 -
Spannable 和 Editable、SpannableString 和 SpannableString
Spanned(可附加标记的字符序列)** * This is the interface for text that has markup objects attached to * ranges of it. Not all text classes have mutable markup or text; * see {@link Spannable} for mutable ma...原创 2018-09-28 16:29:53 · 325 阅读 · 0 评论 -
Handler、Message、Looper、MessageQueue
文章目录handler消息机制原理Handler消息机制组件HandlerMessageLooperMessageQueueHandler的内存泄漏问题原因:解决办法方法一:程序逻辑代码。1.在关闭Activity的时候停掉你的后台线程。2.消息对象从消息队列移除方法二:将Handler声明为静态类,activity使用弱引用赋值进去handler消息机制原理handler消息机制原理:本质就...原创 2018-09-30 17:21:55 · 325 阅读 · 0 评论 -
activity
文章目录一、activity的生命周期1、activity的四种状态2、activity的生命周期3、activity的进程优先级二、android的任务栈三、activity的启动模式四、scheme跳转协议一、activity的生命周期1、activity的四种状态running:可以交互paused:可以看见但不可以交互,成员变量都还在,但是若内存紧张,将会优先被系统回收stopp...原创 2018-11-25 16:42:13 · 224 阅读 · 0 评论 -
Fragment
文章目录一、Fragment为何被称为第5大组件1、为何称为第5组件2、Fragment加载到activity的两种方式3、FragmentPageAdapter和FragmentStatePageAdapter区别二、Fragment的生命周期三、Fragment的通信四、Fragment的replace、add、remove五、Fragment的管理器FragmentManager一、Fra...原创 2018-11-25 18:51:39 · 368 阅读 · 0 评论 -
Android图片打标签
最近项目要实现一个图片打标签的需求,在这里分享一个简易版的打标签: 1、点击图片任意位置跳转到标签列表页,选择后,标签锚点到点击位置。 2、点击锚点反转标签。 3、拖拽标签,限制在图片区域内。实现的方案1、用FramLayout:先加ImageView用于显示图片,再加标签View显示在图片上层。2、tagBean记录 标签锚点位置 与 图片左上角距离的...原创 2019-09-01 15:05:48 · 2349 阅读 · 0 评论 -
addOnPreDrawListener()的在recycleView中使用的坑
addOnPreDrawListener()在recycleView的item中使用时,即使使用removeOnPreDrawListener(this),但是onPreDraw()还是会被多次调用。approveTextView.getViewTreeObserver().addOnPreDrawListener(new ViewTreeObserver.OnPreDrawListener()...原创 2019-09-05 10:27:33 · 2040 阅读 · 0 评论 -
一张点9图实现android悬浮背景效果
超级简单的悬浮效果,推荐给大家效果图如下:点9背景图(下载即可用):原创 2019-09-14 22:54:28 · 819 阅读 · 0 评论 -
android手机分辨率
1、手机分辨率4:3VGA 640*480 (Video Graphics Array)QVGA 320*240 (Quarter VGA)HVGA 480*320 (Half-size VGA)SVGA 800*600 (Super VGA)5:3WVGA 800*480 (Wide VGA)16:9FWVGA 854*480 (Full Wide VGA)H...原创 2019-09-15 12:25:23 · 2962 阅读 · 0 评论 -
android源码(1)LiveData源码
2、LiveData如何感知生命周期?SupportActivity中:public class SupportActivity extends Activity implements LifecycleOwner { @Override @SuppressWarnings("RestrictedApi") protected void onCreate(@Nu...原创 2019-03-26 16:12:57 · 301 阅读 · 0 评论 -
低灵敏度SwipeRefreshLayout
低灵敏度SwipeRefreshLayoutpackage com.ss.android.homed.pm_home.decorate.view;import android.content.Context;import android.support.v4.widget.SwipeRefreshLayout;import android.util.AttributeSet;impor...原创 2019-04-28 20:58:32 · 541 阅读 · 0 评论
分享