自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(13)
  • 收藏
  • 关注

原创 LocationService中GPS定位实现研究

LocationService即Android系统服务中的定位服务,其运行于系统进程中,APP要使用其实用到了Binder进程间通信机制,不过APP使用时,直接使用的是LocationManager对象,APP基本感觉不到Binder的存在,这是因为LocationManager中封装了Binder通信实现. Binder进程间通信是Android的标准框架,使用模式固定...

2016-04-29 16:57:44 844

原创 Android几个面试题解答

有人分享了几个面试题,个人觉得题目出得比较全面,故本人有兴趣分析解答一下,同时帮自己理顺一些思路。 [b]题目一:简述Android消息机制原理?[/b] [b]分析:[/b]这个非常重要,但因为太常见了,所以大家都知道,肯定会想到Handler这个类,不过要说明原理,不是说完Handler怎么用就行了,要把原理说出来,而且只是简述,不能说一大堆,照本宣科,要说自己的理解...

2015-03-25 14:03:28 119

原创 IPC、Binder、AIDL与Intent之间区别与联系

很多文章提到的的IPC、Binder、AIDL都是混在一起说,有时候好像觉得它们是一样的,但是又有区别,那倒底有什么共同点与不同呢,还有Intent与它们有什么关系呢? 首先看看各自的全称与中文名: IPC:Inter-Process Communication(进程间通信) Binder:Binder进程间通信机制 AIDL:Android Int...

2015-03-12 16:33:28 321

原创 开机自动启动程序主界面研究

如果不对Android系统进行订制,只用SDK提供的功能达到开机启动App主界面的目的在理论上是可行的,因为许多应用都实现了开机自动启动后台Service的功能,同理开机启动Activity可以采用同样的方式。 原理就是系统开机后会发送一个开机广播,程序利用BroadcastReceiver捕捉该广播后再打开主界面。 具体实现方法: ...

2015-01-20 15:47:30 174

原创 Android实现本机应用层与linux程序通信

本人目前参与的一个项目,其Android系统是高度本地化定制的,APP上的数据主要来自本机硬件,这就需要一种机制来实现底层数据与上层APP之间进行交互。最初的想法使用JNI方式封装一个C程序库供APP调用,此种方式的好处就是APP程序相对简单,但坏处很明显:程序之间的耦合很大,未来维护与扩充比较困难,而且APP会显得庞大,运行效率不高。 既然JNI方式坏处这么明显,只...

2015-01-20 13:52:42 516

原创 Windows下Eclipse C开发加入第三方静态库

由于参考资料比较少,花了一整天经过不断尝试,终于成功在Eclipse中C工程里加入第三方静态库。 环境:Windows7 + Eclipse IDE for C/C++ Developers4.4.1 + cygwin 过程如下: 第一步:新建一Static Library工程“libtest”,作为静态库进行测试 ...

2014-12-01 10:12:20 484

原创 如何提高Android应用程序的代码质量

提高程序的代码质量,是我一直以来想追求的,但是在实际操作过程中时常感到比较困难。主要在于提高代码质量对基本功的要求比较高,同时要有好的抽象能力与预见性。所以想在较短时间里提高能力基本不可能,第一需要学习基础知识,第二就是要多看高手写的代码,第三就是学以致用,多模仿与练习,逐渐形成自己的想法。 提高代码质量,大的方针就是: 结构清晰;避免重复;简单直观;方...

2014-10-27 15:29:23 125

原创 Adapter中getView函数的理解

ListView控件在Android应用程序中被使用的频率非常之高,而ListView的主要代码都集中在Adapter中,因为ListView每一行的子View的产生与数据填充都是Adapter中做的,其实就是getView回调函数。getView函数非常重要,技术面试官也喜欢问应聘者对该函数的理解,尤其是View的重用。 getView函数的完整定义如下:[code...

2014-10-21 11:17:17 301

原创 利用onSaveInstanceState()回调函数增强程序健壮性

Android有个机制,没有被程序主动销毁的Activity会被放入内存,其销毁由系统根据内存使用情况进行控制。所以在后台的Activity什么时候会被系统干掉我们没办法预见,而且被系统干掉的Activity,系统有时候会帮我们重新创建。 其实onSaveInstanceState()主要用来辅助系统重新创建Activity时恢复数据的,因为不重新创建的话,也没必要用on...

2014-10-21 09:22:00 109

原创 Intellij IDEA13.1中Android库项目的引用

最近将Eclipse中Android项目导入到了IDEA中,项目分两部分,其中一个为Library,导入后编译通不过,项目中相当多的jar为主工程与Library共用,在Eclipse中没有问题,而IDEA不行。 在IDEA中尝试了几次,总提示找不到Class或者“Unable to execute DX”。因为缺少资料,最经过不断尝试,终于解决问题,步骤如下:1.打开pr...

2014-10-20 16:11:25 261

原创 跨应用调用Activity的一点理解

Android程序与Windows程序有个很大的区别,就是自己的应用可以利用其它应用的组件和功能,不用重复开发。非常典型的就是调用其它应用的Activity,相信大家都用过,比如调用系统拨号、拍照功能或是现成的浏览器。 调用起来非常简单,利用Intent的隐式跳转,比如调用拨号: Intent intent = new Intent(Intent.ACTION...

2014-09-30 10:22:40 157

原创 对Android中Adapter设计模式的理解

最近在看设计模式,想从理论联系实际来分析分析。因为在Android开发中,ListView用的特别多,用ListView时不得不用Adapter,很明显,从名字上可以看出,这里用到了设计模式中的适配器模式,但是看了别人介绍的适配器模式好几遍,也没能彻底明白ListView这块与Adapter模式有啥明显的对应关系。我刚开始的理解是:ListView要用到Adapter,而Adapte...

2014-09-28 15:41:22 202

Android开发使用Application的注意事项

自定义Application对象在Android应用中不是必须的,因为没有自定义,系统会提供默认的,但是利用Application对象在一些大型项目中或是不可缺少的,我们来看看Application对象的作用:1.保存全局变量 这样我们就不需要将全局变量保存到static变量中了,而是写在Application对象中。2.初始化全局变量 由于Application是应用的真正入...

2014-07-21 13:37:54 154

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除