摘要: 由于辞职的原因,最近正在忙于找工作。在这段期间收到了一家公司的上机测试题,一共两道题,其中一道题是关于REST API的应用。虽然在面试时,我已经说过,不懂REST,但那面试PM还是给了一道这题让我做。面试的PM还是比较友好,没有限定时间,结果自己不争气,一边查资料一边做,一个多小时过了还是没做出来,所以最后我放弃了,当然面试也就失败了。于是归纳了一下失败的原因,主要还是对REST不了解,把REST当做Web Service的另一种形式,先入为主的理解错误,必然会导致了失败。 回归正传,什么是REST? 在此不详说。我说一下自己的理解吧。简单地说,REST就是一种基本HTTP请求服务从... 阅读全文
posted @ 2012-08-14 11:40 生活不是用来挥霍的 阅读(9112) 评论(0) 推荐(1) 编辑
摘要: final 关键字 static关键字 static数据的初始化 JNI学习笔记 (一)第一个JNI详细例子配图文 (二)JNI中的java语言与本地C/C++语言之间的映射 (三)JNI中本地语言访问Java类中的属性与方法 (四)JNI中本地语言创建Java对象并且访问具体方法 阅读全文
posted @ 2012-08-13 22:45 生活不是用来挥霍的 阅读(534) 评论(0) 推荐(0) 编辑
摘要: 1. ListView需要设置adapter,它的item是通过adapter的方法getView(int position, View convertView, ViewGroup parent)获得的。2. ListView中只有第一屏的item需要新建,它的引用会被存在RecycleBin对象内,在拖动时后面的item实际上是重从了之前创建的item。3. 根据上述,ListView在需要显示item时,最开始第一屏时,getView(int position, View convertView, ViewGroup parent)的第二个参数为null,显示第二屏或者回滚显示第一屏时, 阅读全文
posted @ 2012-04-14 00:00 生活不是用来挥霍的 阅读(667) 评论(0) 推荐(1) 编辑
摘要: 今天来看看Android中的录音数据是怎么来的。从AudioRecord开始看吧。AudioRecord中可以取得录音数据的接口是:AudioRecord::read。首先调用函数obtainBuffer取得录音数据的地址。然后用memcpy将录音数据copy出来。看样子,数据来源是obtainBuffer函数了。来看看函数AudioRecord::obtainBuffer。其主要功能就是对传入的audioBuffer进行赋值。audioBuffer是Buffer* 类型。看看Buffer类: class Buffer { public: enum { MUTE = 0... 阅读全文
posted @ 2012-04-14 00:00 生活不是用来挥霍的 阅读(3630) 评论(0) 推荐(0) 编辑
摘要: 昨天写了Android的开发如何初始化环境配置,今天继续说说Android开发调试的几大工具,主要是adb fastboot 和emulator。一般使用eclipse进行开发的Android开发者也许完全不需要用到这几个命令,但是,若要了解到系统内部,工具无疑就是解剖Android的手术刀。Android的NAND结构与Root的过程 Android的刷机、Root、开发调试过程中不可避免的涉及到Android的NAND(翻译做闪存?)。耳熟能详的主要几大分区有boot、system、userdata、和recovery。 system、userdata分区在Android文件系统... 阅读全文
posted @ 2012-04-13 23:59 生活不是用来挥霍的 阅读(1454) 评论(0) 推荐(0) 编辑
摘要: 老师在《Lecture03_应用程序框架及关键组件_1》课上有介绍了Intent是Activity与Activity之间,Activity与Service之间传递参数的介质,并有使用Intent和Bundle在组件之间传递数据的用法和例子,而这两种通常实现的是Java基本对象类型和String的传递。在实际项目中,页面之间传值,除了以上几种,经常还有传递Object对象、List类型、List<Object>类型和全局变量等等的需求。本文就是介绍怎么传递这几种类型的参数。 一、传递List<String>和List<Integer>以下以传递List< 阅读全文
posted @ 2012-04-13 23:58 生活不是用来挥霍的 阅读(12940) 评论(0) 推荐(1) 编辑
摘要: mac pro重装了下系统,Mac OS X 1.7. 然后再安装xcode 4.2报错。具体现象是,在输入帐号密码后,很快报错:发生未知的安装错误提示信息为: “安装器遇到一个错误,导致安装失败.请联系软件制造商以获得帮助.”非常古怪的问题,以前装都没问题,安装包是:xcode_4.2_and_ios_5_sdk_beta_5_for_lion.dmg最后把日期改为2012.01.01,就OK了。 阅读全文
posted @ 2012-04-13 23:58 生活不是用来挥霍的 阅读(623) 评论(0) 推荐(0) 编辑
摘要: 首先了解一下LayouInflater类:将一个layout xml文件实例化为相应的View 对象。他永远不会直接使用,而是使用 getLayoutInflater() 或者 getSystemService(String) 来获得标准的LayoutInflater实例,这个实例已经将context连接起来,为正在运行的设备配置正确。比如:[java] view plaincopyLayoutInflater inflater = (LayoutInflater)context.getSystemService(Context.LAYOUT_INFLATER_SERVICE); publi. 阅读全文
posted @ 2012-04-13 23:57 生活不是用来挥霍的 阅读(731) 评论(0) 推荐(1) 编辑
摘要: MediaPlayer类提供了播放、暂停、停止、和重复播放等方法,每次只能播放一个音频文件,适合播放较大文件,用法:1、从资源文件中播放,[java] view plaincopyMediaPlayer player1 = new MediaPlayer().create(this,R.raw.message); player1.start(); 2、从文件系统播放,[java] view plaincopy MediaPlayer player = new MediaPlayer(); String path = "/sdcard/messa... 阅读全文
posted @ 2012-04-13 23:56 生活不是用来挥霍的 阅读(420) 评论(0) 推荐(0) 编辑
摘要: 最近要实现一个检验更新的功能,当进入程序的时候,开始请求服务器,然后得到服务器的响应更新结果!如果需要更新的话,就打开一个Dialog,在Dialog上面下载文件,于是自己研究了一个自定义dialog的实现,也完成了在dialog上面有进度的下载文件(自己的作图技术查,随便画了一个背景),效果图如下: 阅读全文
posted @ 2012-04-13 23:56 生活不是用来挥霍的 阅读(592) 评论(0) 推荐(0) 编辑