关闭

Android约束布局ConstraintLayout 项目实战攻略

前言ConstraintLayout即约束布局, 在2016年由Google I/O推出. 从支持力度而言, 将成为主流布局样式, 完全代替其他布局, 减少布局的层级, 优化渲染性能. 且自AS2.3起创建新的Activity,默认的layout根布局就是ConstraintLayout。说实话这篇文章写的算是比较晚了,距离ConstraintLayout出现至今已经有一年了,所以再不学习就真的晚了...
阅读(36) 评论(0)

Android中常见的内存泄漏问题及解决办法

在android开发中,内存泄漏是比较常见的问题,但为什么会出现内存泄漏呢?当一个对象已经不需要再使用了,本该被回收时,而另外一个正在使用的对象持有它的引用从而导致它不能被回收,这就导致本该被回收的对象不能被回收而停留在堆内存中,内存泄漏就产生了。 内存泄漏有什么影响呢?它是造成应用程序OOM的主要原因之一。由于android系统为每个应用程序分配的内存有限,当一个应用中产生的内存泄漏...
阅读(68) 评论(0)

Android中WebView与HTML+Javascript的交互

在现在的Android开发中,很多的商业项目特别是电商项目使用了Android原生控件与WebView进行混合开发,当然不仅仅就是显示一个WebView那么简单,有时候还需要本地Java代码与HTML中的Javascript进行交互,这篇博客给大家介绍下如何实现Android与HTML+JS的交互。效果图:1、Android 调用HTML中的javascript脚本实现Android调用JS脚本是非...
阅读(91) 评论(0)

众里寻它千百度——ButterKnife源码完全解析

一、概述 在很久很久之前,自从朋友推荐我用butterknife后, 从此的项目再也离不开butterknife了。问butterknife的原理,估计很多人都会回答注解加反射。我一开始也是以为是注解加反射,然而看了源码之后发现不是用的注解加反射。那么下面我们就来分析一下ButterKnife的实现原理吧。本文基于ButterKnife8.6.0. 二、ButterKnife用法 做andr...
阅读(512) 评论(2)

深入理解Java虚拟机——JVM性能优化

一、性能监控当开发或运行一个Java应用的时候,对JVM的性能进行监控是很重要的。配置JVM不是一次配置就万事大吉的,特别是你要应对的是Java服务器应用的情况。你必须持续的检查堆内存和非堆内存的分配和使用情况,线程数的创建情况和内存中加载的类的数据情况等。这些都是核心参数。使用Anturis控制台,你可以为任何的硬件组件上运行的JVM配置监控(例如,在一台电脑上运行的一个Tomcat网页服务器)。...
阅读(413) 评论(2)

深入理解Java虚拟机——JVM类加载机制(类加载过程和类加载器)

一、什么是类加载机制?虚拟机把描述类的数据从Class文件加载到内存,并对数据进行校验、转换解析和初始化,最终形成可以被虚拟机直接使用的Java类型,这就是虚拟机的类加载机制。二、类加载的时机类从被加载到虚拟机内存中开始,到卸载出内存为止,它的整个生命周期包括:加载(Loading)、验证(Verification)、准(Preparation)、解析(Resolution)、初始化(Initial...
阅读(528) 评论(0)

深入理解Java虚拟机——JVM、DVM(dalvik)和ART之间的区别

一、Dalvik介绍Dalvik VM是Android平台的核心组成部分之一,它的名字来源于冰岛一个名为Dalvik的小渔村。Dalvik VM并不是一个Java虚拟机,它没有遵循Java虚拟机规范,不能直接执行Java的Class文件,使用的是寄存器架构而不是JVM中常见的栈架构。但是它与Java又有着千丝万缕的联系,它执行的dex(Dalvik Executable)文件可以通过Class文件转...
阅读(403) 评论(0)

深入理解Java虚拟机——JVM的内存结构和内存分配策略

一、JVM内存模型Java虚拟机在执行Java程序的过程中会把它所管理的内存划分为若干个不同的数据区域。这些区域都有各自的用途,以及创建和销毁的时间,有的区域随着虚拟机进程的启动而存在,有些区域则依赖用户线程的启动和结束而建立和销毁。根据《Java虚拟机规范(JavaSE 7版)》的规定,Java虚拟机所管理的内存将会包括以下几个运行时数据区域:1、程序计数器程序计数器(Program Counte...
阅读(279) 评论(0)

深入理解Java虚拟机——JVM垃圾回收机制和垃圾收集器详解

一:概述说起垃圾回收(Garbage Collection,GC),很多人就会自然而然地把它和Java联系起来。在Java中,程序员不需要去关心内存动态分配和垃圾回收的问题,顾名思义,垃圾回收就是释放垃圾占用的空间,这一切都交给了JVM来处理。本文主要解答三个问题:1、哪些内存需要回收?(哪些对象可以被看做是”垃圾“) 2、如何回收?(常用的垃圾回收算法) 3、使用什么工具回收?(垃圾收集器)二...
阅读(1557) 评论(3)

5个技巧帮你适配Android N多窗口特性

英文原文:5 tips for preparing for Multi-Window in Android N 作者:Ian Lake, Google Android framework开发工程师如果你曾经发掘到 What’s New in Android N 这个视频,你可能会偶然发现多窗口支持。当使用多画面多窗口,并排的看到并使用两个应用程序,我很兴奋地马上查阅整个文档,寻找新的api,想知道...
阅读(334) 评论(0)
43条 共5页1 2 3 4 5 ... 下一页 尾页
    个人资料
    • 访问:26562次
    • 积分:1074
    • 等级:
    • 排名:千里之外
    • 原创:42篇
    • 转载:0篇
    • 译文:1篇
    • 评论:29条
    博客专栏
    最新评论