Android
文章平均质量分 77
专栏主要记录Android开发中一些知识点
一方贝地
这个作者很懒,什么都没留下…
展开
-
【Android自定义控件】Android实现自适应字体大小的竖向文字
此自定义控件的实现比较简单,最主要的两个功能。1、计算文字大小获取父布局的高度,除以文字的总长度,即可获取文字的大小。2、使用Canvas竖向绘制每个字符使用循环绘制字符,满足竖直显示效果。原创 2024-10-12 11:37:22 · 327 阅读 · 2 评论 -
【Android笔记】Android Studio打包 提示Invalid keystore format
Android项目通过生产签名文件进行打包。提示不合法的签名文件格式,检查了签名文件的路径以及在Gradle中反复确认了别名和密码,都不存在错误。原创 2024-09-11 14:48:59 · 666 阅读 · 0 评论 -
【Android自定义控件】Kotlin实现滚动效果的数字加减控件
本篇文章所实现的自定义效果难度并不大,自定义ViewGroup、使用,结合View的方法实现数字滚动效果。原创 2024-08-31 15:47:13 · 1474 阅读 · 0 评论 -
【Android笔记】Android APK编译打包流程
本文将介绍Android从一个项目打包成APK的过程,其中涉及AndroidJava和Kotlin文件、资源文件、清单文件、依赖jar包和so库等在打包过程中处理。原创 2024-08-19 20:39:17 · 1501 阅读 · 0 评论 -
【Android笔记】记移植OpenCV4.8实现人脸检测
人脸识别业务流程如下,调用摄像头预览、拍照,使用OpenCV库进行人脸识别,将识别到的人脸使用矩形框绘制出来,从识别的人脸中随机选中一人进行展示。原创 2024-08-14 15:06:38 · 1465 阅读 · 0 评论 -
【Android笔记】记录老项目迁移到Gradle8.0遇到的问题以及解决方法
Android项目由低版本Gradle迁移到高版本中遇到的问题,设计AndroidX的适配、aar包引入报错以及so库加载问题。原创 2024-08-02 10:17:20 · 1107 阅读 · 0 评论 -
【Android笔记】Android加载大图策略,防止OOM
Android中图片以位图(Bitmap)的形式存在,位图常见的格式有.png.jgp.bmp.gif。在加载图片的过程中常见的就是内存溢出。内存溢出是系统会给APP分配内存也就是Heap Size值。当APP占用的内存加上我们申请的内存资源超过了Dalvik虚拟机的最大内存时就会抛出的异常。为什么在加载大图片时会出现内存溢出?首先我们要了解Bitmap位图占用内存大小的计算方式。原创 2023-06-20 17:34:30 · 1501 阅读 · 0 评论 -
【Android自定义控件 】Andriod仿IOS控件Switch开关
本篇文章记录下Android仿iOS控件Switch开关自定义过程。此控件实现的难度较小,但是在绘制文字过程中遇到一些问题,比如如何将文字摆放在正确的位置。Canvas的绘制文字drawTextPaint获取文字边界Paint的测量文字宽度字体度量属性(文字位置摆放关键)原创 2022-09-25 22:43:20 · 3629 阅读 · 1 评论 -
【Android自定义控件】自定义View实现Loading效果
本文记录Android自定义Loading控件过程,其中涉及到自定义属性、动画、Canvas绘制形状、Canvas绘制文字等技术。原创 2022-09-18 09:53:08 · 3270 阅读 · 0 评论 -
【Android自定义控件】自定义百度贴吧水波纹Loading效果
本篇自定义贴吧水波纹Loading效果,主要熟悉下画布的有关特性和Path路径的有关方法,画布在自定义View中是最重要的角色之一,也是要着重掌握的知识。原创 2022-09-06 21:03:39 · 680 阅读 · 0 评论 -
【Android自定义控件】 自定义FlowLayout
实现效果效果类似于微信的标签功能,依次显示标签名,当标签的总宽度(标签宽度 + 边距)超过总的屏幕宽度时,进行换行显示。本篇文章的实现前提是字体大小一致,标签高度一致。2、实现步骤上述效果实现主要以下几步:1.重写的方法2.测量单个标签的宽度,包含标签的边距即、3. 测量单个标签的高度,包含标签的边距即、4. 测量父控件的宽度和高度5. 重写的方法6. 对标签进行布局、根据规则摆放在父控件中根据上图可以分析实现功能需要的参数: 一行的子标签的总宽度,用于和屏幕宽度比较大小,决定是标签是否换行..原创 2022-08-30 20:53:33 · 1211 阅读 · 0 评论 -
【Android自定义控件】实现可滑动的进度条
本文为Android自定义控件,可滑动的进度条,记录了从0到1开发的整个过程,加深对自定义View的理解,方便复习。原创 2022-08-14 22:47:18 · 4801 阅读 · 1 评论 -
【Android笔记】Android的消息机制
本篇文章介绍Android的消息机制,消息机制用于Android中的线程切换以及数据处理。所谓的消息机制,就是Handler的运行机制。Handler是消息机制的上层接口,我们开发中只需要使用Handler即可,除了Handler以外,底层还需要MessageQueue和Looper的支持。还有一个类ThreadLocal也会介绍下,下面将介绍整个消息的运行机制。原创 2019-03-08 10:25:49 · 513 阅读 · 0 评论 -
【Android笔记】JNI 和 NDK开发
Java Native Interface,即Java本地接口,使得Java与本地其他语言(如C,C++)进行交互,可以让Java代码和C,C++代码进行互相调用。JNI是Java语言的一种特性,属于Java,与Android没有关系。原创 2019-03-06 10:50:36 · 435 阅读 · 0 评论 -
【Android Kotlin】让你的代码拒绝空指针
Kotlin 是一种现代的、静态类型的编程语言,主要用于 Android 开发,也支持服务器端开发、Web 前端开发和多平台编译原创 2018-06-19 22:23:01 · 2034 阅读 · 2 评论 -
【Android Kotlin】Kotlin的类与对象
Kotlin 是一种现代的、静态类型的编程语言,主要用于 Android 开发,也支持服务器端开发、Web 前端开发和多平台编译。原创 2018-06-18 20:47:33 · 1798 阅读 · 0 评论 -
【Android WebView】仿微信加载H5页面进度条实现
Android中WebView打卡前端页面时受到网路环境,页面内容大小的影响有时候会让用户等待很久。显示一个加载进度条可以提升很大的体验。微信内访问H5页面加载效果不错,效仿着写了一个。原创 2018-06-09 22:28:27 · 2056 阅读 · 0 评论 -
【Android笔记】OKHttp源码执行流程
Android开发中,常用的第三方网络请求框架有Retrofit,OKHttp,Volley。最近重构项目框架采用的是Kotlin + Retrofit + RxJava,Retrofit的底层实现就是OKHttp实现。本篇文章介绍OKHttp的实现流程以及源码。原创 2018-06-03 22:42:18 · 679 阅读 · 0 评论 -
【Android性能优化】LeakCanary使用详解
LeakCanary 是一个强大的内存泄漏检测工具,专为 Android 开发设计。它帮助开发者在应用开发和测试过程中检测并修复内存泄漏,从而提高应用的性能和稳定性。原创 2018-05-29 09:30:30 · 1112 阅读 · 0 评论 -
【Android笔记】Android8.0 版本更新无法自动安装问题解决
前几天APP上线了个新版本,有部分用户反应在下载完安装包以后点击安装无反应。查了下这部分用户手机的系统的版本都是8.0+版本。因为太久没关注新版本特性,所以导致了这个问题的发生。Android 8.0 (Android O)为了针对一些流氓软件引导用户安装其他无关应用。在应用权限设置的“特殊访问权限”中,加入了“安装其他应用”的设置。原创 2018-06-04 22:29:14 · 8928 阅读 · 1 评论 -
【Android WebView】WebView的基本使用
现在越来越多的App都将原生功能开发转向混合开发,原生只写个“外壳”,内嵌H5页面,便于维护。今天来介绍下Android中内置的高性能内核浏览器webkit。提供了控件WebView以及API。原创 2018-06-05 21:55:46 · 2509 阅读 · 0 评论 -
【Android WebView】实现选择本地图片拍照功能
Android中通过WebView和H5页面进行交互,有时候会有其他需求比如H5页面需要从手机本地文件中选择图片。本篇以BridgeWebView介绍功能的实现。原创 2018-06-12 22:33:32 · 4743 阅读 · 0 评论 -
【Android Kotlin】自定义可清除内容EditText
本文使用Kotlin语言实线简单的自定义可清除内容的输入框。原创 2018-06-21 00:00:31 · 5858 阅读 · 0 评论 -
【Android数据库】Android SQLite基本用法
Android 开发中数据存储本地几乎是避免不了的。在这过程中,打交道比较多的比如数据库,Android中内置了一款轻量级的数据库SQLite,在android.database.sqlite 包下提供了丰富的操作SQLite的API。下面介绍下SQLite的使用方法,以及过程中遇到的问题。原创 2018-05-30 22:32:04 · 5301 阅读 · 1 评论 -
【Android Kotlin】Android Studio创建一个简单的Kotlin应用
第一次接触到Kotlin是在2016年6月份,当时项目有1/3的功能已经用Kotlin进行编码。不管是和Java的交互还是语法的简洁性都已经支持很好。正是因为其语法的简洁性和空指针安全,所以这两年的工作的项目里都有使用Kotlin。不能说Google将其作为Android第一开发语言开发人员就要放弃Java而一意追随。只是作为一门基于JVM新语言,我觉得Kotlin值得大家尝试。原创 2018-06-14 08:52:43 · 7895 阅读 · 0 评论 -
【Android WebView】Android和JS互调,BridgeWebView的使用
WebView使用中常用的类和方法。本篇将介绍WebView中Android原生Js之间交互。以及它们之间通信桥梁JsBridge。原创 2018-06-08 00:11:35 · 7406 阅读 · 0 评论 -
【Android笔记】AsyncTask基本使用以及源码解析
Android中,线程是操作系统调度的最小单位。线程分为主线程和子线程。主线程用来处理界面的交互,而耗时操作(网络请求,复杂的数据库查询)必须在子线程中来完成。通过Handler消息机制完成主线程和子线程之间的通信。原创 2018-06-09 12:08:34 · 294 阅读 · 0 评论 -
【Android Kotlin】Kotlin基础语法
Kotlin 是一种现代的、静态类型的编程语言,主要用于 Android 开发,也支持服务器端开发、Web 前端开发和多平台编译。由 JetBrains 开发,并于 2011 年首次发布。Kotlin 设计的初衷是提高开发效率和代码安全性,同时与 Java 100% 互操作。原创 2018-06-16 20:40:36 · 2160 阅读 · 0 评论