自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 凭借这份Android面试题集,我拿到了阿里P7的社招offer,快醒醒吧

大前端脚本语言第六章 非技术面试题高频题集次高频题集每个问题我们都尽量附上1个标准参考答案,都是我们反复摸索消化(真心花了很多时间),觉得写的比较好的文章作为答案。这样就可以节省大家自己去搜索的时间,把时间用在正确的东西上。其实我们也可以直接以简易的、群友分享的答案写出来,但是这并帮助不了同学们去深刻理解,三思之下还是采用标准答案作为参考。不明白或者想通俗了解的,可以**点击我**加入我们BAT技术群一起交流讨论。下面是我们每章知识点的概述:第一章 计算机基础面试..

2021-09-08 17:00:22 211

原创 凭什么我的工资要比新来的毕业生低?,Android面试真题精选

不知道大家注意到没有,虽然大家都在说找工作好像竞争越来越激烈,但是这几年应届生入职的薪水也是一年比一年高。我记得我16年毕业的时候,15K就已经算是非常不错的offer了。到了今年,20多K的offer遍地走,甚至不乏30K、40K的SP。让我不禁怀疑自己是不是生错了时代。我记得很清楚,16年的时候华为的打包价大概是9K,到了17年直接涨到了15K。美团也是,两三年前也不过17K左右,今年涨到了20+。显然公司内部的调薪是跟不上这样剧烈的涨幅的,那么必然带来的问题就是倒挂,也就是那些工作一两年甚至两三年的

2021-09-08 16:58:37 428

原创 写给互联网大厂员工的真心话:2020年,附答案解析

同样的 19 年,倪叔的挚友,一个拥有外企 +BAT 背景,无论是个人能力还是职业操守都非常出众的高级市场人才,因为家庭的原因要换城市,要换工作,在帮她沟通意向职位,HR 告诉我的却是:不是说公司出不起这 100 万的年薪,而是要发挥一个年薪百万的市场人员的价值,至少要对应 2 个亿的市场预算,现在这个环境公司拿不出 2 个亿市场预算……还有朋友,明明已经有了十几年的工作经验,却因为当年没有本科文凭被拒绝,这在过去根本就不是问题,但在 19 年,成为了企业刷掉他简历的主因。这几年,一直在写互联网观察的.

2021-09-08 16:53:34 398

原创 写个更牛逼的Transform _ Plugin 进阶教程,万字总结

if (config == null) { config = new DoubleTabConfig(); } config.transform(); }); if (isApp) { AppExtension appExtension = project.getExtensions().getByType(AppExtension.class); appExtension.regist...

2021-09-08 16:51:47 297

原创 再见,安卓开发权威指南

小A和我一样来自湖南农村,只不过他本科毕业后就来到了深圳。去了深圳知名大厂腾讯做了一名码农,成为了同龄人眼中的佼佼者,让很多同学和朋友无比羡慕,鹅厂哇,BAT光环哇,小A那时春风得意马蹄疾,一日打卡深圳各个知名地点。无忧无虑,深圳以无比包容的双手,让年轻一代的毕业生,在这里展翅飞翔。“来了,就是深圳人”,这个口号贯穿于城市各个地方。蛇口工业区的:时间就是金钱 效率就是生命。激励无数年轻人奋发向上。标语:时间就是金钱,效率就是生命小A在腾讯上班后,表示周围大佬实在太多,必须努力追赶大佬们的步伐,又是.

2021-09-08 16:50:06 82

原创 Glide源码精编解析(腾讯面试参考答案,Android面试题汇总

public final class RequestOptions extends BaseRequestOptions<RequestOptions> {private static RequestOptions skipMemoryCacheTrueOptions;private static RequestOptions skipMemoryCacheFalseOptions;private static RequestOptions fitCenterOptions;priva

2021-09-06 20:04:15 231

原创 Glide源码晦涩难懂?用这个角度让你事半功倍,安卓面试题及答案2020

既然有了RequestBuilder,那么最终是为了构建请求,那么小明还得设计出一个用于获取图片的Request,设计出来后的效果如下:public interface Request { // 开始请求 void begin(); // 清除请求 void clear(); // 暂停请求 void pause();}请求类已经设计好了,那么在Request的begin的时候就开始获取图片;当图片请求完之后,或者加载失

2021-09-06 20:02:31 65

原创 Git在AndroidStudio中的使用,腾讯T2亲自教你

AndroidStudio作为安卓开发最强大的工具,支持多种版本库的使用,之前我已详细梳理过SVN在AndroidStudio中的使用,详见:SVN使用详解SVN在AndroidStudio中的使用这篇文章将带你一起学习Git在AndroidStudio中的使用。当然,我不会在此详细告诉你如何去安装或配置Git,更多内容请查看上面给出的文章。一、在AndroidStudio中配置Git及其它准备工作。1.首先我们来创建一个测试项目,然后打开Settings选项,选择Version Control,

2021-09-06 20:01:00 219

原创 GitHub标星9-8k,知乎阅读10w,已收藏

获取实例并调用Provider.get(AbcInterface.class).doSomething()(5) EventBus这个自不必说,虽然说滥用是一个问题,但是有些场景下,使用事件还是最为方便简单的方式(6) 组件 API 模块上面提到的接口和事件以及一些跨组件使用的 Model 放到哪里好呢?如果直接将这些类下沉到一个公共组件中,由于业务的频繁更新,这个公共组件可能会更新得十分频繁,开发也十分的不方便,所以使用公共组件是行不通的,于是我们采取了另一种方式——组件 API .

2021-09-06 19:59:10 129

原创 GitHub标星8-3K,推荐给大家

<androidx.constraintlayout.widget.ConstraintLayout xmlns:android=“http://schemas.android.com/apk/res/android”xmlns:app=“http://schemas.android.com/apk/res-auto”xmlns:tools=“http://schemas.android.com/tools”android:layout_width=“match_parent”android:

2021-09-06 19:57:32 132

原创 GetX项目级实战,“金三银四”春招指南

page: () => MonthlyPage(), binding: MonthlyBinding(),),GetPage( name: Routes.PROFILE, page: () => ProfilePage(),),];}习惯了使用命名路由,所以定义了路由表。binding是 GetX 中我特别喜欢的功能——依赖注入,就像原生的 Hilt 一样,让代码结构无侵分层。并且如果使用的是流或计时器,它们将自动关闭,开发者根据不用担心。Bind..

2021-09-06 19:55:45 921

原创 Flutter项目实战之Flutter_Gank,Android入门视频教程

环境安装文档:https://flutter.io/get-started/install/,按照步骤一步步基本就没什么问题了,但需要注意的是有一行小字Note: If you’re in China, please read this wiki article first. 我自己安装过程还是挺顺利的,这里不做过多描述。Flutter Gallery编译由于目前资料比较少,Flutter Gallery在Flutter工程目录下,可以说是比较齐全的资料,虽然有文档,哪有一个Demo来的爽,直接看效果

2021-09-06 19:54:14 185

原创 Android面试刨根问底之常用源码篇(一,看完99%的人都学会了

static final float DEFAULT_LOAD_FACTOR = 0.75f;static class Node<K,V> implements Map.Entry<K,V> { final int hash; final K key; V value; Node<K,V> next;}/**The number of key-value mappings contained in this map.*/trans

2021-09-05 18:47:34 209

原创 Android面试主题整理合集(三),安卓开发知识点

2.初始化对象;3.把对象指向堆内存空间;由于在 JDK 1.5 以前 Java 编译器允许处理器乱序执行。不过在 JDK 1.5 之后,官方也发现了这个问题,故而具体化了 volatile ,即在 JDK 1.6 以后,只要定义为 private volatile static DaoManager3 sinstance ; 就可解决 DCL 失效问题5.OkHttp中的责任链=============public interface Interceptor { //每一层的拦截器

2021-09-05 18:45:58 49

原创 Android面试---弄懂这二十个问题,带你拿20K,【工作经验分享】

BinderSocket/LocalSocket共享内存5.匿名共享内存,使用场景在Android系统中,提供了独特的匿名共享内存子系统Ashmem(Anonymous Shared Memory),它以驱动程序的形式实现在内核空间中。它有两个特点,一是能够辅助内存管理系统来有效地管理不再使用的内存块,二是它通过Binder进程间通信机制来实现进程间的内存共享。ashmem并像Binder是Android重新自己搞的一套东西,而是利用了Linux的 tmpfs文件系统。tmpfs是一种可以基于.

2021-09-05 18:44:25 65

原创 Android面经:我的阿里春招之路分享,flutter面试

二面二面很重要,二面很重要,二面很重要。二面对于你是否能通过面试,是否能最终从池子中被捞出来都很重要。一面面完的第二天下午收到来自杭州的电话,约了晚上九点的时间,且通知了视频面试和在线编程。一阵慌张……看了那么多面经,没见过谁连续两次编程的……晚上九点,准时登录视频网址后,面试官已经在线。二面面试官稍显严肃,给人感觉非常严谨。上来简单自我介绍后,他说一面评价比较好,他会面试得细致一点,可能时间会稍长。当时心神一紧,做好了鏖战的准备。二面问的内容非常多,且覆盖范围很广,大概问题如下:JVM方面jav

2021-09-05 18:42:47 657

原创 Flutter开发环境搭建和调试,大牛深入讲解

Flutter开发工具很多,有很多支持Flutter开发的IDE。比如Android Studio、Visual Studio Code、InteIIiJ IDEA、Atom、Komodo等。这里将使用Visual Studio Code作为主要开发工具,因为Visual Studio Code占用内存和CPU比较低,非常的流畅,体验也比较的好。模拟器的话,这里推荐使用Android官方的模拟器,也就是Android Studio SDK里带的模拟器。不过,这里的模拟器我们使用单独启动的,无需从Androi

2021-09-03 18:27:06 528

原创 Flutter实践之高仿有妖气漫画,Android开发两年

/// 获取今日 模块的数据static Future<TodayResult> requestToday() async { final response = await http.get(todayURL); final map = jsonDecode(response.body); final code = map["code"]; final _data = map["data"]; final stateCode = _data["stateCode"];

2021-09-03 18:25:23 142

原创 Flutter学习指南:UI布局和控件,作为Android开发者

showDialog(                // 第一个 context 是参数名,第二个 context 是 State 的成员变量           &

2021-09-03 18:23:41 213

原创 Flutter学习指南:UI布局和控件(1),大专生三面蚂蚁金服

关于 build 方法的实现,在后面我们学习具体的控件时读者就会了解的,这里暂时忽略掉。StatefulWidget 用起来麻烦一些,他还需要一个 State:class BarWidget extends StatefulWidget {  @override  State createState() {    return _BarWidgetSt.

2021-09-03 18:21:53 199

原创 Flutter_Dart中的异步,Android开发需要学什么

可以调用Timer.run来让代码以Event的方式异步执行 Timer.run((){ print('a event'); }); 好了,现在你知道怎么让你的Dart代码异步执行了。看起来并不是很复杂,但是你需要清楚的知道你的异步代码执行的顺序。这也是很多前端面试时候会问到的问题。举个简单的例子,请问下面这段代码是否会输出"executed"?main() { Timer.run(() { print("executed"); }); foo() .

2021-09-03 18:18:38 70

原创 Java中wait()方法为什么要放在同步块中?,被阿里面试官征服了

count+1;notify();消费者伪代码:while(count<=0) wait()count--这里面有问题。什么问题呢?生产者是两个步骤:count+1;notify();消费者也是两个步骤:检查count值;睡眠或者减一;如果这些步骤混在一起会怎样呢?比如说,初始的时候count等于0,这个时候消费者检查count的值,发现count小于等于0的条件成立;就在这个时候,发生了上下文切换,生产者进来了,噼噼啪啪一顿操作,把两个步骤都执行完了,也

2021-09-02 18:14:11 106

原创 IOC架构设计之ButterKnife源码&原理(二)上篇,跳槽字节跳动

View view;target.title = Utils.findRequiredViewAsType(source, R.id.title, "field 'title'", TextView.class);target.subtitle = Utils.findRequiredViewAsType(source, R.id.subtitle, "field 'subtitle'", TextView.class);view = Utils.findRequiredView(source, R.

2021-09-02 18:12:38 94

原创 google protocol buffer全解析------田纪原,赶紧收藏

private static final com.google.protobuf.Parser<Person> PARSER = new com.google.protobuf.AbstractParser<Person>() { @java.lang.Override public Person parsePartialFrom( com.google.protobuf.CodedInputStream input,

2021-09-02 18:10:56 748

原创 Google Play渠道超过100M?尝试APK分包,面试资料分享

```/Android/obb/App包名/ ```所以,通过在/Android/obb/下创建\[app包名 如com.example.obbtest\]文件夹,并将obb文件复制到该目录下即可模拟Google Play安装App。线上测试登录Google Play Console开发者账号,打开应用列表,选择需要测试的App:左边控制栏选择 Release managerment ,然后选择 App Release,最后选择Internal test 的MANAGE INT.

2021-09-02 18:09:15 976

原创 GitHub标星9,Android开发快速上手

后来公司发展速度加快,拆分了多个独立的事业部,每个事业部有独立的 Android 开发团队,每个团队都有独立开发、测试和部署的需求;随着业务规模的扩大,早期的代码耦合导致的问题也逐渐显现出来;开发人员也越来越多,单工程的架构在人员协作方面也显得越来越力不从心。同时考虑到对未来可能出现的多应用的支持,我们开始了工程的组件化重构。今天我们会在这篇文章中分享我们组件化过程中的一些实践。组件化实践我们使用的是多工程多仓库的方案,即每个组件都有自己的独立仓库,均可独立于主工程单独运行;主工程通过 aar 依赖各

2021-09-02 18:07:31 176

原创 GitHub标星9(1),大厂Android核心面试题出炉

基础 SDK:完全业务无关的基础代码。各层次职责清晰独立,可以很方便的进行拆解和组合;由于都有自己的版本,业务线可以独立发版,随时升级、回滚。基本解耦方案组件化的第一步就是对要拆出去的组件进行解耦,常见解耦方式有以下几种:(1) 公用代码处理基础业务逻辑分别拆成基础组件自身逻辑完整、用于完成某一特定功能、不含业务逻辑的一组代码,独立成 SDK代码量很小不足以拆分成单独拆分的代码和资源,我们统一放在一个专门建立的 common 组件中,并且严格限制 common 组件的增长。随着组件

2021-09-02 18:05:57 133

原创 2020Android大厂高频面试题(字节跳动,阿里架构师经验分享

D、内存回收程序可以在指定的时间释放内存对象2.     下面异常是属于Runtime Exception 的是( )(多选)A、ArithmeticExceptionB、IllegalArgumentExceptionC、NullPointerExceptionD、BufferUnderflowException3.  Math.round(11.5)等于多少(). Math.round(-11.5)等于多少( ).A、1

2021-09-01 10:49:47 84

原创 2020Android大厂高级面试题合集(12个Offer,吊打面试官

2.并发相关的集合类3.部分常用集合类的内部实现方式1.3 多线程相关1.Thread、Runnable、Callable、Futrue类关系与区别2.JDK中默认提供了哪些线程池,有何区别3.线程同步有几种方式,分别阐述在项目中的用法4.在理解默认线程池的前提下,自己实现线程池1.4 字符1.String的不可变性2.StringBuilder和StringBuffer的区别3.字符集的理解:Unicode、UTF-8、GB2312等4.正则表达式相关问题1.5 注解

2021-09-01 10:48:19 75

空空如也

空空如也

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

TA关注的人

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