首页 > 其他分享 >intent调用代码总结

intent调用代码总结

时间:2023-05-01 14:09:46浏览次数:43  
标签:调用 代码 Uri uri Intent new ACTION intent


进入联系人界面

Intent intent = new Intent(); 

intent.setAction(Intent.ACTION_VIEW); 

intent.setData(People.CONTENT_URI); 

startActivity(intent);



查看某个联系人,当然这里是ACTION_VIEW,如果为选择并返回action改为ACTION_PICK,当然处理intent时返回需要用到startActivityforResult

Uri personUri = ContentUris.withAppendedId(People.CONTENT_URI, ID);//最后的ID参数为联系人Provider中的数据库BaseID,即哪一行

Intent intent = new Intent(); 

 intent.setAction(Intent.ACTION_VIEW); 

 intent.setData(personUri); 

startActivity(intent);



选择一个图片

Intent intent = new Intent(Intent.ACTION_GET_CONTENT);  

intent.addCategory(Intent.CATEGORY_OPENABLE);  

intent.setType("image/*"); 

startActivityForResult(intent, 0);



调用Android设备的照相机,并设置拍照后存放位置

Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);  

intent.putExtra(MediaStore.EXTRA_OUTPUT, Uri.fromFile(new File(Environment 

.getExternalStorageDirectory().getAbsolutePath()+"/cwj", android123 + ".jpg"))); //存放位置为sdcard卡上cwj文件夹,文件名为android123.jpg格式 

startActivityForResult(intent, 0);



搜索指定package name在market上,比如搜索com.android123.cwj的写法如下

Uri uri = Uri.parse("market://search?q=pname:com.android123.cwj");   

Intent intent = new Intent(Intent.ACTION_VIEW, uri);   

startActivity(intent);




显示Web网页:

1. Uri uri = Uri.parse("http://www.android123.com.cn"); 

  2. Intent it = new Intent(Intent.ACTION_VIEW,uri); 

  3. startActivity(it);



显示Google地图:

1. Uri uri = Uri.parse("geo:38.899533,-77.036476"); 

  2. Intent it = new Intent(Intent.Action_VIEW,uri); 

  3. startActivity(it);



Maps路径规划:

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);



注意需要权限 <uses-permission id="android.permission.CALL_PHONE" />

发送SMS/MMS

1. Intent it = new Intent(Intent.ACTION_VIEW); 

  2. it.putExtra("sms_body", "android开发网欢迎您"); 

  3. it.setType("vnd.android-dir/mms-sms"); 

  4. startActivity(it);



发送短信

1. Uri uri = Uri.parse("smsto:10086"); 

  2. Intent it = new Intent(Intent.ACTION_SENDTO, uri); 

  3. it.putExtra("sms_body", "10086"); //正文为10086 

  4. startActivity(it);



发送彩信

1. Uri uri = Uri.parse("content://media/external/images/media/10"); //该Uri根据实际情况修改,external代表外部存储即sdcard 

  2. Intent it = new Intent(Intent.ACTION_SEND); 

  3. it.putExtra("sms_body", "android123.com.cn"); 

  4. it.putExtra(Intent.EXTRA_STREAM, uri); 

  5. it.setType("image/png"); 

  6. startActivity(it);



发送Email

2. Uri uri = Uri.parse("mailto:[email protected]"); 

  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, "[email protected]"); 

  3. it.putExtra(Intent.EXTRA_TEXT, "android开发网测试"); 

  4. it.setType("text/plain"); 

  5. startActivity(Intent.createChooser(it, "选择一个Email客户端"));  


  1. Intent it=new Intent(Intent.ACTION_SEND);   

  2. String[] tos={"[email protected]"};     //发送到 

  3. String[] ccs={"[email protected]"};    //抄送 

  4. it.putExtra(Intent.EXTRA_EMAIL, tos);   

  5. it.putExtra(Intent.EXTRA_CC, ccs);   

  6. it.putExtra(Intent.EXTRA_TEXT, "正文");   

  7. it.putExtra(Intent.EXTRA_SUBJECT, "标题");   

  8. it.setType("message/rfc822");    //编码类型 

  9. startActivity(Intent.createChooser(it, "选择一个Email客户端"));



Email添加附件

1. Intent it = new Intent(Intent.ACTION_SEND); 

  2. it.putExtra(Intent.EXTRA_SUBJECT, "正文"); 

  3. it.putExtra(Intent.EXTRA_STREAM, "file:///sdcard/nobody.mp3"); //附件为sd卡上的nobody MP3文件 

  4. sendIntent.setType("audio/mp3"); 

  5. startActivity(Intent.createChooser(it, "选择一个Email客户端"));



播放多媒体

1.   

  2. Intent it = new Intent(Intent.ACTION_VIEW); 

  3. Uri uri = Uri.parse("file:///sdcard/nobody.mp3"); 

  4. it.setDataAndType(uri, "audio/mp3"); 

  5. startActivity(it); 


  1. Uri uri = Uri.withAppendedPath(MediaStore.Audio.Media.INTERNAL_CONTENT_URI, "1"); //从系统内部的MediaProvider索引中调用播放 

  2. Intent it = new Intent(Intent.ACTION_VIEW, uri); 

  3. startActivity(it);



Uninstall卸载程序

1. Uri uri = Uri.fromParts("package", packageName, null); //packageName为包名,比如com.android123.apkInstaller 

  2. Intent it = new Intent(Intent.ACTION_DELETE, uri); 

  3. startActivity(it);



Installer安装APK

  这里安装APK文件的方法参考 http://www.android123.com.cn/kaifafaq/487.html 一文里面包含两种方法。




缩略图ThumbnailUtils类 - Android2.2新增类
从Android 2.2开始系统新增了一个缩略图ThumbnailUtils类,位于framework的android.media.ThumbnailUtils位置,可以帮助我们从mediaprovider中获取系统中的视频或图片文件的缩略图,该类提供了三种静态方法可以直接调用获取。

   static Bitmap  createVideoThumbnail(String filePath, int kind)  //获取视频文件的缩略图,第一个参数为视频文件的位置,比如/sdcard/android123.3gp,而第二个参数可以为MINI_KIND或MICRO_KIND最终和分辨率有关
   static Bitmap  extractThumbnail(Bitmap source, int width, int height, int options)  //直接对Bitmap进行缩略操作,最后一个参数定义为OPTIONS_RECYCLE_INPUT ,来回收资源
   static Bitmap  extractThumbnail(Bitmap source, int width, int height) // 这个和上面的方法一样,无options选项

  最后Android开发网再次提醒大家,ThumbnailUtils类是API Level从8或更高才开始支持的。

Android系列教程之十:Intents and Intent Filters(一)
http://www.iteye.com/wiki/fly_android/3079-android-intents-filters-first

Android中常见Intent习惯用法-上篇

标签:调用,代码,Uri,uri,Intent,new,ACTION,intent
From: https://blog.51cto.com/u_5454003/6238853

相关文章

  • Android提高第四篇之Activity+Intent
          Android有三个基础组件Activity,Service和BroadcastReceiver,他们都是依赖Intent来启动。本文介绍的是Activity的生命周期以及针对Activity的Intent使用。       之前的例子一直都是使用Activity,在一个LayoutXML与一个Activity捆绑的情况下可以视为一个Form,......
  • 3月代码大全阅读笔记3
    之所以阅读这本书,是想在阅读风格较为轻松的《程序员修炼之道》之后阅读一本更细致、更严肃的“进阶”读物。第一部分打好基础第一章欢迎进入软件构建的世界软件构建的定义:包括编码与调试、单元测试、规划构建、集成等,没有给出一个明确的定义。软件构建的重要性:软件构建......
  • 3月代码大全阅读笔记2
    第7章:高质量的子程序7.1为什么要创建子程序?降低复杂度,让每段代码都具有单一职责;引入中间、易懂的抽象;避免代码重复;支持子类化;隐藏顺序;隐藏指针操作;提高可移植性;简化复杂的布尔判断:把一切复杂的判断放入单独的函数中;改善性能:性能一次优化,能遍布到所有调用点;确保所有......
  • 【愚公系列】用友系列之YonBuilder低代码平台概论和基本使用
    (文章目录)一、引言1.代码平台的概念和发展历程低代码平台是一种通过可视化界面和模板化组件快速创建应用程序的平台,其发展历程主要经历了三个阶段:第一个阶段是第一代低代码平台:其主要关注业务流程管理及应用程序的速度开发,但其可扩展性和可定制性较低。第二个阶段是第二代......
  • 从CPU的视角看 多线程代码为什么那么难写!
      当我们提到多线程、并发的时候,我们就会回想起各种诡异的bug,比如各种线程安全问题甚至是应用崩溃,而且这些诡异的bug还很难复现。我们不禁发出了灵魂拷问“为什么代码测试环境运行好好的,一上线就不行了?”。为了解决线程安全的问题,我们的先辈们在编程语言中引入了各种各样新名......
  • 梦断代码读后感(三)
    《软件工程》教员课上推荐梦断代码作为课后读物,在大致浏览了一遍读物之后,结合半个学期以来软件课程的亲身实践,感触颇深。  《梦断代码》中对软件工程所面临的种种困难与艰难的描述,很符合当下编程工作,自己对于软件编程也有切身感受。正如一队人马并肩扛起代码大石,虽历经磨难仍......
  • 使用 SpringCache 简化缓存代码实现
    SpriingCache实现了基于注解的缓存功能,只需要在方法上添加注解即可实现常用的缓存功能,大大简化了的业务代码的实现。SpringCache默认集成于SpringContext中,这意味着对于使用SpringBoot框架来说,不需要引入额外的jar包即可使用。SpringCache通过CacheManager接口来统一......
  • springboot mybatis-plus 3.5.1代码生成器配置
    springbootmybatis-plus3.5.1代码生成器配置https://blog.csdn.net/Lean_on_Me/article/details/128066822  ......
  • Android HAL 是如何被调用的
    Android对硬件的调用,google推荐使用HAL的方式进行调用,对于AndriodHAL的写法,可以参考android源码里的hardware目录下几个模块的模版。在看HAL的编写方法的过程中,会发现整个模块貌似没有一个入口。一般说来模块都要有个入口,比如应用程序有main函数,可以为加载器进行加......
  • 四月三十日《梦断代码》读后感
    梦断代码书中描写的是一队人马并肩扛起代码大石,虽历经磨难仍欲将其推上山顶的故事,而正是这种故事成就着今天全世界亿万台服务器和PC机上运行的各种软件,成就着人类不断超越实现更伟大的梦想。梦断代码这本书让我越发意识到作为软件开发者的不容易。程序员都怀揣着成就一番事业的......