默认情况下,安装好vmware tools后,启动ubuntu会自动启动vmware tools。见下面的图(通过系统》首选项》启动程序):
ubuntu 9.04桌面版默认安装的是open jdk,也是sun主持开发的。见:
和sun jdk6的区别,可以见:
我这里是通过ubuntu虚拟机安装的,安装ubuntu虚拟机可参考:vmware安装ubuntu 9.04和vmware tools
以下是安装好的截图:
安装eclipse
首先是要安装eclipse,下载了eclipse jee 3.5的linux版本,解压缩即可。可以在桌面上为eclipse命令设置一个快捷链接(软连接)。
安装和设置android sdk
下载和安装android sdk。下载路径:
http://dl.google.com/android/android-sdk-linux_x86-1.5_r3.zip
将下载的文件解压缩到比如/opt目录下,然后设置环境变量,通过/etc/profile文件,增加一行:
PATH=$PATH:/opt/android-sdk-linux_x86-1.5_r3/tools/
这时,如果将android设备(我这里是t mobile g1)连接,通过:
adb devices
是找不到该设备的。
打算用ubuntu作为软件的开发环境,因为对linux系统的依赖比较多,这样会比较方便。
安装vmware
为了能够方便使用中文环境,最好下载ubuntu的dvd版本,会比较大,大约4.5G左右。好处是选择简体中文安装后,所有有关中文的输入法和环境变量都自动设置好,不需要手工添加或者设置。
当前最新的vmware版本是6.5.3,这个版本开始支持ubuntu 9.04,这样在安装vmware tools时会很方便,不需要考虑网上的手工设置和修改步骤。
虽然vmware支持ubuntu 9.04,但是使用typical方式安装还是有问题,能识别ubuntu安装盘,并启动vmware的easy install方式,但安装界面是文字的,而且安装后启动ubuntu虚拟机不是图形界面的。
qq提供了域名邮箱功能。比如自己的域名是abc.com,可以通过该功能,创建比如:your_name@abc.com的邮件地址。适合小企业和个人使用。功能链接:
这个功能类似google的企业邮箱。因为qq是本土企业,使用质量应该更稳定。
使用之前需要先开通这个功能,浏览qq邮箱的设置链接中的体验室,开通域名邮箱即可。
如果想直接拨号打电话,可以在java代码中这样调用:
Uri uri = Uri.parse("tel:15210133973"); Intent intent = new Intent(Intent.ACTION_CALL, uri); this.startActivity(intent);
然后在AndroidManifest.xml中增加拨号的权限:
<uses-permission android:name=”android.permission.CALL_PHONE” />
如果是想弹出拨号窗口,java代码应改为:
Intent intent = new Intent(Intent.ACTION_DIAL, uri);
android SDK提供了Service,用于类似*nix守护进程或者windows的服务。
Service有两种类型:
- 本地服务(Local Service):用于应用程序内部
- 远程服务(Remote Sercie):用于android系统内部的应用程序之间
前者用于实现应用程序自己的一些耗时任务,比如查询升级信息,并不占用应用程序比如Activity所属线程,而是单开线程后台执行,这样用户体验比较好。
后者可被其他应用程序复用,比如天气预报服务,其他应用程序不需要再写这样的服务,调用已有的即可。
在对im4java windows下使用问题的解决的基础上,给出了一个解决方案,可以直接复用补丁的代码。不过需要使用maven,如果是ant,也可以通过ivy使用。
需要在项目的pom.xml文件中加入以下内容自动导入im4java补丁,而且也会自动连带导入im4java:
<dependency> <groupId>com.easymorse</groupId> <artifactId>im4java.patch</artifactId> <version>0.98.0</version> </dependency>
如果直接使用im4java,在windows xp可能会出现问题,见使用im4java生成gif的缩略图。跟踪了一下im4java的源代码,未发现有针对linux的特殊设置。问题可能出在环境变量或者shell与windows命令行(cmd)之间的不同上。
直接测试了一下自己起进程运行imagemagick的convert命令:
public static void main(String[] args) { ProcessBuilder processBuilder = new ProcessBuilder("convert", "1.gif", "-resize", "64x64", "2.gif"); System.out.println(processBuilder.environment()); try { Process process = processBuilder.start(); process.waitFor(); System.out.println(process.exitValue()); InputStream stream = process.getErrorStream(); BufferedReader reader = new BufferedReader(new InputStreamReader(stream)); for(String s=reader.readLine();s!=null;s=reader.readLine()){ System.out.println(s); } } catch (Exception e) { e.printStackTrace();