- 博客(80)
- 收藏
- 关注
转载 音视频是什么,视频为什么需要压缩?
本专栏专注分享大型Bat面试知识,后续会持续更新,喜欢的话麻烦点击一个关注面试官: 音视频是什么,视频为什么需要压缩心理分析:很多人对音视频的概念停留在 苍老师的小电影上,只能理解他是一个视频文件。面试官考的对视频文件下的封装格式,视频文件组成和音视频开发有没相关的概念求职者:首先需要从视频文件组成开始讲解,慢慢深入到视频编码1.1 视频的构成...
2019-10-05 18:22:00 354
转载 音视频是什么,视频为什么需要压缩?
本专栏专注分享大型Bat面试知识,后续会持续更新,喜欢的话麻烦点击一个关注面试官: 音视频是什么,视频为什么需要压缩心理分析:很多人对音视频的概念停留在 苍老师的小电影上,只能理解他是一个视频文件。面试官考的对视频文件下的封装格式,视频文件组成和音视频开发有没相关的概念求职者:首先需要从视频文件组成开始讲解,慢慢深入到视频编码WebRTC很强大,包...
2019-09-30 16:08:00 297
转载 读万卷书行万里路,笔试越来越少,到底怎样才能拿到offer?
经过一个多月的笔试高峰期,从这个星期开始,大厂笔试终于结束了,只剩一些小厂陆陆续续的还有一些小规模笔试,各位监考官们终于可以松一口气了。但是,监考官松口气的同时你应该能感受到求职危机又加重了一层危机一:面试机会越来越少在这之前没有面试,起码你还有大量的笔试可以做,有笔试就有面试机会;但是往后笔试会越来越少,甚至没有,你就更不可能收到面试了,唯一的解决办法就是霸面。危机二:...
2019-09-29 17:15:00 184
转载 自己设计过App的数据库框架?还是只是停留在使用ormlite greenDao这类框架,一篇文章帮你解答...
本专栏专注分享大型Bat面试知识,后续会持续更新,喜欢的话麻烦点击一个关注面试官:你曾经有没有对SqliteDatabase做过封装,你自己有设计过数据库框架吗?或者只是停留在使用ormlite greenDao这类框架心理分析:面试官比较在架构方面的知识,特别是数据库的,大多数开发者 并不理解为什么能够直接拿来用的,腾讯反而要求你自己写。其实小公司大多是拿来主义。而大...
2019-09-27 17:39:00 158
转载 Android中应用到的设计模式
其实一般程序员写业务代码,用不了多少设计模式。写出易于理解、维护的代码,相对更重要。一、引言那设计模式是什么?很多人,包括我,都曾迷陷于 23 种设计模式之中,初识设计模式,赞叹于其精妙,就像个萌新的江湖小生,偶然间掉到个山洞,一下就集齐了威震江湖的“7种武器”。然后……就开始了用长生剑切菜,用碧玉刀削瓜的“幸福生活”,不但把...
2019-09-26 17:40:00 106
转载 【android】深入理解在Android:线程池的使用原理分析
本专栏专注分享大型Bat面试知识,后续会持续更新,喜欢的话麻烦点击一个关注1.简介线程池可以简单看做是一组线程的集合,通过使用线程池,我们可以方便的复用线程,避免了频繁创建和销毁线程所带来的开销。在应用上,线程池可应用在后端相关服务中。比如 Web 服务器,数据库服务器等。以 Web 服务器为例,假如 Web 服务器会收到大量短时的 HTTP 请求,如果此时我们简单的为每...
2019-09-26 17:23:00 126
转载 Android 音频开发之 MediaPlayer
虽然直播落幕,但 Android 的音、视频技术仍然倍受关注!一、引言Android 提供了常见的音频、视频的编码、解码机制。借助于多媒体类 MediaPlayer 的支持,开发人员可以很方便地在应用中播放音频、视频。只不过使用 MediaPlayer 播放视频时,没有提供图像输出界面。二、MediaPlayer 概述Android 框架中使用以...
2019-09-25 15:13:00 232
转载 想做直播的你,这些热门的音视频如何绝对同步的。你get了嘛?
本专栏专注分享大型Bat面试知识,后续会持续更新,喜欢的话麻烦点击一个关注面试官:谈下音视频同步原理,音频和视频能绝对同步吗心理分析:音视频同步本身比较难,一般使用ijkplayer 第三方做音视频同步。不排除有视频直播 视频通话需要用音视频同步,可以从三种 音频为准 视频为准 自定义时钟为准三种方式实现音视频同步求职者:如果被问到 放正心态,能回答多少是多少。如果...
2019-09-25 14:31:00 276
转载 颜值即正义的时代,你还不懂直播特效的实现原理与难点?
本专栏专注分享大型Bat面试知识,后续会持续更新,喜欢的话麻烦点击一个关注之前推荐身边一个朋友去字节跳动的时候被问到:有做过直播特效吗? 说说直播特效的实现原理与难点面试官:有做过直播特效吗? 说说直播特效的实现原理与难点心理分析:该问题比较专业,一般只有音视频领域的岗位才会被问到。这需要有opengl只是和webrtc知识同时挑战也是一份机...
2019-09-24 16:16:00 181
转载 droid应用保活实践
最近在做的项目中需要app在后台常驻,用于实时上传一些健康信息数据,便于后台实时查看用户的健康状况。自从Android7.0以上后台常驻实现越来越难,尤其是8.0及以上。关于保活的文章比比皆是,但是效果并不理想,关于保活的方法也就常说的哪几种,重点在于怎么组合运用。最终实现效果为:用户不主动强制杀死的话,能够一直存活(小米,华为,vivo,oppo,三星)。其中三星s8,华为nova...
2019-09-24 15:31:00 117
转载 Flutter 开发之组件一
Flutter 的口号:一切谐为组件。同其他平台一样,Flutter 提供了一系列的组件,有基础组件(Basics Widgets),质感组件(Material Components)、Cupertino 等。Flutter 中基础组件的介绍,用法也比较简单。每个组件都是一个以类的形式存在。Flutter 的组件属性也很多,我们不可能记得每一项,只有...
2019-09-21 20:39:00 150
转载 EventBus的源码详解与架构分析,使用EventBus会造成什么弊端,带你复现整个思路历程...
本专栏专注分享大型Bat面试知识,后续会持续更新,喜欢的话麻烦点击一个star面试官: 为什么会用到EventBus,EventBus的源码详解与架构分析,使用EventBus会造成什么弊端心理分析:eventbus对程序员相爱相恨,爱 爱在太方便了,恨 恨在对程序的可读性有致命的伤害,小公司会用但面试的时候不会考,大公司不会用,但面试的时候使劲考。从该文中我们可以...
2019-09-20 16:31:00 222
转载 Kotlin 基础(二)- DSL
所谓 DSL 领域专用语言(Domain Specified Language/ DSL),其基本思想是“求专不求全”,不像通用目的语言那样目标范围涵盖一切软件问题,而是专门针对某一特定问题的计算机语言。Kotlin DSL 定义:使用 Kotlin 语言开发的,解决特定领域问题,具备独特代码结构的 API 。一、DSLDSL(domain ...
2019-09-20 14:56:00 122
转载 Android 框架问题分析案例 - 谁杀了桌面?
写这篇文章的契机是因为一个实际遇到的问题 , 这个问题其实不难 , 不过在分析了这个问题然后写日记的时候 , 我突然觉得这个问题分析的过程有必要记录一下 , 分享给大家。分析过程中有用到一些工具 , 一些方法 , 也从另外一个聪明的小伙伴那里学到了一些分析技巧和工具的使用技巧这篇文章中分析过程包括我之前在 Android 中的卡顿丢帧原因概述 - 方法论 里面提到的一些工具 ...
2019-09-19 15:03:00 361
转载 你必须学会的OkHttp,带你快速上车
原文链接:https://www.jianshu.com/p/2b867a79b47cOkHttp 知名第三方网络框架SDK,使用简单,性能优秀,但是内核并不简单,此系列文章,专挑硬核知识点详细讲解.何为硬核,就是要想深入研究,你绝对绕不过去的知识点正文大纲OkHttp是什么?OkHttp怎么用?OkHttp源码核心类之一:分发器详解OkHtt...
2019-09-18 15:43:00 245
转载 移动端视频开发通过什么方式实现直播?十分钟带你快速了解
原文链接:https://www.jianshu.com/p/92b71382724f本专栏专注分享大型Bat面试知识,后续会持续更新,喜欢的话麻烦点击一个关注现在的移动端的音视频这些在近段时间非常火热,那么我们先来找一个岗位看看作为一个移动端视频开发工程师我们要做些什么呢岗位场景之前去面试的时候,面试官问到之前做过直播嘛?你们是通...
2019-09-17 16:51:00 596
转载 Android 应用之安全开发
原文链接:https://www.jianshu.com/p/3b22859b2677大佬:“这个 APP 破解下,可以兼容客户已出货的产品”我:“这个不合适吧”大佬:“这个客户对我们很重要”我:“好吧”然后,就是通过反编译某 APP ,分析蓝牙交互协议,在新的 APP 中去兼容已出货的设备,达到无缝对接。 –这种场景在开发中还是比较经常碰到的。一、引言随...
2019-09-16 15:58:00 510
转载 Flutter 完整示例
原文链接:https://segmentfault.com/a/1190000020373240经过这一段对 Flutter 的了解和接触,掌握如何完整使用 Flutter 开发一个项目。实际上,在 Flutter 中,一切皆 widget,我们的界面都是由各种 widget 堆叠出来的。一个 Flutter 工程涉及以下几个要点:工程项目代码分层主题风格...
2019-09-12 16:02:00 436
转载 去抖音面试被问到硬编码与软编码区别,如何选取硬编与软编?
原文链接:https://zhuanlan.zhihu.com/p/82130600Android的视频相关的开发,大概一直是整个Android生态,以及Android API中,最为分裂以及兼容性问题最为突出的一部分。摄像头,以及视频编码相关的API,Google一直对这方面的控制力非常差,导致不同厂商对这两个API的实现有不少差异,而且从API的设计来看,一直以来优化也相当有...
2019-09-11 15:45:00 2790
转载 Android 高效开发之研发效能
在如今红海厮杀的移动互联网,快速试错变得越来越重要,敏捷开发也被越来越多的团队所推崇。有些时候为了效率我们甚至愿意牺牲部分性能,而选择在合适的时间去偿还这些“债务”。我们都希望在保证质量的前提下,为自己的团队提速。原文链接:https://www.jianshu.com/p/5106691c2a1c一、组织的研发效能1.1 何为研发效能在...
2019-08-23 18:02:00 182
转载 Kotlin 基础(一)
Kotlin 是一门非常优秀的语言,兼容了 N 多种语言的优点,学习 Kotlin 有助于提升我们多层编程开发的认识。原文连接:https://www.jianshu.com/p/3ed4646fbc6aKotlin 是静态类型的开源编程语言,可以有效地运行在 Java虚拟机(JVM)上。Kotlin 由 JetBrains 开发,并得到谷歌的强力支...
2019-08-22 17:40:00 252
转载 字节跳动面试:对于Tersorflow你怎么理解的,有做过人工智能的应用吗
本专栏专注分享大型Bat面试知识,后续会持续更新,喜欢的话麻烦点击一个关注原文链接:https://www.jianshu.com/p/e6134088504c面试官: 对于Tersorflow你怎么理解的,有做过人工智能的应用吗心理分析:了解tersorflow并且应用到项目中的,可谓少之又少。国内几乎没有多少Android开发者对人工智能有过认识。也不明白人工...
2019-08-20 18:39:00 621
转载 腾讯Android面试:系统如何加载一个dex文件,他的底层原理是怎么实现的
本系列文章专注分享大型Bat面试知识,后续会持续更新,喜欢的话麻烦点击一个关注原文链接:https://www.jianshu.com/p/8409f97cedb3面试官: 系统如何加载一个dex文件,他的底层原理是怎么实现的心理分析:面试官想知道你是否有过对dex加载相关经验。此题主要为tinker热修复做铺垫。dex加载与热修复是有关系的,求职者一定要注意 面试官...
2019-08-15 17:00:00 269
转载 Android 9.0 (API 28) Http 请求解决方案
在北京时间 2018 年 8 月 7 日,Google 发布的了 Android 9.0 (API 28),代号 “Pie”,其中一个新特性是:所有应用程序默认都使用 Https,这个会导致原 Http 请求无效。当然,开发人员可以将 targetSdkVersion 设置成 26 ,但今年的 Google play store 要求新提交的应用必须将 targetSdkVersio...
2019-08-14 16:30:00 396
转载 字节跳动Android面试:直播中 网速比较差的条件下,如何使画面保证流畅的效果...
本专栏专注分享大型Bat面试知识,后续会持续更新,喜欢的话麻烦点击一个关注面试官: 直播中 网速比较差的条件下,如何使画面保证流畅的效果原文链接:https://www.jianshu.com/p/1be22b7e3543岗位场景心理分析:“ 网速比较差的条件下,如何使画面保证流畅的效果” 该问题可以转换成一个优化问题。直播技术...
2019-08-13 16:51:00 1201
转载 Android 音频焦点处理
刚开始的时候,认为在智能机中,每个 APP 都是各自管各自的,媒体播放也是这样子的;然而对比同类产品,发现同类产品可以放到播放自如,体验很好,通过对比研究,根源就在于音频焦点处理上。原文链接: https://www.jianshu.com/p/1a4aa8f2114f一、引言在功能机时代,系统是不允许有两个或多个音源播出,因为有优先级管理,但在智...
2019-08-12 16:00:00 179
转载 想成为一名合格Android架构师,你需要掌握这几种设计原则
原文链接:https://www.jianshu.com/p/075a54a6015e经常有人问到怎么样才算一名合格的架构师,又需要掌握哪些设计原则呢?今天我们来着重分析一下要成为一名架构师,必须掌握的 10 条设计原则。一、遵循单一职责原则函数是程序员的工具中最重要的抽象形式。它们能更多地被重复使用,你需要编写的代码就越少,代码也因此变得...
2019-08-02 16:48:00 81
转载 2019年最新Android面试精讲--带你复制年薪70W的神话
原文链接:https://www.jianshu.com/p/f3ac42a4ed08其实如果你技术深度足够,大必不用为就业而忧愁。每个行业何尝不是这样,最开始的风口,到慢慢的成熟。Android初级在2019年的日子里风光不再, 靠会四大组件就能够获取到满意薪资的时代一去不复返。经过一波一波的淘汰与洗牌,剩下的都是技术的金子。就像大浪褪去,裸泳的会慢慢上岸。而真正坚持下来的一定...
2019-07-29 17:40:00 83
转载 Android应用架构演变
引言总结了多年的移动开发经验,特别是在Android端的积累,以前认为从移动端APP谈架构,其实有点举大旗,因为大部份项目都在做业务理,且往往不是很大,并没有多复杂的数据处理或高并发(只针对个人而言);并且长期认为架构这个词,用在Web端或者大型系统里比较好一点,好的架构好,意味系统更稳健、高效率, 更大体量。总之,有种大材小用的感觉,然而,随着Android应用开发规模的扩大,客户...
2019-07-26 17:02:00 75
转载 Android 高质量开发之崩溃优化
做了很久的面试专题,不知道对各位需要面试和有跳槽想法的小伙伴有没有帮助,今天收集一篇关于崩溃优化方面的文章,面试方面的收集,后续我还会持续更新如果觉得有用可以点个关注原文链接:https://www.jianshu.com/p/26739e387569前言开发人员碰到 APP 崩溃(闪退)什么办?不少人会说根据 Log,找到闪退的代码,捕获异常,“消化”掉了所有 Ja...
2019-07-25 16:35:00 110
转载 在腾讯面试,被问到组件化如何实现,组件化与插件化的差别在哪里,该怎么选型?...
本专栏专注分享大型Bat面试知识,后续会持续更新,喜欢的话麻烦点击一个关注面试官: 组件化如何实现,组件化与插件化的差别在哪里,该怎么选型心理分析:面试官从架构层次 了解求职者是否用过 模块化 组件化 和插件化,在过去经验有没有运用过这些技术到项目中,这道题属于一个连环炮。求职者该格外小心求职者:应该从App开发的需求来定义技术选型,分别说说模块化,组件化 插件化的优势和...
2019-07-24 17:45:00 177
转载 手写消息总线LiveDataBus,让你永无后顾之忧
做了很久的面试专题,不知道对各位需要面试和有跳槽想法的小伙伴有没有帮助,今天收集一篇关于LiveDataBus方面的文章,面试方面的收集,后续我还会持续更新如果觉得有用可以点个关注原文链接:https://www.jianshu.com/p/e13ef9068ee0Android四大组件和线程间通信方式有很多,比如Handler管道、广播、接口回调、rxBus、Ev...
2019-07-22 17:15:00 104
转载 Linux自带多种进程通信方式,为什么Android都没采用偏偏使用Binder通信
本专栏专注分享大型Bat面试知识,后续会持续更新,喜欢的话麻烦点击一个关注原文链接:https://www.jianshu.com/p/72a3976101e4关于本期面试题汇总,做了一个目录表,更多内容正在编辑中面试官: Linux自带多种进程通信方式,为什么Android都没采用而偏偏使用Binder通信心理分析:面...
2019-07-22 17:04:00 96
转载 腾讯面试:增量升级为什么减少升级代价,增量升级原理
在前几年,整体移动网络环境相比现在差很多,加之流量费用又相对较高,因此每当我们发布新版本的时候,一些用户升级并不是很积极,这就造成了新版本的升级率并不高。而google为了解决了这个问题,提出了Smart App Update,即增量更新(也叫做差分升级)。尽管现在网络环境有了很大的提升,但一个不争的事实就是应用越做越大,因此,增量更新在目前的仍然是一种解决APP更新包过大的有效方案...
2019-07-17 16:05:00 142
转载 腾讯面试合集:热修复连环炮(热修复是什么 有接触过tinker吗,tinker原理是什么)...
原文链接:https://www.jianshu.com/p/dcc4a146192e1.热修复是什么热修复无疑是这2年较火的新技术,是作为安卓工程师必学的技能之一。在热修复出现之前,一个已经上线的app中如果出现了bug,即使是一个非常小的bug,不及时更新的话有可能存在风险,若要及时更新就得将app重新打包发布到应用市场后,让用户再一次下载,这样就大大降低了用户体验,当热...
2019-07-16 17:48:00 379
转载 腾讯Android面试:Handler中有Loop死循环,为什么没有阻塞主线程,原理是什么
面试官: Handler中有Loop死循环,为什么没有阻塞主线程,原理是什么心理分析:该问题很难被考到,但是如果一旦问到,100%会回答不上来。开发者很难注意到一个主线程的四循环居然没有阻塞住主线程求职者:应该从 主线程的消息循环机制 与Linux的循环异步等待作用讲起。最后将handle引起的内存泄漏,内存泄漏一定是一个加分项原文链接:https://w...
2019-07-15 16:44:00 193
转载 阿里巴巴面试:Binder通信原理与机制
本专栏专注分享大型Bat面试知识,后续会持续更新,喜欢的话麻烦点击一个关注先上本次更新的BAT面试知识总目录先上一张Binder 的工作流程图。(如果不清晰,可以 复制图片链接到浏览器 或 保存到本地 查看,我经常都是这样看图的哈)一开始上手,陌生的东西比较多,But,其实并不复杂。喔,流程图是用...
2019-07-13 20:40:00 90
转载 阿里巴巴面试 :进程保活如何做到,你们保活率有多高
本专栏专注分享大型Bat面试知识,后续会持续更新,喜欢的话麻烦点击一个关注前言进程保活的关键点有两个,一个是进程优先级的理解,优先级越高存活几率越大。二是弄清楚哪些场景会导致进程会kill,然后采取下面的策略对各种场景进行优化:提高进程的优先级在进程被kill之后能够唤醒一. 进程优先级Android一般的进程优先级划分: 1.前台进程 (Fore...
2019-07-12 16:53:00 661
转载 阿里巴巴 说说 Android 虚拟机Dalvik与ART区别在哪里?
本专栏专注分享大型Bat面试知识,后续会持续更新,喜欢的话麻烦点击一个关注废话不多说先上面试目录Android开发中我们接触的是与Java虚拟机类似的Dalvik虚拟机和ART虚拟机,下面梳理一下三者区别和原理:一,Dalvik虚拟机 Dalvik虚拟机( Dalvik Virtual Machine ),简称Dalvik...
2019-07-11 15:46:00 115
转载 阿里巴巴: 给你一个Demo 你如何快速定位ANR
本专栏专注分享大型Bat面试知识,后续会持续更新,喜欢的话麻烦点击一个关注一、前期基础知识储备1.ANR错误定义:在Android上,如果你的应用程序有一段时间响应不够灵敏,系统会向用户显示一个对话框,这个对话框称作“应用程序无响应”(ANR:Application Not Responding)对话框。用户可以选择“等待”而让程序继续运行,也可以选择“强制关闭”。...
2019-07-10 17:08:00 67
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人