
android
平头哥的世界
这个作者很懒,什么都没留下…
展开
-
JVM、DVM、ANDROID RUN TIME(ART)的区别(简易篇)
1、什么是JVM?JVM本质上就是一个软件,是计算机硬件的一层软件抽象,在这之上才能够运行Java程序,JAVA在编译后会生成类似于汇编语言的JVM字节码,与C语言编译后产生的汇编语言不同的是,C编译成的汇编语言会直接在硬件上跑,但JAVA编译后生成的字节码是在JVM上跑,需要由JVM把字节码翻译成机器指令,才能使JAVA程序跑起来。JVM运行在操作系统上,屏蔽了底层实现的差异,从而有了J...原创 2018-10-25 16:36:59 · 201 阅读 · 0 评论 -
Bitmap的优化策略
思路: 1、BitmapConfig的配置 2、使用decodeFile、decodeResource、decodeStream进行解析Bitmap时,配置inDensity和inTargetDensity,两者应该相等,值可以等于屏幕像素密度*0.75f 3、使用inJustDecodeBounds预判断Bitmap的大小及使用inSampleSize进行压缩 4、对Densit...原创 2018-10-26 09:45:30 · 197 阅读 · 0 评论 -
SVG向前兼容问题
android 5.0 提供了很多特性,矢量动画就是其中之一,但是对于5.0之前的版本需要做兼容,否则会crash。首先,需要在gradle 中加上:compile'com.android.support:support-vector-drawable:25.0.1'defaultConfig{ vectorDrawables.useSupportLibrary=true}Ac...原创 2018-10-26 09:46:53 · 504 阅读 · 0 评论 -
Picasso 、Glide、Fresco图片加载框架比较
Picasso 发布时间:2013年5月是否支持gif:false是否支持webPtrue:ture加载速度:中开发者 :Square主导max java heap:6.8MBmax native heap:18.2MB缓存:无”本地缓存,不是说没有本地缓存,而是 Picasso 自己没有实现,交给了 Square 的另外一个网络库 okhttp 去实现,这样的...原创 2018-10-26 09:47:09 · 490 阅读 · 0 评论 -
手写Fragment万能通信框架
android自3.0之后引入fragment之后,在开发项目的应用中,非常广泛,尤其是大项目。fragment相对activity,最大的好处就是轻,可以减少性能消耗,可扩展性也大大的增强。然后,它毕竟是依附于activity,那么,就不得不于activity互相通信。接下来,我简单的列举一下常用fragment通信的方式以及优势和缺点。1、handler优点:可以使用,代码简单。缺...原创 2018-10-26 09:47:52 · 226 阅读 · 0 评论 -
手写RecyclerView万能适配器
适配器,大家都知道,不多说,直接上代码:package com.cn.happiness.mvplib.baseadpter;import android.content.Context;import android.support.v7.widget.RecyclerView;import android.view.LayoutInflater;import android....原创 2018-10-26 09:49:16 · 354 阅读 · 0 评论 -
Volley源码介绍最全的一篇
1. 功能介绍1.1. VolleyVolley 是 Google 推出的 Android 异步网络请求框架和图片加载框架。在 Google I/O 2013 大会上发布。名字由来:a burst or emission of many things or a large amount at once发布演讲时候的配图从名字由来和配图中无数急促的火箭可以看出 Volley ...翻译 2018-10-26 09:48:52 · 189 阅读 · 0 评论 -
android 扫描枪的坑
扫描枪蓝牙连接或者断开的时候,会导致当前所在的activity onDestroy -> onCreate即activity被销毁又重建,类似屏幕旋转导致activity重建解决办法: 在xml中配置:android:configChanges="orientation|keyboard|keyboardHidden"然后在activity中重写onConfigurationC...原创 2018-10-27 09:58:27 · 2081 阅读 · 0 评论 -
Android studio 生成签名问题
问题现象:发布一个签名之后的应用。在模拟器和android 7.0真机运行没有问题,但是在android 5.0、5.1上面就是一直报错: image.png没错,就是INSTALL_FAILED_UPDATE_INCOMPATIBLE ,不兼容!!!问题定位:INSTALL_FAILED_UPDATE_INCOMPATIBLE 问题无非以下几个方面定位:1、SDK的使用版...原创 2018-10-27 09:58:54 · 707 阅读 · 0 评论 -
Asynctask踩坑
原文地址:http://blog.youkuaiyun.com/zj510/article/details/51622597AsyncTask作为一个优秀的封装,很多人都在用,可是我估计很多人并不清楚多个AsyncTask对象到底是串行执行的,还是并行执行的,如果是并行的,那么最多同时执行几个异步任务呢?源码面前无秘密,我们看一下源代码就知道了。这里以Android-23为例。 AyncT...转载 2018-10-27 09:59:21 · 219 阅读 · 0 评论 -
android 实现只运行白名单应用
项目需求,要求本公司自己的外发设备必须只能用指定授权的白名单的应用。一开始,我是有抵触的,认为是黑科技。没办法,工作还是要认真做的。责任所在。于是,先确认思路。想到了几个方案:1、首先,想到的是,fullscreen activity+通过事件拦截,即,activity中的点击事件。2、广播+服务,广播Intent.ACTION_CLOSE_SYSTEM_DIALOGS 可以监听到Ho...原创 2018-10-27 09:59:34 · 3722 阅读 · 0 评论 -
android屏幕适配布局和字体
屏幕适配的这个问题到现在对于每个android开发人员来说,可能都是小菜一碟了,可三年前不这样,五花八门,简直八仙过海,各显神通。首先,由于android 的碎片化结构,我们目前知道的市面上仅针对手机或者平板的屏幕有以下几种:480x800 ,720x1280,1080x1920,1440x2560以及800x1280,1200x1920,2650x1800,2650x1600.......原创 2018-10-27 10:00:28 · 732 阅读 · 0 评论 -
Android drawable和mipmap到底怎么用?
Android引入了mipmap drawables,为设计启动器图标提供了更多的灵活性。Mipmap首次在Android Jelly Beans 4.3中引入。如果您正在为不同密度构建不同版本的应用程序,则应该了解mipmap资源目录。这与正常的可绘制文件夹资源完全相同,只是它在创建不同目标应用时不参与密度剥离而资源优化。我们把我们的mipmap可绘制放在res /文件夹下的mipmap /...原创 2018-10-27 10:00:40 · 3046 阅读 · 0 评论 -
浅谈 Android 中的热修复、插件化、模块化开发的区别
随着移动应用(app)业务的扩展,原来传统的开发模式渐渐的无法满足现实需求,因此暴露出诸多问题,如65535问题、anroid stduio编译过慢的问题、应用修复成本过高等等..在2015年,终于爆发一场热修复的技术革命,各大公司分别推出解决方案:以阿里的andfix、腾讯的tinker、360的droidplugin为代表纷纷入场,当然,他们的出发点都是针对自己旗下的产品而设计,因此,也是各...原创 2018-10-26 09:46:42 · 761 阅读 · 0 评论 -
Serializable 和Parcelable区别
Serializable的作用是为了保存对象的属性到本地文件、数据库、网络流、rmi以方便数据传输,当然这种传输可以是程序内的也可以是两个程序间的。而Android的Parcelable的设计初衷是因为Serializable效率过慢,为了在程序内不同组件间以及不同android程序间(AIDL)高效的传输数据而设计,这些数据仅在内存中存在,Parcelable是通过IBinder通信的消息的载体...原创 2018-10-25 16:40:42 · 135 阅读 · 0 评论 -
SVG(SVG概述、SVG图片使用、SVG动画使用实例
1、SVG概述SVG(Scalable Vector Graphics) : 可缩放矢量图形,使用 XML 格式定义图像。优势:SVG是矢量图形文件,无限放大不失真。可以用CSS样式来自由定义图标颜色,比如颜色/尺寸等效果。所有的SVG可以全部在一个文件中,节省HTTP请求 。使用SMIL、CSS或者是javascript可以制作充满灵性的交互动画和滤镜效果。由于SVG...原创 2018-10-27 10:04:24 · 2578 阅读 · 0 评论