近日,我们的应用,在编译的时候不幸的遇到这个错误 Conversion to Dalvik format failed: Unable to execute dex: method ID not in [0, 0xffff]: 65536 这才让我意识到原来我们的程序中,方法数已…
已经使用 Android Studio 进行开发超过一年,随着项目的增大,依赖库的增多,构建速度越来越慢,现在最慢要 6 分钟才能 build 一个 release 的安装包,在网上查找资料,发现可以通过一些配置可以加快速度,这里跟大家分享一下。 开启 gradle 单独的守护进…
从 java 5.0 开始,为我们提供注解功能,通过注解可以限制代码的重载,过时,以及实现一些其他功能,这里,就来分析一下 java 的注解。 java 元注解 首先来看 java 元注解,分别是: @Target @Retention @Documented @Inherite…
视图动画(View Animation), 又称补间动画(Tween Animation), 即给出两个关键帧,通过一些算法将给定属性值在给定的时间内在两个关键帧间渐变。本文首先讲解各种基本动画的使用,其实介绍 View 动画的工作过程。 概述 视图动画只能作用于 View 对象…
动画可以在视觉上增加程序的流畅度,我之前对于动画这一块,是会用,但是不全面,这里写下博客,全面梳理一下 Android 动画方面的知识。当然,关于动画这块,也有很多前人写了很多内容,大家可以去参考。 3.0 以前,android 支持两种动画模式,Tween Animation,…
前言 前面介绍了怎样去反编译别人的代码。哈哈,这里居然又写进行防止反编译。但是,还是先来写写吧。 使用 ProGuard proguard android 的 sdk 中就有提供,使用它可以对代码进行混淆和精简,处理后的代码,虽然仍然可以反编译,但是阅读起来相当困难,降低代码的可…
前言 前面我们有说过 android 反编译的工具,如何进行反编译。反编译后可以得到 jar 或者得到 smali 文件。Android 采用的是 java 语言进行开发,但是 Android 系统有自己的虚拟机 Dalvik, 代码编译最终不是采用的 java 的 class,…
前言 开发过程中有些时候会遇到一些功能,自己不知道该怎么做,然而别的软件里面已经有了,这个时候可以采用反编译的方式,解开其他的程序,来了解一些它的做法,同时啊,还可以借鉴别人的软件结构,资源文件,等等,哈哈。那我就来讲解一些关于反编译相关的知识,主要分三篇,第一篇介绍反编译的工具…
14 年总结 又一年开始,网上也流散着许多的年终总结,往年我也会写写,都是流水的回忆。前两日,与小波电话聊天,突然想到问他一四年用三个词总结是什么?得到的是失恋,毕业,工作。让我说说 2014 的三个词,竟然一时无从说起。这两日一直思考这个问题,毕竟这一年过的比较平淡。用三个关键…
鄙人程序猿一枚,Android 开发,常年使用 Ubuntu(主要是买不起 Mac,O(∩_∩)O 哈哈~)。分享一下自己使用的那些软件,如果你有什么好的软件。欢迎与我交流。 输入法:开始的时候是用的 fcitx,后来搜狗出了 linux 版本,选择之。下载链接 办公软件:WPS…
我们的常用的系统中,程序的工作通常是有事件驱动和消息驱动两种方式,在 Android 系统中,Java 应用程序是靠消息驱动来工作的。 消息驱动的原理就是: 1. 有一个消息队列,可以往这个队列中投递消息; 2. 有一个消息循环,不断从消息队列中取出消息,然后进行处理。 在 An…
Android 中经常会有一些操作比如网络请求,文件读写,数据库操作,比较耗时,我们需要将其放在非 UI 线程去处理,此时,我们需要处理任务前后 UI 的变化和交互。我们需要通过类似 js 中异步请求处理,这里总结我所了解到的,方便自己记忆,也方便别人的浏览。 AsyncTask…
好久之前便听朋友说起 Sublime Text 这款软件很好用,终于这几天有空折腾,把软件给装起来了。用起来确实很不错,写代码很爽。 但是用了一段时间之后,我需要输入中文了,无论怎么切换输入法,都无法切换到中文。 网上搜索了一下,原来这是 Bug。找解决方法吧。下面介绍我的解决方…
项目需要,开发中需要加载图片,自己要写图片从网上下载的方法,还要写缓存,等等。 在网上找到一个开源项目,smartImageVIew,支持从 URL 和通讯录中获取图像,可以替代 Android 标准的 ImageView。 特征: 根据 URL 地址装载图像; 支持装载通讯录中…
面试中遇到,但是不会,回来 google 到,分享下吧,据说是老掉牙的问题 HashMap 是 Hashtable 的轻量级实现(非线程安全的实现),他们都完成了 Map 接口,主要区别在于 HashMap 允许空(null)键值(key), 由于非线程安全,效率上可能高于 Ha…
前几天去一个公司参加面试遇到这个问题,Java 中 Collection 和 Collections 的区别,当时不会,回来从网上找到,现在记录一下。 1、java.util.Collection 是一个 集合接口。它提供了对集合对象进行基本操作的通用接口方法。Collectio…
今天在新浪 sae 上搭建了个人博客,新浪 sae 采用 svn 的方式进行代码管理,之前在 windows 下面做 svn 操作都是采用 TortoiseSVN,今天正好开机到了 linux 下面,那么好吧,就用 svn 传我的 wordpress 到 sae 中去。 首先,安…