自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

雨辰专栏

Android之旅

  • 博客(35)
  • 收藏
  • 关注

原创 Windows平台下如何使用Android NDK

鉴于有些同学想要学习NDK,但在网上很难找到一个讲解比较清楚、按照步骤操作可以比较顺利学会NDK的文章,所以写了此篇教程。一.学习本篇教程需要具备的条件:1. 了解JAVA中JNI的概念、好处以及使用方法,网上很多介绍,这里就不重复了。2. 你的电脑配置好了Andro

2011-08-26 22:04:41 2454

原创 如何定一个合适的目标

——走出迷茫,迈向辉煌之二    上一篇我们聊到走出迷茫的关键是设定一个目标,然后迈开大步、义无反顾地朝她走去。如果你试过了,不知你是否有这样的体会,就是你走出了没有目标的迷茫,但是有了什么才是我的目标的彷徨。老实说,找出自己想要的还真的是蛮困难的。我能给的建议是,假如你从来没问过自己这个问题,不要期待问一次就找出来,这是渐渐的浮现出来的,它需要你不断地试错。你要的也不是一个终极不变的,不

2011-06-28 18:32:00 2721 5

原创 如何在Android中用好多线程

——Android中高级技术免费培训QQ群(118949422)第三期专题培训    本期的多线程主题与Android相关,侧重讲解在Android中如何用好多线程,需要你有Java的多线程基础。     首先我们思考几个问题,在Android应用中为什么要用多线程?为了解决哪些问题?或者为了实现哪些功能?有哪些好处?请先思考一分钟,再继续往下看。     学习而不思考就像吃东西而不嚼

2011-06-04 15:45:00 3633 11

原创 走出迷茫,迈向辉煌之一

                                                                           ————程序员的自我修炼 迷茫这个词,让我很迷茫,即使我不迷茫的时候,看到这个词儿也会迷茫。 我努力说服自己不要迷茫,不要迷茫,可是越说越迷茫,大家现在状态怎样?是否听到看到感觉到那份迷茫?       也许你已经有所领悟,不要你想迷茫,你的脑袋里先要想出来什么是迷茫,然后再告诉自己不去想,可是不去想还是会想,这是你理智控制不了的。    

2011-05-25 11:04:00 2846 2

原创 如何提高Android代码的安全性

Android免费培训QQ群(118949422)第二期专题培训 (转载请注明出处,商用请与本人联系) 1. 首先我们思考一个问题,Android中哪些部分需要提高安全性防止被破解,哪些部分无法保证安全?     a) 首先,如果你的应用跟其他人竞争的是创意、用户体验、服务等等偏软的东西,同时是免费的,并没有什么技术难点,要评估一下是否确实需要提高代码的安全性。     b) 对于图片、xml文件或者apk文件本身是无法加密的。因为这些文件是由Andriod虚拟机加载和读取,加密后Android虚拟

2011-05-14 18:42:00 7635 3

原创 Android良好的权限设计——给想要在后台做点手脚的开发者或者公司

最近看到很多开发者问类似的问题,例如:请问如何通过编写代码来删除应用程序,如何后台安装程序,肯定有人想问如何后台发短信、打电话、最好后台直接把用户的手机费转到自己手机上。 对以上问题我在这里做统一答复。 在Android2.1版本以前技术上或许是可以实现的,不过不建议这样做。 问这些问题绝大多数是中国等先进的社会主义国家的法盲们,都是权利意识缺失、法律意识淡薄惹的祸。这类行为在国外要被告到倾家荡产的。 Android从2.2版本开始,禁止掉了很多后台运行的一些对用户比较敏感的行为,比如后台安装程序

2011-05-10 17:14:00 3853 7

原创 如何入行Android开发

    近期遇到很多朋友问及想从事Android开发,有些是大四的学生,有些是已经工作了,从事J2EE或者C++、C#等开发工作。对他们为什么要从事Android我不是很深入的了解,不过Android确实是一个近两年很火爆的热词儿,招聘职位很多,机会多、平均薪水比其他岗位要高一些。移动互联网是未来的一个趋势,越来越多的人开始使用智能手机,Android系统在智能手机领域里虽然用户体验不如IPhone,但价格还是令大多用户可以接受的。国内Android手机的使用者也非常多。希望未来从事Android开发,眼光

2011-04-24 01:12:00 3459 1

原创 Android应用如何实现换肤功能

Android免费培训QQ群(118946422)第一期 转载请注明出处,商用请与本人联系。 本系列专题培训适用范围:初级Android程序员,即有J2SE基础和Android初级水平。J2SE基础是指掌握JAVA语法,1.5、1.6新增的语法不完全掌握也没关系。了解基本的面向对象思想、能编写简单的J2SE程序,掌握基本的调试方法,熟悉Swing更好。Android初级是指掌握Activity、Service、BroadcastReceiver、Intent、SQLite、UI组件的使用,能参照例子编写

2011-04-17 14:24:00 26293 35

转载 JAVA-JDK里的设计模式

Structural(结构模式)Adapter: 把一个接口或是类变成另外一种。    • java.util.Arrays#asList()    • javax.swing.JTable(TableModel)    • java.io.InputStreamReader(InputStream)    • java.io.OutputStreamWriter(OutputStream)    • javax.xml.bind.annotation.adapters.XmlAdapter#marshal

2011-03-31 10:10:00 2402

原创 程序员的自我修养系列之一

这一系列文章主要想跟大家探讨一下一个专业的软件技术从业人员应该具备哪些态度和能力。我想到太多的主题,开了太多的系列,多头并进,我很脑涨啊。 第一篇说一下什么呢?……

2011-03-18 17:56:00 2184 1

原创 如何成为软件高手系列之一

    从事软件业也有几年了,经历几多个不同的公司、不同企业文化、不同的开发流程,不变的身边总是有零星高手和多数的普通程序员。我总是苦苦思索,一个刚入行的程序员如何才能成为一个软件高手呢?在这里我们不讨论那些奇才怪才,比如几岁或十几岁就接触电脑、初中高中就会编程,或者大学期间就积累了一些经验和人脉,或者辍学开公司去了的牛人们。我们只讨论一个普通的或相对优秀的程序员,在公司里工作的过程中如何成长为一个高手。     近几年国内的大学,计算机专业毕业的学生,上学期间只有几名学生有过软件业相关的实践,大多数可能

2011-03-18 17:37:00 2920 7

原创 Android音乐播放器系列讲解之一

      从07年末到现在,Android如火如荼的发展,网上已经有很多Android基本技术的文章视频了。我就不重复发明轮子了。目前比较缺少深入讲解Android系统自带应用的分析资料。Android系统自带的应用对于开发类似功能的应用有很大的参考价值。       从关注Android到做Android系统开发、应用开发也有一年多的时间了,期间做手机时需要修复Android源代码的一些bug,对Android系统有了大概的了解,感觉到Android的确是一个设计很好、实现一般的系统。后来陆续参与开发

2011-02-22 11:32:00 4083 2

原创 防止Android代码被反编译的方法

由于apk是Android虚拟机加载的,它有一定的规范,加密apk后Dalvik无法识别apk了。 完全避免是不可能的,总有人能够破解你的代码。但还是有几种方式来提高被反编译获取代码的难度。 提高反编译难度的几种方式: 1. 关键代码使用jni调用本地代码,用c或c++编写,相对于class文件,so相对比较难于反编译。 缺点是很多搞java的程序员不太熟悉如何写c或c++代码,同时本地代码很难调试。出错容易导致整个虚拟机死掉,用户感受不好。 2. 混淆java代码。混淆是不改变

2011-02-18 11:49:00 3525

原创 程序人生之四 Upgrade 升级你的大脑

前段时间和朋友去买笔记本电脑,为了省钱,选择的操作系统是DOS,这样节省了一百多块。但是你会回家也使用DOS命令行界面来做日常应用吗? 这是显而易见的,作为programmer,自己安装了Ubuntu,这样才可以发挥出硬件的功能。当然,Ubuntu出了新版本,或者系统中的软件有了新版本,如果新功能有用,我们一般都会选择升级。这样可以更好的为我们达成目标服务。 我们的大脑也是一样,身体各器官都正常,有的人的大脑停留在小学,有的停留在大学,有的则活到老学到老,一直在升级他的大脑。 大部分人,决定他们人生的

2011-02-10 15:30:00 2359

原创 程序人生之三 software VS world

自从软件业诞生后,虚拟世界得以与真实世界并行,二者互相依存,生生不息。软件有一些特殊的属性,与真实世界中的物质的属性不同,有些甚至完全相反,比如: 一. 软件无新旧 在真实世界中,我们使用的物品比如手机、数码相机、穿的衣服、背的包以及自己的身体、皮肤等等,无论你怎么保养,只能延迟使用寿命,这些东西都会随着时间的推移变得越来越旧。 而在虚拟世界中,软件却有另一个特性,它的新旧程度不会随着时间而改变。无论这个软件是什么时候编写的,用了多久,用过多少遍,它本身的属性是不变的。 二. 软件的边际成本几乎为零

2011-02-10 15:20:00 1916

原创 程序人生之二 IoC—如何才能快乐

没有IoC之前,有你才能有我,没有你就没有我; 不懂得快乐法则之前,有你我才快乐,没你我不能活。 有了IoC,我是霸主,符合我的标准才被拿来做我一个快乐的方式,我不依赖你,你要顺从我。 这样不管你怎么样,我很快乐。因为你我相处的节奏(程序中对象的生命周期)由有我掌控。 如果你懂得IoC,就知道怎样才会快乐。 过去,因为某些人或某些事让你快乐,这样你的快乐就被外在人事物所控制。 现在,把使你快乐的那些外在的东西抽象出来 创造一个抽象的快乐模型,这个模型的关键有三个: 一是简单,容易达成;

2011-01-21 11:42:00 2226 5

原创 程序人生之一 MVC——透过现象看本质

生活当中的MVC 这里的V是视图,在生活当中就是一个讯息,当我们看到或听到一件事情,以及他人的观点后,会形成自己的观点, M是模型,也就是事实的真相,可是这个真相是在C的操控下变成了不同的视图,我们只能看到视图。 C不需要告诉你他的观点,只要给你呈现会让你产生这个观点的视图就好了。   我们都说透过现象看本质,就是透过V来看M,其实障碍在C而不再V,除非你看过很多的V和M,或者你就是C, 否则很难了解事实真相。

2011-01-18 13:13:00 2057

转载 学会如何“偷”代码

<br /> <br />学东西容易。化为己有难。<br />我发现自己在最近的几个项目中偷窃了其它项目的思想。当然,并不是真正的“偷”,而是浏览和学习你欣赏的项目和开发者,从中窃取思想。诸如设计模式,重构方法等。Chris是如何处理hub里的命令行参数的?shell脚本和rvm上的Ruby是如何进行韦恩转化的?<br />当你遇到问题,有点难度、需要你动一下脑子时,你要问“嗨,我怎么实现这个呢?”,这是个不错的问题入手点。<br />一旦你遇到这种问题,当然,你可以在Google上搜索出一篇文章,找到方案

2010-12-02 09:58:00 2414

转载 转【定制ROM教程】打造自己喜欢的ROM定制包(不止是修改)

<br /> <br /> <br />制作方法   一、ROOT<br />无论是什么版本,首先要ROOT一下机器这是定制的前提<br /><br />先将LK2.02包中的LK2-02-1_update.zip和JE1-custom1-wp55580691.zip传入SD卡中根目录下。重新按住音量减、照相键、开机键,再次进入刷机模式,刷ROOT包中的i5700_LK2-02_PDA.tar<br /> <br /><br />刷好了之后会自动进入recovery模式(界面绿绿的,绿色的字),用方向键选择

2010-09-15 14:00:00 5711 1

原创 真相难以认知性

<br />想一想身边的亲朋好友及公司内部发生的一些事情,一部分甚至一大部分我是无法看清背后的真相的,一方面因为信息存在信息获取的不对称,一方面信息发布被扭曲、选择性忽略或放大。那么对于千里之外的事情,我又如何能了解哪些表面的事实呢?更别说幕后真相了。

2010-08-16 23:40:00 2864

原创 强大的灵魂

<br />人的身体从到大成长是有限的,而灵魂,这个控制身体的软件,却可以从芸芸众生的渺小,成长为影响世界的巨人,

2010-07-02 10:27:00 578

原创 框架理论

<br />我们看那些有影响力的人,他们有一些共同点,比如有坚定的信念,有自己的理论框架,有专业相关的丰富经历和成功案例,这些都更加坚定他们的信念,再用理论框架框主听众,哇!<br /> <br />如果你没有信念、没有理论框架,那么很容易被这些人影响,事实上即使有,如果你的经历和支撑案例不足以支撑你的信念或理论框架,那么也会被影响,这还是你们的理论框架是类似专业的,如果不同就没有可比性。<br />何况绝大多数人是没有清晰的信念,甚至有些信念是不坚定的,或者没有理论框架,这样不被影响是不太可能的事情。

2010-07-02 10:09:00 994 1

原创 简单论

<br />简单就是美<br />把复杂的事情变得很简单,是有能力;把简单的事情搞得很复杂,是没能力。<br />让有能力的来当老师,推广普及,提升大众素质;<br /> <br />简单就是能抓住本质,逻辑清晰。<br />有逻辑的老师,让学生在短时间内理清脉络,抓住本质。<br />没逻辑的老师,让学生越听越糊涂,最终放弃。

2010-07-02 09:44:00 580

原创 前提论

<br />      何理论、方法都是有应用范围的,也都是有前提的,没有前提也是一种前提,这个前提就是条件不限。<br />绝大多是是有前提的,忽略这个前提就好像刻舟求剑,达不到效果,徒增烦恼。然后回来责怪教他理论或方法的人的不是,或者理论、方法不好用。<br /> <br />      很多管理咨询公司,尤其是国内的,经常照搬国外的某些理论或方法,奉行拿来主义,不管环境、条件是否具备,用一套看上去很美的理论换取了利益,至于是否有效很难顾及了。<br />      <br />      有这么一个比

2010-07-02 09:38:00 539

转载 从 Remote Service Binding 学习 AIDL 与 IPC

默认情况下,一个应用不管有多少个 Activity、Service 或其他组件,它们都是运行在一个进程上,但是我们可以安排 Service 运行一个新的进程上,但是不同进程之间应该如何通信呢?当需要在不同的进程之间传递对象时,应该怎么做呢?AIDL(Android Interface Definition Language) 便是解决这一问题的钥匙。使用 AIDL 并不是难事,但是比较繁琐,并且一不小心容易出错。好在 Android Dev Guide 的 Designing a Remote Interf

2010-07-02 09:21:00 1659

原创 思考行动守恒定律

这个定律简单解释就是,获得同样的结果,思考得越多,行动得越少,反之亦然。

2010-06-29 14:46:00 1563 1

转载 为非程序员准备的简洁Python语言教材

<br />感谢匿名人士的投递<br />为非程序员准备的简洁Python语言教材,欢迎提问。<br />Python 的中文意思是巨蟒,大蟒蛇。<br />计算机编程主要概念¶<br />计算机语言编程的主要内容就这些:数字,文字,循环,公式,变量数 字: 1, 2, 3, 5.6, 120, 32.4, 3.1415926, -3, -0.123 文字: 你好,我好,你太牛了,很黄很暴力,这类的文字。一般用双引号(")或者单引号(')括起来。术语叫字符串 ,就是一堆字符,串起来。 循环: 循环(loop

2010-06-24 23:51:00 1590

转载 AIDL简单入门

AIDL简单入门最近即将做的一个项目里面需要使用到AIDL(Android Interface Definition Language:接口描述语言)技术,自己早前只是简单瞄了一眼,我的理解它和java中的RMI的概念差不多,在这里我就不相信讲解什么事AIDL 了,网上这种介绍非常多。不过概念毕竟是书本上的东西,我决定亲自测试一下。废话不说了,直接开始 1、 既然AIDL是既然是可以在不同进程间进行操作,那么我们首先就需要准备两个项目,我们先来看看不同的两个项目结构式什么样子的。如图: 我们先暂且定义一个项

2010-06-23 23:17:00 654

转载 Android Intent的几种用法全面总结

Android Intent的几种用法全面总结Intent, 用法Intent应该算是Android中特有的东西。你可以在Intent中指定程序要执行的动作(比如:view,edit,dial),以及程序执行到该动作时所需要的资料。都指定好后,只要调用startActivity(),Android系统会自动寻找最符合你指定要求的应用程序,并执行该程序。<br /><br />下面列出几种Intent的用法<br />显示网页:Uri uri = Uri.parse("http://www.google.

2010-06-23 22:31:00 855

转载 Android程序反编译

<br />找到Android软件安装包中的class.dex:<br />  把apk文件改名为.zip,然后解压缩其中的class.dex文件,它就是java文件编译再通过dx工具打包成的。<br />  工具准备:<br />  1、把dex文件反编译为jar文件的工具。(dex2jar)<br />http://code.google.com/p/dex2jar/downloads/list<br />  2、把jar反编译为java的工具。(JD-GUI)<br />http://java.dec

2010-06-17 17:32:00 621

转载 Android多媒体框架OpenCore(PacketVideo)介绍之三:Player和Auther

<br />                                                          第五部分 OpenCore Player介绍 <br />5.1 Player的组成 <br />      OpenCore的Player的编译文件是pvplayer/Android.mk,将生成动态库文件 libopencoreplayer.so。这个库包含了两方面的内容:一方是Player的engine(引擎),一方面是为Android构件的Player,这实际上是一个适配器

2010-06-17 15:53:00 1020

转载 Android多媒体框架OpenCore(PacketVideo)介绍之二:OSCL和文件编解码

<br />                                                 第三部分 OpenCore OSCL简介<br />     OSCL,全称为Operating System Compatibility Library (操作系统兼容库),它包含了一些在不同操作系统中移植层的功能,其代码结构如下所示:<br />oscl/oscl<br />|-- config             :配置的宏<br />|-- makefile<br />|-- makef

2010-06-17 15:48:00 4661 1

转载 Android多媒体框架OpenCore(PacketVideo)介绍之一:概览和库介绍

<br />                                                        第一部分 OpenCore概述<br />      OpenCore的另外一个常用的称呼是PacketVideo,它是Android的多媒体核心。PacketVideo是一家公司的名称,OpenCore是这套多媒体框架的软件层的名称。在Android的开发者层次看,二者的含义基本相同。对比Android的其它程序库,OpenCore的代码非常庞大,它是一个基于C++的实现,定义了全功

2010-06-17 15:40:00 980

原创 分享几个HIFI音乐下载网站

<br />www.51ctzs.com 楚天之声-发烧音乐<br /><br />http://kwe.net.cn/ 高品质音乐下载<br /> <br />http://www.ape-flac.cn/ 无损音乐网<br /> 

2010-06-11 09:22:00 16359

转载 三大框架的原理和优缺点

http://ribaigui.blogbus.com/logs/52976511.htmlStruts的原理和优点.Struts工作原理MVC即Model-View-Controller的缩写,是一种常用的设计模式。MVC 减弱了业务逻辑接口和数据接口之间的耦合,以及让视图层更富于变化。MVC的工作原理,如下图1所示:Struts 是MVC的一种实现,它将 Servlet和 JSP 标记(属于 J2EE 规范)用作实现的一部分。Struts继承了MVC的各项特性,并根据J2EE的特点,做了相应的变化与扩展

2010-06-10 23:15:00 1251

空空如也

空空如也

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

TA关注的人

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