![](https://img-blog.csdnimg.cn/20201014180756926.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Android
Yanyan.He
努力,选择你要的生活!
展开
-
Socket多客户端通信
服务端首先构造的是ServerSocket 对象,传入构造方法中的参数是端口号,同需连接客户端的端口号一致。接下来通过ServerSocket 对象的accept()方法来获取Socket对象,此方法被称为阻塞方法,该一直在运行,等待客户端发送的Socket连接请求,若未收到请求,accept()方法就一直在循环执行,始终不返回结果,直到收到请求后,accept()方法会返回发送请求的So...原创 2018-10-18 18:10:49 · 436 阅读 · 0 评论 -
Android中src和background区别
ImageView中XML属性src和background的区别:background会根据ImageView组件给定的长宽进行拉伸,而src就存放的是原图的大小,不会进行拉伸。src是图片内容(前景),bg是背景,可以同时使用。此外:scaleType只对src起作用;bg可设置透明度,比如在ImageButton中就可以用Android:scaleType控制图片的缩放方式,示例代码如...原创 2018-12-06 22:05:05 · 251 阅读 · 0 评论 -
Android代码里设置ImageView的src和background及源码分析
Table of Contents1. 热身案例2. 源码分析:src与background两种属性设置的方法入手setImageResource()方法入手src属性setBackgroundResource()方法入手Background属性3. 总结设置ImageView的src:image.setImageDrawable(getResources().get...转载 2018-12-06 22:01:24 · 3550 阅读 · 1 评论 -
Protobuf——Windows系统下的【.proto】文件使用
一、什么是protocol buffers Protocol buffers是一个灵活的、高效的、自动化的用于对结构化数据进行序列化的协议,与XML相比,Protocol buffers序列化后的码流更小、速度更快、操作更简单。你只需要将要被序列化的数据结构定义一次(译注:使用.proto文件定义),便可以使用特别生成的源代码(译注:使用protobuf提供的生成工具)轻松的使用...原创 2018-11-29 15:27:27 · 2635 阅读 · 0 评论 -
字符串的使用
几个常用的格式转换符:%s : 字符串,如"hello"%c : 字符,如'a'%b : 布尔类型,如true或者false%d : 十进制整型数,如119%x : 十六进制整型数,如f0%f : 十进制浮点数,java在这里不像c有%f/%lf/%ld等区分浮点与双精度,java的float类型和double类型都用%f%0nd : n是十进制整数,表示这里...原创 2018-11-13 09:28:44 · 228 阅读 · 0 评论 -
Android播放器 【github开源项目】
1.ijkplayer项目地址:https://github.com/Bilibili/ijkplayer介绍:Ijkplayer 是Bilibili发布的基于 FFplay 的轻量级 Android/iOS 视频播放器。实现了跨平台功能,API 易于集成;编译配置可裁剪,方便控制安装包大小;支持硬件加速解码,更加省电;提供 Android 平台下应用弹幕集成的解决方案。2.ExoPl...原创 2018-11-09 16:32:59 · 181 阅读 · 0 评论 -
Android 5.0,6.0,7.0,8.0新特性整理
目录Android 5.0行为变更Android 6.0行为变更Android 7.0行为变更Android 8.0二十大新特性,这些地方像极了iOS?Android 8.0 新变化汇总Android 5.0行为变更API级别:211. Android Runtime(ART) 大多数 Android 应用无需任何更改就可以在 ART 下工作。不过,...原创 2018-11-09 15:51:32 · 934 阅读 · 0 评论 -
Android分包方案multidex
Android分包方案multidex1.对于功能越来越复杂的app的两大问题 一:我们自己应用的方法数超过了65536 我们所说的方法数限制,这个方法数包括了jar包,框架,还有我们自己应用的代码,当我们应用的代码超过65536时,结果如下: 我们看到,显示我们方法的引用是65579.而引用数最大是65536,建议我们开启分包方案。 二:我们应用的方法数没有超过655...原创 2018-11-09 11:30:12 · 238 阅读 · 0 评论 -
Android性能优化----经典总结
Android 性能优化典范(一):主要从 Android 的渲染机制、内存与 GC、电量优化三个方面展开,介绍了 Android 中性能问题的底层工作原理,以及如何通过工具来找出性能问题及提升性能的建议。Android 性能优化典范(二):主要内容为:电量优化、网络优化、Android Wear 上如何做优化、使用对象池来提高效率、LRU Cache、Bitmap 的缩放、缓存、重用、PNG...原创 2018-11-09 10:47:53 · 176 阅读 · 0 评论 -
Android apk反编译-----【附:反编译工具】
Android应用开发完成之后,我们最终都会将应用打包成一个apk文件,然后让用户通过手机或者平板电脑下载下来进行安装。正常情况下,Android应用打包成apk之后,就无法再看到开发这个应用时使用的资源文件以及代码了。但是我们通过网上提供了一些工具,还是可以将apk进行反编译的,apk反编译之后,我们就可以看到开发这个应用使用的资源文件(图片)、layout、样式、相关的实现代码...原创 2018-11-09 10:34:54 · 299 阅读 · 0 评论 -
handler机制的内存泄漏问题(handler + WeakReference优化Activity)
handler机制导致内存泄漏的原因: Activity在被结束之后,MessageQueue并不会随之被结束,如果这个消息队列中存在msg,则导致持有handler的引用,但是又由于Activity被结束了,msg无法被处理,从而导致永久持有handler对象,handler永久持有Activity对象,于是发生内存泄漏 Android引用对象的四种类型:强引用、软引用、...原创 2018-10-16 21:59:34 · 615 阅读 · 0 评论 -
Android操作系统自带功能部分介绍
需要通过intent(意图)对象,调用android系统自带功能:例如:调用android自带拨号器Intent intent = new Intent();intent.setAction("android.intent.action.CALL");intent.setData(Uri.parse("tel:" + phoneNumber));startActivity(inte...原创 2018-10-16 21:40:36 · 794 阅读 · 0 评论 -
Android —— inflate( )使用
1. LayoutInflater基本用法LayoutInflater的基本用法,首先需要获取到LayoutInflater的实例,有两种方法可以获取到第一种写法如下:LayoutInflater layoutInflater = LayoutInflater.from(context);第二种写法,也可以完成同样的效果:LayoutInflater layoutInfl...原创 2018-12-07 16:29:40 · 1861 阅读 · 0 评论