简介
在linuxt系统下使用OpenCV2.3 + NDK R6编译 OpenCV人脸检测应用
more
准备
Android NDK ( r5或更高版本)
下载地址:http://developer.android.com/sdk/ndk/index.html
OpenCV Android包
http://sourceforge.net/projects/opencvlibrary/files/opencv-android/2.3/
cmake(可选,替代NDK)
参考:http://www.cmake.org/
继续阅读 »
编译Android源代码
本文介绍的是如何在linux环境下获取、编译源代码,并在编译之后运行。使用的操作系统为Ubuntu11.04
more
获取源代码
Android源代码仓库是分布式的,叫做git,所以在获取代码之前先安装git。git与常用的svn,cvs不一样,但不必担心,android为了简化操作,使用python脚本语言写了一个简化程序叫做curl。只需要按以下步骤一步一步操作就行了。
继续阅读 »
我们的常用的系统中,程序的工作通常是有事件驱动和消息驱动两种方式,在Android系统中,Java应用程序是靠消息驱动来工作的。
消息驱动的原理就是:
1. 有一个消息队列,可以往这个队列中投递消息;
2. 有一个消息循环,不断从消息队列中取出消息,然后进行处理。
在Android中通过Looper来封装消息循环,同时在其中封装了一个消息队列MessageQueue。
另外Android给我们提供了一个封装类,来执行消息的投递,消息的处理,即Handler。
more
在我们的线程中实现消息循环时,需要创建Looper,如:
cla
继续阅读 »
新项目中,使用了Google I/O 2013发布的新工具,使用Gradle构建android项目,并且在新版的Intellig IDEA以及google的Android Studio对其支持。本文就介绍一下怎么使用gradle构建android项目,进行多个版本编译。
Gradle是什么?
Gradle是以Groovy为基础,面向java应用,基于DSL语法的自动化构建工具。是google引入,替换ant和maven的新工具,其依赖兼容maven和ivy。
使用gradle的目的:
更容易重用资源和代码;
可以更容易创建不同的版本的程序,多个类型的apk包;
更容易配置,扩展;
更好的IDE
继续阅读 »
动画可以在视觉上增加程序的流畅度,我之前对于动画这一块,是会用,但是不全面,这里写下博客,全面梳理一下Android动画方面的知识。当然,关于动画这块,也有很多前人写了很多内容,大家可以去参考。
3.0以前,android支持两种动画模式,Tween Animation,Frame Animation,在android3.0中又引入了一个新的动画系统:Property Animation,这三种动画模式在SDK中被称为Property Animation,View Animation,Drawable Animation。 可通过NineOldAndroids项目在3.0之前的系统中使用Property Animation。另外呢
继续阅读 »
Android倒计时控件,通常在发送验证码时用得最多。其实Android系统提供了一个倒计时控件叫做CountDownTimer,不过这个控件没有与界面控件绑定,在这里,我要讲述的是如何自己写一个倒计时的控件。
源码
首先放上CountDownButton的源码
```java
/**
* CountDownButton used for send phone verify code etc.
*
* @author Jamling
*/
public class CountDownButton extends RoundButton {
private long totalTime = 60 * 1000;/
继续阅读 »
原文地址:
本文主要介绍 Github 开源 Android 的动画库 [Transitions-Everywhere][1] .文中大部分内容译自开源作者的博客:[Animate all the things. Transitions in Android][2].
继续阅读 »
最近研究了一下andorid的启动过程,记录一点心得.
学习资料主要为这两篇博客: Android Framework启动流程分析 Android启动过程深入解析,感谢博主.
继续阅读 »
当前是有些工具比如apktool,dextojar等是可以对我们android安装包进行反编译,获得源码的。为了减少被别人破解,导致源码泄露,程序被别人盗取代码,等等。我们需要对代码进行混淆,android的sdk中为我们提供了ProGrard这个工具,可以对代码进行混淆(一般是用无意义的名字来重命名),以及去除没有使用到的代码,对程序进行优化和压缩,这样可以增加你想的难度。最近我做的项目,是我去配置的混淆配置,因此研究了一下,这里分享一下。
如何启用ProGuard
ant项目和eclipse项目启用方法
在项目的project.properties文件中添加一下代码
proguard.config=prog
继续阅读 »
Android Accessibility 的少许开发经验
What's Accessibility
简单来说 Accessibility 就是为了让一些残障人士也能正常使用手机或 App 的基本功能,主要包括 Talkback ,视弱的支持等,具体参见:https://developer.android.com/guide/topics/ui/accessibility/
继续阅读 »