- 博客(13)
- 收藏
- 关注
原创 Android性能优化
这篇文章主要打算从几个方面讲解一下怎么去对app进行性能优化。不打算涉及任何概念相关的东西,比如渲染机制等等,因为网上已经够多这方面的了。仅仅从自己的优化过程出发,列出一个能一步步去执行的清单和具体操作办法。
2023-02-16 10:17:12
151
原创 Flutter实现一个简单的登录界面
new Image.asset()这个是从本地加载图片的写法,这里要注意的是除了要在根目录下创建一个images文件夹把timg.jpg放到里面之外,还要在pubspec.yaml的flutter下面加入 assets:- images/timg.jpg,要不然图片也是识别不出来的。其他的属性我都在代码里面注释里面写的很清楚了,也没有啥需要特别注意的,就是熟悉控件的用法就好了。这篇文章主要是实现了一个简单的登录界面,效果可以看gif,主要是了解一些常用控件以及布局的样式,还有界面跳转,数据传递。
2023-02-16 10:15:57
813
原创 apk反编译
一:apk是啥? 按照我们通俗一点的理解,apk就是我们Android手机上门的安装包。但是站在我们开发者的角度来看,这样理解肯定是比较片面的。其实在我的理解来看,apk文件更像是一个zip包。在windows上面可以直接将后缀名.apk改为.zip。然后解压出来,目录结构大概是这样子的:不过可能不同的apk,里面的目录不尽相同。当然了,不用我说大家应该也都知道,这文件直接打开肯定是看不懂,...
2018-06-17 21:42:25
6454
原创 Android WIFI初识
Android Wifi开发1.WIFI核心类WifiManagerpublic class WifiManagerextends Object 的java.lang.Object ↳ android.net.wifi.WifiManager这个类提供了管理Wi-Fi连接的所有方面的主要API。通过调用得到这个类的一个实例 Context.getSystemService(Context.WI...
2018-06-10 15:25:35
2011
原创 Android安全机制简述
Android 系统组件及其作用1.Zygote:Android应用的孵化器,一切Android程序由此进程fork而来。2.Binder:Android的进程间通信机制,它是Android平台最核心的功能组件。3.Package Manager Service:应用安装包管理服务,不仅负责包的安装和卸载,更重要的是负责Android应用信息的查询和控制,例如Android权限管理。4.Activ...
2018-06-02 13:16:17
815
原创 Android视频直播概要
视频直播大体框架如上图1.直播整体流程:直播的整体流程如下:录制->编码->网络传输->解码->播放。根据该流程分为以下技术点:怎样录制直播视频怎样实时上传直播视频怎样播放直播视频直播间的用户是如何交互2.视频直播协议: 2.1精简一对多业务模型: 2.2各直播协议的对比:RTMP(Real Time Messaging Protocol)是 M...
2018-05-26 20:25:22
438
原创 EventBus原理
首先贴上一段github上面EventBus官方的解释图翻译过来大概就是EventBus是一个事件发布/订阅总线,适用于Android和Java。1.组件之间的通信更加简单 。针对在事件的发送者和订阅者之间进行解耦 。非常好的运用在Activitys、Fragments和后台线程 。避开了联系紧密易出错的依赖关系和容易出错生命周期 2.使你的代码更加简洁 3.快 4.轻量级...
2018-05-18 16:14:53
3700
原创 TCP和UDP,HTTP和HTTPS
TCP:传送控制协议(Transmission Control Protocol)TCP是面向连接的,“面向连接”就是在正式通信前必须要与对方建立起连接。比如你给别人打电话,必须等线路接通了、对方拿起话筒才能相互通话。UDP:用户数据报协议(UDP:User Datagram Protocol) UDP是面向非连接的,“面向非连接”就是在正式通信前不必与对方先建立连接,不管对方状态就直接发送。类似...
2018-04-10 10:22:43
772
原创 浅析Framework
在开始之前我们先了解一下Andriod的系统架构和Framework所处的位置 从上到下依次分为六层:(有的地方是分五层的,不包含进程通信层)应用框架层进程通信层系统服务层Android运行时层硬件抽象层Linux内核层而我们通常所说的Framework层就是系统服务层Framework定义了客户端组件和服务端组件功能及接口。包含3个主要部分:服务端,客户端和Linux驱动...
2018-04-03 12:03:10
322
原创 内存泄漏检查工具LeakCanary的使用
1.1:在你的项目中,找到moudle级别的build.gradle文件,并在dependencies标签里加上以下代码:1.2在你Android项目中,找到先前写的Application类(PS:如果没有,那么请自行新建并在AndroidManifest中声明),并添加如下代码:2.检测Fragment:上述步骤默认会检测Activity,但是不会去检测Fragment,如果需要对某个Fragm...
2018-03-19 09:47:24
7415
原创 内存优化之内存泄漏
1.为什么会导致内存泄漏? 长生命周期持有对短生命周期对象的引用,导致对无用对象的引用一直未被释放,就会导致内存泄漏-----比如你按back键关掉了一个Activity,那么这个Activity页面就暂时没用了。但是某个后台任务如果一直持有着对该Activity对象的引用,这个时候就会导致内存泄露。2.常见的内存泄漏 2.1->Activity内存泄漏 ...
2018-03-19 09:42:42
282
原创 内存优化之缓存中的LRU使用
lru算法(Least Recently Use),即最近最少使用算法,在Android中比较常用。当内存超过限定大小时,凡是近时间内最少使用的那一个对象,就会从缓存容器中被移除掉。LRU Cache的基础构建用法如下:1.使用LRU Cache时为了能够让Cache知道每个加入的Item的具体大小,我们需要Override下面的方法:2.为了给LRU Cache设置一个比较合理的缓存大小值,我们...
2018-03-19 09:37:21
576
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人