版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
Android物联网应用程序开发资源转化系统教材辽宁轻工职业学院辽宁轻工职业学院任务实现知识准备任务目标目录
辽宁轻工职业学院任务3拍码购物功能中调用照相机的实现项目3页面跳转的实现辽宁轻工职业学院当用户点击拍码购物的按钮后系统调用照相机,为后期进行二维码扫描做准备。辽宁轻工职业学院【任务目标】
1.掌握Android系统的信使:intent2.掌握Activity的隐式启动
辽宁轻工职业学院【知识准备】Intent的中文意思是“意图,意向”,在Android中提供了Intent机制来协助应用间的交互与通讯,Intent负责对应用中一次操作的动作、动作涉及数据、附加数据进行描述,Android则根据此Intent的描述,负责找到对应的组件,将Intent传递给调用的组件,并完成组件的调用。Intent不仅可用于应用程序之间,也可用于应用程序内部的Activity/Service之间的交互。因此,可以将Intent理解为不同组件之间通信的“媒介”专门提供组件互相调用的相关信息。Intent有以下几个属性:
动作(Action),数据(Data),分类(Category),类型(Type),组件(Compent)以及扩展信(Extra)。其中Intent中的四个重要属性——Action、Data、Category、Extras1.Intent的Action属性辽宁轻工职业学院【知识准备】1.显示网页:Uriuri=Uri.parse("");Intentit=newIntent(Intent.ACTION_VIEW,uri);startActivity(it);2.显示地图:Uriuri=Uri.parse("geo:38.899533,-77.036476");Intentit=newIntent(Intent.Action_VIEW,uri);startActivity(it);3.路径规划:Uriuri=Uri.parse("/maps?f=d&saddr=startLat%20startLng&daddr=endLat%20endLng&hl=en");Intentit=newIntent(Intent.ACTION_VIEW,URI);1.Intent的Action属性辽宁轻工职业学院【知识准备】4.拨打电话:调用拨号程序Uriuri=Uri.parse("tel:xxxxxx");Intentit=newIntent(Intent.ACTION_DIAL,uri);startActivity(it);5.发送短信Uriuri=Uri.parse("smsto:0800000123");Intentit=newIntent(Intent.ACTION_SENDTO,uri);it.putExtra("sms_body","TheSMStext");startActivity(it);6.播放多媒体Intentit=newIntent(Intent.ACTION_VIEW);Uriuri=Uri.parse("file:///sdcard/song.mp3");it.setDataAndType(uri,"audio/mp3");startActivity(it);2.Intent的Data属性辽宁轻工职业学院【知识准备】Intent的Data属性是执行动作的URI和MIME类型,不同的Action有不同的Data数据指定。比如:ACTION_EDITAction应该和要编辑的文档URIData匹配,ACTION_VIEW应用应该和要显示的URI匹配。常用值如下所示: tel://:号码数据格式,后跟电话号码。 mailto://:邮件数据格式,后跟邮件收件人地址。 smsto://:短息数据格式,后跟短信接收号码。 content://:内容数据格式,后跟需要读取的内容。 file://:文件数据格式,后跟文件路径。 market://search?q=pname:pkgname:市场数据格式,在 GoogleMarket里搜索包名为pkgname的应用。 geo://latitude,longitude:经纬数据格式,在地图上显示经纬度所指定的位置。3.Intent的Category属性辽宁轻工职业学院【知识准备】Intent中的Category属性是一个执行动作Action的附加信息。比如:CATEGORY_HOME则表示放回到Home界面,ALTERNATIVE_CATEGORY表示当前的Intent是一系列的可选动作中的一个。CATEGORY_DEFAULT:Android系统中默认的执行方式,按照普通Activity的执行方式执行。CATEGORY_HOME:设置该组件为HomeActivity。CATEGORY_PREFERENCE:设置该组件为Preference。CATEGORY_LAUNCHER:设置该组件为在当前应用程序启动器中优先级最高的Activity,通常为入口ACTION_MAIN配合使用。CATEGORY_BROWSABLE:设置该组件可以使用浏览器启动。CATEGORY_GADGET:设置该组件可以内嵌到另外的Activity中。4.Intent的Extras属性辽宁轻工职业学院【知识准备】Intent的Extras属性主要用于传递目标组件所需要的额外的数据。通过putExtras()方法设置。常用值如下所示:CATEGORY_DEFAULT:Android系统中默认的执行方式,按照普通Activity的执行方式执行。CATEGORY_HOME:设置该组件为HomeActivity。CATEGORY_PREFERENCE:设置该组件为Preference。CATEGORY_LAUNCHER:设置该组件为在当前应用程序启动器中优先级最高的Activity,通常为入口ACTION_MAIN配合使用。CATEGORY_BROWSABLE:设置该组件可以使用浏览器启动。CATEGORY_GADGET:设置该组件可以内嵌到另外的Activity中辽宁轻工职业学院【任务实现】1)在Eclipse下新建名为AndroidDome3_2的Android项目。2)修改res/layout文件夹下的activity_main.xml文件,如下图所示。辽宁轻工职业学院【任务实现】在默认的线性布局下添加RelativeLayout布局,并在RelativeLayout下添加一个Btutton按钮控件:<LinearLayoutxmlns:android="/apk/res/android"android:layout_width="fill_parent"android:layout_height="fill_parent"android:background="@drawable/bg_shopping"android:orientation="horizontal"><RelativeLayoutandroid:layout_width="fill_parent"android:layout_height="fill_parent"android:layout_margin="30dp"android:background="@drawable/bg_frame_descend_small"android:orientation="vertical"><Buttonandroid:id="@+id/btnOpenCamera"android:layout_width="wrap_content"android:layout_height="35dp"android:layout_alignParentTop="true"android:layout_centerHorizontal="true"android:background="@drawable/btn_page_hover"android:text="打开系统相机拍照"android:textColor="@color/white"/></RelativeLayout>
</LinearLayout>辽宁轻工职业学院【任务实现】3)声明Button控件,和拍照标识:privateButtonmBtnOpenCamera;publicstaticfinalintMEDIA_TYPE_IMAGE=1;//标识是拍照4)修改src目录下的MainActivity.java文件,并自定义一个initView()方法实现控件的初始化,同时为按钮添加监听事件:publicvoidinitView(){ mBtnOpenCamera=(Button)findViewById(R.id.btnOpenCamera); mBtnOpenCamera.setOnClickListener(newOnClickListener(){ @Override publicvoidonClick(Viewv){ } }); }辽宁轻工职业学院【任务实现】5)实现调用系统自身照相机功能:mBtnOpenCamera.setOnClickListener(newOnClickListener(){
@Override publicvoidonClick(Viewv) { I
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
评论
0/150
提交评论