
Android学习笔记
文章平均质量分 59
Mr-river
这个作者很懒,什么都没留下…
展开
-
记录gradle插件学习一
我就不说那么多废话,直接上图一个一个步骤来,看得更清晰 步骤一:创建插件项目 描述:新建android项目后,再建一个module,然后删掉一些不必要的文件,如下所示: 步骤二:新建groovy文件夹 步骤三:新建MyPlugin.groovy文件,后缀名是groovy。 MyPlugin的内容,看着就跟java一样,因为groovy也是jvm语言,是兼容java的。 class MyPlugin implements Plugin<Project> { @Override原创 2021-08-03 14:43:50 · 204 阅读 · 0 评论 -
Android TextureView与SurfaceView的相遇
一、认识TextureView 1、TextureView是什么? TextureView是android4.0引入的,用于承载显示数据流的View。如本地Camera采集的预览数据流和视频通话模块从网络包里解出实时视频数据流。 2、TextureView怎么使用? mTextureView.surfaceTextureListener = object : TextureView.SurfaceTextureListener { override fun onSurfaceTex原创 2020-10-25 14:45:40 · 706 阅读 · 0 评论 -
Handler消息传递机制
一、Handler消息传递机制的产生原因 出于对性能优化的考虑,致使Android不是线程安全的。如果多个线程并发操作UI组件,会产生线程安全问题。为此,Android制定了一个规则:只允许在UI线程中操作UI组件。但是,试想一下,如果我们创建了一个子线程,在子线程中执行了一个任务,这个任务涉及到要操作UI组件,但由于规则的限制,我们不能直接在子线程中操作UI组件。就在这种情况下,我们的Hand原创 2016-07-09 23:00:45 · 447 阅读 · 0 评论 -
AsyncTask实现原理和注意事项
一、介绍 AsyncTask即异步任务,是Android提供的轻量级异步类,它对Thread和Handler进行了封装,方便我们使用。可以直接继承AsyncTask,在类中实现异步操作,并提供接口反馈当前异步执行的程度(可以通过接口实现UI进度更新),最后反馈执行的结果给UI线程。根据Android官方文档上的介绍,AsyncTask的设计是围绕线程和处理器的一个辅助类,并不构成一个通用的线程框...原创 2018-12-31 19:32:28 · 1353 阅读 · 0 评论 -
Android系统中Parcelable和Serializable的区别
转载自:http://www.jianshu.com/p/a60b609ec7e7 一、android为什么要序列化?什么是序列化,怎么进行序列化 why 为什么要了解序列化?—— 进行Android开发的时候,无法将对象的引用传给Activities或者Fragments,我们需要将这些对象放到一个Intent或者Bundle里面,然后再传递。 what 什转载 2016-11-22 11:19:09 · 413 阅读 · 0 评论 -
自己动手实现一个Android断点下载
一、断点下载原理及步骤 对于断点下载,就是下载的过程中,都会出现一些异常情况,导致下载中断。虽说可以重新下载,但是这对大部分的人来说,这是很麻烦很蛋疼的事。 步骤: 1. 获取下载链接,首先到数据库查找一下是否有重复的下载任务,有点话获取数据继续下载,没有的话,获取文件对象,传给下载服务。 2. 新建一个下载服务,方便应用退出时,能继续在后台下载。 3. 创建一个数据库,用来存储程原创 2017-12-11 10:33:22 · 509 阅读 · 0 评论 -
一起学android蓝牙编程
一、蓝牙简介 蓝牙的一系列操作过程: 1、搜索其他蓝牙设备 2、查询适配蓝牙 3、建立RFCOMM通道 4、通过发现服务连接其他蓝牙设备 5、交换数据 6、管理多项连接 二、蓝牙开发常用类 BluetoothAdapter:代表类一个本地的蓝牙适配器。他是所有蓝牙交互的入口点。利用它你可以发现其他蓝牙,查询绑定了的设备,使用已知的的MAC地址实例化一个蓝牙设备和建立一个服务端来监听来自其他设备的连...原创 2019-06-29 17:23:47 · 1150 阅读 · 0 评论