ImageVerifierCode 换一换
格式:DOCX , 页数:25 ,大小:2.12MB ,
资源ID:4873669      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bingdoc.com/d-4873669.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(基于Andriod环境的指南针设计Word下载.docx)为本站会员(b****2)主动上传,冰点文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰点文库(发送邮件至service@bingdoc.com或直接QQ联系客服),我们立即给予删除!

基于Andriod环境的指南针设计Word下载.docx

1、Android.Inc后,继续对Android系统开发运营,它采用了软件堆层(software stack,又名软件叠层)的架构,主要分为三部分。底层Linux内核只提供基本功能,其他的应用软件则由各公司自行开发,部分程序以Java编写。 2011年初数据显示,仅正式上市两年的操作系统Android已经超越称霸十年的塞班系统,使之跃居全球最受欢迎的智能手机平台。现在,Android系统不但应用于智能手机,也在平板电脑市场急速扩张,在智能MP4方面也有较大发展。采用Android系统主要厂商包括台湾的HTC,(第一台谷歌的手机G1由HTC生产代工)美国摩托罗拉,SE等,中国大陆厂商如:魅族(M9

2、),华为、中兴、联想、蓝魔等。3.2下载软件nJDK到下载Eclipse 4.4http:/www.eclipse.org/downloads/下载SDK3.3 安装软件和配置环境3.3.1 安装JDK下载好的JDK是一个可执行安装程序,双击安装。假设安装路径为:C:/ProgramFiles/Java/jdk1.6.0_05(当然其他路径也可以)。JDK安装完成之后要设置系统环境变量:我的电脑点右键,选择“属性”,选择“高级”标签,进入环境变量设置。环境变量设置,分别设置三个环境变量:JAVA_HOME、path变量、classpath变量。(1)设置JAVA_HOME在系统环境变量那一栏中

3、点-新建JAVA_HOME(JAVA_HOME指向的是JDK的安装路径)。 变量名:JAVA_HOME;变量值:Files/Java/jdk1.6.0_05(2)设置path变量在系统变量里找到path变量,选择-编辑;(里面已经有很多的变量值,是在变量值的最前面或其他位置加上%JAVA_HOME%/bin;)。变量名:path;变量值:%JAVA_HOME%/bin;(3)设置classpath变量新建classpath。classpath.;%JAVA_HOME%/lib/;%JAVA_HOME%/jre/lib/(注意,CLASSPATH最前面是有个“.”的,表示当前目录,这样当我们运行

4、javaAClass的时候,系统就会先在当前目录寻找AClass文件了。)(4)JDK环境测试配置完成下面写一个简单的java程式来测试J2SDK是否已安装成功:publicclassHelloWorld staticvoidmain(Stringargs) System.out.println(Helloworld!);将程式保存为文档名为HelloWorld.java的文档。打开命令提示符窗口,进入到HelloWorld.java所在目录,键入下面的命令:javacHelloWorld.javajavaHelloWorld3.3.2安装Eclipse将下载的Eclipse压缩包解压到相应的

5、安装目录即可。3.3.3配置Android环境(1)安装AndroidDevelopmentTools(ADT)插件启动eclipse,选择:HelpSoftwareUpdatesFindandInstall. 在弹出的对话框中选择第二个选项:Searchfornewfeaturestoinstall,点击next,进入下一步。选择NewRemoteSite,在弹出的对话框中键入远程站点的名字以及站点的URL:https:/dl-Plugin和EuropeDiscovery Site,然后点击finish,进入下一步搜索的过程,如以下图所示。在搜索结果框中,选择AndroidPlugin,点击

6、next进入下一步。如果有错误提示,则点击右侧工具栏中的SelectRequired(可能要等待几分钟),然后再点击next进入下一步,如以下图所示。阅读和接受licenseagreements,点击next进入下一步。确认安装路径,点击finish,出现下载框,如以下图所示。在出现的验证框中,选择installall,开始安装,如以下图所示。选择Yes,重启Eclipse在Eclipse中,选择File-NewProject,在newproject对话框中可查到Androidproject选项,如下图示,表示ADT插件安装成功。(2)应用AndroidSDK到eclipse在Eclipse工

7、具栏中,选择:WindowPreferences.左边菜单中选中android,在右边浏览框中选择sdk的解压目录作为sdklocation,点击Apply,然后点击OK即可4. 总体设计指南针系统设计非常简单,通过注册传感器监听,获得方向向量数值,来达到旋转指针指示方向的目的。流程如下:5. 详细设计5.1界面设计实现代码如下: pass.SampleView+id/sampleview01400dp/LinearLayout5.2传感器的类型各种类型的传感器: 1.加速度传感器 Sensor.TYPE_ACCELEROMETER:返回手机设备在X,Y,Z三个方向上的加速度. 2.磁场传感器

8、,Sensor.TYPE_MAGNETIC_FIELD:,返回周围磁场在手机的X,Y,Z方向上的影响(磁场分量). 3.陀螺仪感应器:Sensor.TYPE_GYROSCOPE: 4.光线传感器 Sensor.TYPE_LIGHT:返回周围光的强度,单位是勒克斯lx 5.距离感应器Sensor.TYPE_PROXIMITY: 6.重力传感器Sensor.TYPE_GRAVITY: 7.线性加速传感器Sensor.TYPE_LINEAR_ACCELERATION: 8.旋转向量传感器Sensor.TYPE_ROTATION_VECTOR: 9.方向传感器:Sensor.TYPE_ORIENTAT

9、ION:返回三个值,第一个为和正北方向的角度,沿Z轴旋转,0表示正北,90度表示正东,180表示正南,270表示正西. 第二个值绕X轴倾斜,水平屏幕向上,返回0,抬起手机顶部时,值开始减小,范围0-180,从手机底部开始抬起,值范围为0180. 第三个值为手机左侧或者右侧翘起的高度.沿着Y轴倾斜,范围是-9090,水平放置为0,从左侧抬起,会从0到-90,从右侧开始抬起,范围为090. 10.Sensor.TYPE_TEMPERATURE:温度传感器,返回摄氏度. 11.Sensor.TYPE_PRESSURE压力传感器,代表手机设备周围压力的大小 虽然AndroidSDK定义了十多种传感器,

10、但并不是每一部手机都完全支持这些传感器。5.3传感器的使用Android提供的API中对于不同传感器的调用都是用同一个接口,这样编程起来显得非常简单。先得到传感器的控制器,然后注册你感兴趣的感应事件,代码如下:mSensorManager = (SensorManager) getSystemService(Context.SENSOR_SERVICE); mSensor = mSensorManager.getDefaultSensor(Sensor.TYPE_ORIENTATION); mView = (SampleView) findViewById(R.id.sampleview01)

11、; mBtn = (Button) findViewById(R.id.button01); Override protected void onResume() super.onResume(); /为系统的方向传感器注册监听事件 mSensorManager.registerListener(mListener, mSensor, SensorManager.SENSOR_DELAY_GAME);传感器的采样率有如下四种: a) SENSOR_DELAY_NOMAL (200000微秒) b) SENSOR_DELAY_UI (60000微秒) c) SENSOR_DELAY_GAME (

12、20000微秒) d) SENSOR_DELAY_FASTEST (0微秒)这里我使用了SENSOR_DELAY_GAME的获取数值速度。5.4指南针的效果实现这里,我们根据SensorEventListener接口实现对传感器的监听,当传感器发生变化的时候,我们获取传感器的方向数组mValues,并 通过mValues中的第一个参数来实现指针旋转,以及正向方向的判定,进而刷新界面。(1)指针旋转public class SampleView extends View /定义一个Path对象以用于绘图 private Paint mPaint = new Paint(); private Pa

13、th mPath = new Path(); private float mValues; public SampleView(Context context,AttributeSet attrs) super(context,attrs); /使用Path绘制指南针 mPath.moveTo(0, -50); mPath.lineTo(-20, 60); mPath.lineTo(0, 50); mPath.lineTo(20, 60); mPath.close(); public void setValues(float mValues) this.mValues = mValues; p

14、rotected void onDraw(Canvas canvas) Paint paint = mPaint; /设置笔刷颜色为白色 paint.setColor(Color.WHITE); /得到画布的宽度和高度 int w = canvas.getWidth(); int h = canvas.getHeight(); /将坐标系平移到画布中央 canvas.translate(w/ 2, h/ 2); if (mValues != null) canvas.rotate(-mValues0); /绘制Path canvas.drawPath(mPath, mPaint);(2)方向显

15、示public void onSensorChanged(SensorEvent event) /当传感器发生变化时,更新界面 mValues = event.values; if (mView ! mView.setValues(mValues); mView.invalidate(); if (mBtn ! float direction = mValues0; if (direction 22.5f & direction 202.5f & 337.5f) / west西 else if (direction 112.5f & 247.5f) / south南 else if (dire

16、ction 292.5f) / north北 6. 模拟和调试由于指南针软件需要用到手机上的传感器,所以调试步骤需要分别在模拟器和手机上进行。6.1在模拟器上运行完善上述代码,在Eclipse上调试运行。结果如下图:模拟器主界面模拟器程序界面模拟器上指南针运行效果图6.2在手机上运行测试结果如下图:7. 结果分析经过调试,程序正确地执行,打开软件即出现一个黑色背景的画布,画布中央有白色指针。上方有黑底方框和白色字样显示手机正向指向的方向。当我水平放置手机时,移动或旋转手机方向,屏幕中央的指针也会随之而旋转,始终保持指向北方。而屏幕上方的白色字样会在“东、西、南、北”四字之间变动,告诉用户手机正

17、对着什么方向。该程序还是有一些问题的存在,比如没有允许手动输入地磁偏角。没有显示准确的方位数值。没有罗盘界面等等。8. 心得体会通过这次课程设计,我对Android程序设计有了新的认识。首先是对搭建Android的繁琐步骤从一开始非常吃力对照教程进行的陌生到可以轻易帮助他人快速搭建成功的熟悉,弄清了环境变量的配置及其目的。其次是熟悉了Eclipse的使用,从一开始错误连连,难以弄清头绪,到后来可以熟稔得解决各种报错。正确地编译并运行程序。也熟练了自己对模拟器的使用、配置。最后是在传感器方面,我弄懂了许多基础理论,了解了传感器的类型以及基本的使用方法。不过自己还有很多方面不足,比如对JAVA的不

18、熟悉,导致在编程过程中常常受阻,需要查阅资料或者寻求帮助。在这个循序渐进的过程中,我解决了一些自己的认为比较难的地方后我又继续朝前行进着。课程设计终于在我的努力下做完了。我更加深入的了解了Android的特点以及一些相关知识。与其临渊羡鱼,不如退而结网。这次Android课程设计给我的最大的印象就是如果自己有了兴趣,就动手去做,在你的勇气和毅力下,困难是抬不了头的。如果你连失败都不怕了,那你还怕什么,拾起懒惰的心,勤奋就会走向成功。这次的课程设计在我未来的时日里,是一个标杆,因为它告诉了我,只要我努力没有什么事我做不好的。最后我要感谢戚欣老师对我们的辛勤培养,谢谢9. 参考文献1 林城.Android应用开发实战J.机械工业出版社,2011:17-321.2 韩超.Android经典应用程序开发J人力资源出版社,2011:5-18. 3 (美)Cay S.Horstmann,Gary Cornell.Java核心技术J.机械工业出版社,2008:15-17.4 lcsmwp. win7下Android开发环境搭建.EB/OL. 5 Mark Murphy. Beginning Android 2.M. Berkeley:APress,2010.源码下载地址:

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2