- 博客(323)
- 资源 (23)
- 收藏
- 关注
原创 MySQL: 基于 Android 远程连接
/************************************************************ 声明:如需转载,请注明出处! *******************************************************
2012-07-19 22:54:08 28471 38
原创 基于 eclipse 的 android 工程如何使用 jar 文件
本博客是基于 eclipse 3.6.2、jdk 1.6、android 2.1 实践的。1. 新建 java 工程 代码package com.zhang;public class Party { private String name; public void setName(String name) { this.name
2012-07-06 23:35:32 5510
原创 MySQL: 基于 jdbc 远程操作
/************************************************************ 声明:如需转载,请注明出处! **********************************************************
2012-07-04 19:24:21 11426 2
原创 MySQL: 修改默认编码
以修改为 utf8 为例。假设你已经按照我之前博客 安装 mysql 的方法,并且安装成功。1. 停止 mysqlsudo /etc/init.d/mysql.server stop2. 修改 my.cnfsudo gedit /etc/my.cnf找到对应部分添加红色部分。[client]#mark addd
2012-07-03 22:08:20 1700
原创 Algorithm: 字符串转换为 unicode 字节数组
只要牵扯到字符编码的编程,脾气就会异常的,看着那一堆堆乱码,就巴不得拿刀砍死它!现在有个这样的需求:使用打印机打印指定的内容,然后按照指定的协议与设备通信。该打印机认识 unicode 编码的字符。所以,需要将指定内容(String)转换为 unicode 编码,然后转换为对应的 unicode 字节数组。编码实现:/** *
2012-06-23 23:10:50 2974 5
原创 busybox tools
android 虽然是基于 linux,但是 adb shell 支持的 shell 实在是令人不敢恭维。推荐一个工具:Busybox本篇博客:1. 使用模拟器(android 2.3.3)2. 安装 busybox 工具,以及简单使用一、Busy 简介BusyBox 是一个集成了一百多个最常用 linux 命令和工具的软件。
2012-06-15 21:52:29 2737
原创 adb:) adb shell am
使用 am 命令可以在命令行方式下启动系统中已经存在的 app.adb shell 进入命令行。am 回车,可以看到关于 am 的帮助信息。关于各个参数的含义,在这里不再赘述,举几个例子即可。为了说明问题,自己写一个 app,一个 activity、一个 service:
2012-06-14 20:46:09 4287
原创 FAQ_21 sqlite exception: close() was never explicitly called on database
经常与数据库打交道的 frend 们,估计肯定遇到这样的错误提示:close() was never explicitly called on database ××××××××××××××××××这种错误提示,不会导致程序崩溃,至少我没有遇到。这个错误来源:framworks/base/core/java/android/database/sqlite
2012-06-13 00:25:11 4105 3
原创 Service: 监听外部存储设备
博客声明:1. 使用 android2.1 源码说明问题2. 使用真机,操作系统是 android-2.13. 分享一下学习方法,不是为了测试而测试,请大家举一反三结合 Service 与 Broadcast 监听外部存储设备的状态,通过测试主要想知道在我们操作外部存储设备时候发生了哪些事情、以及 Intent 几个 Action 到底是何意?
2012-05-25 23:50:33 10101 4
原创 Service: onStartCommand 诡异的返回值
通过 startService 启动的服务,一定会调用 service 的 onStartCommand 方法。Service 源码里面,onStartCommand 方法的原型 public int onStartCommand(Intent intent, int flags, int startId) { onStart(intent, startI
2012-05-24 23:04:58 8896 14
原创 Service: 生命周期与 startService
Service 经常被使用,结合开发过程中遇到的问题以及注意事项,总结一下 android service 组件。Service: 小试 AIDL IPC 牛刀 是我年少轻狂之时写的一篇很糟糕的博文,那个时候学得东西不多,但是激情很高。本来想删掉它,然后重新写一篇,以免毒害他人。后来,还是舍不得,略做修改,勉强一下吧!本人觉得,it 就是一份扯淡的事业。只要
2012-05-24 21:11:05 3646 4
原创 Java 易错点: 自动装箱与自动拆箱
jdk 升级之后,引入了很多新的特性,如本文所说的自动装箱与自动拆箱。关于自动装箱与自动拆箱,请自行查阅资料。package mark.zhang;public class MyCounter { public static void main(String[] args) { long startCountTime = System.currentTime
2012-05-21 23:05:09 1667 4
原创 SQLite3 模糊查询
如果你还没有安装或者使用过 sqlite,可以借助 SQLite3 安装、基本操作 入门。1. 创建数据库 test.dbcd ~/sqlite3 test.db这样在 ~/ 目录下面就生成一个数据库文件 test.db.2. 创建表 songcreate table if not exists song (path TEXT, ti
2012-05-17 00:10:12 7167 2
原创 android 内存优化: 好文章推荐
写出高效的编码,应该是每个程序员追求的目标,也是提高自己编码能力的重要因素。但是想做到这一点,确实是很不容易,需要长期的积累,思考和实践。收藏的好文章hibaiduSoftReference、Weak Reference 和 PhantomRefrence分析和比较【1】SoftReference、Weak Reference
2012-05-10 21:41:00 2120
原创 娱乐:) ubuntu 下修改 chrome 背景颜色
打开终端cd ./.config/google-chrome/Default/User\ StyleSheets/ls -altr可以看到Custom.css 这个文件(里面没有内容,如果你以前没有配置过)vim Custom.css添加如下代码html, body {background-color:
2012-05-09 20:34:27 5454 2
原创 linux shell: rm 、ls、grep
在当前路径下面ls -altr其中,space、sky 都是文件夹,其余的是文件。其目录结构如下:1. 列出当前路径下的所有文件夹 ls -l | grep ^d2. 统计当前路径下的文件夹个数 ls -l | grep ^d | wc -l3. 列出当前目录下面除了包含 s
2012-05-06 21:32:02 5841
原创 android 系统重启与关机:java 代码实现
在应用层如何通过代码实现 android 系统的重启,分享给大家。这篇博客是在 android 系统开发的基础之上进行实践的,所以如果你是纯粹的 app 开发,可能要让你失望了。该代码在真机上测试成功,在模拟器上面测试失败。在 linux 下面,重启 pc,非 root 用户需要执行 sudo reboot,所以在 android 下重启机器也需要一定的权限。
2012-05-04 22:38:17 11282 4
原创 Algorithm_String: 正确计算字符串包含的字符个数
源码:public class Demo { public static void main(String[] args) { String src = "java 苦逼的,程序 猿。"; // 字符串长度 System.out.println("src length: " + src.length());
2012-05-02 22:04:02 4602
原创 FAQ_20 如何查看函数之间调用关系?
在开发过程中,特别是在代码量很大的情况下(比如系统开发),调试会比较困难。所以寻找和总结调试技巧很关键。下面共享一个我在开发中经常使用的方法。情形想知道某个方法被系统的 framwork 层哪些方法调用过,那麽如何处理?解决使用下面封装的方法:public void findCaller() { final Throw
2012-04-27 22:16:14 1907
原创 Java 集合:HashSet 与 ArrayList
Set 集合是无序不可以重复的的、List 集合是有序可以重复的。Java 集合:HashSet 与 hashCode、equals 博客里面已经说到这个问题,但是解释的还是不够清楚。看一个小例子:package mark.zhang;import java.util.ArrayList;import java.util.HashSet;publ
2012-04-23 22:15:18 3992
原创 View编程(9): TypeArray、attrs.xml
博客 http://blog.csdn.net/androidbluetooth/article/details/6725005 简单介绍了一下如何自定义 view 以及如何为自定义的 view 定义属性。这篇博客接着聊聊关于自定义属性。我们可以在 res/values/attrs.xml 里面自定义属性,那麽可以定义哪些属性,究竟又该如何定义?在 google
2012-03-29 23:06:12 3948
原创 Android2.3 Home-Key、Activity
阅读博客声明:1) 实例是在 Activity 里面完成,不是 View 或者其它 android 组件。2) 实例是在 android2.3 下验证的,没有考虑其它版本。3) 这种方法在 android4.0 上可能不正确,4.0 的改动比较大,鬼才知道 google 怎么想的?!4) 寻找一种学习方法,不要单纯为了问题而ctrl-cv,过几天你自
2012-03-26 22:32:00 3350 2
原创 vim/gvim: Install Gvim
ubuntu 10.10 安装了 Gvim,分享一下。开始下载安装sudo apt-get update(更新一下源,可选项,呵呵)sudo apt-get install vim-gnome安装 ok 之后,为 Gvim 配置菜单(两种方式)方式 1 : sudo vim /usr/share/applications/gvim
2012-03-22 23:25:18 2515
原创 FAQ_19 如何判断 android 版本
android 已经发布很多版本,记住每个版本及其对应的版本名称,实在是没那个必要。先看一张来自 http://zh.wikipedia.org/wiki/Android 的图:但是,有些时候需要知道这些信息。所以,你需要知道到那里去找。有问题,找源码!下面是 android4.0//frameworks/base/core/ja
2012-03-16 21:02:31 2301
原创 Refactoring: 'return' gives me a bug
如果编程不注意细节,注定要被细节"调戏"!在 Mobiles class 里面有很多这样的判断: if(code == 1) { kill(); return; } 于是,我就想将其封装为一个方法,这样代码看起来会比较整洁! public void giveUp(int cod
2012-03-11 23:37:37 1697
原创 makefile: gcc 工作流程
c 语言经过预处理、编译、连接最后生成可执行文件。在 linux 的编译器 gcc 下面,看看其工作流程。流程图:预处理,将包含的 *.h 文件或者一些预处理语句(#define)处理一下,然后将 *.c 文件生成 *.i 的中间文件。但是注意了 gcc 不会自动生成这样一个文件,如果需要,自己加 -E 参数即可。编译、汇编阶段生
2012-03-10 21:44:29 2113
原创 FAQ_18 eclipse vi(m) plugin2.5.1 破解
eclipse 安装 vi plugin 很简单,这里不赘述。使用 vi plugin 都是 2.5.1 版本之前的版本,这次我安装这个插件的时候没有注意版本,eclipse 将它升级到了最新版本,当然也带来了麻烦。先前的破解方式对 2.5.1 不起作用,每次使用 vi plugin 的时候,都会提示 give money!!!!!!烦!crac
2012-03-08 21:42:36 1857 1
原创 linux shell: ls 与 文件权限
这是入门的文章,如果你已经是 shell 高手请多多指教,3ku!最近在整一个 android 项目,需要用到 linux shell 的知识??????!!还好,之前只是写过一些简单的 shell,也看过很多大牛写的 shell 文件,佩服的泪牛满面,书到用时方恨少。只好拼命补习!还好,项目结了,感慨万千,特此小记!ls 这个命令只要是接触过 linux
2012-03-06 23:10:56 2874
原创 Linux 常用命令: 查看 CPU 信息
现在很多笔记本或者台式机,出厂都装上了 ubuntu 或者其它 linux 版本的操作系统。在 windows 下面可以很方便快捷的看出当前 cpu 的信息,那麽在 linux 下面如何很快的知道呢?!也很简单,不信你可以试一试下面这个命令:lscpu可以看出,cpu 的信息出来了,红色部分是 CPU 的位数和 CPU 的核数。
2012-03-06 21:55:28 24978
原创 AOSP: 修改 android 设备的 model number
在 android 设备的 Setings/About Phone 中,存在选项 Model number,如下图:点击 About phone,可以看到 Model numberok,Model number 的 summary 是 sdk,那麽 android 是如何确定这个值的呢?我们如何修改这个值?Settings 源码
2012-02-27 22:35:00 12891 6
原创 Launcher: 解决添加 Settings 快捷方式 bug_序
Launcher 前段时间一直在研究,主要是客户的要求特别多,头大!不管怎么说 Launcher 还是比较重要的,他就像 android 的一张脸,这跟《非诚勿扰》差不多,长的不好,中标的机率也不会高。呵呵,娱乐一下!相信,做过 Launcher 移植的人都会发现,添加 Settings 的快捷方式(如 wifi 设置、蓝牙设置)到桌面之后,改变系统语言设置,但是刚才添加的
2012-02-18 17:41:19 2756 2
原创 FAQ_17 android string.xml 里面的 %
有这样一种情形,不知道你是否遇到过。我们要将 android 资源国际化,但是有时候还需要动态的改变字符串的内容,你不可能把所有的情况都写到 string.xml里面,那怎么办?假设,现在我们做了一款 app,但是检测到有些设备不支持我们 app 的某些功能,这个时候你需要提示用户:您的手机暂时没有 ×× ,暂时您无法使用我们的该项功能!解决这个问题,android 为
2012-02-17 21:06:31 1951
原创 finish、killProcess 使用必知_one App two Activity
接着 finish、killProcess 使用必知_one App onr Activity 聊吧!现在情况是这样的,Service (代码还是上篇的,没变化,在此就不粘贴了!)还是在后台检测 Task 的内容,另外一个 Project 有两个 Activity(TaskDemoActivity、SecondActivity),启动这个 Project,然后由 TaskDemoAc
2012-02-11 22:20:52 4117 2
原创 finish、killProcess 使用必知_one App one Activity
博客 退出 android 应用程序 说了很多关于如何退出 android app 的方法。但是,有很多实际情况,我们还是要好好考虑一下。为了更好的说明这篇博客的目的,需要写两个 project,一个是在后台跑一个 Service 检查系统中运行与 Task 的 Activity,另一个是待测试的。Service 很简单,只要启动这个 App,后台 Service(由Act
2012-02-10 21:18:29 3755
原创 JApp: 删除指定目录_v1
相信大多数人都使用过 svn 来管理代码,协同团队开发,时而需要 add,时而需要 ci.程序员在命令行中享受着无比的快乐,经过 svn 管理的项目,文件夹下面都会有一个 .svn 的文件夹,当你想删除他的时候,总是觉得路很漫长........也是出于此目的,自己写了一个删除目录的 Java App.jar 文件下载地址:http://download.csdn
2012-01-13 21:47:50 2279 2
原创 network: android 使用广播监听网络状态
博客http://blog.csdn.net/androidbluetooth/article/details/6860146 详细的粘贴了很多判断网络的方法。推荐一个网站,关于人工智能教程,教程不仅是零基础,通俗易懂,而且非常风趣幽默,像看小说一样!觉得太牛了,所以分享给大家。点 这里可以跳转到教程。最近,遇到这样一个需求:手机可以随时监听网络状态,如果网络状态发生变化要及时的更...
2012-01-13 20:53:34 30232 6
原创 View编程(8): 自定义 View 如何注册广播
想象这样一种情景:自定义 View 需要在外界条件改变的时候,改变自己的状态,并且这个条件改变的同时会发送一条广播,那麽如何做呢?在 android opensource: Settings 研究_android 组件如何响应语言变化 博客中,说过我会跟大家交流一下如何在自己定义的 View 中注册以及接收广播。在贴代码之前,先看看 View 的两个回调方法 onAt
2012-01-12 22:05:15 4212 2
原创 AOSP: 修改默认语言和时区
修改默认时区和时区,纠结ing.....第一个版本:在源码目录 build/target/board/generic,修改文件 system.prop,在文件最后添加:ro.product.locale.language=zhro.product.locale.region=CNpersist.sys.timezone=Asia/Shanghai修改
2012-01-09 21:57:29 7575
原创 Settings: android 组件如何响应语言变化
这里所说的 android 组件,主要是指 android 中 Activity、Service、ContentProvider 以及 BroadcastReceiver.在 android 源码开发的过程中,大家拿到手的都是一样的 android 源码,但是硬件平台却是大相径庭,所以会引发各种各样的问题,于是乎,android 开发越发精彩!这篇博客主要是在研究 Sett
2012-01-06 23:22:17 7355 4
原创 Handler: 主线程如何通知子线程
在 android 中,不可以在子线程中更新 UI 的操作,否则会报错或者异常信息。在这种情况下,我们会使用 Handler(在 UI 线程创建该对象) 接收子线程的消息更新 UI.可以看出,这是子线程通知主线程,而主线程没有直接通知子线程,那麽我们如何做到这一点?这样有什么好处?好处,很明显。主线程中如果有些耗时的操作,我们可以让子线程去做,这时,主线程就可以通知子线
2012-01-02 10:48:26 19462 26
InstanceVar
2016-05-02
Android线程机制_2011_9_30更新
2011-09-30
ADT12.0 androidPlugin
2011-07-13
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人