![](https://img-blog.csdnimg.cn/20201014180756919.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
安卓客户端
文章平均质量分 61
K.I.O
这个作者很懒,什么都没留下…
展开
-
安卓Messenger跨进程双向通信
要实现IPC(跨进程通信),可以使用官方给我们提供的Messenger机制和AIDL机制。其中Messenger使用简单,适用于大部分多进程、单线程的应用,AIDL适用于较为复杂的多进程、多线程的应用。这里我们介绍Messenger的用法,其底层也是使用AIDL实现的。来看下Messenger用法Reference to a Handler, which others can use ...原创 2020-02-05 11:50:25 · 562 阅读 · 1 评论 -
[转] Android开发优化之——使用软引用和弱引用
Java从JDK1.2版本开始,就把对象的引用分为四种级别,从而使程序能更加灵活的控制对象的生命周期。这四种级别由高到低依次为:强引用、软引用、弱引用和虚引用。这里重点介绍一下软引用和弱引用。如果一个对象只具有软引用,那么如果内存空间足够,垃圾回收器就不会回收它;如果内存空间不足了,就会回收这些对象的内存。只要垃圾回收器没有回收它,该对象就可以被程序使用。软引用可用来实现内存敏感的高速缓存。软...转载 2020-02-03 16:27:04 · 275 阅读 · 0 评论 -
Android自定义View————自定义数据绘制饼状图
重写View中的OnDraw()方法,进行统计图的绘制。绘制基础canvas: 非常重要的类,里面有很多绘制类,画线、画圆、画矩形、画扇形等。同时也是重要的辅助类,辅助进行裁切以及画面的几何变换。drawBitmap(Bitmap bitmap, Matrix matrix, Paint paint) 绘制图片drawArc(float left, float top, float ri...原创 2019-01-09 15:58:46 · 2105 阅读 · 1 评论 -
Android中图片内存占用的来龙去脉
图片占用内存计算Android中,我们说图片占用的内存可以简单的认为是BitMap所占用的内存。那么一张图片占用的内存大小与什么因素有关呢?first 图片的长度、宽度,这里我们就用像素数计量sec 单位像素占用的字节数简而言之,言而简之一张图片占用的内存 = 图片长度 * 宽度 * 单位像素的字节数。那我们就有一个困惑:单位像素占用的字节数怎么确定呢?我们要先了解我们存在计...原创 2019-01-21 11:20:31 · 522 阅读 · 0 评论 -
理解Canvas绘制文字及canvas.drawText()的绘制位置
参考文章:HenCoder Android 开发进阶:自定义 View 1-3 drawText() 文字的绘制https://hencoder.com/ui-1-3/Canvas 的文字绘制方法有三个:drawText()drawTextRun()drawTextOnPath()给出文字的内容和位置, Canvas 按要求去绘制文字。以其中一个方法为例:drawText(String...转载 2019-01-10 10:16:05 · 5329 阅读 · 0 评论 -
BitmapShader着色器图像裁剪方法
在学习自定义View开发进阶的过程中,对图像裁剪的两种方式做一个简单的笔记。学习资源参考Hencoder开发进阶。canvas.clipXXX()通过画布裁剪图片 canvas.save(); canvas.clipRect(300,300,700f,1000f); canvas.drawBitmap(bitmap, 0,0,null); canvas.restore();...原创 2019-01-22 14:04:50 · 700 阅读 · 0 评论 -
【转】android发布新版忘记keystore(jks)密码终极解决方案
android app签名是使用的keystore文件/jks文件,如果是eclipse是keystore,android studio则是jks,如果忘记了的话很悲催:1、找到密码2、改应用的包名,重新生成keystore文件,重新发布新的应用方案2对于应用开发者肯定是巨大的灾难了吧首先来介绍下找回密码的几种方式android log找回如果之前有使用过android studio打...转载 2019-04-01 17:43:49 · 4593 阅读 · 0 评论 -
Android学习笔记——match Contraints创建一个适应不同屏幕尺寸的布局
刚刚看了安卓开发文档的创建第一个应用其中布局视图中有一些地方值的mark一下学习地址:https://developer.android.google.cn/training/basics/firstapp/building-ui要给布局编辑器留出更多空间请隐藏 Project 窗口,方法是依次选择 View > Tool Windows > Project(或点击 Andro...原创 2019-08-11 16:07:18 · 203 阅读 · 0 评论 -
设计界面通用的颜色值
灰色系常用灰色#3f3f3f #aaa #666666 渐变色值#FBFBFB#F8F8F8#F4F4F4#EEEEEE#E5E5E5#DDDDDD#D0D0D0#C0C0C0#ADADAD#989898#808080#666666#4B4B4B彩色系常用主题\#ffffcc #ccf...原创 2019-09-01 20:06:00 · 1117 阅读 · 0 评论 -
Android控件ListView优化及数据分页加载
ListView的缓存机制listView在使用过程中需要注意item view的显示与缓存机制,即屏幕内显示,滑出屏幕就被会收到缓存,避免每次调用getView时都是通过inflate创建一个新的View对象,同时避免又在此view中通过findViewById找到对应的控件,利用ListView的缓存机制实现view的复用。将数据放入ListView中显示,需要建立数据源与ListView...原创 2019-01-08 16:55:18 · 616 阅读 · 0 评论 -
Android网络通信框架Volley的基本用法
我们平时在开发Android应用的时候不可避免地都需要用到网络技术,而多数情况下应用程序都会使用HTTP协议来发送和接收网络数据。Android系统中主要提供了两种方式来进行HTTP通信,HttpURLConnection和HttpClient,几乎在任何项目的代码中我们都能看到这两个类的身影,使用率非常高。不过HttpURLConnection和HttpClient的用法还是稍微有些复杂的,如...原创 2019-01-23 23:38:22 · 306 阅读 · 0 评论 -
Android报错:getActionBar()报空指针异常
错误描述:报错:Attempt to invoke virtual method 'android.content.Context android.app.ActionBar.getThemedContext()' on a null object reference在使用 ActionBar的时候,有时候会爆出空指针异常,这是因为应用没有获取到 ActionBar 导致的。解决办法 a...转载 2019-01-12 16:43:37 · 976 阅读 · 0 评论 -
Android数据存储————文件存储(内部存储)
存储特点将数据存储在app的目录下,内部存储的数据只能被自己的应用程序访问到,存储空间有限。存储位置/data/data/<package_name>/files存储模式MODE_PRIVATE : 覆盖MODE_APPEND: 追加方法保存:openFileInput(filename, mode)读取:openFileOutput(filename)例子:存储、...原创 2019-01-03 15:35:40 · 587 阅读 · 0 评论 -
Android数据存储————文件存储(外部存储)
存储特征将数据存储在app目录下,保存到外部存储设备,比如SD卡中,数据既可以公有,也可以私有,空间相对充足。存储路径公有:Environment.getExternalStorageDirectory()私有:/Android/data/<package_name>/files注意:外部存储权限访问外部存储权限,API 23以上的应用程序,需要动态申请 外部存储权限...原创 2019-01-03 17:06:30 · 957 阅读 · 0 评论 -
Android数据存储————SharedPreference使用及封装
本文主要介绍sharedpreference的基本特征和使用方式,然后将其数据存取方式封装到一个工具类SharedPreferenceUtil中,便于调用。实例:首次启动欢迎页存储特点sharedPreferences是一种轻型的数据存储方式,它的本质是基于xml文件存储key-value键值对数据,通常用来存储一些简单的配置信息。数据存储方式存储位置其存储位置在/data/data...原创 2019-01-04 15:57:27 · 2403 阅读 · 1 评论 -
ActionBar、TitleBar、ToolBar、StatusBar之间的关系
有图有真相StatusBarStatusBar,也就是状态栏,它处于屏幕的最顶部,正常情况下它是显示的,它和TitleBar和ActionBar、ToolBar之间没有直接的关系。可设置隐藏、颜色,获取高度等。TitleBarTitleBar,也就是标题栏,它紧挨状态栏的下面,正常情况下它的布局和主题样式都是使用系统定义好的,且默认情况下只显示图标和文本。ActionBarActi...原创 2019-01-10 20:38:57 · 1664 阅读 · 0 评论 -
Android数据存储————SQLite数据库创建及增删改查操作
(一)Android数据存储————文件存储(内部存储):https://blog.csdn.net/sinat_29675423/article/details/85699131(二)Android数据存储————文件存储(外部存储):https://blog.csdn.net/sinat_29675423/article/details/85705545(三)Android数据存储————...原创 2019-01-05 18:12:44 · 1034 阅读 · 0 评论 -
Android 报错:Binary XML file line #10: Error inflating class ***
问题描述自定义控件的时候,报错Binary XML file line #10: Error inflating class ***原因XML中自定义view的标签的格式是 包名 + . + 类名,在XML中引入自定义控件的时候,自定义控件一定要实现相应的构造方法:构造方法说明:第一个是用来在代码中创建View使用,第二个和第三个是从xml中创建View时使用,自定义View时这三个构造...原创 2018-12-26 11:30:04 · 3579 阅读 · 0 评论 -
px、dp、dpi之间的联系与转换
我们在设计界面难免要考虑视图的尺寸。layout中我们经常用dp、pt指定控件的宽高,也有用到sp设置字体大小的。自定义View的时候,我们绘制的图形经常用到px这个单位。那么这些单位之间的区别与联系是什么,又如何相互转换呢px:像素点。平常所说的1920×1080只是像素数量,也就是1920px×1080px,代表手机高度上有1920个像素点,宽度上有1080个像素点。dpi:...原创 2019-01-11 16:27:19 · 7949 阅读 · 0 评论 -
Android Studio: 查看android源代码
应用场景:在学习和实践android相关组件和类的过程中,查看理解源码有助于理解代码实现原理。三个步骤查看项目依赖的SDK 版本在SDK Manager中下载该版本的source资源 。下载地址:SDK Manger在文件当中打开 jdk.table.xml将对应版本的sourcePath中 添加下载的source的地址,保存。重启 Android Stdio...原创 2018-12-26 15:11:25 · 1338 阅读 · 0 评论 -
ARcore坐标系与地理坐标系转换
ARcore资料ARcore 设备支持:https://developers.google.cn/ar/discover/supported-devicesARcore 基本概念:https://developers.google.cn/ar/discover/conceptsARcore sdk:https://github.com/google-arARcore service: h...原创 2018-12-28 15:55:29 · 6100 阅读 · 3 评论