如何实现一个 System Services?

2021-05-13
阅读 14 分钟
5.7k
《Android 系统开发做什么?》写到 Android System Services 是专注于特定功能的模块化组件,应用框架 API 所提供的功能可与系统服务通信,以访问底层硬件。Android System Services 是如何写的?来以 DisplayManagerService 为例,具体来看看。

Android 系统开发做什么?

2021-03-30
阅读 3 分钟
1.5k
18 年我从 Android 应用开发转 Framework 层开发了,从此开启了 996 幸福生活,博客技术文更新基本停滞了,被工作占据了过多的精力,实在没时间像以前一样拟稿、写作,实践、反复修改去精心准备文章,另外也不知道该写什么了,很多经验心得都会涉及到项目本身,公司内部倒是写了不少总结文档,然而工作的事不便公开分享...

Flutter 开发从 0 到 1(五)源码

2020-11-16
阅读 4 分钟
1.3k
明天开始又要上班了,你的假期任务完成如何啊?由于平时加班太多了,实在挤不出更多时间,从开始想用 Flutter 《Flutter 开发从 0 到 1(一)需求与准备》写一个完整的 APP 已经过去三个月了,但是我没有忘记,这个国庆时间我终于完成了。Flutter 确实强大,不止跨平台,还支持桌面应用,包括 Window、macOS、Linux,以...

Flutter 开发从 0 到 1(四)ListView 下拉加载和加载更多

2020-10-11
阅读 8 分钟
1.8k
Flutter 提供了 RefreshIndicator 下拉刷新组件,可以轻松让我们实现 Material Design 风格的下拉刷新效果。

Flutter 开发从 0 到 1(三)布局与 ListView

2020-10-08
阅读 5 分钟
1.3k
上周日出去玩了,因此没时间写文章。我司加班到 11 点,第二天可以晚上班一个小时,加班到 12 点,可以晚上班两个小时,以此类推,为什么说这个,对的,加班第二天我没有多睡觉,而是起来抓紧时间写文章,好了,废话不多说,进入今天的主题。

Flutter 开发从 0 到 1(二)框架与网络

2020-07-19
阅读 7 分钟
1.6k
之前做 APP 开发的时候,我都是担任 Android 组 leader,新项目起来,我会做技术预研,如《一套完整的 Android 通用框架》,一般会使用 MVP 模式(现在应该是 MVVM 模式),网络请求框架使用 Retrofit,图片加载使用 Glide,图片缩放和裁剪分别使用 PhotoView 和 uCrop 等,必要时,我会写个 sample 放项目里,让同事可...

Flutter 开发从 0 到 1(一)需求与准备

2020-07-19
阅读 2 分钟
1.9k
在《手把手教你做个人 app》我有说过,开发一个 APP 很大程度依赖服务端:服务端提供接口数据,然后 APP 展示;开发一个 APP,还需要美工协助切图。对于以前的我,没接口,没美工,照样可以开发 APP ,可谓 So easy 来形容。

这些“不做 APP 了”,现在都在做什么?

2020-03-22
阅读 1 分钟
2.2k
以为 Flutter 在 Google 大力支持下,很多人会转向用 Flutter 开发,然而从投票来看,用 Flutter 并不多,除了 Java 外,Kotlin 最多。在 Kotlin 刚出来那会,我也自学了一段时间,并写了几篇文章。

是的,GitHub APP 终于上线了

2020-03-22
阅读 1 分钟
1.4k
是的,全球最大程序员社交网站的 App 今天正式上线了,早在 GitHub 2019 开发者大会说要出的客户端,那会儿还需要申请。 兴致勃勃去申请了,然后就是等,这一等就是四五月,黄花菜都凉了,今天终于等到了。 iOS 下载:[链接] Android 下载:[链接] 鉴于很多安卓的读者和用户无法访问 Google Play,我已经把 GitHub APP ...

Google Flutter Clock 大赛优秀项目推荐

2020-03-22
阅读 2 分钟
1.7k
Flutter 在 Google 加持下,如今可以作为跨平台首选了。早在 Flutter 刚刚出现强势苗头,我作为第一批体验了一把,《Flutter 初尝:从 Java 无缝过渡》,不过也仅停留在体验,没再深入。

GitHub 上这几个沙雕项目,够我玩几天

2020-01-31
阅读 2 分钟
1.8k
一个在线的 Por*Hub 风格 Logo 生成工具 Logoly.Pro ,可以帮助你快速生成类似 Por*Hub 风格的 Logo,感觉好骚。

意想不到的 priority

2020-01-08
阅读 2 分钟
3k
需求 前段时间在做挖孔屏适配,中间就不要有刘海,需求就是把这个刘海去掉。 调研 官方关于刘海屏有介绍,其中有两个属性比较关键: 值 说明 config_mainBuiltInDisplayCutout 用于定义刘海屏形状的路径。这是一个可由 android.util.PathParser 解析的字符串,并且是告知系统刘海屏大小和形状的方式。可在路径中指定 @dp...

AOSP 预置 APP

2019-08-14
阅读 7 分钟
4.6k
Android 系统预置 APP 是做 Framework 应用开发经常经常会遇到的工作,预置 APP 分为两种,一种是直接预置 APK,一种是预置带有源码的 APP。

Android 装逼技术之暗码启动应用

2019-07-15
阅读 5 分钟
1.7k
DialtactsActivity 中有个 showDialpadFragment 方法,用来加载显示拨号盘,因此入口就从 showDialpadFragment 看起,基于 Android P 分析。

Android Studio 导入 AOSP 源码

2019-02-26
阅读 4 分钟
2.8k
有了 AOSP 源码,接下来就是如何看了,可以直接文本看,可以用 Source Insight,我当然选择 Android Studio,Android Studio 是我熟悉且十分强大的工具。问题来了,如何将 AOSP 源码导入 Android Studio?

神奇的 new Exception()

2019-01-05
阅读 4 分钟
2.3k
先看下一段代码: {代码...} 你们猜会打印什么? {代码...} 是不是有点神奇,居然把 test4() 方法调用关系给打印出来了,是怎么做到的?是不是有地方把这个每步调用关系给保存下来了。 首先进 Log 看下 Log.d(): {代码...} 这里第三个参数 Exception 是 Throwable 子类,初始化看 Throwable 构造方法: {代码...} 如自...

AOSP 源码下载

2019-01-05
阅读 3 分钟
4.7k
网上关于这块大部分教程都是无效的,因为墙的缘故,无法使用官方提供的下载链接,我这里使用了清华大学的镜像,是能够顺利将 AOSP 下载下来。如果你还没有安装 Ubuntu,请看《VirtualBox 安装 Ubuntu》。

Android 从 Web 唤起 APP

2018-04-07
阅读 4 分钟
5.6k
前言 知乎在手机浏览器打开,会有个 App 内打开的按钮,点击直接打开且跳转到该详情页,是不是有点神奇,是如何做到的呢? 效果预览 Uri Scheme 配置 intent-filter AndroidManifest.xml {代码...} 测试网页 main 下新建 assets 文件,写了简单的 Html 网页用于 WebView 展示,来进行测试。 index.html: {代码...} Web ...

Python 爬虫实战(二):使用 requests-html

2018-03-14
阅读 2 分钟
7.2k
Python 爬虫实战(一):使用 requests 和 BeautifulSoup,我们使用了 requests 做网络请求,拿到网页数据再用 BeautifulSoup 解析,就在前不久,requests 作者 kennethreitz 出了一个新库 requests-html,Pythonic HTML Parsing for Humans™,它可以用于解析 HTML 文档的。requests-html 是基于现有的框架 PyQuery、Req...

Flutter 初尝:从 Java 无缝过渡

2018-03-09
阅读 3 分钟
6.8k
准备阶段 下载 Flutter SDK 新建 Flutter 文件夹,克隆 Flutter SDK: {代码...} 配置 Flutter 环境 我是 Mac 系统,Flutter SDK 下载完后的路径:Users/wuxiaolong/Flutter/flutter/ 。 在命令行下,进入用户目录 {代码...} 打开.bash_profile文件 执行命令打开文件: {代码...} 打开文件后,添加 Flutter SDK 安装的路...

Android Studio Git 分支实践

2018-02-27
阅读 5 分钟
3.4k
新公司有些项目是用的 Git,以前公司都是 svn,为了练手 Git,我个人 APP 用到了,但是仅简单的 git pull/push 的使用,并未用到 Git 精髓,只有当项目中用到,才会紧迫去全面学习,所以说,在项目中进步是最快的。

Android 进程间通信

2018-02-23
阅读 14 分钟
5.8k
我们都知道,系统为 APP 每个进程分配的内存是有限的,如果想获取更多内存分配,可以使用多进程,将一些看不见的服务、比较独立而又相当占用内存的功能运行在另外一个进程当中。

Android NDK 入门与实践

2017-12-29
阅读 7 分钟
4.2k
NDK 是什么 NDK 全称 Native Development Kit,可以让您在 Android 应用中调用 C 或 C++ 代码的工具。 NDK 好处 1、NDK 可以生成 .so 文件, 方便代码共享; 2、增加反编译的难度; 3、提高性能。 NDK 构建 版本说明 Android Studio:3.0.1 Android Plugin for Gradle: com.android.tools.build:gradle:3.0.1 Gradle:4....

Python 爬虫实战(一):使用 requests 和 BeautifulSoup

2017-12-16
阅读 11 分钟
6.2k
requests,Python HTTP 请求库,相当于 Android 的 Retrofit,它的功能包括 Keep-Alive 和连接池、Cookie 持久化、内容自动解压、HTTP 代理、SSL 认证、连接超时、Session 等很多特性,同时兼容 Python2 和 Python3,GitHub:[链接] 。

手把手教你做个人 app

2016-11-14
阅读 12 分钟
6.3k
我们都知道,开发一个app很大程度依赖服务端:服务端提供接口数据,然后我们展示;另外,开发一个app,还需要美工协助切图。没了接口,没了美工,app似乎只能做成单机版或工具类app,真的是这样的吗?先来展示下我的个人app,没有服务端,没有美工完成的,换言之,我干了所有人的活:

一套完整的Android通用框架

2016-09-08
阅读 3 分钟
3.6k
现在做Android开发,已经是大好时机,网上有很多成熟的框架,我们应充分利用好这些,所谓前人种树后人好乘凉,很多时候压根不需要了解太多原理,只需站在巨人的丁丁上即可,当然您说您能力强,非要重复造轮子,无可厚非。

Android Retrofit 2.0 使用-补充篇

2016-08-14
阅读 7 分钟
4.1k
推荐阅读,猛戳:1、Android MVP 实例2、Android Retrofit 2.0使用3、RxJava4、RxBus5、Android MVP+Retrofit+RxJava实践小结 之前分享的Android Retrofit 2.0 使用,属于基本的使用,实际开发还远远不够,因此对其补充,主要在Retrofit配置和接口参数。 Retrofit配置 添加依赖 app/build.gradle {代码...} 首先Builder(...

Android MVP+Retrofit+RxJava实践小结

2016-08-13
阅读 5 分钟
3.7k
1、MVP绑定Activity(Fragment)生命周期按照之前的文章,每个Presenter都得初始化和销毁,我新加MvpActivity(MvpFragment),加了抽象方法protected abstract P createPresenter();这样做的目的在需要使用MVP的地方,可以继承MvpActivity(MvpFragment),然后初始化和销毁就不用手动一个个去加了。