首页
AI Coding
NEW
沸点
课程
直播
活动
AI刷题
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
确定删除此收藏集吗
删除后此收藏集将被移除
取消
确定删除
确定删除此文章吗
删除后此文章将被从当前收藏集中移除
取消
确定删除
编辑收藏集
名称:
描述:
0
/100
公开
当其他人关注此收藏集后不可再更改为隐私
隐私
仅自己可见此收藏集
取消
确定
安卓
订阅
胡峰爱学习
更多收藏集
微信扫码分享
微信
新浪微博
QQ
27篇文章 · 0订阅
深入理解Transform
其实Transform API在一个android工程的打包流程中作用非常大, 像是我们熟知的混淆处理, 类文件转dex文件的处理, 都是通过Transform API去完成的. 自从1.5.0-beta1版本开始, android gradle插件就包含了一个Transfor…
android 屏幕适配一:通过自定义View的方式实现适配
实现原理:以一个特定的宽度尺寸的设备为参考,在View加载的过程中,根据当前设备的实际像素换算出目标像素,再作用到控件上。 通常UI给我们的设计稿只有一种像素的标准,例如720 * 1280。 例如在设计稿上有一个控件宽度为屏幕尺寸的一半,即360px,假设我们真机的屏幕尺寸为…
Android Binder原理(三)系统服务的注册过程
在上一篇文章中,我们学习了ServiceManager中的Binder机制,有一个问题由于篇幅问题没有讲完,那就是MediaPlayerService是如何注册的。通过了解MediaPlayerService是如何注册的,可以得知系统服务的注册过程。 我们先来看MediaSer…
Android APK打包流程
1. 打包资源文件,生成R.java文件 打包资源文件的工具是aapt(The Android Asset Packaing Tool),目录 sdk\build-tools\25.0.0\aapt。 在这个过程中,项目中的AndroidManifest.xml文件和布局文件X…
Android学习笔记15-从源码分析Activity的创建过程
让我们带着这些问题来学习Activity的创建启动过程. 一种展示性组件,用来向用户展示页面,接受用户的输入与之交互。、 Activity是由 Intent启动,而 Intent 分为 显示Intent和 隐式Intent,显示Intent是直接明确指定我想要启动的另一个活动,…
阿里巴巴Android开发手册
代码是一个程序猿的门面,有门面的程序猿才是一个好程序猿。 充分理解,技术意识的引导,是个人学习、团队沟通、项目合作的方向。 什么样的编码和实现方式;“反例”说明需要提防的雷区,以及错误案例。 资源文件需带模块前缀。 layout 文件的命名方式。 drawable 资源名称以小…
一篇文章搞懂android存储目录结构
前两天因为开发一个app更新的功能,我将从服务器下载的apk文件放在了内部存储目录(测试手机为小米,路径为:data/user/0/packagename/files)下面,然后安装的时候一直安装不了,提示解析包出错。后来查询发现,安装apk是调用了PackageInstall…
【需求解决系列之五】一行代码实现Android 6.0以上动态权限的申请
自从Android6.0以后,运行时权限申请就成为了一大痛点!动态申请吧,说它难吧,它又不难,说它不难吧,申请起来贼复杂;不申请吧,还要给你整闪退。 其实现在有很多权限申请框架了,那么为什么我还在造轮子呢?其实原因很简单,可能是年纪大了,开始喜欢简约风了,能少写一行的我绝对不想…
Android 8.0 源码分析 (二) Launcher 启动
我们熟知一般 Android 工程师都是在应用层上开发,不会涉及系统源码,但是如果你想往底层发展,或者深入插件化、Framework 系统层等开发工作,如果不了解 Android 源码可是不行的,那么接下来我基于自己的理解跟学习来记录跟 Android 开发息息相关的源码分析,…
Systrace 基础知识 -- 分析 Systrace 预备知识
本文是 Systrace 系列文章的第二篇,主要是讲解一些分析 Systrace 的预备知识, 有了这些预备知识, 分析 Systrace 才会事半功倍, 更快也更有效率地找到问题点. 本文介绍了如何查看 Systrace 中的线程状态 , 如何对进程的唤醒信息进行分析, 如何…