【 Android 】
文章平均质量分 92
王永迪
IT界的草民,喜欢技术分享~
展开
-
浅谈 JVM 内存结构及 GC 机制
前言JAVA GC(Garbage Collection,垃圾回收)机制是区别C++的一个重要特征,C++需要开发者自己实现垃圾回收的逻辑,而JAVA开发者则只需要专注于业务开发,因为垃圾回收这件繁琐的事情JVM已经为我们代劳了,从这一点上来说,JAVA还是要做的比较完善一些。但这并不意味着我们不用去理解GC机制的原理,因为如果不了解其原理,可能会引发内存泄漏、频繁GC导致应用卡顿,甚至出现OO...原创 2019-05-29 21:51:42 · 318 阅读 · 0 评论 -
Android原理揭秘之APk生成过程
apk这个字眼大家肯定在清楚不过了,可是好多的程序员确仅仅知道使用或者说知道这个的表面含义,但是我们不能只会吃面包,确不去了解面包是如何生产出来的,我还是建议大家还是多多了解下apk的生成过程以及apk、dex、jar、class、R文件,这些个貌似简单却都有些深意的名词~原创 2016-06-07 16:40:14 · 13617 阅读 · 5 评论 -
Android揭秘之枚举类最佳实践
Android上面的枚举类,可以写成这么优雅,您在使用么~原创 2016-04-18 17:31:00 · 2827 阅读 · 1 评论 -
Weex Android SDK源码分析之Module(navigator)
之前已经介绍了module中的model,本篇博文介绍Weex Moudle中的navigator使用与源码分析。原创 2016-06-18 16:49:46 · 11019 阅读 · 0 评论 -
Weex Android SDK源码分析之Module(webview)
我才知道weex module中还包括个webview,那就介绍下webview吧,是一个web操作相关的api~原创 2016-06-18 18:15:06 · 5828 阅读 · 2 评论 -
Android 技术揭秘之代码混淆
由于最近使用studio开发的比例大大加重,这次就聊聊studio吧~原创 2015-12-10 09:26:09 · 3524 阅读 · 2 评论 -
Android 技术揭秘之反编译apk
这段时间在学Android应用开发,在想既然是用Java开发的应该很好反编译从而得到源代码吧,google了一下,确实很简单,以下是我的实践过程。在此郑重声明,贴出来的目的不是为了去破解人家的软件,完全是一种学习的态度,不过好像通过这种方式也可以去汉化一些外国软件。本文Android反编译教程,测试环境:Win7 Ultimate x64反编译工原创 2016-01-15 15:12:10 · 5858 阅读 · 1 评论 -
Weex Android SDK源码分析之界面渲染(上)
首先感谢阿里巴巴团队对移动端跨三端与动态化做出的杰出贡献,阿里在6月初,彻底开放了weex android与ios端内测,最近已使用一周有余,效果果然达到了learn once,write everywhere!而且运行效果可以与原声媲美,并且virtual dom的加入更加优化了性能问题,切对native扩展等提供了很好的预留,目前可以采用组件形式与全页形式进行集成,接下来我给大家介绍下weex在android端的工作原理及代码分析。原创 2016-06-18 14:23:23 · 21550 阅读 · 3 评论 -
Android性能优化之SparseArray与ArrayMap
如果您是一个Android开发工程师,且你想成为一个更优秀的Android开发工程师,那么你来看看在Android上面是如和替代HashMap的把~原创 2016-04-01 12:39:11 · 5605 阅读 · 0 评论 -
Android重启app功能实现
今天在做一个热修复的功能,发现有时需要重启app后修复代码才能生效,所以简单调查了下重启的方案,进而分享给大家~原创 2016-06-03 17:08:16 · 10840 阅读 · 0 评论 -
Android 发布开源项目到jcenter
相信现在android程序猿们大多都使用了studio进行开发,想必大家对于compile 'com.android.support:appcompat-v7:23.3.0'这种方式引入开源项目肯定不陌生,那么大家有没有自己发布开源项目让别人来引用的想法呢?猜也猜得到,大家都想,那么下面我与大家分享一下自己的上传方法,很是简单哦~原创 2016-06-03 18:24:04 · 11349 阅读 · 4 评论 -
Weex Android SDK源码分析之界面渲染(下)
前言在你读本篇文章之前请确认您已经阅读 Weex Android SDK源码分析之界面渲染(上),否则建议您想阅读上篇文章有利于您更深刻的了解~原创 2016-06-25 18:48:25 · 6172 阅读 · 0 评论 -
Android自动获取短信验证码
自动获取验证码原创 2016-06-18 16:24:39 · 11289 阅读 · 0 评论 -
Android技术揭秘之activity堆栈管理
activity堆栈管理封装~原创 2016-06-19 12:44:55 · 1536 阅读 · 1 评论 -
Handler的正确使用,软引用封装
package com.xiaobai.mizar.utils;import android.os.Handler;import android.os.Message;import com.base.platform.utils.android.Logger;import java.lang.ref.WeakReference;/** * Author: walid * Date原创 2015-10-29 20:12:36 · 4063 阅读 · 1 评论 -
RxJava进阶一(创建类操作符)
前面已经对RxJava原理进行介绍,相信大家对于RXJava已经有了初步的认识,但是在具体使用方面还有些懵懂,从这篇开始详细介绍下RxJava的具体使用,首先介绍下RXJava的创建操作符~原创 2016-09-14 18:17:40 · 2011 阅读 · 1 评论 -
Android 代码规范
Android 开发代码规范原创 2016-08-10 00:45:03 · 2793 阅读 · 3 评论 -
【Android】Xposed 框架解析
Xposed框架是一款可以在不修改APK的情况下影响程序运行(修改系统)的框架服务,基于它可以制作出许多功能强大的模块,且在功能不冲突的情况下同时运作原创 2016-10-30 23:29:43 · 3173 阅读 · 1 评论 -
基于Small及Weex的定制化APP方案
small是android与iOS平台比较出名的轻巧的跨平台插件化框架,也正是被这一点吸引,决定将small应用到集团内部的应用引擎模块化方案中,本篇博文主要讲述本人基于small在android平台实现的动态插件组合、自动打包框架~原创 2017-03-11 14:19:20 · 2034 阅读 · 0 评论 -
Android Studio 打包 jar 及 aar 包
Android Studio 打包 jar 及 aar 包创建工程打包模块执行命令导入依赖结语Android Studio 打包 jar 及 aar 包创建工程New -> Module -> Library在gradle文件头添加 apply plugin: ‘com.android.library’打包模块在库工程的 bu...原创 2018-06-29 00:10:27 · 528 阅读 · 0 评论 -
Android 开发基于 Jenkins 实现持续集成
Jenkins简介Jenkins是一个开源项目,提供了一种易于使用的持续集成系统,使开发者从繁杂的集成中解脱出来,专注于更为重要的业务逻辑实现上。同时Jenkins能实现监控集成中存在的错误,提供详细的日志文件和提醒功能,还能用图表的形式形象地展示项目构建的趋势和稳定性。Jenkins的前身是Hudson,是一个可扩展的持续集成引擎。Jenkins安装与配置下载地址http://mirro...原创 2019-03-01 11:35:13 · 561 阅读 · 0 评论 -
Android 搭建私有maven仓库及上传项目
搭建私有maven仓库及上传项目前言Nexus 介绍搭建私有Nexus仓库下载 Nexus 安装包解压 Nexus 文件Android Lib 发布私有仓库项目配置上传 library使用 library结语前言在日常工作及项目迭代过程中,一定有不少同学自己写了一些框架性的东西,或者一些好用的工具,总之就是能复用的代码。然而也有不少同学为了复用这些代码不得不复制粘贴到不同项目中,这样相同的功能...原创 2019-02-26 18:20:09 · 2160 阅读 · 1 评论 -
RxRetrofit 网络框架解析
网络请求在项目开发中必不可少,封装的好坏很大程度上影响的项目质量,本篇博文 草民-walid 与大家分享一下本人的愚见与rxretrofit框架讲解~原创 2016-10-21 14:39:56 · 3342 阅读 · 11 评论 -
Android原理揭秘之NavigationBar、StatusBar
前言本人在集成weex时偶然遇到了问题,在魅族手机与华为手机上面UI显示存在问题,部分android手机可以,究其根本原因是因为有可恨的NavigationBar在其中作祟,这让我尴尬至极喽,必须将这种可恨的BUG扼杀掉~原创 2016-06-22 13:52:49 · 4321 阅读 · 0 评论 -
Weex Android SDK源码分析之Module(modal)
前言 当您来阅读这篇文章时,代表您已经是weex粉丝了,我说的对吗?(-_-) 可是您只会使用可不行,本篇博文介绍Weex Moudle中的model 使用与源码分析。原创 2016-06-18 16:10:13 · 13977 阅读 · 0 评论 -
RxJava 基础
前言终究没有经受住RxJava的诱惑,只恨自己来的比较晚,走起~原创 2016-09-03 22:47:30 · 1394 阅读 · 1 评论 -
【Android】 NDK开发基础
本人是c与c++界的菜鸟,在开发android过程中,感觉到ndk开发越来越重要,故而也来ndk界凑个热闹,希望此类博文对android开发者起到一丢丢的作用~原创 2016-09-19 16:14:54 · 1465 阅读 · 0 评论 -
Retrofit 2.0 官方文档
Retrofit来自移动支付公司square公司的作品,开源世界top5的最小公司,首先我自己是一个忠实广场粉,okhttp、picasso、greendao、okio等等~ 据Square CTO Bob Lee的说法,Square已经将超过60个项目提交到开源社区,贡献了25万行左右的代码。原创 2016-09-03 09:43:47 · 5242 阅读 · 0 评论 -
RxJava进阶三(过滤类操作符)
RxJava进阶一(创建类操作符) RxJava进阶二(转换类操作符) RxJava进阶三(过滤类操作符) RxJava进阶四(组合类操作符)前言上篇文章我们了解了RXJava的转换类操作符,本篇文章带着大家熟悉一下RxJava的过滤类操作符,本系列文章仅是带大家认识一下这些操作符的用法,并没有对操作符进行多种形态的使用,具体的还需要大家在使用时注意~操作符总览Debounce、Distin原创 2016-10-07 12:21:53 · 907 阅读 · 0 评论 -
RxJava进阶二(转换类操作符)
前面我们了解了RXJava的创建类操作符,这篇文章带着大家熟悉一下RxJava的转换类操作符,本系列文章仅是带大家认识一下这些操作符的用法,并没有对操作符进行多种形态的使用,具体的还要大家在使用时注意~原创 2016-09-25 13:27:32 · 3092 阅读 · 0 评论 -
RxJava进阶四(组合类操作符)
本篇文章带着大家熟悉一下RxJava的组合类操作符,本系列文章仅是带大家认识一下这些操作符的用法,并没有对操作符进行多种形态的使用,具体的还需要大家在使用时注意~原创 2016-10-08 19:02:20 · 1574 阅读 · 2 评论 -
ViewPager页面滑动Fragment销毁问题
1、使用场景ViewPager+Fragment实现界面切换,界面数量>=32、Fragment生命周期以及与Activity生命周期对比 3、问题描述按上图所说,只有当Fragment所Attached的Activity执行destroy的时候才会调用onDestoryView方法,然而现实是:原创 2015-11-09 21:51:02 · 5486 阅读 · 1 评论 -
内存泄露检测工具LeakCanary
LeakCanaryAndroid 和 Java 内存泄露检测。“A small leak will sink a great ship.” - Benjamin Franklin千里之堤, 毁于蚁穴。 -- 《韩非子·喻老》demo一个非常简单的 LeakCanary demo: https://github.com原创 2016-01-06 18:24:32 · 1710 阅读 · 0 评论 -
Android Fragment与activity交互方式
一共总结了三种方式: 一、handler:首先我们来介绍使用Handler来实现Fragment与Activity 的交互。第一步,我们需要在Activity中定义一个方法用来设置Handler对象。public void setHandler(Handler handler) {mHandler = handler;}第二步,在Fragment中的回调函数onAtta原创 2016-01-07 11:16:53 · 930 阅读 · 0 评论 -
GO语言环境搭建 + Sublime text 3 + Git + MarGo + gocode 组合配置详解
1.window下安装gogoogle有提供win安装包,对于新手还是非常简单的!https://code.google.com/p/go/downloads/list;环境变量已经配置好我们只需要配置一个GOPATH目录就可以了,建议在非C盘创建;目录格式为:2.设置GOPATH,3.准备工作完成之后,开始搭建Sublime Text开发go语言的环境。原创 2015-09-20 10:36:13 · 2664 阅读 · 0 评论 -
Android最新控件FlexboxLayout
最近Google开源了一个项目叫「FlexboxLayout」,但是貌似没多少资料对这个项目介绍的,那么今天来讲讲这个项目的作用以及简单的使用介绍。1什么是 Flexbox简单来说 Flexbox 是属于web前端领域CSS的一种布局方案,是2009年W3C提出了一种新的布局方案,可以简便、完整、响应式地实现各种页面布局,并且 React Native 也是使用的 Flex 布局。你可以简单的原创 2016-05-31 16:26:12 · 5882 阅读 · 1 评论 -
Android View onDraw 不执行
在ViewGroup中ondraw总是不执行,或者说不被调用.原因:if a ViewGroup background is null ,the funtion "ondraw" will not be call., but the "dispatchDraw" always will be call.结论出处:onDraw(...) in LinearLayoutParameters:原创 2016-03-23 11:32:09 · 3047 阅读 · 1 评论 -
浅谈Android性能优化方案
经过前一阶段的调查,大概对性能优化已经有了初步的解决方案: 先给大家介绍一下性能优化指标以及部分方案: 一、性能优化六项指标: 性能、内存、稳定性、流量、电量、安装包大小; 二、背景 ---- Android程序卡顿产生原因: 1、Android系统低效原创 2016-01-06 19:06:55 · 5191 阅读 · 2 评论 -
浅谈Android界面绘制避免重复渲染
当你在Application中创建复杂的布局时,页面的渲染过程也变得更加缓慢。此时,我们需要利用 标签(避免重复渲染)和 ViewStub类(延迟加载)来优化我们的页面。(原文地址:http://blog.csdn.net/vector_yi/article/details/24402101)一、利用标签来避免重复渲染当我们需要为App中的每个View都添加一个head原创 2015-12-08 14:56:02 · 1504 阅读 · 0 评论 -
浅谈一个Android程序员需要具备的素养
假如要Google Play上做一个最失败的案例,那最好的秘诀就是界面奇慢无比、耗电、耗内存。接下来就会得到用户的消极评论,最后名声也就臭了。即使你的应用设计精良、创意无限也没用。耗电或者内存占用等影响产品效率的每一个问题都会影响App的成功。这就是为什么在开发中确保最优化、运行流畅而且不会使Android系统出问题 是至关重要的了。这里不需要讨论高效编程,因为我们不会关心你写的代码是否能原创 2015-12-08 15:04:55 · 1005 阅读 · 0 评论