自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(30)
  • 收藏
  • 关注

原创 [Android] 解析View的post方法

来自马小姐的嘲笑。 Handler本身的post方法只是将Runnable包成Message放入消息队列,但是View的post做了额外的处理。废话不多说上代码。 可以看到VIew的post方法里面做了一个判断。如果AttachInfo不为空时,会使用其中的Handler去post这个Runnable。如果为空,则执行了HandlerActionQueue的post...

2019-08-08 17:03:59 631

原创 [Tools] 解决Git命令每次都要输入密码

解决方法:命令:ssh-add ~/.ssh/id_rsa

2019-04-18 19:51:51 777

原创 [Android] 7.0以上Android手机连接Charles无法抓取HTTPS请求的坑

配置Charles抓取HTTPS的方法就不说了,网上一搜一大堆,无非是配置下证书,打开下SSL代理连接。最近业务开发需要抓取HTTPS请求,按照网上的教程在自己的华为P9(Android O)上一顿配置diao用没有,然而同组小哥的乐视就可以,一顿查之后发现是Android N之后证书信任的问题。从Android Nougat(7.0)开始,谷歌改变了网络安全策略。自签的CA证书将...

2019-04-10 15:35:09 7897 4

原创 [Android]Android APP Bundle插件化使用overridePendingTransition的坑

因为要减少APK体积,考虑使用Android APP Bundle,将某个模块放入到spilt app中动态加载,过程中遇到了overridePendingTransition这个大坑。 情况是分离出的模块里又个Activity,使用了overridePendingTransition这个方法,传入的anim存在于该模块当中。在运行的时候,发现该Activity切换时,出现了cr...

2019-03-27 16:44:07 1211

原创 [Android] Android Badge技术分析

Android Badge技术分析    Badge红点最初来自于IOS的UX设计之中,早期版本的Android原生并没有这个设计,从Android O(SDK 26)开始,Google才开始提供官方的API。在这之前我们看到的各种手机系统上的Badge实际上是各个手机厂商的Rom中,自己对Launcher添加了这个Feature,因此也造成了一些问题,比如碎片化严重,没有统一的API。APP...

2019-01-31 11:16:34 2234

原创 [Android] 项目依赖版本冲突解决方法

    在集成依赖的时候,有时候会遇到不同依赖中有版本不同的相同子依赖。比如项目的A依赖使用了1.0的GSON,B依赖使用了1.1的GSON,此时就可能会有依赖冲突的问题出现。解决方法:在项目根目录下的build.gradle中添加subprojects { Project project -> project.configurations.all { re...

2019-01-29 15:39:20 1646 1

原创 [Flutter] Flutter之Android开发者教程(三)(自译)

文档地址:https://flutter.io/docs/get-started/flutter-for/android-devs译者:Haocxx异步UI在Flutter中runOnUiThread相当于什么?    Dart有一个单线程执行模型,支持Isolate(一种在其他线程运行Dart代码的方式),事件循环和异步编程。Dart代码在主线程上运行并由事件循环驱动,除非使用I...

2018-12-19 12:03:31 263

原创 [Flutter] Flutter之Android开发者教程(二)(自译)

文档地址:https://flutter.io/docs/get-started/flutter-for/android-devs译者:HaocxxIntent在Flutter中,Intent等于什么?    在Android中,Intent主要有两个作用:在不同Activity之间跳转,以及组件之间的通信。在Flutter中其实并没有Intent的概念,即使你仍然可以集成使用一个...

2018-12-17 18:34:34 237

原创 [Flutter] Flutter之Android开发者教程(一)(自译)

文档地址:https://flutter.io/docs/get-started/flutter-for/android-devs译者:Haocxx     这篇文章是为了让Android开发工程师利用已有的Android知识快速理解基于Flutter的APP开发。如果你对Android framework有一定的理解,你可以把这篇文档作为一个迈向Flutter开发大门的跳板。  ...

2018-12-14 18:30:49 491

原创 [Algorithm] 非递归遍历二叉树

    头条一面挂,主要是面试官偏向于考察我不太擅长的网络和多进程通信。但耻辱的是Android面试考察的算法一般都非常简单,而这是这波跳槽唯一一次在数据结构算法上出问题。要求是十分钟内中序非递归遍历二叉树,我居然直接写了个BFS。   思路:利用循环操作一个栈。 public static void doErgodicTree(Node root) { Stack<Node&...

2018-11-16 20:33:45 271

原创 [Android] 记录人生第二次跳槽的面试经历

    在得到老板的允许之后,这两个周不停在折腾面试,并且基本得到了想要的结果,于上上周末正式离职,等待新的入职东家,不出意外的话应该是去爱奇艺。    这次跳槽的主要诉求是去大厂,所以面试的公司基本都是一线互联网公司。过程还算顺利,至少比离开三星的跳槽让人舒服的多。整理了下面试问的内容,好多也记不太清楚了,有的问题被不同面试重复提问,就只整理一份。主要如下:小年糕:1.手写算法:从一个...

2018-11-11 17:08:10 1173 4

原创 [Android] Android Studio代码自动生成作者签名注释

File->Settings->Editor->File and Code Templates 模板:/** * Created by Haocxx  * on ${DATE} */

2018-08-24 18:35:28 2666

原创 [Java] 一个十进制转十六进制计算器

用来算透明度的。省的每次都要笔算- -import java.util.Scanner;public class HexCalculator { public static final int HEX = 16; public static void main(String[] args) { Scanner in = new Scanner(System.in); Sys...

2018-07-23 15:44:56 3958

原创 [Android] Android获取当前顶部Activity名方法历史版本汇总

null

2018-06-19 18:13:26 5551

原创 [Android] 覆盖于顶层的View不被Touch触发

在编写一个显示文字的浮动窗口View时,希望它不被Touch触发,并且Touch可以传递到被这个View盖住的View。方法是LayoutParam中设置FLAG_NOT_TOUCHABLE。 private void initView() { WindowManager.LayoutParams params = new WindowManager.LayoutParams...

2018-06-14 19:11:43 2348

原创 [Android] ColorV UI代码理解笔记(2)-主页面

首页:activity_colorv.xml:页面内容放在FrameLayout,每一页是一个Fragment。底部为五个权值都为1的RelativeLayout。layout_weight用法会使View额外获得父空间剩余空间中权重大的长度或宽度。<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/androi...

2018-06-11 18:56:42 210

原创 [Android] ColorV UI代码理解笔记(1)-Launcher页

Launcher页:AndroidManifest.xml: <activity android:name=".modules.main.ui.activity.StartActivity" android:label="${APP_NAME}" android:screenOrientation="por...

2018-06-11 18:55:54 259

原创 [Algorithm] Java链表反转

public class TurnBackLinkedList { public static void main(String[] args) { Node head = new Node(); Node cur = head; for(int i = 0; i < 10; i++) { int value = (int) (Math.random()*100); ...

2018-04-27 14:22:02 245 1

原创 [Algorithm] Java快速排序

static void quickSort(int left, int right){ if(left > right) return; int l = left; int r = right; int value = map[l]; while(l != r) { while(l < r && map[r] >= value) ...

2018-04-27 12:05:32 146

原创 [OS] LRU调度算法

LRU(least recently used)是一种常见的内存调度方法。主要原理是当缓存满了的时候,优先淘汰最后一次访问时间最早的数据。盗图一张:一般使用链表来实现。当访问新的数据的时候,将其放到LRU队列表头。当访问缓存中的数据时,将这个节点移动到表头。当缓存满了的时候,淘汰表尾的节点。...

2018-04-12 11:32:54 2011

转载 [OS] 内存分配和内存调度

From https://blog.csdn.net/msdnwolaile/article/details/52763882内存分配策略和分配算法在为进程分配内存时,将涉及到三个问题 1,最小物理块数的确定 2,物理块的分配策略 3,物理块的分配算法1,这里的最小物理块数,是指能保证进程正常运行所需的最小物理块数。当系统为进程分配的物理块数少于此值的时候,进程将无法进行。如果过多的话,那么将可能...

2018-04-12 10:33:59 1266

转载 [Android] View的绘制过程

From http://blog.csdn.net/xiaohanluo/article/details/520841051. View简介       View类是Android中各种交互式组件的基类,显示在屏幕上的视图由一个或多个View组成,它们排列在一个View树中,我们可以向树中添加新的View或者View树。2. View绘制过程       每一个Android研发每天都会和各种Vi...

2018-04-11 16:48:17 194

原创 [POJ 3630] Phone List

题目:给定若干个电话号码,查询之中是否存在电话号码是另一个电话号码的前缀,存在的话视为冲突。思路:字典树的基本操作。这道题让我注意到POJ之前没有注意到的一种Runtime Error可能,即不要在读取输入一半,找到结果的时候就直接return结束这个case的运算,这会导致后面的输入乱掉,而且最后输入溢出,导致程序停在那里等待输入,出现Runtime Error的错误。import java.u...

2018-04-09 16:50:28 214

转载 [Android] BroadcastReceiver解析

from   https://www.jianshu.com/p/ca3d87a4cdf3前言BroadcastReceiver(广播接收器),属于 Android 四大组件之一在 Android 开发中,BroadcastReceiver 的应用场景非常多今天,我将详细讲解关于BroadcastReceiver的一切相关知识目录1. 定义即 广播,是一个全局的监听器,属于Android四大组件之...

2018-04-08 16:36:13 175

转载 [Android] Activity Launcher Mode

在AndroidManifest.xml <activity>标签下有一个名为launchMode的属性,用于配置Activity的启动模式。总共有4种类型的launchMode。如下:standardActivity的默认加载方法,即使某个Activity在Task栈中已经存在,另一个activity通过Intent跳转到该activity,同样会新创建一个实例压入栈中。例如:现在栈...

2018-04-08 12:07:12 293

原创 [Android] Service生命周期

当Service以startService方式启动:onCreate:创建Service实例。完成初始化。只会调用一次。onStartCommand:完成Service的功能。每次startService都会调用。onDestroy:销毁Service对象,回收资源。当Service以bindService方式启动:onCreate:创建Service实例。完成初始化。只会调用一次。onBind:...

2018-04-03 14:41:39 165

原创 [Android] Fragment生命周期

Fragment生命周期的十一个回调方法onAttach:将Fragment 关联到宿主Activity。此时可以获取到Activity对象。onCreate:创建Fragment。跟Activity一样,在里面实现初始化。onCreateView:为Fragment添加Layout。主要完成UI布局绘制,Fragment自己的UI更新线程等,不应有耗时操作。onActivityCreated:当...

2018-04-02 20:58:34 141

原创 [Android] Activity生命周期

Activity生命周期的七个回调方法onCreate:Activity被创建时第一个生命周期回调方法。主要在里面完成初始化,如设置layout,对象初始化,绑定事件。onStart:当Activity启动时调用,使Activity能够被看到。onResume:当Activity初始化完毕时或者失去用户焦点之后重新获取时调用,使Activity获取用户焦点,使Activity可与用户交互。onPa...

2018-03-30 21:09:17 214

原创 [POJ 2688] Cleaning Robot

题目:给定一张地图和机器人的起始位置,上面有若干垃圾以及一些障碍物。已知机器人无法到达障碍物所在的点,机器人到达垃圾所在点即可清理垃圾。问机器人最少移动多少步可以把垃圾全部清理干净。思路:DFS加BFS。先用DFS找出所有种清理垃圾的顺序,然后再用BFS计算出每种情况最少需要的步数,最后输出最少的步数。import java.util.Scanner;public class Main{ s...

2018-03-28 20:50:08 435

原创 [POJ 3349] Snowflake Snow Snowflakes

题目:一朵雪花有6个花瓣,每个花瓣有一个值,当两片雪花六个对应位置的花瓣都一样时,就是Twin Snowflakes。给出一个雪花的集合,要求查找里面是否有Twin Snowflakes。思路:哈希的入门题目。如果直接数组存储比较会超时。建立一个哈希表,每读入一片雪花,就先排序,再存入哈希表,如果发现表中已经存储了一样的雪花,就判定为存在Twin Snowflakes,如果所有雪花都存入还没有存入...

2018-03-28 20:26:24 190

空空如也

空空如也

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

TA关注的人

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