分类

Android

深入探讨 Android 系统的核心架构与高级开发,聚焦四大组件(Activity、Service、Broadcast Receiver、Content Provider)的原理、生命周期管理和交互机制。从基础的组件构建与通信,到 Android Framework 层(如 AMS、WMS、PMS)的源码剖析和自定义扩展,提供详尽代码示例、调试技巧和性能优化策略。涵盖 JNI、AIDL、Binde

共 356 篇文章

Android

View的四个构造函数

View的四个构造函数一般自定义View,都需要继承View或者View的某个子类,必须要实现几个参数不同的构造方法:第一个View(Context context),一般用于在代码中直接声明自定义View的时候使用第二个构造函数View(Context context, @Nullable AttributeSet attrs)是在布局中使用自定义的View是系统会自动调用,生成自定义View实

2.3k
最最最常用的控件:TextView
Android

最最最常用的控件:TextView

最最最常用的控件:TextView1、TextView常用属性:2、TextView跑马灯布局文件中TextView的几个重要属性都要设置写好上面的布局就可以实现简单的跑马灯,但是实际布局不肯能这么简单,会很复杂有各种控件,TextView可能不只一个还会有EditText占用焦点。跑马灯只有TextView获取焦点的时候才有效果。如果没有获取焦点就像下面的第二行TextView,虽然设置了跑马灯

3.5k 8
Android

Android ScrollView 顶部下拉与底部上拉回弹效果实现

Android ScrollView 顶部下拉与底部上拉回弹效果实现ScrollView 滑到顶部或底部时,默认是"硬边界"——戛然而止,没有 iOS 那种顺滑的橡皮筋回弹手感。要让 Android 的 ScrollView 也具备这种效果,需要自定义控件在触摸事件里做干预。本文实现一个 ReboundScrollView:在 dispatchTouchEvent 中判断是否到达顶部/底部,到达后

179
APK反编译
Android

APK反编译

APK反编译反编译apk,查看源码资源等,需要用到三个工具apktool、dex2jar、jd-gui。首先去三个平台下载各自的工具包。这里不提供下载,百度可以找到下载资源。1、apktool借助apktool提取apk中的目录,资源。使用下面的命令,最好使用Windows原生的shell,用git一堆坑,主要是路径和linux不一样。可能会遇到缺少framework的错误,这就需要从手机中将系统

2.1k
ViewStub懒加载
Android

ViewStub懒加载

ViewStub懒加载ViewStub常用于优化布局,使用它可以提高布局加载的性能。1、ViewStub介绍①ViewStub继承自View②ViewStub默认是不可见(GONE),而且View的大小为0③当一个ViewStub被设置成可见visible或者调用inflate()方法时,ViewStub得到填充。此时ViewStub所引用的layout布局会替换掉当前ViewStub显示出来。2

2.0k
【AIDL】基础知识
Android

【AIDL】基础知识

AIDL 基础知识粗略的了解一下AIDL。更深的技术探究以后随着时间不断沉淀。1、AIDL简介AIDL 意思即 Android Interface Definition Language,翻译过来就是Android接口定义语言,是用于定义服务器和客户端通信接口的一种描述语言,可以拿来生成用于IPC的代码。从某种意义上说AIDL其实是一个模板,因为在使用过程中,实际起作用的并不是AIDL文件,而是据

1.9k
Android多媒体MediaPlayer
Android

Android多媒体MediaPlayer

Android多媒体MediaPlayerAndroid提供了多媒体播放库MediaPlayer,在播放音视频的时候可以方便的使用。存储在应用程序资源(原始资源)中的媒体文件、文件系统中的独立文件或通过网络连接到达的网络数据流中播放音频或视频。在使用MediaPlayer对应用程序进行开发之前,必须声明一下权限,才能正常使用: Internet权限——如果您正在使用MediaPlayer来播放流基

1.9k 1
Android去除无用资源给APK瘦身
Android

Android去除无用资源给APK瘦身

无用资源文件1、Lint检查去除无用资源文件①在Analyze菜单栏中选择Run Inspection By Name...②在弹出的对话框中输入unused resources③选择会弹出如下的对话框,根据需要选择范围。对整个工程进行冗余资源的删除:④扫描完成会提示所有未使用的资源,并且可以进行选择删除。一键删除所有未使用的资源,有时候可能会出错,比如一个方法没有使用,但是这个方法引用了资源文件

2.9k
RecyclerView基本使用
Android

RecyclerView基本使用

RecyclerView基本使用1、RecyclerViewRecyclerView是Android一个更强大的控件,其不仅可以实现和ListView同样的效果,还有优化了ListView中的各种不足。位于包 androidx.recyclerview.widget 中,需要在build.gradle中添加依赖:1.1、使用RecyclerView首先在布局文件中添加:在Activity中声明Re

1.9k
四大组件之服务:Service
Android

四大组件之服务:Service

四大组件之服务:Service1、ServiceAndroid Service是Android四大组件之一,它主要用来执行一些不与用户交互的long-run的操作. 注意Service如非特意指定,它仅是运行于该进程的一部分代码而已,另外Service并不是运行在单独线程中,而是主线程中。所以尽量要避免一些ANR的操作。 服务是一种应用程序组件,代表应用程序执行长时间运行的操作而不与用户交互或提供

1.9k 2
网页点击链接,跳转至QQ对话框
Android

网页点击链接,跳转至QQ对话框

网页点击链接,跳转至QQ对话框 首先打开QQ群开放网站:http://qun.qq.com/join.html, 选择自己的群之后会自动生成网页链接:第二步,生产不同平台的跳转链接,有网页版的还有Android利用Intent跳转到手机QQ把代码复制到页面上,即可使用。每QQ群都会生成唯一的key,这是加群验证的方式。Android使用Intent跳转到QQ界面:此外,还可以生成加群二维码:

2.8k