自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

一个码农的自我修养

HAS MAN A FUTURE

  • 博客(24)
  • 收藏
  • 关注

原创 View 设置圆角

outlineProvider = object : ViewOutlineProvider() { override fun getOutline(view: View?, outline: Outline?) { outline?.setRoundRect( 0, 0, view?.width.toIntExt(), view?.height.toIntExt(),

2021-08-10 23:47:28 967

原创 how to Use ‘--warning-mode all‘

gradle提示信息。Deprecated Gradle features were used in this build, making it incompatible with Gradle 7.0.Use '--warning-mode all' to show the individual deprecation warnings.See https://docs.gradle.org/6.5/userguide/command_line_interface.html#sec:comma.

2021-04-02 17:07:57 6620 6

原创 全局打印生命周期

用反射的方式打印Activity的生命周期/** * 用反射的方法监听生命周期 */private fun registerLifecycle1() { val clazz = ActivityLifecycleCallbacks::class.java val callback = Proxy.newProxyInstance( clazz.classLoader, arrayOf(clazz) ) { _, method, args -&g

2020-06-14 17:21:17 245

原创 Android签名概述和多渠道打包

1.安卓应用签名V1签名过程详细描述不想深究可直接阅读简述模块。解压一个APK文件,用V1签名的。会有三个这样的文件单独分析一条:MANIFEST.MFName: AndroidManifest.xmlSHA-256-Digest: Oxzxu/fRfdUg00s2LvddlkY9d6ut2fs9l4zBj2otNl0=CERT.SFName: AndroidManifest....

2020-06-11 23:27:46 335

原创 面试系列“讲一下吧”之 LeakCanary

如何使用第一步:添加依赖debugImplementation 'com.squareup.leakcanary:leakcanary-android:2.2'第二步:没了那他是如何与你的应用程序绑定的他配置了一个ContentProvider,在 AndroidManifest.xml 中配置, 在 App 打包的时候就会把所有的 AndroidManifest.xml 文件合并到一...

2020-03-26 00:33:47 1617

原创 面试系列“讲一下吧”之 HTTPS

我看你简历上写了HTTPS,那你讲一下吧什么是HTTPS简单来说就是把 HTTP 进行加密,把 HTTP 协议建立在 SSL/TLS 上面。 SSL Secure Socket Layout -> TLS Transport Layout Secure在HTTP之下增加一个安全层,用户保障 HTTP 的加密。本质就是:在客户端和服务器端之间协商出一个对称密钥,每次发送消息之前将内...

2020-03-17 19:36:32 996

原创 面试系列“讲一下吧”之 OkHttp 源码解析

阅读指南:本博客,前面源码部分,duck不必细看,大概瞄一眼就行,或只看我加注释的部分就行。我会在文末描述下大概流程把流程理清楚了再看代码比较好,看代码注意只看主要流程,其他分支末节,有时间自己慢慢研究就行。使用没什么好说的,记住这么用就好。val okHttpClient = OkHttpClient()val request = Request.Builder() .url(...

2020-03-17 14:35:07 466

原创 增强for循环

增强for循环的本质其实就是 Iterator原代码:for (String b : listB) { System.out.println(b);}.class文件Iterator var7 = listB.iterator();while(var7.hasNext()) { String b = (String)var7.next(); System.out...

2018-11-15 21:52:17 1403

原创 BadgeView简单使用

效果就是在一个View上有一个小红圈,表示未读数。 效果图如下:使用的是Github上面的一个开源的自定义控件。 Github地址:https://github.com/stefanjauker/BadgeView示例代码:BadgeView badgeView = new BadgeView(this);badgeView.setTargetView(findViewById(R.id.bt

2016-08-16 16:23:00 11868 1

原创 Android Studio Logcat 酷炫配色

修改 Android Studio logcat 配色ASSERT 8F0005 DEBUG 0070BB ERROR FF0006 INFO 48BB31 VERBOSE BBBBBB WARN BBBB23修改完毕后如下图

2016-08-10 23:03:17 2328 2

原创 Android开发艺术探索笔记_第二章 IPC机制

IPCInter-Process Communication简介Android中的多进程模式1 多进程会产生的问题IPC基础概念介绍1 Serializable接口1. IPC(Inter-Process Communication)简介IPC是指进程间通信或者跨进程间通信,是指两个进程之间进行数据交换的过程。线程是CPU调度的最小单元,同时线程是一种有限的系统资源。进程一般指一个执行

2016-07-10 23:33:10 366

原创 单例模式代码示例

单例模式 单例模式是一种常用的软件设计模式。在它的核心结构中只包含一个被称为单例的特殊类。通过单例模式可以保证系统中一个类只有一个实例郭霖大神写的博客通俗易懂: http://blog.csdn.net/guolin_blog/article/details/8860649代码示例———双重锁定(Double-Check Locking)public class SingletonPatt

2016-07-04 19:41:01 15861

原创 Android中定时任务的实现

Android中定时任务的实现采用Handler的postDelayed(Runnable, long)方法Handler handler = new Handler();Runnable runnable = new Runnable() { @Override public void run() { handler.postDelayed(this,2000

2016-07-03 09:37:51 311

原创 Android拨打电话

直接上代码Intent intent = new Intent();intent.setAction(Intent.ACTION_CALL);intent.setData(Uri.parse("tel:" + "10086"));startActivity(intent);记得加权限<uses-permission android:name="android.permission.CALL_P

2016-06-15 20:52:35 251

原创 Android Vibrator的使用

什么是VibratorVibrator是Android的震动服务,通过如下的代码获取实例 Vibrator mVibrator = (Vibrator)getSystemService(Service.VIBRATOR_SERVICE);

2016-06-14 07:44:22 740

原创 java虚拟机

Q:java虚拟机是否可以运行.class文件? A:当然不能。它执行的是class转换的dex文件。 注:Dakvik并不是一个Java虚拟机,它没有遵循Java虚拟机规范,不能执行Java的class文件,使用的是寄存器架构而不是JVM中常见的栈架构,但是它与Java又有着千丝万缕的关系,它执行的dex文件可以通过class文件转化而来。

2016-05-31 18:21:41 274

原创 Linux基本命令

ifconfig 查看ip地址tty 命令显示当前终端对应终端设备文件who 查看当前系统上登陆的所有账号的命令who am i 查看当前终端登陆的账号

2016-05-31 18:17:31 256

原创 Android studio开启悬浮提示

Android studio如何开启悬浮提示,看截图

2016-04-20 20:41:36 833

原创 Android studio如何显示行号

studio显示行号

2016-04-20 14:51:46 459

原创 Android studio 如何导入并引用Library工程

android studio导入library

2016-04-19 22:57:38 26903 4

原创 Android下拉刷新SwipeRefreshLayout控件的简单使用

SwipeRefreshLayout 下拉刷新

2016-04-16 00:42:11 485

原创 安卓监听网络状态改变

利用广播的方式去监听网络状态的变化Action:public static final String CONNECTIVITY_ACTION = "android.net.conn.CONNECTIVITY_CHANGE";广播接受者类:import android.content.BroadcastReceiver;import android.content.Context;import

2016-03-31 10:29:56 447

原创 Snackbar的基本使用

什么是Snackbar,据说是Toast的增强版。就是图中下面的那个一个View.Snackbar.make(view, "Replace with your own action", Snackbar.LENGTH_LONG) .setAction("Action", new View.OnClickListener() {

2016-03-21 21:15:30 532

原创 Android广播入门

安卓 广播

2016-03-09 11:22:28 278

空空如也

空空如也

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

TA关注的人

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