• 等级
  • 208624 访问
  • 63 原创
  • 0 转发
  • 20548 排名
  • 440 评论
  • 234 获赞

您有一份AndroidX升级指南未领取

转载请注明出处 本文出自 容华谢后的博客 1.介绍 相信大家对Android Support Libray都不陌生,随着Android版本的快速迭代,Google推出了Support Libray用以兼容低版本的Android设备。但是随着版本越来越多,支持库的维护和使用也变得越来越复杂,于是AndroidX应运而生,接下来我们一起来学习下如何迁移到AndroidX吧! AndroidX基于A...

2018-11-19 08:26:56

滴滴插件化方案 VirtualApk 完全解析(一) 初识基本用法

转载请注明出处 本文出自 容华谢后的博客 1.介绍 VirtualApk GitHub地址 VirtualAPK是滴滴在2017年6月开源的一款插件化框架,支持Android四大组件,以及几乎所有的Android特性,通过Gradle来构建插件,集成与构建十分便捷,目前已经应用在 滴滴出行 App上,兼容市面上几乎所有的Android设备。 VirtualAPK支持的...

2018-08-01 09:04:37

Android 蓝牙BLE开发详解

1.介绍 蓝牙是一种短距离的无线通信技术,可以实现固定设备、移动设备之间的数据交换。一般将蓝牙分为两大类,蓝牙3.0规范之前的版本称为传统蓝牙,蓝牙4.0规范之后的版本称为低功耗蓝牙,也就是常说的BLE(Bluetooth Low Energy)。 本文主要讲解的是Android设备与BLE设备之间的通信,Android 从4.3版本(API Level 18)开始支持BLE通信。 2....

2018-07-12 08:59:23

Android Design Support Library v28 新增组件详解

1.简介 Google在近期发布了最新的Design Support Library 28.0.0-alpha3版本,其中新增了一些非常实用的组件,本篇文章将会对其进行详细的介绍,一起来看下! 如果你对Material Design还不太了解,可以点击这篇文章《Design Support Library介绍》了解一下。 引入依赖库 在app根目录的buil.gradle文件中加入依赖: ...

2018-06-21 08:59:44

使用Java实现串口通信(二)

1.写在前面 距离上一篇文章《使用Java实现串口通信》已经过去快两年的时间了,在此期间收到了很多读者的反馈,很高兴可以帮助到这么多人,根据收到的反馈,我对代码逻辑进行了优化整理,并增加了一些新功能,在此记录下,分享给大家。 先看下效果: 2.环境搭建 本文的串口通信开发基于RXTX,所以需要引用一些RXTX的依赖包: RXTX 依赖包下载地址,内含32位与64位版本 拷贝 RX...

2018-06-06 09:03:29

Android NDK开发(五) 开发中遇到的问题汇总

1.abiFilters是做什么用的? 我们在项目的gradle中经常会看到这样的配置: defaultConfig { ... ndk { abiFilters "armeabi-v7a", "x86" } } 那为什么要这样配置呢,一起来看下: 如果我们在项目中引入了某个SDK,这个SDK中支持 armeabi、armeabi-v7a、ar...

2018-05-18 09:18:01

Android NDK开发(四) 将FFmpeg移植到Android平台

FFmpeg是一套可以用来记录、转换数字音频、视频,并能将其转化为流的开源计算机程序。它提供了录制、转换以及流化音视频的完整解决方案。 1.写在前面 在上一篇文章《Android NDK开发(三) 在Linux环境下编译FFmpeg》中,我们学习了如何将FFmpeg源码编译成so文件,但是这些so文件还不能直接引用到Android工程中,还需要再次编译加工才能使用,今天就让我们来学...

2018-03-27 09:10:12

Android NDK开发(三) 在Linux环境下编译FFmpeg

FFmpeg是一套可以用来记录、转换数字音频、视频,并能将其转化为流的开源计算机程序。它提供了录制、转换以及流化音视频的完整解决方案。 1.环境搭建 操作系统:Ubuntu 16.04 64bit NDK版本:android-ndk-r14b-linux-x86_64 FFmpeg版本:3.4.2 NDK 下载地址 FFmpeg 下载地址 将NDK...

2018-03-07 08:58:56

Android NDK开发(二) 使用ndk-build构建工具进行NDK开发

本文主要讲解了在Windows环境下如何使用ndk-build构建工具来进行NDK开发,以及ndk-build构建工具在Android Stuido中的快捷工具配置。 在上一篇文章《Android NDK开发(一) 使用CMake构建工具进行NDK开发》中,我们学习了如何使用CMake构建工具来进行NDK开发,但是一些老项目还是使用的ndk-build构建工具进行开发的,今天我们就来学习一下如

2018-01-24 09:25:28

Android NDK开发(一) 使用CMake构建工具进行NDK开发

2018年的第一篇文章,主要讲解了JNI、NDK的一些概念以及在AS 3.0环境下如何使用CMake构建工具来进行NDK开发。 1.了解一些概念 JNI(Java Native Interface): Java原生接口,是Java和其他原生代码语言(例如 C 和 C++)通信的桥梁。 NDK(Native Development Kit): 原生开发工具集,是一套允许您使用原生代码

2018-01-18 09:07:29

2017年终总结

转眼一年的时间又过去了,先回顾下今年的计划,看看完成了多少:《2016年终总结》关于博客,还在坚持写,还没有成为博客专家,但粉丝已经多了许多,继续坚持;关于旅行,年初去了杭州、上海、苏州三个城市旅行,真是一段难忘的经历;关于学习,没有系统的学习某些知识,总是想的太多、做的太少,还需努力;关于学车,惭愧,还没有学,列入2018年计划;嗯,完成了一半多,还需努力,下面记录一下今年发生的事情:年初的时候,

2017-12-31 15:33:50

Android 图解Canvas drawText文字居中的那些事

GitHub传送门1.写在前面在实现自定义控件的过程中,常常会有绘制居中文字的需求,于是在网上搜了一些相关的博客,总是看的一脸懵逼,就想着自己分析一下,在此记录下来,希望对大家能够有所帮助。2.绘制一段文本首先把坐标原点移动到控件中心(默认坐标原点在屏幕左上角),这样看起来比较直观一些,然后绘制x、y轴,此时原点向上y为负,向下y为正,向左x为负,向右x为正,以(0,0)坐标开始绘制一段文本:@Ov

2017-12-29 08:55:44

Android自定义控件 倒计时

GitHub传送门1.写在前面本篇文章实现了一个简单的倒计时控件,主要运用了画布的操作,滑动角度计算等知识点,非常适合自定义控件的初学者进行学习,看下效果图:2.实现初始化一些数据public class CountdownView extends View { // 控件宽 private int width; // 控件高 private int height;

2017-12-14 09:01:16

Android 自定义Switch开关按钮的样式

GitHub传送门1.写在前面本文主要讲的是在Android原生Switch控件的基础上进行样式自定义,内容很简单,但是在实现的过程中还是遇到了一些问题,在此记录下来,希望对大家能够有所帮助,看下效果图:2.自定义样式2.1 原生样式首先看下原生的效果(Android 7.1):布局文件如下:<Switch android:layout_width="wrap_content" an

2017-12-07 08:52:07

手把手教你在Android Studio 3.0上分析内存泄漏

戳我下载 Android Studio 3.0 这个不用梯子我会告诉你吗 1.写在前面Google在上周发布了Android Studio 3.0正式版本,周四早晨在上班的地铁上就看到群里在沸沸扬扬的讨论3.0版本的各种坑,啊,不对,各种特性,到公司之后就迫不及待的更新了3.0版本,嗯,还算顺利,只遇到了一个坑,一切都在happy的进行着。什么,你以为我想要写遇到的坑是什么,呵呵哒,我才不会告诉

2017-10-31 15:44:02

Android RecyclerView下拉刷新 & 上拉加载更多

GitHub传送门1.写在前面本文主要实现的是上拉加载更多功能,下拉刷新使用的是Google官方的SwipeRefreshLayout控件,因为在实现这个功能的时候走了不少弯路,所以在此记录下来分享给大家,先看下效果图:2.实现上拉加载实际上就是给RecyclerView增加一个FooterView,然后通过判断是否滑动到了最后一条Item,来控制FooterView的显示和隐藏,接下来我们来看下如

2017-10-20 13:16:27

Android 使用代码实现一个选词(拖拽)填空题

GitHub传送门1.写在前面在上一篇文章《Android 使用代码实现一个填空题》中,我们学习了如何实现一个填空题,今天继续接着上一篇文章的节奏,学习一下如何实现一个选词填空题,由于本文中用到了一些上篇文章的知识点,所以还没有看过上篇文章的同学可以>戳这里<了解一下。首先看下效果图:2.学习一些基础知识选词填空题有一个很重要的功能就是拖拽,我们先来学习一下如何对View进行拖拽操作,写个简单的De

2017-10-10 17:28:30

Android 使用代码实现一个填空题

GitHub传送门1.写在前面最近项目比较忙,有一个多月没有更新博客了,利用闲暇之余总结一下项目中遇到的问题,分享给大家!刚看到要做填空题这个需求的时候,第一个反应是到百度,啊…不对,谷歌上搜一下有没有类似的Demo,无奈搜出来的全是Android面试题,唉,算了,还是老老实实自己实现吧,先看下效果:2.学习一些基础知识首先来学习一下如何对TextView的局部设置颜色和点击事件,这里要用到一个很重

2017-09-29 15:12:16

Android自动化测试工具 UiAutomator使用详解

本文测试用例下载地址1.介绍Android团队在4.1版本(API 16)中推出了一款全新的UI自动化测试工具UiAutomator,用来帮助开发人员更有效率的完成App的Debug工作,同时对于测试人员也是一大福音,为什么这么说呢? 测试:“我发现了一个bug,你写的App打开A页面,再打开B页面有时会出现闪屏问题。” 开发:“嗯?还有这样的问题,复现给我看看。(内心独白:我写的Ap

2017-08-16 08:49:49

Android DataBinding & MVVM

先说说两者的关系,DataBinding是一个实现数据和UI绑定的框架,而MVVM是一种架构模式,实现MVVM模式需要借助DataBinding来完成。本文将以《Android 谈谈我所理解的MVP》中的例子为基础,使用MVVM模式重新实现一下。嗯,本篇博客也是有副标题的:Retrofit + RxJava + RxLifecycle + MVVM本文涉及到的一些基础知识:《Android Data

2017-08-09 08:33:39

容华谢后

路漫漫其修远
关注
  • 移动端开发
  • 中国 北京 海淀区
奖章
  • 专栏达人
  • 持之以恒