Ophone环境的搭建.docx
- 文档编号:9572044
- 上传时间:2023-05-20
- 格式:DOCX
- 页数:23
- 大小:580.04KB
Ophone环境的搭建.docx
《Ophone环境的搭建.docx》由会员分享,可在线阅读,更多相关《Ophone环境的搭建.docx(23页珍藏版)》请在冰点文库上搜索。
Ophone环境的搭建
Ophone环境的搭建
1.解压eclipse3.4
2.安装OPhoneSDK
下面主要介绍了如何安装、配置OPhoneSDK。
如果你还没有下载最新版本的OPhoneSDK,请通过下面的链接页面下载,同时链接页面还提供了关于安装、配置和使用方法的介绍。
SDK下载
对硬件/软件的要求
要使用OPhoneSDK提供的工具来开发OPhone和Widget应用程序,你需要准备一台满足以下要求的计算机。
操作系统:
∙WindowsXP或者WindowsVista
∙Linux(最好是LinuxUbuntu8.04或更新版本)
∙MacOSX
集成开发环境:
∙EclipseIDE
oEclipse3.4.2(Ganymede)
▪EclipseJDT插件(大部分的EclipseIDE包已经包含JDT插件)
▪WST3.0.4
▪EMF2.4.2
▪GEF3.4.2
oJDK5orJDK6(包括JRE)
oODT开发工具
oWDT开发工具
oODT与GNUJava编译器(gcj)不兼容。
注意:
如果开发机器上已经安装有JDK,则需要检查其版本是否与上述条件相符合。
SDK的安装
首先下载SDK工具包,运行安装程序包,将SDK安装到一个任意指定的文件夹位置。
安装方法是终端命令行下输入:
java-jarsdk-package-file.jar,然后会但弹出安装程序的欢迎信息提示窗口。
点击“Next”,如果在阅读许可协议后决定继续安装,你需要选择“IAccept”。
然后选择SDK安装的文件夹路径。
请注意记录SDK安装的路径位置,在后续的ODT,WDT安装时需要使用该路径。
下一页面显示可选的安装组件,在点击“Next”继续之前,请确认“OPhoneSDK”被选中。
然后连续点击“Next”,直到安装过程结束。
SDK的配置
为了调试运行的方便,可以添加SDK的子目录
∙在Linux下,请编辑文件~/.bash_profile或~/.bashrc,在该文件的末尾添加如下内容:
oexportPATH=${PATH}:
∙在Windows下,鼠标右键点击我的电脑,选择弹出菜单中的属性,在弹出窗口的高级卡片页下,点击按钮环境变量。
在弹出的窗口中双击PATH,在变量值的输入窗口中添加内容;
∙在MacOSX机器上,与Linux环境下配置相同,找到home目录下的.bash_profile文件,并添加配置。
如果没有找到该文件,则可以自己创建一个。
将tools目录加入PATH环境变量后,SDK提供的工具可以在文件系统的任何位置被调用运行,而不必每次指定SDK安装的完整路径名。
请注意,在SDK升级时,如果改变了SDK的安装路径,该PATH变量的内容也同时需要更新。
3.创建AVD
为了能够在OPhone模拟器上运行你的应用程序,你需要首先创建一个模拟器下的虚拟设备(AVD)。
所谓AVD就是模拟器运行时使用的一组配置,用来描述模拟的OPhone平台。
请按照以下步骤创建AVD。
1.打开命令行窗口(比如在Windows环境下运行“命令提示符”,或者Mac/Linux环境下运行“终端”。
2.选择一个开发使用的目标设备,并创建一个新的AVD。
命令行如下:
androidcreateavd--nameOMS--target1
命令行中的targetid是"1",因此被创建AVD的目标设备是OPhone支持设备列表里面的"Android1.5".
3.然后,命令行上会有是否创建用户设备配置的询问。
如果回答“yes”,一系列关于设备各方面配置的问题将会列出,需要你的确认。
每个问题都有一个默认值在括号中标出,如果输入为空(直接输入回车),这些默认答案将会被选择。
如果第一个问题,关于是否创建用户设备配置的回答是“no”,则所有配置都将是使用默认值。
现在一个名称为OMS的AVD已经创建完成。
你可以使用命令行“androidlistavd”来检查刚刚创建的AVD是否存在。
4.在EclipseIDE中添加OPhone库
为了程序编译调试中能使用到OPhoneAPI,需要添加一个用户库(UserLibrary)到Eclipse中,库文件对应于OPhoneSDK所在目录下的oms.jar。
具体步骤如下:
1.运行Eclipse,菜单上选择Window>Preferences...,打开属性编辑窗
2.从弹出的编辑窗中选择Java>BuildPath>UserLibraries。
3.在用户库(UserLibraries)窗口中点击New,打开NewUserLibraries对话框。
输入OPhone1.5,并点击OK。
4.选中新添加的OPhone,并点击AddJARs。
选择OPhoneSDK目录下的文件oms.jar,点击OK。
现在OPhone用户库已经添加到EclipseIDE的编译目录中,当一个新的OPhone项目被创建,你可以添加该OPhone用户库到你的项目的编译路径(JavaBuildPath)下。
5.在上一窗口中,双击OPhone下的JavadocLocation,将会弹出窗口JavadocFor'oms.jar'。
选择弹出窗口中的Javadocinarchive,并选定你的EclipseIDE目录下的plugins/ophone.sdk.doc_VERSION.jar文件,然后确定退出。
5.安装ODT
安装Eclipse插件-ODT
ODT是为在EclipseIDE下进行OPhone应用开发而提供的Eclipse插件。
如果要使用Eclipse作为调试和编译的集成开发环境,则需要首先安装ODT。
你可以在SDK目录中找到ODT安装包:
sdk_folder/tools/ophone/ODT-0.9.0.zip。
安装于Eclipse3.4(Ganymede)
1.运行Eclipse,然后选择Help>SoftwareUpdates...
2.在弹出的窗口中点击:
AvailableSoftware
3.点击AddSite...,然后点击Archive...
4.选中之前准备好的ODT安装文件,并确认返回。
5.在返回的配置窗口,将会列出待添加的插件。
点击复选框项目OPhoneDevelopmentTools,点击Install...
6.在后续的安装窗口,"OPhonedevelopmentTools"将会被选中,点击Finish完成安装。
7.重启动Eclipse。
其他Eclipse版本,请根据Eclipse的帮助文件进行相应的插件添加。
最后,当Eclipse重新启动,配置你的SDK的目录:
1.Eclipse菜单选择Window>Preferences...,打开配置窗口。
2.从左侧控制面板选择OPhone配置项。
3.在配置项的内容面板,点击Browse...,指定OPhoneSDK安装的路径。
4.点击Apply,然后点击OK。
3.安装WDT
6.安装Eclipse插件(WDT)
如果你使用Eclipse作为Widget应用的开发环境,你还需要安装Eclipse插件WDT。
WDT是WidgetDevelpmentTools的缩写,它集成了Wdiget工程开发需要的工具。
这些工具可以实现Widget工程的创建、源代码的编辑、运行和调试等功能。
WDT功能强大,可扩展性好,让Widget的开发变得更加简单和快捷。
你可以在OPhoneSDK中找到WDT安装包:
sdk_folder/tools/ophone/JIL-WDT-1.1.zip。
下面是WDT的安装过程:
安装于Eclipse3.4(Ganymede)
1.运行Eclipse,然后选择Help>SoftwareUpdates...
2.在弹出的窗口中点击:
AvailableSoftware
3.点击AddSite...,然后点击Archive...
4.选中之前准备好的WDT安装文件,并确认返回。
5.在返回的配置窗口,将会列出待添加的插件。
点击复选框项目WidgetDevelopmentTools,点击Install...
6.在后续的安装窗口,"WidgetDevelopmentTools"将会被选中,点击Finish完成安装。
7.重启动Eclipse。
其他Eclipse版本,请根据Eclipse的帮助文件进行相应的插件添加。
最后,当Eclipse重新启动,配置你的SDK的目录:
1.Eclipse菜单选择Window>Preferences...,打开配置窗口。
2.从左侧控制面板选择Widget配置项。
3.在配置项的内容面板,点击Browse...,指定OPhoneSDK安装的路径。
4.点击Apply,然后点击OK。
7.实例创建
ophonesdk1.0开发文档请点这里
Hello,OPhone!
下面将会举一个例子,创建一个简单的OPhone应用程序,输出所有的呼叫记录,这个例子使用了OPhone的LocalSearchAPI。
创建OPhone工程
∙在开始创建第一个工程之前,必需要先配置好Eclipse环境(可以在Windows或者Linux上安装Eclipse),如果没有Eclipse,可以先到Eclipse的官方网站上去下载EclipseIDE。
有了Eclipse,还要确认Eclipse中安装了ODT。
安装ODT的过程,可以参考安装Eclipse插件。
1.创建OPhone工程
打开Eclipse,选择“File>New,选择“OPhoneProject”选项
2.设置Project属性
打开“NewOPhoneProject”对话框,输入Project名,设置Project属性。
具体参照下图:
Contents部分和普通的Eclipse工程创建一样。
Properties部分需要填写java代码的package名,还要设置Activity名,对于OPhone应用程序来说,Activity是程序的入口。
3.添加OPhone库支持
创建OPhone工程后,在EclipseIDE界面左侧的“PackageExplorer”中选择刚才创建的工程,点击右键或者打开“Project”菜单,选择“Properties”。
在弹出的属性设置窗口中选取“JavaBuildPath”,你将会看到如下窗口,选中“Libraries”选项页:
点击“AddLibrary...”按钮
选择“UserLibrary”,然后点击“Next>”
如下图所示的对话框,选中OPhone1.5,如果你发现没有OPhone1.5选项,可以点击“UserLibraries...”,配置OPhone1.5库,具体细节,请参考:
在EclipseIDE中添加OPhone库。
选中“OPhone1.5”后,点击“Finish”。
工程属性对话框会显示如下:
.
点击“OK”后,一个OPhone的Project就算创建完成了。
你会发现你的工程内部有一个java文件,名字叫HelloOPhone,源代码如下:
viewplaincopytoclipboardprint?
1.public class HelloOPhone extends Activity {
2. /** Called when the activity is first created. */
3. @Override
4. public void onCreate(Bundle icicle) {
5. super.onCreate(icicle);
6. setContentView(R.layout.main);
7. }
8.}
publicclassHelloOPhoneextendsActivity{
/**Calledwhentheactivityisfirstcreated.*/
@Override
publicvoidonCreate(Bundleicicle){
super.onCreate(icicle);
setContentView(R.layout.main);
}
}
编写代码
∙接下来我们将修改这个自动生成的源文件,去调用OPhoneAPI:
示例代码要实现的功能如下:
:
1.在屏幕上,创建一个可以滚动显示的文本区域
2.调用OPhone的API
3.输出呼叫记录到文本区域中,这些记录是通过OPhoneAPI的调用获得的
∙编辑XML文件,创建UI
打开main.xml,该文件的路径是:
res/layout/main.xml。
在Eclipse下,可以用“AndroidLayoutEditor”来编辑XML文件,修改后的XML内容如下:
viewplaincopytoclipboardprint?
1.
xml version="1.0" encoding="utf-8"?
>
2. android=" 3. android: layout_width="fill_parent" 4. android: layout_height="fill_parent"> 5. id="@+id/textview" 6. android: layout_width="fill_parent" 7. android: layout_height="wrap_content" /> 8.
9.
xmlversion="1.0"encoding="utf-8"?
>
android=" android: layout_width="fill_parent" android: layout_height="fill_parent"> id="@+id/textview" android: layout_width="fill_parent" android: layout_height="wrap_content"/> 创建一个TextView控件,指定控件的id为“textview”。 设置TextView的属性值,“layout_height”的值为“wrap_content”。 ∙编辑工程中的Java文件,调用LocalSearch的API 接下来编辑java文件,打开ophone/hello/HelloOPhone.java,添加代码,调用LocalSearchAPI,修改后的代码如下: viewplaincopytoclipboardprint? 10.package oms.hello; 11. 12.import ... 13.import oms.servo.search.SearchProvider; 14.import android.database.Cursor; 15.import .Uri; 16.import android.os.Bundle; 17. 18.public class HelloOPhone extends Activity { 19. /** Called when the activity is first created. */ 20. @Override 21. public void onCreate(Bundle icicle) { 22. 23. ... 24. 25. // step 2: call OPhone API(LocalSearch) 26. String searchSelection = "type: " + SearchProvider.TYPE_CALL; 27. String searchResult = localSearch(searchSelection); 28. } 29. 30. public String localSearch(String searchSelection) { 31. // search for SMS 32. Uri uri = Uri.parse(SearchProvider.CONTENT_URI); 33. Cursor cursor = getContentResolver().query(uri, null, searchSelection, 34. null, null); 35. 36. StringBuffer result = new StringBuffer(); 37. result.append("#id #calltype #title #time(#duration)\n"); 38. // print result out 39. while (cursor.moveToNext()) { 40. // Use cursor.respond function to get the data. 41. Bundle extras = new Bundle(); 42. extras = cursor.respond(extras); 43. // Extract the data from search result 44. String id = extras.getString(SearchProvider.FIELD_ID); 45. String calltype = extras.getString(SearchProvider.FIELD_CALL_TYPE); 46. String title = extras.getString(SearchProvider.FIELD_TITLE); 47. long time = Long.parseLong(extras.getString(SearchProvider.FIELD_TIME)); 48. int duration = Integer.parseInt(extras.getString(SearchProvider.FIELD_CALL_DURATION)); 49. result.append("\n").append(id) 50. .append("\n[").append(calltype).append("]") 51. .append("\t").append(title) 52. .append("\t").append(new Date(time).toString()) 53. .append("(").append(duration).append(")") 54. .append("\n"); 55. } 56. 57. cursor.close(); 58. return result.toString(); 59. } 60.} 61. packageoms.hello; import... importoms.servo.search.SearchProvider; importandroid.database.Cursor; import.Uri; importandroid.os.Bundle; publicclassHelloOPhoneextendsActivity{ /**Calledwhentheactivityisfirstcreated.*/ @Override publicvoidonCreate(Bundleicicle){ ... //step2: callOPhoneAPI(LocalSearch) StringsearchSelection="type: "+SearchProvider.TYPE_CALL; StringsearchResult=localSearch(searchSelection); } publicStringlocalSearch(StringsearchSelection){ //searchforSMS Uriuri=Uri.parse(SearchProvider.CONTENT_URI); Cursorcursor=getContentResolver().query(uri,null,searchSelection, null,null); StringBufferresult=newStringBuffer(); result.append("#id#calltype#t
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Ophone 环境 搭建