Intent的几种用法
下面列出几种Intent的用法
显示网页:
1.Uri uri = Uri.parse("http://www.google.com");
2.Intent it = new Intent(Intent.ACTION_VIEW,uri);
3.startActivity(it);
Or
Intent intent = new Intent(Intent.ACTION_VIEW);
intent.setData(Uri.parse(URL_FB));
startActivity(intent);
显示地图:
1.Uri uri = Uri.parse("geo:38.899533,-77.036476");
2.Intent it = new Intent(Intent.Action_VIEW,uri);
3.startActivity(it);
路径规划:
1.Uri uri = Uri.parse("http://maps.google.com/maps?f=d&saddr=startLat%20startLng&daddr=endLat%20endLng&hl=en");
2.Intent it = new Intent(Intent.ACTION_VIEW,URI);
3.startActivity(it);
拨打电话:
调用拨号程序
1.Uri uri = Uri.parse("tel:xxxxxx");
2.Intent it = new Intent(Intent.ACTION_DIAL, uri);
3.startActivity(it);
1.Uri uri = Uri.parse("tel.xxxxxx");
2.Intent it =new Intent(Intent.ACTION_CALL,uri);
3.要使用这个必须在配置文件中加入<uses-permission id="android .permission.CALL_PHONE" />
发送SMS/MMS
调用发送短信的程序
1.Intent it = new Intent(Intent.ACTION_VIEW);
2.it.putExtra("sms_body", "The SMS text");
3.it.setType("vnd.android-dir/mms-sms");
4.startActivity(it);
发送短信
1.Uri uri = Uri.parse("smsto:0800000123");
2.Intent it = new Intent(Intent.ACTION_SENDTO, uri);
3.it.putExtra("sms_body", "The SMS text");
4.startActivity(it);
发送彩信
1.Uri uri = Uri.parse("content://media/external/images/media/23");
2.Intent it = new Intent(Intent.ACTION_SEND);
3.it.putExtra("sms_body", "some text");
4.it.putExtra(Intent.EXTRA_STREAM, uri);
5.it.setType("image/png");
6.startActivity(it);
发送Email
2.Uri uri = Uri.parse("mailto:xxx@abc.com");
3.Intent it = new Intent(Intent.ACTION_SENDTO, uri);
4.startActivity(it);
1.Intent it = new Intent(Intent.ACTION_SEND);
2.it.putExtra(Intent.EXTRA_EMAIL, "me@abc.com");
3.it.putExtra(Intent.EXTRA_TEXT, "The email body text");
4.it.setType("text/plain");
5.startActivity(Intent.createChooser(it, "Choose Email Client"));
1.Intent it=new Intent(Intent.ACTION_SEND);
2.String[] tos={"me@abc.com"};
3.String[] ccs={"you@abc.com"};
4.it.putExtra(Intent.EXTRA_EMAIL, tos);
5.it.putExtra(Intent.EXTRA_CC, ccs);
6.it.putExtra(Intent.EXTRA_TEXT, "The email body text");
7.it.putExtra(Intent.EXTRA_SUBJECT, "The email subject text");
8.it.setType("message/rfc822");
9.startActivity(Intent.createChooser(it, "Choose Email Client"));
添加附件
1.Intent it = new Intent(Intent.ACTION_SEND);
2.it.putExtra(Intent.EXTRA_SUBJECT, "The email subject text");
3.it.putExtra(Intent.EXTRA_STREAM, "file:///sdcard/mysong.mp3");
4.sendIntent.setType("audio/mp3");
5.startActivity(Intent.createChooser(it, "Choose Email Client"));
发送附件
2.Intent it = new Intent(Intent.ACTION_SEND);
3.it.putExtra(Intent.EXTRA_SUBJECT, "The email subject text");
4.it.putExtra(Intent.EXTRA_STREAM, "file:///sdcard/eoe.mp3");
5.sendIntent.setType("audio/mp3");
6.startActivity(Intent.createChooser(it, "Choose Email Client"));
播放多媒体
2.Intent it = new Intent(Intent.ACTION_VIEW);
3.Uri uri = Uri.parse("file:///sdcard/song.mp3");
4.it.setDataAndType(uri, "audio/mp3");
5.startActivity(it);
1.Uri uri = Uri.withAppendedPath(MediaStore.Audio.Media.INTERNAL_CONTENT_URI, "1");
2.Intent it = new Intent(Intent.ACTION_VIEW, uri);
3.startActivity(it);
Uninstall 程序
1.Uri uri = Uri.fromParts("package", strPackageName, null);
2.Intent it = new Intent(Intent.ACTION_DELETE, uri);
3.startActivity(it);
uninstall apk
1.Uri uninstallUri = Uri.fromParts("package", "xxx", null);
2.
3.returnIt = new Intent(Intent.ACTION_DELETE, uninstallUri);
install apk
1.Intent intent = new Intent(Intent.ACTION_VIEW);
2.intent.setDataAndType(Uri.parse("file:///sdcard/test.apk"), "application/vnd.android.package-archive");
3.
4.startActivity(intent);
play audio
1.Uri playUri = Uri.parse("file:///sdcard/download/everything.mp3");
2.
3.returnIt = new Intent(Intent.ACTION_VIEW, playUri);
1.//搜索应用
2.Uri uri = Uri.parse("market://search?q=pname:pkg_name");
3.Intent it = new Intent(Intent.ACTION_VIEW, uri);
4.startActivity(it);
5.//where pkg_name is the full package path for an application
7.//显示指定应用的详细页面(这个好像不支持了,找不到app_id)
8.Uri uri = Uri.parse("market://details?id=app_id");
9.Intent it = new Intent(Intent.ACTION_VIEW, uri);
10.startActivity(it);
11.//where app_id is the application ID, find the ID
12.//by clicking on your application on Market home
13.//page, and notice the ID from the address bar
Activity 的切换
2个Activity 的切换,没有数据传递
//从A到B
Intent intent = new Intent();
intent.setClass(A.this, B.class);
startActivity(intent);
2个Activity 之间传递数据
相关的几个函数
startActivityForResult
public final void setResult(int resultCode, String data)
回调函数
protected void onActivityResult(int requestCode, int resultCode, Intent data)
例如A到B,从B得到数据
//A到B
static final int RG_REQUEST = 0;
Intent intent = new Intent();
intent.setClass(A.this, B.class);
startActivityForResult(intent,RG_REQUEST);
//在B中处理
Bundle bundle = new Bundle();
bundle.putString("DataKey", edittext.getText().toString());//给bundle 写入数据
Intent mIntent = new Intent();
mIntent.putExtras(bundle);
setResult(RESULT_OK, mIntent);
finish();
//最后在A的回调函数里面接收数据
if (requestCode == RG_REQUEST) {
if (resultCode == RESULT_CANCELED)
setTitle("Canceled...");
else if(resultCode == RESULT_OK) {
setTitle((String)data.getCharSequenceExtra("DataKey"));
}
}
发表评论
-
【转】Android --权限大全
2011-11-22 22:05 1282android权限大全 e.g. ... -
【转】Android -- 探究Android的多分辨率支持以及各种类型图标尺寸大小
2011-11-21 14:42 2286术语和概念 屏幕尺寸 屏幕的物理尺 ... -
Android学习笔记 --- Terms and installation memo
2011-07-22 12:42 933ADT Android Developer Tools ... -
Android学习笔记 --- AlarmManager
2011-07-01 09:08 0Class Overview This class prov ... -
android环境搭建
2010-12-10 10:08 723http://apps.hi.baidu.com/share/ ... -
Stock项目总结
2010-12-02 22:42 0320*480 48*48pix icon -
[Android]Common Sreen Size of Android
2010-11-08 17:10 783Screen sizes and densities of e ... -
OpenFeint
2010-09-19 17:48 0how to get start http://www.ope ... -
[helloAndroid 读书笔记] key concepts
2011-11-17 08:11 815chapter 2.3 A few objects ar ... -
[Android]helloworld
2010-08-24 05:19 696helloworld android 开发入门 http:/ ... -
[Android]资料收集
2010-06-07 10:01 0Android 中文网 http://android. ... -
[C] Learn C 读书笔记
2010-05-07 14:05 0Header Files Header ...
相关推荐
通过这个项目,开发者不仅可以学习到Intent的基本用法,还能了解到Android应用的结构和组件间的通信方式。对于初学者,这是一个很好的起点,而对于有经验的开发者,它也是一个复习和提升技能的实用资源。
Intent则是一种消息传递对象,用于在Android组件之间进行通信,特别是Activity之间。Intent有两种类型:显式Intent和隐式Intent。显式Intent通过指定目标Component(Activity或Service)的全限定类名来明确表示调用...
总结来说,"android-all-9-robolectric-4913185-2.zip"是一个包含特定版本Robolectric测试库的压缩文件,它提供了一种在Java虚拟机上高效、准确地测试Android应用程序的方法,特别是在API Level 9环境下。...
以下是Android Intent的几种常见用法的详细解释: 1. 显示网页: 当你想在设备上打开一个网页时,可以通过ACTION_VIEW Intent与系统浏览器交互。例如: ```java Uri uri = Uri.parse("http://www.google.com"); ...
Intent的构造方法主要有以下几种: - `Intent(Context packageContext, Class<?> className)`: 创建一个显式Intent,用于启动指定的组件。 - `Intent(String action)`: 创建一个隐式Intent,指定动作。 - `Intent...
本篇文章将详细探讨如何通过Intent在Android中传递对象,主要分为两种方式:使用`Serializable`接口和`Parcelable`接口。 1. **Serializable接口** `Serializable`是Java提供的一个标准序列化接口,当一个类实现了...
在Android应用开发中,Intent是一种强大的机制,用于在应用程序组件之间进行通信,它承载着启动一个新活动、启动服务、传递数据等任务。Intent传递类内容主要包括以下几方面: 1. **基本Intent类型**: - **显式...
在Android系统中,Service是一种非常重要的组件,它用于在后台执行长时间运行的操作,即使用户离开了应用程序,Service仍能持续运行。本教程将深入探讨“android--service实例”,讲解如何创建、启动、绑定以及管理...
本篇将深入探讨Intent的基本概念、类型、使用方法及其在实际开发中的重要性。 **1. Intent基本概念** Intent是一个对象,用于表示应用程序中的一个动作,它描述了应用想要执行的操作以及可能需要的数据。Intent...
以下是对Intent几种常见用法的详细说明: 1. **显示网页** 使用`ACTION_VIEW`和`Uri`来打开浏览器并显示指定的网页。例如: ```java Uri uri = Uri.parse("http://www.google.com"); Intent it = new Intent...
Android API文档是开发者在进行Android应用开发时的重要参考资料,它详细阐述了Android系统的各个组件、接口、类库以及方法的使用。这篇文档集合了多个Android技术分支,为开发者提供了全面的指南。 首先,我们来看...
本篇将深入解析"Android应用源码之Intent_TabHostSample",通过源码分析来探讨这两个组件的使用和实现原理。 首先,Intent是Android系统中的一个核心概念,它充当了不同组件之间通信的桥梁。在Intent中,我们可以...
Intent对象可以通过构造函数创建,常见的有以下几种: - Intent(Context packageContext, Class<?> clazz):用于创建显式Intent。 - Intent(String action):用于创建基于Action的隐式Intent。 - Intent(Intent ...
Android 中隐式 Intent 的使用说明 Android 中的 Intent 机制是 Android 应用程序之间通信的基础,Intent 负责描述一次操作的动作、动作涉及数据、附加数据等信息,然后 Android 系统根据 Intent 的描述找到对应的...
在本篇文章中,我们将深入探讨`TabHost`的工作原理、使用方法以及源码解析,帮助开发者更好地理解和运用这一功能。 `TabHost`是Android SDK提供的一种容器,它允许我们创建带有多个选项卡的用户界面,每个选项卡...
在Android系统中,主要有以下几种方式来实现应用程序的内部通信: 1. **Intent**:Intent是Android中进行组件间通信的主要手段。它可以用来启动一个Activity、Service,或者传递数据。Intent分为显式Intent和隐式...
本项目可能采用了Haar级联分类器,这是一种机器学习方法,通过训练大量的正面和非正面人脸图像来创建一个级联分类器,用于快速定位图像中的人脸区域。 特征提取是人脸识别的关键环节。OpenCV提供了EigenFace、...
本文档详细介绍了Android应用中实现页面跳转的几种方式,包括使用`Action`、`data`、`Category`以及`Extras`等不同方法。这些技术手段不仅帮助开发者更好地管理应用内部的导航逻辑,还能增强用户体验,使用户能够...