![](https://img-blog.csdnimg.cn/20201014180756738.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Android
Kiven_Android
生活不是眼前的苟且, 还有诗和远方
展开
-
获取控件的宽高解决方法
在Android开发中,有时需要对控件进行测量,得到的控件宽度和高度可以用来做一些计算。在需要自适应屏幕的情况下,这种计算就显得特别重要。另一方便,由于需求的原因,希望一进入界面后,就能得到控件的宽度和高度。实际上在onCreate、onStart、onResume中无法正确得到某个view的宽高信息,这是因为View的measure过程和activity的生命周期方法不是同步执行的,因此无法原创 2017-02-24 17:16:16 · 544 阅读 · 0 评论 -
Android完美加载大图
1. 引子前几天跟服务端的一个妹子联调接口,服务器配置一张图片,几十KB就行,她问我图片从哪里找,我告诉她先随便在网上找个图片链接就行了。结果一运行程序,就崩溃了,出现了下面的异常。java.lang.OutofMemoryError内存溢出OOM,我当时一脸懵逼。一脸懵逼于是拿着后台返回的链接去查看了一下图片,是一张6M的壁纸。我内心几乎是崩溃的这只是一个简单的联调,而在联调过程中操作转载 2017-03-22 18:02:33 · 627 阅读 · 0 评论 -
Android调用系统相册或拍照实现头像更换
Android调用系统相册或拍照实现头像更换更换头像功能相信每个app,都会用到,这里我也做下总结,记录下。我这里是将代码从项目中抽取出来,难免可能会涉及到mvp相关的名词,谅解。1、展示更改头像选择对话框:@Overridepublic void showModifyHeadIconDialog() { AlertDialog.Builder builder = new AlertDia原创 2017-03-14 20:36:45 · 1586 阅读 · 0 评论 -
多线程之生产者与消费者模式
前言 生产者-消费者模式是一个经典的多线程设计模式,它为多线程的协作提供了良好的解决方案。在生产者-消费者模式中,通常有两类线程,即若干个生产者线程和若干个消费者线程。生产者线程负责提交用户请求,消费者线程负责处理用户请求。生产者和消费者之间通过共享内存缓冲区进行通信。 生产者-消费者模式中的内存缓冲区的主要功能是数据在多线程间的共享。此外,通过该缓冲区,可以缓解生产者和消原创 2017-04-18 23:09:22 · 599 阅读 · 0 评论 -
Dagger2基础与进阶
前言 Dagger2依赖注入框架,为了降低程序间的耦合度,防止产生牵一发而动全身的问题。除此之外,它同样还有很多有点:增加开发效率、省去重复的简单体力劳动 首先new一个实例的过程是一个重复的简单体力劳动,dagger2完全可以把new一个实例的工作做了,因此我们把主要精力集中在关键业务上、同时也能增加开发效率上。省去写单例的方法,并且也不需要担心自己写的单例方法是否线程原创 2017-05-01 14:24:50 · 360 阅读 · 0 评论 -
ViewDragHelper实现QQ侧滑效果
前言 侧滑的实现方式有很多方式来实现,这次总结的ViewDragHelper就是其中一种方式,ViewDragHelper是2013年谷歌I/O大会发布的新的控件,为了解决界面控件拖拽问题。下面就是自己学习写的一个实现类似于QQ侧滑效果的实现。activity_main.xml:<com.itheima.tencentqq52.drag.DragLayout xmlns:android原创 2017-04-27 16:45:10 · 346 阅读 · 0 评论 -
6月总结
6月总结 六月到现在一直没有新的博客发布,原因是作为身处毕业季的我,6月可谓是即开心又悲伤的一个月,大家各奔东西,为了完成自己的梦想,有人去了北上广,有人去新二线城市,不管去何处,大家都怀揣着一颗美好的心,而我也经过5月和6月的努力进入了二三四五,相比刚出来实习的那个阶段,从一个懵懂的小少年渐渐地适应了这个社会,适应了周围的工作环境.这篇文章就不讲废话了,接下来我介绍下是如何做面试准备的.一原创 2017-07-02 17:19:21 · 551 阅读 · 0 评论 -
ContentProvider和BroadcastReceiver
ContentProvider一、概念特点 ContentProvider是四大组件之一,它并不能存储数据,只能为数据的存储或者添加等操作提供一个统一的接口,它可以供多个应用程序共享数据(跨进程数据的访问).在安卓设备中使用ContentProvider存储数据的应用有:通讯录、图片、音频等.同时也数据的变化也可以被监听到.二、优缺点优点: 数据访问统一接口:不需要关注数据存储原创 2017-09-06 22:17:27 · 935 阅读 · 0 评论 -
Android Multidex原理及实现
Android Multidex原理及实现一、什么是分包,分包能解决什么问题? 正常apk打包后的文件目录是含有AndroidManifest.xml、R、resource.arcs(资源的索引)、assets、lib、classes.dex这几个模块,而分包后又是怎么样的情况呢?分包之后dex将会多出几个dex,出现classes2.dex,classes3.dex等. 分原创 2017-08-28 22:09:59 · 1780 阅读 · 0 评论 -
设置Activity横竖屏
Android中设置横屏和竖屏的方法Xml:<activity android:name="com.example.touchandscreen.MainActivity" android:label="@string/app_name" android:screenOrientation="landscape"原创 2017-02-24 15:45:34 · 2707 阅读 · 0 评论 -
Apk瘦身优化
概述:对于大部分用户来说,当看到应用商店陈列着那些一个个应用的时候,会去挑选些Apk体积相对比较小的app下载,因为这样会节省他们的流量消耗、下载时间、手机存储空间。个人经验总结:图片的处理:1、只需要支持hdpi、xhdpi、xxhdpi:因为目前这三种分辨率占据了80%,对于低分辨率我们完全可以交给Android系统来处理,对于x原创 2017-02-15 16:18:21 · 266 阅读 · 0 评论 -
高效加载图片防止OOM--总结
为了防止图片加载的时候出现OOM,笔者在这里总结了几种方式,均来自与wuli互联网并加上了自己的见解。方法1:读取图片时注意方法的调用,适当压缩 。尽量不要使用setImageBitmap或setImageResource或BitmapFactory.decodeResource来设置一张大图,因为这些函数在完成decode后,最终都是通过java层的createBitmap来完成的,原创 2016-11-15 19:22:30 · 1726 阅读 · 1 评论 -
Android Studio快捷键
Android Stuido快捷键原创 2016-11-11 22:48:50 · 224 阅读 · 0 评论 -
屏幕适配以及图片适配经验之谈
博客开篇不说废话,直接进入正题!做开发一段时间了,也自己总结了一些屏幕适配以及图片适配的一些经验,拿出来跟大家分享一下。1.对xml布局文件中的属性进行适配问题提出:xml布局文件里面会对属性设置很多的值,比如margin-left,padding,layout_width等设置相应的dp,但是这样对于不同的手机分辨率如何做到适配呢? 解决方式:在Android开发目原创 2016-11-15 17:08:33 · 1996 阅读 · 0 评论 -
FastJson使用文档
1、主要的使用入口Fastjson API入口类是com.alibaba.fastjson.JSON,常用的序列化操作都可以在JSON类上的静态方法直接完成。public static final Object parse(String text); // 把JSON文本parse为JSONObject或者JSONArray public static final JS原创 2016-11-16 11:45:44 · 1350 阅读 · 0 评论 -
Android6.0权限检测与申请
2015年8月18日早间消息,谷歌终于在M开头的众多甜品中为AndroidM确定了Marshmallow(棉花糖)这个正式名称,版本号也被确定为Android 6.0。 Android6.0相对于前面的版本更新的内容,只有权限管理是我们开发者需要去注意的。 之前的安卓应用都会索取一大堆的权限,也不知道它想干什么。现在用户权限管理机制已经大大改善了。现在的权限设置类似原创 2016-12-25 22:32:28 · 494 阅读 · 0 评论 -
Andorid完美退出应用
完美退出应用对于任何App来说都是很重要的,当页面的交互逻辑很复杂的时候,难免会遇到某些activity在跳转过程中没有退出,为了方便Activity退出,可以统一建一个ActivitManager,统一的去记录activity,然后统一的进行销毁。public class ActivityManager { /** * 存放Activity的map */原创 2016-12-30 17:30:56 · 282 阅读 · 0 评论 -
2017年开源框架进阶总结
年初自我总结:2017年到了,不知不觉我已经实习了将近一年了,第一家公司力谱宿云里的哥哥姐姐们给了我很大的帮助,从一个懵懵懂懂的小实习生逐渐走上了正轨,在那段时间内每天学习到深夜,白天有问题就请教,慢慢地自己的技术,对技术的理解也有了很大的提高。虽然最后公司团队不幸解散了,但是在力谱的那段日子,还是挺充实的。离开力谱后,我又加入了一个创业公司,做互联网钢琴教育,负责Android教师端原创 2017-02-14 12:33:25 · 902 阅读 · 0 评论 -
Android_APP 常用图标尺寸规范
APP常用图标尺寸对于开发者来说是很重要的,但是开发者对于这些规范很多时候是记不住的,所以在这里自己记录下,便于自己查询。1. 程序启动图标:LDPI (Low Density Screen,120 DPI),其图标大小为 36 x 36 px。(240*320 1dp=1sp=0.75px)MDPI (Medium Density Screen, 160 DP原创 2017-01-18 20:40:09 · 1273 阅读 · 0 评论 -
Android工程师常用技能—APK反编译
概述: 很多的时候,当我们羡慕别人app的动效绚丽,素材优秀的时候,我们也想去用,怎么办?这个时候apk反编译将会成为我们可以利用的工具。准备工作: 下载工具:1、 apktool:http://download.csdn.net/detail/vipzjyno1/7025111(借用别人的上传地址)2、 dex2jar:ht原创 2017-02-09 17:07:15 · 442 阅读 · 0 评论 -
Android实现pdf在线预览或本地预览
最近项目中需要使用在线预览pdf,并要能实现自动播放,我想这样的需求无论如何来说都是很操蛋的由于本人水平有限,最后讨论将项目需求改成将pdf下载到本地再实现自动播放。接下来总结下目前能够实现pdf阅读的方案,开发当中需要根据实际需求去选择相应的方案。1.使用Google doc支持来展示word,excel,pdf,txt(WebView方式在线预览):WebVie原创 2016-12-07 14:43:34 · 24174 阅读 · 3 评论 -
Android常用异常及解决方案
Android常用异常及解决方案1、什么是异常? 异常是指在程序运行中所出现的错误,这些错误会干扰到指令的正常执行,从而造成程序异常退出,这些异常出现的场景比如有:文件找不到,网络连接失败,非法参数等.2、异常来源 就Java语言来说,所有的异常都继承自Throwable3、Android常见异常分类1-编译时错误(eg:ClassNotFoundException/layo原创 2017-08-31 21:56:55 · 709 阅读 · 0 评论