摘要: 爱音乐,爱生活... 阅读全文
posted @ 2010-01-16 14:22 xirihanlin 阅读(651) 评论(0) 推荐(0) 编辑
 
摘要: 一些命令,不常用就忘记了,特整理在这里,忘了就查查。。。 阅读全文
posted @ 2009-11-16 21:56 xirihanlin 阅读(2337) 评论(1) 推荐(0) 编辑
  2011年12月30日
摘要: 前些时候看到兴趣小组里有人问“Android上SQLite的最佳实践”是什么,好奇地搜了一下,确实没有一个好一点的指导文档,平时的使用也只是简单的拷贝code,并没有深入的研究过。以下是我看到的Kevin关于其使用的心得,原文的大体的意思是: Android例子涵盖了一些Sqlite的基本用法,但它们并没有深入地给出合理的使用方法,更重要的是,不合理的使用方法。大多数例子和文档只是涉及最基本的数据库查询,或者教你如何创建一个ContentProvider。从来不提及的地方像: · 什么地方创建和保存SQLiteOpenHelper实例? · 可以有多少个实例? ... 阅读全文
posted @ 2011-12-30 11:03 xirihanlin 阅读(6173) 评论(0) 推荐(0) 编辑
  2011年12月6日
摘要: 这些天一直在琢磨如何在android device上实现一套Push功能,也google很多资料,看似无外乎以下三个方案(以下转载): 1)轮询:应用程序应当阶段性的与服务器进行连接并查询是否有新的消息到达,你必须自己实现与服务器之间的通信,例如消息排队等。而且你还要考虑轮询的频率,如果太慢可能导致某些消息的延迟,如果太快,则会大量消耗网络带宽和电池。 2)SMS:在Android平台上,你可以通过拦截SMS消息并且解析消息内容来了解服务器的意图。这是一个不错的想法,我就见过采用这个方案的应用程序。这个方案的好处是,可以实现完全的实时操作。但是问题是这个方案的成本相对比较高,你很难找到免费的短 阅读全文
posted @ 2011-12-06 12:15 xirihanlin 阅读(11392) 评论(5) 推荐(0) 编辑
  2011年12月5日
摘要: 这两天正好作一份API的接口文档,关于HTTP request如何传递参数不是很清楚,这里转载了他人的文档,让我明白了很多。。http://tomfish88.iteye.com/category/138221?show_full=true----------------HttpClient程序包是一个实现了 HTTP 协议的客户端编程工具包,要想熟练的掌握它,必须熟悉 HTTP协议。一个最简单的调用如下:import java.io.IOException;import org.apache.http.HttpResponse;import org.apache.http.client.Cl 阅读全文
posted @ 2011-12-05 14:07 xirihanlin 阅读(38721) 评论(1) 推荐(0) 编辑
  2011年6月10日
摘要: Overview ispace is a graph-based tool for visualizing, analyzing, and experimentally reorganizing Java dependency graphs. The tool provides a set of simple but flexible means for tailoring the visuali... 阅读全文
posted @ 2011-06-10 21:38 xirihanlin 阅读(587) 评论(0) 推荐(0) 编辑
摘要: ProGuard工具通过移除不用的代码,用语义上混淆的名字来重命名类、字段和方法等手段来压缩、优化和混淆你的代码。结果是更小的.apk文件,并且更难于被反编译。由于ProGuard能够让你的程序难于被反编译,因此,当你的程序使用了一些机密的信息的时,使用它就显得更加重要。 阅读全文
posted @ 2011-06-10 21:19 xirihanlin 阅读(7007) 评论(1) 推荐(0) 编辑
  2011年6月7日
摘要: 在本文中,我将向你们展示如何使用那些Internal和Hidden API。 此外,在本文的结尾,我列出了一些自定义的Android平台,它们都包含Internal和Hidden API。我附带了它们,是为了可能你不想花太多时间在这方面,但又想快速的尝试什么。 阅读全文
posted @ 2011-06-07 20:56 xirihanlin 阅读(2445) 评论(2) 推荐(2) 编辑
摘要: 在上一篇文章里,我描述了如何创建一个自定义的original-android.jar,以及如何创建一个自定义的Android平台来使用这个original-android.jar。这对Hidden API来说足够了。但对Internal API来说,仍然还有一个包袱:Eclipse的ADT插件。它限制使用com.android.internal包中的任何类。 阅读全文
posted @ 2011-06-07 20:54 xirihanlin 阅读(6146) 评论(6) 推荐(0) 编辑
  2011年6月5日
摘要: 在上一篇中,我已经展示了如何创建一个包含所有internal和hidden API的original-android.jar。 接下来的工作就是要修改已经存在的Android平台(SDK_DIR/platforms/platform-X/android.jar,X表示API等级)。你可以直接使用Part2中创建的original-android.jar替换android.jar。但这样的话,你的所有工程都将直接使用internal和hidden API而没有任何限制。这不够方便,因为在多数的工程中你不希望这样。甚至,你可能更希望禁止这些API(ADT/android.jar的默认行为)。但对于一些特定的工程,你希望能够使用这些internal和hidden API。 为了达到这样的灵活性,你需要创建一个新的自定义的Android平台。当不需要访问internal和hidden API时,你只需使用原有的Android平台。当你使用这些API时,你使用自定义的Android平台。 阅读全文
posted @ 2011-06-05 13:51 xirihanlin 阅读(3702) 评论(3) 推荐(1) 编辑
摘要: 在上一篇中,我解释了为什么我们不通过反射就会很难使用internal和hidden API。这是因为android.jar中就没包含这些API,因此,没人能够在编译时引用这些类。 这篇文章将描述如何还原最初的android.jar。这将允许我们像使用公开的API那样使用internal和hidden API。 阅读全文
posted @ 2011-06-05 13:48 xirihanlin 阅读(4808) 评论(0) 推荐(3) 编辑
摘要: Android有两种类型的API是不能经由SDK访问的。 第一种是位于com.android.internal包中的API。我将称之为internal API。第二种API类型是一系列被标记为@hide属性的类和方法。从严格意义上来讲,这不是一个单一的API,而是一组小的被隐藏的API,但我仍将其假设为一种API,并称之为hidden API。 阅读全文
posted @ 2011-06-05 13:45 xirihanlin 阅读(8233) 评论(1) 推荐(2) 编辑