以前都是在开发环境中使用oracle的轻量级服务器oracle xe。是在windows环境下,见适合开发人员的Oracle10g环境。
在linux上安装oracle是一件痛苦的事情。因为需要为安装做很多准备工作。另外,就是oracle的安装都是基于redhat版本的。
ubuntu server是很好的linux服务器版本,但是得到的企业支持较少,比如oracle,比如其他软件提供商。
公司需要移植以前oracle数据库的东西出来。为了应急,在ubuntu server上安装一个express edition(XE)。这个版本在ubuntu上安装十分容易。
如果需要通过android SDK获取手机相关信息。需要通过如下方式获取:
TelephonyManager telephonyManager=(TelephonyManager) this.getSystemService(Context.TELEPHONY_SERVICE); String imei=telephonyManager.getDeviceId();
不过,光这么写,会有类似如何查看android产生的异常的报错,主要是因为android的权限需要打开,在AndroidManifest.xml文件中增加:
<uses-permission android:name="android.permission.READ_PHONE_STATE" />
就可以拿到手机的imei号了。
android程序如果出问题,因为实际是java程序,所以会抛出异常,比如这样。
针对多activity的应用,比如有一个activity显示文字,有菜单项显示配置内容。如果屏幕激活配置的activity,则被覆盖的activity必定会调用onPause方法,也有可能会onStop和onDestory。
android的service的生命周期与activity类似,但是有一些不同:
onCreate和onStart的不同
service可以通过客户端调用Context.startService(Intent)启动。如果service还没有运行,则android先调用onCreate方法然后调用onStart方法。如果service已经运行,则通过一个新的intent调用onStart方法。所以,一个service的onStart方法可能会重复调用多次。
onResume, onPause和onStop不再需要
..
onBind
如果客户端需要和service保持连接,可以调用Context.bindService方法。如果此时service未运行,将调用onCreate而不是onStart方法。作为替代,调用onBind方法,将返回给客户端一个IBind接口实例,用于客户端进一步的调用service。
onDestory
android终止一个service可能是:
- 没有客户端绑定该service或者与之相连的运行的客户端;
- 内存低,如果是这样,android会在内存允许的情况下试图重新启动service
创建一个简单的应用程序,用于考察android的activity的生命周期,需要覆盖多个Activity类的方法。这些方法是android根据事件将Activity置于某个生命周期状态时调用。
习惯了windows下的即插即用USB设备后,使用android设备,以为直接插上,就可以访问android手机中的SD卡。
直接插上usb线,手机连接到vista下后,在windows中可以看到SD卡的盘符。但是不可以访问。
如需访问,需要装载SD卡,使用完毕,可以关闭之。
这是前段时间写的,组成android的基本概念,根据Beginning Android。这里在对另外一部书Android Application Development中内容作个笔记。
构建一个android应用需要用到四种类型的组件,这些组件类型是android架构中定义的。
应用程序在android中执行和在桌面和服务器端环境有一些不同。这些不同是由于手机环境的特定性和android google 环境的特定性决定的。以下是在为android手机系统编写应用程序时要碰到的概念,这些概念指导开发者设计和实现应用程序。
有限的资源
当前移动电话是最有力的手持计算机,但是仍然受到限制。最主要的限制是电池的容量。每次处理器时钟的跳动,每次内存的刷新,每次用户屏幕的像素显示都需要电池提供能量。电池的大小受限,而且用户不希望频繁更换电池。因此,计算资源受到限制,时钟频率在几百兆赫兹,内存也最好只有几G比特,数据存数也只能是十几G比特。android提供了对这些有限资源的优化。
google android手机软件平台也许是应用软件开发者下一个重大机会。
google宣布开放手机联盟(open handset alliance)和android平台是在2007年的11月,同期发布了android SDK的第一个beta版本。数月后,有超过一百万人次的访问google网站下载SDK。在美国,t-mobile在2008年10月发布了g1 android手机,并在当年拥有数十万用户。
android为成功开发和销售新一代手机应用程序提供了扫清障碍的能力。正如表针的PC和mac平台创造了桌面应用和服务器端的软件市场,android提供了一个标准的手机应用环境,将创造出一个手机应用的市场,应用开发者将从中获益。