- 博客(18)
- 资源 (4)
- 收藏
- 关注
原创 Gerrit push报错(change http://gerrit.xxxx.com:80/c/xxx/apps/xxx/+/79605 closed)
$ git push origin HEAD:refs/for/p/gkui/g/22/r/dev_530Enumerating objects: 129, done.Counting objects: 100% (129/129), done.Delta compression using up to 8 threadsCompressing objects: 100% (93/93), done.Writing objects: 100% (101/101), 439.42 KiB | 1..
2022-05-12 09:09:30
3541
原创 Gerrit报错:Permission denied (publickey)
在使用Gerrit pull代码的时候,你会发现报错,错误信息大概是:Permission denied (publickey)。是由于OpenSSH从8.8版本由于安全原因开始弃用了rsa加密的密钥,因为OpenSSH认为rsa破解成本已经低于5万美元,所以觉得成本太小了,有风险就给禁用了。你可以通过命令:ssh -v [git服务器]去查看Gerrit服务器的OpenSSH的版本号,如果≥8.8,就可以用这个方法。解决办法:进入本机 .ssh目录,在下面新建一个config文件,不带
2022-03-29 09:39:56
8045
3
原创 SourceInsight查看Android源码
因为SI只能在Windows里面打开,所以我用的是3.5版本,4.0的我用了,注册码很难找,我就卸载了。3.5的注册码网上一大堆,而且各个好使,我也想买一个注册码,无奈好几千美刀,实在有点吃不消。安装好SI,把Android代码下载好,建一个project,网上一大堆文章,自己搜一下吧。然后就可以用了,我一般用右侧的搜索文件框用的最多,再一个就是点击某个类,下面的窗口就可以自动打开这个类的实现,查看很方便。唯一缺点就是我的SI太卡了,可能跟我的电脑有关,我的是ThinkPad,很老的电脑了,还是机械
2022-01-23 01:04:04
566
原创 VSCode查看Android源码,从入门到放弃
VSCode查看Android源码比较简单,首先下载Android源码,我用的Mac,所以比较方便,对了repo在homebrew里面就有,直接brew install repo就可以,但是版本比官方的略低,但是可以用,只是有警告。下载之后直接用VSCode加载文件夹即可,直接可以在目录里面打开文件,对于非jdk的类能定位到文件位置,但是jdk的源码无法定位,显示的是.class文件反编译出来的代码, 没有阅读的价值。后来我又尝试把sdk/source里面的源码copy到Android源码路径下,还
2022-01-23 00:54:34
5778
原创 Android Studio查看Android源码
最近在折腾面试,然后就有些组件的原理需要看源码,之前也弄过,都是用的Source Insight在win10里面搞的,今天试了一下Mac,源码60G,我这个版本是Android 11,目前是最新版的代码。用AS看源码首先要构建项目配置文件,就是ipr和iml工具,用到Android源码里面的idegen工具,但是你用官方的mmm命令方法会报错,说文件格式不对,本来是可以用mmm命令直接生成的,但是Mac的文件系统跟官方要求的有问题,所以就放弃了,有想试试的同学可以执行下面的命令。cd ~/aosp
2022-01-20 01:56:21
4424
原创 升级到Mac 12+版本后,终端git命令报错
最近在mac上用git clone命令的时候,git报错,大概意思就是macOS版本有问题,git的路径找不到了。然后就去网上搜,有几个办法:1、用brew doctor命令看一下是哪个组件没成功。我试了一下,发现brew这个命令也找不到了,所以就不行(无效)2、用brew update-reset命令,有反应,但提示我必须装git,否则没法检测。(无效)3、找到了v2ex上面的帖子(有效)升级到 macOS12 beta 后, brew update 报错, unknown or uns.
2022-01-10 12:29:49
1482
原创 研发人员要有管理能力
这次我们聊聊管理能力。我个人理解管理能力主要是行政管理和业务管理。行政管理这块我理解为组员的动员能力、沟通能力、职业规划、考核、培训等。动员能力主要分成被动式和主动式。被动式就是挤牙膏,要对组员进行规章制度的建设和培训,明确什么情况下需要员工配合,也就是奖惩措施。主动式就是要明确目标,然后根据目标制定计划,明确目前的状态,然后一步一步让员工自己做,而管理人员负责check关键节点。这样一段时间后,整个管理人员的动员能力和组员的能动性就大大提升了,做任何事都不需要扯嗓子喊了。具体有很多
2020-07-09 17:43:56
674
原创 我是如何做研发人员内部培训的
这次讲讲内部培训培训是对新员工或老员工一种能力提升,比如从技术层面,软实力层面的全方位培训,使团队整体的战斗力提升。也会关系到能否建立员工归属感的关键环节。比如我之前给团队成员培训,就包括了各种规范(写码、邮件、文档等)、制度、每周分享、caseStudy学习等等,以后有时间再单独分享。总之,培训是研发组长很重要的职能之一,也是组员是否有持续战斗力的关键。首先培训的时候你要确定培训的对象,那么一般我们研发人员的内部培训就只有两种,新员工和老员工,还有一种是对外培训,包括软件使用培训等等,这块我们后面
2020-07-05 01:58:27
2881
原创 我是如何招聘新人的
这次我们聊聊招聘新人这个话题。关于团队里面获取HC的问题,基本不由我们控制,我们只能提申请,但是批不批看运气了。接下来说的是拿到HC后,我们应该怎么做。筛简历我们一般海选简历都是从Boss直聘和拉钩上面上面找,这里补充一下背景知识,一般是研发人员和HR一起筛选,也有的是HR初筛,然后发到研发这边,根据应聘人员的技能再次筛选一次。如果合格就会收到电话面试邀约。Boss直聘上面与应聘者可以实时交流,这个功能比较赞,但是非付费用户,需要一个一个应聘者聊天,这个效率较低,一般我们都会跟部门.
2020-07-05 01:55:21
476
原创 你知道研发的文档有多少种吗?
这篇继续讲文档能力。文档能力是研发人员必备技能,有时候涉及到的文字沟通,比如邮件沟通等,都需要文档加以辅助说明,那么这时就需要好好设计文档的内容了。有些同学文档内容写的很随意,一眼看上去不知道在讲什么。这时就要用到文档的结构了。你设计的结构要通俗易懂,条理清晰。但是不同的文档,结构也是不一样的,从整体上区分,分为:编码规范上次我们已经展开聊了,主要就是写代码时与团队之间的一些规章制度,这样可以方便团队之间的沟通,减少沟通成本。日报周报几乎每天都会接触到,主要是汇报当日工作..
2020-07-05 01:36:48
1743
原创 研发的写码能力首先要做到代码规范
今天展开来说一个,就是写码能力。说到写码能力,首先要具备的就是代码规范,为什么说代码规范重要呢?因为我们目前市场提供的研发职位,90%都是基于团队作战的,这就要求团队成员间需要有高效的沟通方式,那么代码规范就是其中之一。大家提前商量好一套认可的标准,照着标准去执行,可以大大减少不必要的沟通成本。久而久之业内形成了很多优质的代码规范标准最佳实践:Google代码标准:英文版Google的代码标准特点就是权威、应用广、大厂备书。我这里提供的是英文原版,我去搜了一下,网上对个别语言有中文翻译,但是
2020-07-05 01:30:25
2437
原创 互联网行业研发组长的职责有哪些?
今天分享点职场的话题,笔者也在互联网研发岗位干过几年,实践过程中大概了解了其中的职责任务。研发组长主要指的是具备P7职级的组长。平时在招聘网站很少会看到组长的职责,就算说,招聘HR也说不到点子上,搞得很多人会很懵,到底研发组长要掌握哪些技能呢?今天就来简单聊一下。研发组长的职责主要分几块研发任务研发基本是组长的必备技能了,这块又包含了写码能力和文档能力。写码能力是最基本的技能,比如面试时经常考的算法,架构,计算机基础知识,职位专业知识(比如前端、后端、Android、iOS这些)等等。文
2020-07-05 01:28:57
2407
原创 时间管理
你一定接触过很多时间管理的方法,有的说先做简单的事再做复杂的事。有的说只做重要的事,别的没有必要做。有的说,最优先的是重要但不紧急的那些事情。那么,哪一种时间管理的方法是最好的呢?总的来说,是一个坏消息,一个好消息。坏消息是,并不存在适用所有情况的最好的时间管理方法。但是,好消息是,如果设定一些条件,那么可以用数学证明,找到适合这类情况的最好的时间管理方法。我来给你转述一下。先来说说,如果你面临的是这样的情况,你有几个任务,所有的任务都是急事,也就是说,每个任务都有完成截止日期,怎么做呢?第一个办法
2020-07-05 01:27:01
198
原创 Android UI线程时间多少毫秒才不会卡顿
人眼的原因, 1秒24帧的动画才能感到顺畅. 所以每帧的时间大概有41ms多一点点(1000ms/24). 但是但是, 注意了, 这41ms不是全都留给你Java代码, 而是所有java native 屏幕等等的,最后留给我们用java级别发挥的时间, 只有16~17ms了.所以,当你优化视觉效果时,留意UI线程的时间, 超过16ms, 就需要处理了.
2015-12-11 14:38:15
4731
原创 ListView效果优化
去除ListView滑到顶部和底部时边缘的黑色阴影:android:fadingEdge="none"----------------------------------------------------去除拖动时默认的黑色背景:android:cacheColorHint="#00000000"或listView.setCacheColorHint(Colo
2015-05-01 23:11:27
777
原创 获取安卓手机的唯一标识
TelephonyManager _TelephonyManager = (TelephonyManager) getSystemService(Context.TELEPHONY_SERVICE);if (_TelephonyManager.getDeviceId() != null) {mIMEI = _TelephonyManager.getDeviceId();}if (_Tele
2015-04-28 16:50:54
1131
原创 ECONNRESET (Connection reset by peer) on a server with authentication解决方案
试试以下解决方案,另:国内论坛的解决方案就不要看了,无法解决http://stackoverflow.com/questions/24104746/econnreset-connection-reset-by-peer-on-a-server-with-authentication#
2015-04-28 16:16:03
3624
原创 float型float f=3.4是否正确?
不正确。精度不准确,应该用强制类型转换,如下所示:float f=(float)3.4 或float f = 3.4f 在java里面,没小数点的默认是int,有小数点的默认是double; int转成long系统自动作没有问题,因为后者精度更高 double转成float就不能自动做了,所以后面的加上个f
2009-07-17 13:37:00
10001
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人