【Android】Android中Intent的用法总结

简介:
来源:http://blog.sina.com.cn/s/blog_5f1fe33f0100n5e1.html
 Intent只在Android中特有,我把它比作一种运载工具,就像飞机一样,会把一些人带到某个地方,而且如果需要的话,还可以找到机上有哪些人员(数据),这就需要另外一些设备来支持(如:Bundle),最后通过引擎(Context的 Activity)来启动。

           以下是从网上摘来的:前人已有整理,就方便了我们这些后辈了。
1.显示网页:
Java代码  复制代码
  1. Uri uri Uri.parse("http://www.google.com");   
  2. Intent it  new Intent(Intent.ACTION_VIEW,uri);   
  3. startActivity(it);  


2.显示地图:
Java代码  复制代码
  1. Uri uri Uri.parse("geo:38.899533,-77.036476");    
  2. Intent it new Intent(Intent.Action_VIEW,uri);    
  3. startActivity(it);   


3.从google搜索内容
Java代码  复制代码
  1. Intent intent new Intent();   
  2. intent.setAction(Intent.ACTION_WEB_SEARCH);   
  3. intent.putExtra(SearchManager.QUERY,"searchString")   
  4. startActivity(intent);  


4.路径规划
Java代码  复制代码
  1. Uri uri Uri.parse("http://maps.google.com/maps?f=dsaddr=startLat startLng&daddr=endLat endLng&hl=en");    
  2. Intent it new Intent(Intent.ACTION_VIEW,URI);    
  3. startActivity(it);   


5.拨打电话
Java代码  复制代码
  1. Uri uri Uri.parse("tel:xxxxxx");   
  2. Intent it new Intent(Intent.ACTION_DIAL, uri);     
  3. startActivity(it);    
  4. [color=blue]//要使用这个必须在配置文件 中加入<uses-permission id="android .permission.CALL_PHONE" />[/color]   


6.调用发短信的程序
Java代码  复制代码
  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);   


7.发送短信
Java代码  复制代码
  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);     


8.发送彩信
Java代码  复制代码
  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);   


9.发送Email
Java代码  复制代码
  1. Uri uri Uri.parse("mailto:xxx@abc.com");   
  2. Intent it new Intent(Intent.ACTION_SENDTO, uri);   
  3. startActivity(it);   
  4.   
  5. Intent it new Intent(Intent.ACTION_SEND);      
  6. it.putExtra(Intent.EXTRA_EMAIL, "me@abc.com");      
  7. it.putExtra(Intent.EXTRA_TEXT, "The email body text");      
  8. it.setType("text/plain");      
  9. startActivity(Intent.createChooser(it, "Choose Email Client"));     
  10.   
  11. Intent it=new Intent(Intent.ACTION_SEND);        
  12. String[] tos={"me@abc.com"};        
  13. String[] ccs={"you@abc.com"};        
  14. it.putExtra(Intent.EXTRA_EMAIL, tos);        
  15. it.putExtra(Intent.EXTRA_CC, ccs);        
  16. it.putExtra(Intent.EXTRA_TEXT, "The email body text");        
  17. it.putExtra(Intent.EXTRA_SUBJECT, "The email subject text");        
  18. it.setType("message/rfc822");        
  19. startActivity(Intent.createChooser(it, "Choose Email Client"));      
  20.     
  21. Intent it new Intent(Intent.ACTION_SEND);      
  22. it.putExtra(Intent.EXTRA_SUBJECT, "The email subject text");      
  23. it.putExtra(Intent.EXTRA_STREAM, "file:///sdcard/mysong.mp3");      
  24. sendIntent.setType("audio/mp3");      
  25. startActivity(Intent.createChooser(it, "Choose Email Client"));  


10.播放多媒体
Java代码  复制代码
  1. Intent it new Intent(Intent.ACTION_VIEW);   
  2. Uri uri Uri.parse("file:///sdcard/song.mp3");   
  3. it.setDataAndType(uri, "audio/mp3");   
  4. startActivity(it);   
  5.   
  6. Uri uri Uri.withAppendedPath(MediaStore.Audio.Media.INTERNAL_CONTENT_URI, "1");      
  7. Intent it new Intent(Intent.ACTION_VIEW, uri);      
  8. startActivity(it);  


11.install apk
Java代码  复制代码
  1. Uri installUri Uri.fromParts("package""xxx"null);   
  2. returnIt new Intent(Intent.ACTION_PACKAGE_ADDED, installUri);  


12.uninstall apk
Java代码  复制代码
  1. Uri uri Uri.fromParts("package"strPackageName, null);      
  2. Intent it new Intent(Intent.ACTION_DELETE, uri);      
  3. startActivity(it);  


13.发送附件
Java代码  复制代码
  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/eoe.mp3");      
  4. sendIntent.setType("audio/mp3");      
  5. startActivity(Intent.createChooser(it, "Choose Email Client"));  
相关文章
|
6月前
|
Android开发 开发者
Android基础知识:什么是Intent?有哪些类型的Intent?
Android基础知识:什么是Intent?有哪些类型的Intent?
404 0
|
存储 SQL 人工智能
Android Activity启动流程一:从Intent到Activity创建
Android Activity启动流程一:从Intent到Activity创建
|
25天前
|
存储 大数据 数据库
Android经典面试题之Intent传递数据大小为什么限制是1M?
在 Android 中,使用 Intent 传递数据时存在约 1MB 的大小限制,这是由于 Binder 机制的事务缓冲区限制、Intent 的设计初衷以及内存消耗和性能问题所致。推荐使用文件存储、SharedPreferences、数据库存储或 ContentProvider 等方式传递大数据。
39 0
|
2月前
|
编解码 前端开发 Android开发
Android经典实战之TextureView原理和高级用法
本文介绍了 `TextureView` 的原理和特点,包括其硬件加速渲染的优势及与其他视图叠加使用的灵活性,并提供了视频播放和自定义绘制的示例代码。通过合理管理生命周期和资源,`TextureView` 可实现高效流畅的图形和视频渲染。
197 12
|
3月前
|
Java Android开发 UED
安卓scheme_url调端:如果手机上多个app都注册了 http或者https 的 intent。 调端的时候,调起哪个app呢?
当多个Android应用注册了相同的URL Scheme(如http或https)时,系统会在尝试打开这类链接时展示一个选择对话框,让用户挑选偏好应用。若用户选择“始终”使用某个应用,则后续相同链接将直接由该应用处理,无需再次选择。本文以App A与App B为例,展示了如何在`AndroidManifest.xml`中配置对http与https的支持,并提供了从其他应用发起调用的示例代码。此外,还讨论了如何在系统设置中管理这些默认应用选择,以及建议开发者为避免冲突应注册更独特的Scheme。
|
4月前
|
Android开发 Kotlin
Android经典面试题之Kotlin中Lambda表达式有哪些用法
Kotlin的Lambda表达式是匿名函数的简洁形式,常用于集合操作和高阶函数。基本语法是`{参数 -&gt; 表达式}`。例如,`{a, b -&gt; a + b}`是一个加法lambda。它们可在`map`、`filter`等函数中使用,也可作为参数传递。单参数时可使用`it`关键字,如`list.map { it * 2 }`。类型推断简化了类型声明。
25 0
|
6月前
|
定位技术 Android开发
Intent在Android中的几种用法
Intent在Android中的几种用法
66 1
|
6月前
|
Java Android开发
Android桌面快捷方式图标生成与删除 使用Intent与launcher交互
Android桌面快捷方式图标生成与删除 使用Intent与launcher交互
108 1
|
6月前
|
Java Android开发 数据安全/隐私保护
安卓逆向 -- IDA基本用法
安卓逆向 -- IDA基本用法
94 0
|
6月前
|
Android开发
Android Studio App开发入门之在活动之间传递消息(附源码 超详细必看)(包括显示和隐式Intent,向上一个和下一个Activity发送数据)
Android Studio App开发入门之在活动之间传递消息(附源码 超详细必看)(包括显示和隐式Intent,向上一个和下一个Activity发送数据)
281 0