自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

郭霖的专栏

每当你在感叹,如果有这样一个东西就好了的时候,请注意,其实这是你的机会

  • 博客(188)
  • 资源 (48)
  • 问答 (1)
  • 收藏
  • 关注

原创 我的新书,《第一行代码 Android 第3版》已出版!

《第一行代码——Android》这本书自2014年出版以来,已经过了6个年头了。期间Android系统版本经历了4.0到10.0系统的巨大升级,开发技术也发生了翻天覆地的变化。在2016年的时候,我曾对书中的内容进行了大幅度的更新,出版了这本书的第2版,也就是所谓的《第二行代码》。而如今,再隔4年之久之后,《第三行代码》终于要以全新的面貌跟大家见面了。

2020-04-02 10:13:08 89153 194

原创 写给初学者的Jetpack Compose教程,edge-to-edge全面屏体验

发现了这个现象之后,可能细心的朋友立马就察觉到了,那如果我手机底部的导航栏模式不是这种手势导航栏,而是传统的Back、Home、Task 3按键导航栏,edge-to-edge全面屏体验会变成什么样呢?绝大部分的App其实都只使用了绿色这部分的空间,屏幕上方的状态栏以及屏幕下方的导航栏这两个白色部分的空间都是没有利用起来的,想想你写的App是不是也是这样?适配的代码其实还是比较简单的,主要就是借助Compose提供的一些内置函数,来对某些指定的控件进行偏移,保证其不会被系统的状态栏或导航栏遮挡住就可以了。

2024-10-22 08:00:00 2918 5

原创 Android 15新特性,强制edge-to-edge全面屏体验

那么由于我们不希望聊天内容进入状态栏区域,因此这里调用了WindowInsetsCompat.Type.statusBars()来获取状态栏的Insets,比如说这里获取到状态栏的高度是50,那么我们通过对chatRecyclerView设置一个50的padding就可以保证聊天内容不进入状态栏区域了。发现了这个现象之后,可能细心的朋友立马就察觉到了,那如果我手机底部的导航栏模式不是这种手势导航栏,而是传统的Back、Home、Task 3按键导航栏,edge-to-edge全面屏体验会变成什么样呢?

2024-08-27 08:00:00 13277 3

原创 写给初学者的Jetpack Compose教程,高级Layout

在得到所有子布局测量好的尺寸之后,我们选择其中最宽的子布局的宽度来作为我们自定义布局MyColumn的宽度,选择所有子布局高度的总和来作为MyColumn的高度。有了这两个参数之后,我们就可以遍历measurables中的所有可测量子布局,每别调用它们的measure函数来测量它们的尺寸,并将测量的结果赋值给placeables这个集合变量。编写自定义布局需要用到的最重要的一个函数就是Compose提供的Layout函数,事实上,几乎所有的Compose控件都是基于Layout函数打造出来的。

2024-07-16 08:00:00 8868 8

原创 写给初学者的Jetpack Compose教程,用derivedStateOf提升性能

这里将shouldShowAddButton变量用derivedStateOf包裹了进来,那么根据derivedStateOf的特性,只有当这个表达式中的条件发生变化了,才算是State的值发生了变化,这时才会触发重组。不同的是,derivedStateOf接收的一个表达式,只有当这个表达式中的条件发生变化了,那么才算是State的值发生了变化,这时才会触发重组。在这篇文章中,我很细致地讲解了Lazy Layout的用法,但同时也埋下了一个坑,这个坑会严重影响Lazy Layout的性能。

2024-05-21 08:00:00 11378 9

原创 Android 14新特性,选择性照片和视频访问授权

今天这篇文章给大家介绍一下Android 14系统中的一个新特性,对部分照片和视频进行访问授权,也可以称之为选择性照片和视频访问授权。这是Android系统在隐私和安全性方面的又一次调整升级,目的是为了能够更好地保护用户隐私。但是这个新特性对于开发者而言,真的是让我们苦上加苦,因此我会边吐槽边来讲解这个最新的特性。

2024-04-08 08:00:00 26131 12

原创 是的,Android版Edge浏览器支持Extension(插件/扩展)了

没想到一些海外的极客博主,在我们发布带Extension功能版本的当天,就把隐藏的这个开关给找到了,并立刻引起了很多的新闻报道,这个功能也就藏不住了。当然,即使所有的代码都编译通过了,也仅仅意味着Extension相关的代码被带到了Android平台上,这和在Edge Android上可以正常使用Extension了仍然是两回事。因为从能力的角度上来说,我们是把桌面端Extension的能力近乎全部都搬到了Android平台上,也就是说桌面端能安装的扩展程序,讲道理在Android上都能安装。

2024-03-15 08:00:00 21165 6

原创 我以为发现了Android 14系统中的一个bug,然而...

想想这是不是我们所熟知的三大组件原有的默认行为,长期以来一直都是如此,只是这个问题套了个Android 14的壳子,让我一度迷失在了Android各系统版本行为变更的细节里面,以至于没能快速找出问题的本质。魏老师跟我开玩笑说,自己做Android的时候觉得Android实在是太难了,各个系统版本的变化新特性什么的绕来绕去,根本记不住,所以才去做了AI,说AI比较简单。唯一的问题就是,我所使用的上述示例,在没有明确指定当前App包名的情况会崩溃,而我的同事guting却反馈说是没有任何错误日志可以观察到。

2024-01-09 08:00:00 32225 6

原创 2023年终总结,这个冬天你过得还好吗?

本来我想着要不要把这两场演讲的内容整理成一篇文章发布出来,后来发现上海GDG已经在其B站账号上发布了演讲的完整回放,那我也就不用整理了,直接上链接就好了。今年9月,Google在上海举办了I/O Connect大会,这应该是Google近几年在国内举办的最盛大的一次技术会议活动了,那么我作为GDE理所应当也被邀请了。最让我感到可惜的应该就是去年11月份的时候,Android Summit大会在伦敦举办,我收到了邀请邮件,但是却因为那个时候国门还没有放开,最终没能去成。是的,一个功能开发了一年。

2023-12-29 08:00:00 18107 7

原创 写给初学者的Jetpack Compose教程,Lazy Layout

大家好,写给初学者的Jetpack Compose教程又来了。经过前面4篇文章的学习,相信大家都已经成功入门了Compose编程。不仅了解了Compose的核心编程理念(声明式UI),而且已经可以使用Compose编写一些简单的小程序了。今天我们要学习的是Compose中必学的一个控件,Lazy Layout。这是一个什么样的控件呢?

2023-12-19 08:00:00 19281 6

原创 写给初学者的Jetpack Compose教程,使用State让界面动起来

大家好,写给初学者的Jetpack Compose教程第4篇更新了。今天我们要介绍的是Compose当中至关重要的一个组件,State。State不光非常的重要,同时可以让我们的Compose学习之旅变得更加有趣。为什么这么说呢?因为在之前的学习过程当中,我们所实现的都是静止的界面效果,而有了State之后,则可以让界面开始动起来了。

2023-10-24 08:00:00 24263 12

原创 写给初学者的Jetpack Compose教程,Modifier

其实在上一篇文章中,有个知识点一直在反复出现,但是我却一直没有讲解,那就是Modifier。之所以没有讲,是因为这个东西太重要了,需要单独用一篇文章来讲解才行。只要你使用了Compose,那么就一定绕不开Modifier。甚至可以说,任何一个Composable函数都应该有一个Modifier参数才对,如果没有的话,那么就说明这个Composable函数写的有问题。我在刚开始学习Compose的时候,对Modifier的用法和场景一直存在疑问。主要原因在于,一般Google提供的Composable

2023-08-15 08:00:00 28611 18

原创 写给初学者的Jetpack Compose教程,基础控件和布局

大家好,写给初学者的Jetpack Compose教程又更新了。准确来说,这才是本系列的第一篇文章。因为上篇文章只是个序篇,和大家聊一聊为什么我们要学习Compose。Compose的知识体系很庞大,因此这个系列教程可能我会写很多篇。当然我并不是什么Compose高手,目前我也是个初学者。本教程实质上就是我在自我学习Compose的同时,将这些学习记录分享给大家,希望大家可以零基础跟着我一起学习。Compose是一个用于替代Android View的全新声明式UI框架。既然是UI框架,因此我们第一篇文章就来

2023-07-11 08:00:00 34756 18

原创 写给初学者的Jetpack Compose教程,为什么要学习Compose?

比如用户进入我们App的首页,首页内容的加载是需要一些时间的,通常这个时候我们会先显示一个加载框或者是占位图给用户,等首页内容加载完成之后,再把加载框隐藏掉,将正常的首页呈现给用户。最后,View真的已经太老太老了,它是随着Android 1.0系统发布的,至今已经过去了十几个年头。今天的这篇文章是这个系列的序章,我们还并没有通过一个实际可运行的例子来去学习如何编写Compose程序,但是希望这篇文章能提起大家对Compose的兴趣,我们会在本系列后续的文章当中慢慢长手Compose编程。

2023-06-06 08:00:00 35918 10

原创 微软的人工智能 Copilot 到底有多强大?带你来体验一下

说实话,这是一篇我早就应该写的文章,我也不知道为什么我能拖这么久。但好像从来也没有读者朋友们催我写过这类文章,这为我的拖更提供了很好的理由。为什么说我早就应该写这篇文章了呢?主要还是因为去年年底的时候,OpenAI推出了一个火遍全球的爆炸性产品,ChatGPT。在此之前,我都从来不认为OpenAI跟微软会有什么关系。直到后来我查询了一下OpenAI的股权结构,才发现微软的持股比例竟然高达49%,是OpenAI的最大单一股东。这就不奇怪为什么谷歌百度看到ChatGPT后如临大敌一般了。并且

2023-04-11 08:00:00 42011 11

原创 Android 14 Developer Preview一览

不久之前,Google公开了Android 14的首个Developer Preview版本。按照Google正常的节奏,每年年初会发布两个Developer Preview版本,然后在每年中上旬发布两到三个Beta版本。之后会进入平台稳定期,将版本打磨精细,然后在秋季左右发布当年最新的Android系统版本。其实之前我倒是基本没太写过这种新系统特性一览的文章。去年因为公司安排的原因,我去学习了一下Android 13 Developer Preview的新特性,并写了一篇比较全面的文章介绍,可以参

2023-03-14 08:00:00 35682 8

原创 Kotlin Flow响应式编程,StateFlow和SharedFlow

大家好,今天是Kotlin Flow响应式编程三部曲的最后一篇。其实回想一下我写这个Kotlin Flow三部曲的初衷,主要还是因为我自己想学这方面的知识。虽然Kotlin我已经学了很多年了,但是对于Flow我却一直没怎么接触过。可能是因为工作当中一直用不上吧,我现在工作的主语言依然还是Java。而我一直都是这个样子,写博客基本上不是为了谁而写的,大部分都只是因为我自己想学。

2023-01-10 08:00:00 39436 8

原创 2022年终总结,我的10年Android之旅

不可思议,这已经是我第10个年头的年终总结了。但准确来说,我的Android之旅应该不止10年。2010年的夏天,那时我正在放暑假。偶然网上闲逛时,在电驴上发现了一个视频教程系列,讲的是Android编程入门。讲师的名字我到现在还记得,叫Mars。Android?没听说过。进去了解了一下,原来这是一个Google新推出的手机操作系统,并且最重要的是,它是可以用Java语言来开发应用程序的。由于我在大学时主修的就是Java语言,而当时最主流的诺基亚塞班系统是要用C++语言才能开发应用程序的,这

2022-12-30 08:00:00 62526 36

原创 Kotlin Flow响应式编程,操作符函数进阶

大家好,今天原创。在上一篇原创文章当中,我跟大家说了会开启一个新的系列,讲一讲Kotlin Flow响应式编程从入门到进阶的内容。总共计划是用三篇文章讲完,而本篇则是这个系列的第二篇文章。如果你还没有看过前面的基础知识入门的话,可以先去参考这里。本篇文章我打算着重讲解一下操作符函数的相关内容。什么是操作符函数?如果你熟悉RxJava,那么对于操作符函数一定不会陌生。

2022-11-22 08:00:00 38867 27

原创 Kotlin Flow响应式编程,基础知识入门

Kotlin在推出多年之后已经变得非常普及了。相信现在至少有80%的Android项目已经在使用Kotlin开发,或者有部分功能使用Kotlin开发。关于Kotlin方面的知识,我其实分享的文章并不算多,主要内容都是集中在《第一行代码 第3版》这本书当中。看完这本书,相信你一定可以很好地上手Kotlin这门语言。

2022-10-24 21:43:13 40415 24

原创 PermissionX 1.7发布,全面支持Android 13运行时权限

今年的Android 13在运行时权限变更方面变化较大,为此PermissionX在1.7版本也进行了诸多适配,并已全面支持Android 13系统。如果你想要非常详细地了解Android 13运行时权限具体有哪些变更,可以参考我之前写的这篇文章 Android 13运行时权限变更一览。本篇文章,我们将聚焦在,如何使用新版的PermissionX来轻松地请求Android

2022-09-27 08:00:00 49046 11

原创 Android 13运行时权限变更一览

要不了多久,Android 13正式版就要发布了。其实就在几个月前,我写了一篇关于Android 13首个开发者体验版的全面介绍,详情可以参考。那么相比于首个开发者体验版,目前Android 13已经进入了平台稳定期阶段,也就是说API基本已经固定,不会再有什么大的修改了。于是我又重新回顾了一遍Android 13的重要新特性和行为变更,发现有一处重大变化在首个开发者体验版中几乎没有提及,那就是Android 13的运行时权限变更。因此,今天我就再写一篇Android 13的运行时权限变更一览,带你全面..

2022-08-16 07:30:00 59932 9

原创 模仿Android微信小程序,实现小程序独立任务视图的效果

不过或许还有些朋友会存在这样的疑惑目前我们的技术实现方案是给每个小程序定义一个单独的Activity(FirstActivity、SecondActivity和ThirdActivity),而微信小程序却可以有无限多个,我们显然不可能在AndroidManifest.xml文件中注册无限个Activity,那么微信又是如何实现的呢?就像我们在最开始的图片中看到的一样,美团小程序有美团的Logo,微博小程序有微博的Logo,星巴克小程序有星巴克的Logo。随取随用,随用随走,也不占用任何手机的存储空间。...

2022-07-26 07:30:00 33713 7

原创 一个Android沉浸式状态栏上的黑科技

说起来,在不知不觉中,我竟然凑成了这沉浸式状态栏三部曲。其实最开始的时候,我主要是因为工作上的原因想要在Android版的Edge浏览器上实现首页图片沉浸式的功能。那么为了实现这个功能,我提前去做了一些技术调研,并将调研的结果整理成了一篇文章,具体可参阅 再学一遍android:fitsSystemWindows属性 。做完技术调研之后,接下来就是功能实现了。对于Android版的Edge浏览器而言,首页图片的沉浸式一直是部分网友长久以来的呼声,经过我的各种攻坚和踩坑之后,终于将这个功能完成了。具体可参阅

2022-06-14 07:30:00 35212 18

原创 我为Android版Microsoft Edge所带来的变化

掰手指数一数,我入职微软也已经有一年半的时间了。从入职以来,我一直在从事于开发Android版的Edge浏览器。这么长时间下来,我也慢慢从完全不知如何上手,提个PR都困难,到现在能够负责独立开发一个比较大的功能模块了。不得不说,Edge是我见过的最复杂的一个项目,我是真的很难想象一个浏览器工程可以庞大到如此地步。Chromium本身就已经是一个巨型工程了,而Edge又要在其基础之上加入许多微软定制的需求,那就肯定避免不了一通魔改,代码自然就变得更加复杂。记得当初刚加入微软不久时,有一些公众号上的小伙伴

2022-05-17 08:00:00 37661 29

原创 Android 13 Developer Preview一览

不要吃惊。Android 12才刚刚正式推出没几个月时间呢,Android 13就已经来了。是的,Android 13 Developer Preview目前已经推出了两个版本迭代了,包含了众多的新特性和行为变更。本来按照往年的习惯,我是不会在如此早期的阶段就去研究每年新系统的新功能的。但是由于最近公司安排我去做一次内部的技术分享涉及到了这个主题,所以今年第一时间就对Android 13进行了还算比较全面的体验

2022-04-12 07:43:59 31839 9

原创 Android终于要推出Google官方的二维码扫描库了?

相信二维码扫描现在大家都已经不稀奇了,几乎所有的App里都会支持这个功能。这里我要问大家一个问题,你们都是如何在自己的App中加入二维码扫描功能的呢?相信会有一大部分朋友说,使用的是ZXing或者ZBar这种开源库。但是不知道大家有没有思考过,二维码功能这么常见,为什么Google却没有提供一个官方的二维码扫描库呢?反正我是没思考过。有需求,找开源,这可能已经成了很多Android开发者的常态化思维。但令我没想到的是,官方的二维码扫描库,它真的要来了

2022-03-15 08:03:34 35240 4

原创 再学一遍android:fitsSystemWindows属性

对于android:fitsSystemWindows这个属性你是否感觉又熟悉又陌生呢?熟悉是因为大概知道它可以用来实现沉浸式状态栏的效果,陌生是因为对它好像又不够了解,这个属性经常时灵时不灵的。其实对于android:fitsSystemWindows属性我也是一知半解,包括我在写《第一行代码》的时候对这部分知识的讲解也算不上精准。但是由于当时的理解对于我来说已经够用了,所以也就没再花时间继续深入研究。而最近因为工作的原因,我又碰上了android:fitsSystemWindows这个属性,

2022-02-22 07:47:35 31378 13

原创 2021年终总结,我躺平了

今天是2021年的最后一天,又到了写年终总结的时候了。今年的年终总结我思考了很久,却不知道该如何下笔,一度有种要写不出来的感觉。往年的年终总结其实我从来都不会讨论工作中的事情,基本都是在讲我利用业余时间干了什么。然而今年的业余时间我干了什么呢?我已经快回忆不起来了。。卷这个词汇也不知道是从什么时候开始流行的。我记得去年跟几个朋友一起吃饭的时候,我提到卷这个词汇,他们还听不懂什么意思,而现在这个词已经是家喻户晓了。如果用现在的词汇来形容当初的我,那么我觉得我是配得上卷王这个称号的。要用以前的词

2021-12-31 07:28:46 35468 33

原创 再看LayoutInflater,这次你可能又会有新的认识

今天不想去聊一些Android的新功能,新特性之类的东西,特别想聊一聊这个老生常谈的话题:LayoutInflater。现在看我文章的多数是一些老Android了,相信每个人使用起LayoutInflater都是家常便饭,信手拈来。但即使是这样,我仍然觉得这个知识点有可以分析的地方,看完之后或许你对LayoutInflater又会有一些新的认识。首先概括一下LayoutInflater是用来做什么的。我们都知道,在开发Android应用程序的时候,编写布局基本都是通过xml文件来编写的。当然

2021-12-14 08:00:48 25360 35

原创 Activity Result API详解,是时候放弃startActivityForResult了

如果你将项目中的appcompat库升级到1.3.0或更高的版本,你会发现startActivityForResult()方法已经被废弃了。这个方法相信所有做过Android的开发者都用过,它主要是用于在两个Activity之间交换数据的。那么为什么这个如此常用的方法会被废弃呢?官方给出的说法是,现在更加建议使用Activity Result API来实现在两个Activity之间交换数据的功能。我个人的观点是,startActivityForResult()方法并没有什么致命的问题,只是

2021-11-02 08:07:21 45976 18

原创 PermissionX 1.6发布,支持Android 12,可能是今年最大的版本升级

各位小伙伴们大家早上好。没错,PermissionX又升级了,并且这次版本变化非常大,很有可能是今年最大幅度的一次升级。在这之后,我就准备将精力放到其他开源库上,PermissionX应该短时间内不会再发布新版本了(修bug除外)。经过这次升级之后,PermissionX也将会是一个非常稳定的版本,它兼容到最新的Android 12系统,所以在未来的一年内都可以放心稳定地使用。那么接下来我们就一起探索一些,最新的PermissionX 1.6版本到底有哪些变化吧。

2021-10-12 07:21:04 30058 28

原创 Android 12 SplashScreen API快速入门

Android 12正式版即将发布。这次的Android系统变化当中,UI的变化无疑是巨大的。Google在Android 12中采取了一种叫作Material You的界面设计,一切以你为中心,以你的喜好为风格。相信大家一旦上手Android 12之后应该能立刻察觉到这些视觉方面的变化。另外还有一个非常显著的视觉变化就是,Android 12强制给所有的App都增加了SplashScreen的功能。是的,即使你什么都不做,只要你的App安装到了Android 12手机上,都会自动拥有这个新功能

2021-09-14 07:53:59 26722 23

原创 新版Glance发布,更好用的Android数据库调试助手

Glance是一个由我开发的用于调试Android数据库的开源库,无须借助电脑和数据线,直接在手机上就可以查看当前App中数据库的内容。Glance的1.0版本于去年12月份推出,然而自从首个版本推出之后,Glance就再也没有更新过。主要还是因为我实在是太忙了,平时只能用零散的业余时间写写博客

2021-08-31 08:15:44 12856 9

原创 再见JCenter,将你的开源库发布到MavenCentral上吧

关于JCenter废弃这件事情,相信许多朋友早就已经知道了。我在几个月前也专门写过一篇文章分析JCenter废弃事件的前前后后。Google已经给出了其官方态度,建议开发者以后发布库都发布到MavenCentral上。官方的态度其实是很重要的,因为以前JCenter也是这样被Google扶正的(结果Google被坑惨了),不然JCenter也无法在Android领域产生这么大的影响力。如果你现在用最新版的Android Studio来创建一个新的项目,你会发现

2021-08-17 07:57:34 13631 15

原创 PermissionX 1.5发布,支持申请Android特殊权限啦

Hello大家早上好,说起PermissionX,其实我已经有段时间没有更新这个框架了。一是因为现在工作确实比较忙,没有过去那么多的闲暇时间来写开源项目,二是因为,PermissionX的主体功能已经相当稳定,并不需要频繁对其进行变更。不过之前一直有朋友在反映,对于Android中的一些特殊权限申请,PermissionX并不支持。是的,PermissionX本质上只是对Android运行时权限API进行了一层封装,用于简化运行时权限申请的。而这些特殊权限并不属于Android运行时权限的一部分,所以

2021-07-27 07:54:58 17871 19

原创 你想知道,Microsoft Edge这种巨型项目是如何进行版本管理的吗?

不知道你有没有好奇过,像Microsoft Edge这种巨型项目是如何进行版本管理的?当然关于这个问题我就需要先解释一下,因为Edge是多么巨型的一个项目很多人可能并没有概念。事实上,其实我也没有概念,因为我知道自己接触的只是冰山一角,可能绝大多数人看这个项目的代码都像是在管中窥豹一样。Edge是微软研发的一款基于Chromium内核的浏览器,而Chromium则是由Google推出的一个开源浏览器项目。那么Chromium有多么庞大呢?很可惜,我没有找到最新的数据,但是根据2019年的数据

2021-07-12 07:27:54 12193 11

原创 我的故事登上了Android开发者的官网

自从去年年底加入微软之后,我跟Google的联动少了很多。倒不是因为这两家公司有什么不合或无法合作的地方,纯粹是因为我现在实在是太忙了。虽说原则上微软是一家不加班的公司,但由于我意识到自己有太多的东西需要补课,所以很多业余时间还是被占用了。不过我仍然尽可能地挤出一些时间来参加Google的活动。比如说今年3月份的时候,Google举办了一场为期4周的Jetpack Compose开发挑战赛,我因为对Jetpack Compose非常感兴趣,所以也参加了这个比赛,不过只参加了第一周的挑战项目:

2021-06-22 07:38:39 13560 12

原创 为什么如此安全的https协议却仍然可以被抓包呢?

上一篇原创写了一篇关于抓包的文章,教大家如何在Android手机上对https协议的请求进行抓包。https协议是一种非常安全的数据传输协议,它在网络上传输的所有内容都是经过加密的。这可能也让一些小伙伴非常不解,如此安全的https协议为什么也能被抓包?这样不就说明这个协议也并不安全吗?其实并不是如此。https协议确实是非常安全的,但同时,用https协议传输的数据也确实是可以被抓包的,它们两者之间并不冲突。那么今天,我们就来探究一下,为什么说它们两者之间并不冲突,以及市场上那些主流的抓包工具

2021-06-07 08:03:19 16224 8

原创 在Android手机上对https请求进行抓包

前段时间跟QQ群里的群友聊天时无意聊到了抓包的话题。抓包可以说是程序员日常开发调试问题的一个重要手段,可以帮助我们理清客户端与服务器之间的数据传输问题,以便于甩锅。在过去,网络请求基本都是靠的http协议,那个时候的抓包是一件非常简单的事情。然而这几年,http协议在逐渐被淘汰,几乎所有的网络请求都变成了https协议,这就使事情变得复杂了。群里一位朋友说,https是不可能被抓包的,不然怎么保证https传输的安全性,毕竟那么多大公司都在用这个协议来传输重要的数据。这其实是一个比较有意思的话题

2021-05-25 07:43:01 51905 40

《第一行代码——Android》试读

《第一行代码——Android》的试读部分,完整版购买: 当当网:http://product.dangdang.com/23521220.html 京东:http://item.jd.com/11504254.html 亚马逊:http://www.amazon.cn/%E7%AC%AC%E4%B8%80%E8%A1%8C%E4%BB%A3%E7%A0%81-Android-%E9%83%AD%E9%9C%96/dp/B00LVHTI9U

2014-08-13

DiskLruCache.java 完整源码

Android DiskLruCache的源码

2014-08-03

Android ActionBar应用实战,高仿微信主界面的设计实例完整源码

此为示例代码,详细讲解请参考博文: http://blog.csdn.net/guolin_blog/article/details/26365683 如对资源内容有疑问,请到博客中留言。

2014-07-02

Volley.jar程序文件

Android Volley的jar包,包中含有源码。

2014-04-06

Android高级图片滚动控件,3D版的图片轮播器Demo

此为示例代码,详细讲解请参考博文: http://blog.csdn.net/guolin_blog/article/details/17482089 如对资源内容有疑问,请到博客内留言。

2014-03-04

Android桌面悬浮窗进阶,QQ手机管家小火箭效果实现Demo

此为示例代码,详细讲解请参考博文: http://blog.csdn.net/guolin_blog/article/details/16919859 如对资源内容有疑问,请到博客中留言。

2013-12-29

Android Fragment应用实战Demo,向ActivityGroup说再见 源码程序

此为示例代码,详细讲解请参考: http://blog.csdn.net/guolin_blog/article/details/13171191 如对资源内容有疑问,请到博客里留言。

2013-11-19

Android双向滑动菜单带按钮版

此为带按钮版的双向滑动菜单示例。 http://blog.csdn.net/guolin_blog/article/details/9671609

2013-11-15

Android照片墙加强版,使用ViewPager实现画廊效果Demo

此为示例代码,详细详解请参考: http://blog.csdn.net/guolin_blog/article/details/12646775 如对资源内容有疑问,请到博客主留言。

2013-11-13

Android PowerImageView实现Demo

此为示例代码,详解讲解请参考: http://blog.csdn.net/guolin_blog/article/details/11100315 如对资源内容有疑问,可以到博客中留言。

2013-10-23

Android数据库安全解决方案,使用SQLCipher Demo

此为实例代码,详细讲解请参考: http://blog.csdn.net/guolin_blog/article/details/11952409 如对资源内容有疑问,请到博客中留言。

2013-10-17

Android 3D滑动菜单完全解析,实现推拉门式的立体特效Demo

此为示例代码,详解讲解请参考博文: http://blog.csdn.net/guolin_blog/article/details/10471245 如果对资源内容有疑问,可以到博客中留言。

2013-09-29

Android中轴旋转特效实现,制作别样的图片浏览器

此为示例代码,详解讲解请参考博文: http://blog.csdn.net/guolin_blog/article/details/10766017 如果对资源内容有疑问,可以到博客中留言。

2013-09-19

Android多点触控技术实战,对图片进行缩放和移动Demo

此为示例代码,详细讲解请参考博文: http://blog.csdn.net/guolin_blog/article/details/11100327 如果对资源内容有疑问,可以到博客中留言。

2013-09-11

Android瀑布流照片墙实现,体验不规则排列的美感Demo

此为示例代码,详细讲解请参考: http://blog.csdn.net/guolin_blog/article/details/10470797

2013-09-05

Android瀑布流照片墙实现,体验不规则排列的美感

此为示例代码,详细讲解请参考: http://blog.csdn.net/guolin_blog/article/details/10470797

2013-09-04

Android双向滑动菜单完全解析,教你如何一分钟实现双向滑动特效demo

此为示例代码,详细讲解请参考: http://blog.csdn.net/guolin_blog/article/details/9671609

2013-08-29

Android滑动菜单框架Demo修正版

此版本修正了以下内容: 1.将滑动方式改成了覆盖型。 2.ListView上下滚动时不会轻易滑出菜单。 3.正在滑动时屏蔽掉内容布局上的事件。 4.当菜单布局展示时,点击一下右侧的内容布局,可以将菜单隐藏。

2013-08-21

Android二维码扫描Demo 程序源码

此为示例代码,详细讲解请参考: http://blog.csdn.net/guolin_blog/article/details/9526247

2013-08-08

Android照片墙应用实现Demo

此为示例代码,详细讲解请参考: http://blog.csdn.net/guolin_blog/article/details/9526203

2013-07-31

Android教你如何一分钟实现下拉刷新功能项目完整实例代码

此为示例代码,详解讲解请参考 http://blog.csdn.net/sinyu890807/article/details/9255575

2013-07-11

Android系统联系人全特效实现,字母表快速滚动

此为示例代码,详细讲解请参考 http://blog.csdn.net/sinyu890807/article/details/9050671

2013-06-12

Android系统联系人全特效实现,分组导航和挤压动画demo

此为示例代码,详细讲解请参考 http://blog.csdn.net/sinyu890807/article/details/9033553

2013-06-06

巧用Android网络通信技术,在网络上直接传输对象demo

此为示例代码,详细讲解请参考 http://blog.csdn.net/sinyu890807/article/details/8967080

2013-05-23

Android使用Fragment实现兼容手机和平板的程序

此为示例代码,详细讲解请参考 http://blog.csdn.net/sinyu890807/article/details/8744943

2013-05-13

Android使用Fragment实现兼容手机和平板的程序demo

此为示例代码,详细讲解请参考 http://blog.csdn.net/sinyu890807/article/details/8744943

2013-05-12

Android图片滚动,加入自动播放功能,使用自定义属性实现,霸气十足demo

此为示例代码,详细讲解请参考 http://blog.csdn.net/sinyu890807/article/details/8796877

2013-04-13

Android滑动菜单框架完全解析,加入点击未隐藏部分回到主界面的功能

此代码为之前 Android滑动菜单框架完全解析,教你如何一分钟实现滑动菜单特效demo 的扩展版,主要加入了在菜单界面点击未隐藏部分,可以回到主界面的功能。

2013-04-11

Android实现图片滚动控件,含页签功能demo

此为示例代码,详细讲解请参考 http://blog.csdn.net/sinyu890807/article/details/8769904

2013-04-07

Android滑动菜单框架完全解析,教你如何一分钟实现滑动菜单特效demo

此为示例代码,详细讲解请参考 http://blog.csdn.net/sinyu890807/article/details/8744400

2013-04-02

Android指纹认证Demo源码

此为文章示例代码,完整讲解请参考 https://blog.csdn.net/guolin_blog/article/details/81450114

2018-08-20

Android 8.0系统通知栏适配Demo

此为示例代码,详细文章请参考 https://blog.csdn.net/guolin_blog/article/details/79854070

2018-04-14

带进度的Glide图片加载源码

此为示例代码,文章讲解请参考 http://blog.csdn.net/guolin_blog/article/details/78357251

2017-11-05

glide-3.7.0.jar

Glide 3.7.0版本jar包

2017-03-15

Android端弹幕效果实现

本资源为示例代码,完整讲解请参考博文: http://blog.csdn.net/sinyu890807/article/details/51933728

2016-10-16

仿360手机助手秒装和智能安装功能源码

本资源为示例代码,完整讲解请参考博文: http://blog.csdn.net/guolin_blog/article/details/47803149

2015-12-13

瀑布流ListView源码

此为示例代码,代码详细解读请参考博文:http://blog.csdn.net/guolin_blog/article/details/46361889

2015-10-06

普通ListView源码

普通ListView源码,包含ListView的基本使用方式

2015-10-04

Android照片结合LruCache和DiskLruCache Demo源码程序

此为示例代码,如对资源内容有疑问,可以到以下博客地址中留言: http://blog.csdn.net/guolin_blog/article/details/34093441

2014-08-14

Android照片墙完整版Demo

此为示例代码,如对资源内容有疑问,可以到以下博客地址中留言: http://blog.csdn.net/guolin_blog/article/details/34093441

2014-08-11

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除