Android应用使用自定义字体的一些探究

最近团队里面在做程序界面统一的工作,因此希望统一字体,接到一个研究怎么自定义字体的任务。因为我们的开发模式,所以需要研究在界面内的字体自定义,以及webview的显示中的字体自定义。 继续阅读Android应用使用自定义字体的一些探究

图片贴纸旋转缩放功能的实现

我们的项目包含图片编辑功能,特别是包含图片添加水印贴纸的功能,从最初的简单版可以添加一个图片并且移动位置,到现在添加的图片可以进行移动,以及缩放,旋转,已经是和其他的图片处理可以达到一样的很好的效果了。一直想要整理一下,分享一下实现的改进过程,一直没空,也由于我过于懒,没有动笔。今天正好有时间,分享一下。 继续阅读图片贴纸旋转缩放功能的实现

打破Android应用65K方法数魔咒

近日,我们的应用,在编译的时候不幸的遇到这个错误

Conversion to Dalvik format failed: Unable to execute dex: method ID not in [0, 0xffff]: 65536

这才让我意识到原来我们的程序中,方法数已经超过了65536。在之前,已经知道了android系统的java虚拟机dalvik在执行java程序时,使用原生类型short来索引dex文件中的方法,因此方法数就呗限制在65536了。之前我一直以为,这个数量已经很大了,不会达到上限,结果今天就达到了。 继续阅读打破Android应用65K方法数魔咒

加速Android Studio/Gradle构建

已经使用Android Studio进行开发超过一年,随着项目的增大,依赖库的增多,构建速度越来越慢,现在最慢要6分钟才能build一个release的安装包,在网上查找资料,发现可以通过一些配置可以加快速度,这里跟大家分享一下。 继续阅读加速Android Studio/Gradle构建

android反编译-smali语法

前言

前面我们有说过android反编译的工具,如何进行反编译。反编译后可以得到jar或者得到smali文件。Android采用的是java语言进行开发,但是Android系统有自己的虚拟机Dalvik,代码编译最终不是采用的java的class,而是使用的smali。我们反编译得到的代码,jar的话可能很多地方无法正确的解释出来,如果我们反编译的是smali则可以正确的理解程序的意思。因此,我们有必要熟悉smali语法。 继续阅读android反编译-smali语法

android反编译-反编译工具和方法

前言

开发过程中有些时候会遇到一些功能,自己不知道该怎么做,然而别的软件里面已经有了,这个时候可以采用反编译的方式,解开其他的程序,来了解一些它的做法,同时啊,还可以借鉴别人的软件结构,资源文件,等等,哈哈。那我就来讲解一些关于反编译相关的知识,主要分三篇,第一篇介绍反编译的工具和方法,第二篇,介绍smali的语法,第三篇介绍如何防止反编译,主要通过这几篇文章,了解如何去做反编译和代码加固。 继续阅读android反编译-反编译工具和方法