Intent使用大全

本文详细介绍 Android 中 Intent 的多种使用场景,包括启动浏览器、拨打电话、发送短信和邮件等,并提供了具体的代码实例。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >



android 中intent是经常要用到的。不管是页面牵转,还是传递数据,或是调用外部程序,系统功能都要用到intent。在做了一些intent的例子之后,整理了一下intent,希望对大家有用。由于intent内容太多,不可能真的写全,难免会有遗落,遇到以后我会随时更新。如果你们有疑问或新的intent内容,大家互相交流。 

一、从google搜索内容   

   Intent intent = new Intent();   

   intent.setAction(Intent.ACTION_WEB_SEARCH);   

   intent.putExtra(SearchManager.QUERY,"searchString")   

   startActivity(intent);

二、浏览网页

   Uri uri = Uri.parse("http://www.google.com");   

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

   startActivity(it);   

三、拨打电话

   Uri uri = Uri.parse("tel:xxxxxx");

   Intent it = new Intent(Intent.ACTION_DIAL, uri);

   startActivity(it);

四、路径规划

   Uri uri = Uri.parse(http://maps.google.com/maps?f=dsaddr=startLat%20startLng&daddr=endLat%20endLng&hl=en);

   Intent it = new Intent(Intent.ACTION_VIEW,URI);

   startActivity(it);

五、显示地图

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

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

  startActivity(it);

六、调用发短信的程序  

Intent it = new Intent(Intent.ACTION_VIEW);      

it.putExtra("sms_body""The SMS text");      

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

startActivity(it);

七、发送短信

Uri uri = Uri.parse("smsto:0800000123");      

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

it.putExtra("sms_body""The SMS text");      

startActivity(it);   

String body="this is sms demo";   

Intent mmsintent = new Intent(Intent.ACTION_SENDTO, Uri.fromParts("smsto", number, null));   

mmsintent.putExtra(Messaging.KEY_ACTION_SENDTO_MESSAGE_BODY, body);   

mmsintent.putExtra(Messaging.KEY_ACTION_SENDTO_COMPOSE_MODE, true);   

mmsintent.putExtra(Messaging.KEY_ACTION_SENDTO_EXIT_ON_SENT, true);   

startActivity(mmsintent);

八、发送彩信

Uri uri = Uri.parse("content://media/external/images/media/23");      

Intent it = new Intent(Intent.ACTION_SEND);      

it.putExtra("sms_body""some text");      

it.putExtra(Intent.EXTRA_STREAM, uri);      

it.setType("image/png");      

startActivity(it);   

StringBuilder sb = new StringBuilder();   

sb.append("file://");   

sb.append(fd.getAbsoluteFile());   

Intent intent = new Intent(Intent.ACTION_SENDTO, Uri.fromParts("mmsto", number, null));   

// Below extra datas are all optional.   

intent.putExtra(Messaging.KEY_ACTION_SENDTO_MESSAGE_SUBJECT, subject);   

intent.putExtra(Messaging.KEY_ACTION_SENDTO_MESSAGE_BODY, body);   

intent.putExtra(Messaging.KEY_ACTION_SENDTO_CONTENT_URI, sb.toString());   

intent.putExtra(Messaging.KEY_ACTION_SENDTO_COMPOSE_MODE, composeMode);   

intent.putExtra(Messaging.KEY_ACTION_SENDTO_EXIT_ON_SENT, exitOnSent);   

startActivity(intent);  

九、发送Email

Uri uri = Uri.parse("mailto:xxx@abc.com");   

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

startActivity(it);   

Intent it = new Intent(Intent.ACTION_SEND);      

it.putExtra(Intent.EXTRA_EMAIL, "me@abc.com");      

it.putExtra(Intent.EXTRA_TEXT, "The email body text");      

it.setType("text/plain");      

startActivity(Intent.createChooser(it, "Choose Email Client"));   

Intent it=new Intent(Intent.ACTION_SEND);        

String[] tos={"me@abc.com"};        

String[] ccs={"you@abc.com"};        

it.putExtra(Intent.EXTRA_EMAIL, tos);        

it.putExtra(Intent.EXTRA_CC, ccs);        

it.putExtra(Intent.EXTRA_TEXT, "The email body text");        

it.putExtra(Intent.EXTRA_SUBJECT, "The email subject text");        

it.setType("message/rfc822");        

startActivity(Intent.createChooser(it, "Choose Email Client"));      

  

Intent it = new Intent(Intent.ACTION_SEND);      

it.putExtra(Intent.EXTRA_SUBJECT, "The email subject text");      

it.putExtra(Intent.EXTRA_STREAM, "file:///sdcard/mysong.mp3");      

sendIntent.setType("audio/mp3");      

startActivity(Intent.createChooser(it, "Choose Email Client"));

十、播放多媒体     

Intent it = new Intent(Intent.ACTION_VIEW);   

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

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

startActivity(it);   

Uri uri = Uri.withAppendedPath(MediaStore.Audio.Media.INTERNAL_CONTENT_URI, "1");      

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

startActivity(it);

十一、uninstall apk

Uri uri = Uri.fromParts("package", strPackageName, null);      

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

startActivity(it);   

十二、install apk   

Uri installUri = Uri.fromParts("package""xxx"null);   

returnIt = new Intent(Intent.ACTION_PACKAGE_ADDED, installUri);   

十三、打开照相机 

<1>Intent i = new Intent(Intent.ACTION_CAMERA_BUTTON, null);   

    this.sendBroadcast(i);   

<2>long dateTaken = System.currentTimeMillis();   

    String name = createName(dateTaken) + ".jpg";   

    fileName = folder + name;   

    ContentValues values = new ContentValues();   

    values.put(Images.Media.TITLE, fileName);   

    values.put("_data", fileName);   

    values.put(Images.Media.PICASA_ID, fileName);   

    values.put(Images.Media.DISPLAY_NAME, fileName);   

    values.put(Images.Media.DESCRIPTION, fileName);   

    values.put(Images.ImageColumns.BUCKET_DISPLAY_NAME, fileName);   

    Uri photoUri = getContentResolver().insert(   

            MediaStore.Images.Media.EXTERNAL_CONTENT_URI, values);   

       

    Intent inttPhoto = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);   

    inttPhoto.putExtra(MediaStore.EXTRA_OUTPUT, photoUri);   

    startActivityForResult(inttPhoto, 10);

十四、从gallery选取图片

Intent i = new Intent();   

i.setType("image/*");   

i.setAction(Intent.ACTION_GET_CONTENT);   

startActivityForResult(i, 11);

十五、打开录音机

Intent mi = new Intent(Media.RECORD_SOUND_ACTION);   

startActivity(mi);

十六、显示应用详细列表

Uri uri = Uri.parse("market://details?id=app_id");           

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

startActivity(it); 

十七、寻找应用

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

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

startActivity(it);

十八、打开联系人列表

<1>              

    Intent i = new Intent();   

    i.setAction(Intent.ACTION_GET_CONTENT);   

    i.setType("vnd.android.cursor.item/phone");   

    startActivityForResult(i, REQUEST_TEXT);   

  <2>   

    Uri uri = Uri.parse("content://contacts/people");   

    Intent it = new Intent(Intent.ACTION_PICK, uri);   

    startActivityForResult(it, REQUEST_TEXT);

十九、打开另一程序

Intent i = new Intent();   

ComponentName cn = new ComponentName("com.yellowbook.android2",   

        "com.yellowbook.android2.AndroidSearch");   

i.setComponent(cn);   

i.setAction("android.intent.action.MAIN");   

startActivityForResult(i, RESULT_OK);

二十、调用系统编辑添加联系人(高版本SDK有效):

Intent it = newIntent(Intent.ACTION_INSERT_OR_EDIT);  

it.setType("vnd.android.cursor.item/contact");  

//it.setType(Contacts.CONTENT_ITEM_TYPE);  

it.putExtra("name","myName");  

it.putExtra(android.provider.Contacts.Intents.Insert.COMPANY,  "organization");  

it.putExtra(android.provider.Contacts.Intents.Insert.EMAIL,"email");  

it.putExtra(android.provider.Contacts.Intents.Insert.PHONE,"homePhone");  

it.putExtra(android.provider.Contacts.Intents.Insert.SECONDARY_PHONE,  

               "mobilePhone");  

it.putExtra(  android.provider.Contacts.Intents.Insert.TERTIARY_PHONE,  

               "workPhone");  

it.putExtra(android.provider.Contacts.Intents.Insert.JOB_TITLE,"title");  

startActivity(it);

二十一、调用系统编辑添加联系人(全有效):

Intent intent = newIntent(Intent.ACTION_INSERT_OR_EDIT);  

intent.setType(People.CONTENT_ITEM_TYPE);  

intent.putExtra(Contacts.Intents.Insert.NAME, "My Name");  

intent.putExtra(Contacts.Intents.Insert.PHONE, "+1234567890");  

intent.putExtra(Contacts.Intents.Insert.PHONE_TYPE,Contacts.PhonesColumns.TYPE_MOBILE);  

intent.putExtra(Contacts.Intents.Insert.EMAIL, "com@com.com");  

intent.putExtra(Contacts.Intents.Insert.EMAIL_TYPE, Contacts.ContactMethodsColumns.TYPE_WORK);  

startActivity(intent);

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值