![](https://img-blog.csdnimg.cn/20201014180756918.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
游戏开发
无欲无求的码农@
不懂就学习
展开
-
Svn、Git
问:项目里用的SVN还是Git?答:svn/git问:代码冲突了怎么办答:改,在AS把冲突的部分解决了再上传,如果没用AS还不是用的SVN,git冲突会包留在文件中,两个部分被===========================分割开,去修改整合就OK了。问:怎么创建分支答:1、SVN的话直接右键选择Team然后选择创建。合并分支,和切换分支直接右键Team选择2、Git的话gi...原创 2019-11-05 20:24:20 · 132 阅读 · 0 评论 -
Fragment
问:Fragment的懒加载是怎么实现的?(为什么要用懒加载|小亮点)答:1、ViewPager的每一个Fragment都需要通过网络拉取数据加载,而ViewPager是默认加载前两项的,很容易造成网络丢包或者网络堵塞等问题,使用懒加载是非常有必要的。2、在Fragment中有一个setUserVisibleHint这个方法,它优于onCreate()方法,其中的setUserVisibleH...原创 2019-11-01 20:40:44 · 149 阅读 · 0 评论 -
双亲机制原理和Android类加机制(热更新的机制hotFix\andFix机制)
双亲机制原理ClassLoader使用的是双亲委托模型来搜索类的每个ClassLoader实例都有一个父类加载器的引用(不是继承的关系,是一个包含的关系虚拟机内置的类加载器(Bootstrap ClassLoader)本身没有父类加载器,但可以用作其它ClassLoader实例的的父类加载器。4) 当一个ClassLoader实例需要加载某个类时,它会试图亲自搜索某个类之前,先把这个任务委...原创 2019-10-28 20:57:34 · 217 阅读 · 0 评论 -
List,Set,Map的区别
Set是最简单的一种集合。集合中的对象不按特定的方式排序,并且没有重复对象。 Set接口主要实现了两个实现类:HashSet: HashSet类按照哈希算法来存取集合中的对象,存取速度比较快 TreeSet :TreeSet类实现了SortedSet接口,能够对集合中的对象进行排序。 List的特征是其元素以线性方式存储,集合中可以存放重复对象。 ArrayList() : 代表长度可以改变得数组...原创 2019-10-25 20:59:30 · 138 阅读 · 0 评论 -
String为什么要设计成不可变的?
String为什么要设计成不可变的?1、字符串池的需求字符串池是方法区(Method Area)中的一块特殊的存储区域。当一个字符串已经被创建并且该字符串在 池 中,该字符串的引用会立即返回给变量,而不是重新创建一个字符串再将引用返回给变量。如果字符串不是不可变的,那么改变一个引用(如: string2)的字符串将会导致另一个引用(如: string1)出现脏数据。2、允许字符串缓存哈希码 在...原创 2019-10-24 21:04:28 · 139 阅读 · 0 评论 -
哪些情况下的对象会被垃圾回收机制处理掉?和要判断怎样的对象是没用的对象
哪些情况下的对象会被垃圾回收机制处理掉1.所有实例都没有活动线程访问。2.没有被其他任何实例访问的循环引用实例。 3.Java 中有不同的引用类型。判断实例是否符合垃圾收集的条件都依赖于它的引用类型。要判断怎样的对象是没用的对象1.采用标记计数的方法: 给内存中的对象给打上标记,对象被引用一次,计数就加1,引用被释放了,计数就减一,当这个计数为0的时候,这个对象就可以被回收了。当然,这也就...原创 2019-10-23 21:03:16 · 2376 阅读 · 2 评论 -
java中==和equals和hashCode的区别和进程和线程的区别
基本数据类型的比较的值相等. 类的比较的内存的地址,即是否是同一个对象,在不覆盖equals的情况下,同比较内存地址,原实现也为 == ,如String等重写了equals方法.hashCode也是Object类的一个方法。返回一个离散的int型整数。在集合类操作中使用,为了提高查询速度。(HashMap,HashSet等比较是否为同一个)如果两个对象equals,Java运行时环境会认为他们的h...原创 2019-10-22 21:01:10 · 91 阅读 · 0 评论 -
Android与服务器交互的方式中的对称加密和非对称加密是什么和设备横竖屏切换。
1、不设置Activity的android:configChanges时,切屏会重新调用各个生命周期,切横屏时会执行一次,切竖屏时会执行两次2、设置Activity的android:configChanges=”orientation”时,切屏还是会重新调用各个生命周期,切横、竖屏时只会执行一次3、设置Activity的android:configChanges=”orientation|ke...原创 2019-10-21 21:02:52 · 281 阅读 · 0 评论 -
要做一个尽可能流畅的ListView,你平时在工作中如何进行优化的?
①Item布局,层级越少越好,使用hierarchyview工具查看优化。②复用convertView③使用ViewHolder 减少find view by id④item中有图片时,异步加载 Picasso⑤快速滑动时,不加载图片⑥item中有图片时,应对图片进行适当压缩 Picasso⑦实现数据的分页加载...原创 2019-10-18 20:36:07 · 203 阅读 · 0 评论 -
Android中touch事件的传递机制是怎样的?
1.Touch事件传递的相关API有dispatchTouchEvent、onTouchEvent、onInterceptTouchEvent2.Touch事件相关的类有View、ViewGroup、Activity3.Touch事件会被封装成MotionEvent对象,该对象封装了手势按下、移动、松开等动作4.Touch事件通常从Activity#dispatchTouchEvent发出,...原创 2019-10-17 21:10:36 · 296 阅读 · 0 评论 -
音频如何采集
1、在实例化 AudioRecord 时需要指定采集源2、设定为麦克风3、然后指定采样率4、我们公司采用兼容性非常强的 44100Hz 也就是每秒采集 44100 次,5、接着是配置音频通道6、我们团队采用了 AudioFormat.CHANNEL_IN_MONO 代表单通道,当然也是支持双通道立体声采集的,只需传入 AudioFormat.CHANNEL_IN_STEREO 即可7、...原创 2019-09-29 19:30:18 · 1264 阅读 · 0 评论 -
Android 怎么采集视频、音频(Android直播中怎么采集视频、音频)
1、采集视频的话5.0之前一般用Camera接口,之后用Camera2接口2、使用也很简单,通过 HandlerThread类创建一个专门的Hander 类型的线程用于Camera的具体操作。3、在CameraManager中找到一个合适的 Camera 设备,得到设备号。4、通过 CameraID 得到该设备的各种参数5、调用CameraManager的openCamera()方法打开指...原创 2019-09-29 19:29:05 · 801 阅读 · 0 评论 -
云信
简介网易云通信IM服务基于网易 17 年的 IM 技术积累,致力于打造最稳定的即时通讯平台。 IM 服务提供了一整套即时通讯基础能力,通过该平台服务就可以将即时通讯、实时网络能力快速集成至企业自身应用中。Demo体验Demo 演示了即时通讯场景,包括单聊、群聊、聊天室、在线状态、智能对话机器人等功能,包含 iOS、Android、Windows、PC Web、移动端 Web 五个平台 Dem...转载 2019-07-05 21:14:54 · 249 阅读 · 0 评论 -
Kotlin
创建Kotlin项目:首先我们打开File-New-New project创建普通的java项目流程,在进行到平时我们创建java项目流程的java名称时候,有些同学的版本是可以看到一个Language的选项,点开会有java和kotlin两种模式,我们创建kotlin项目选择kotlin模式,在下面的Minimum API Level中是我们的API版本号,也是可以选择的,选择完毕我们会在下面看...原创 2019-09-27 21:36:47 · 1712 阅读 · 0 评论 -
kotlin实现黑马外卖首页APP
Fragment代码实现class F1 : Fragment(){ lateinit var ada:ShouyeAda override fun onCreateView(inflater: LayoutInflater, container: ViewGroup?, savedInstanceState: Bundle?): View { var view ...原创 2019-09-28 21:39:57 · 460 阅读 · 0 评论 -
码率是什么?
1、码率:影响体积,与体积成正比2、码率越大,体积越大;码率越小,体积越小。3、码率就是数据传输时单位时间传送的数据位数,一般我们用的单位是kbps即千位每秒。4、也就是取样率(并不等同与采样率,采样率的单位是Hz,表示每秒采样的次数),单位时间内取样率越大,精度就越高,处理出来的文件就越接近原始文件5、但是文件体积与取样率是成正比的,所以几乎所有的编码格式重视的都是如何用最低的码率达到最...原创 2019-09-29 19:18:31 · 11332 阅读 · 0 评论 -
什么是帧率
1、帧率就是在1秒钟时间里传输的图片的帧数,也可以理解为图形处理器每秒钟能够刷新几次,2、帧率:影响画面流畅度,与画面流畅度成正比:3、帧率越大,画面越流畅;帧率越小,画面越有跳动感。4、如果码率为变量,则帧率也会影响体积,帧率越高,每秒钟经过的画面越多,需要的码率也越高,体积也越大。...原创 2019-09-29 19:19:26 · 8266 阅读 · 0 评论 -
什么是分辨率
1、分辨率:影响图像大小2、与图像大小成正比3、分辨率越高,图像越大4、分辨率越低,图像越小。5、不同分辨率我们公司设置的码率也不同6、360p 800 200 6007、480p 1000 300 7008、540p 1200 400 900 (主流)9、720p 1500 600 1200...原创 2019-09-29 19:20:06 · 427 阅读 · 0 评论 -
可以怎么处理视频
1、GPUImage、OpenGL2、阿里SDK3、七牛SDK原创 2019-09-29 19:20:37 · 96 阅读 · 0 评论 -
怎么推流
1、用FFMpeg写推流器推流2、用阿里SDK推流3、用七牛SDK推流4、用FFMpeg写推流器推流实际就是通过JNI调用FFMpge的native函数5、initRtmpData初始化RMTP,建立RTMP与RTMP服务器连接6、sendRtmpVideoSpsPPS发送SPS,PPS数据,包括长度、数据、时间戳7、H.264码流中 SPS是序列参数集Sequence Parameter Set...原创 2019-09-29 19:24:20 · 899 阅读 · 0 评论 -
Android工程
什么是安卓由Google公司推出,基于Linux开源的操作系统安卓框架底层 linux内核第二层 核心库(虚拟机)前两层是由c++语言编写的(安卓是有c++编写的)第三层 应用程序框架第四层 应用程序三、四层是由java语言编写的(安卓是由java语言开发的)如何运行运行过程:运行时将.java编译生成class,dex工具打包生成.dex文件,整合资源打包成为.apk文件安...原创 2018-12-25 20:40:05 · 132 阅读 · 0 评论