怎样调用android系统自带的应用?

iammuyue 2009-12-21 03:16:39
我现在做一个应用,比如说其中的一项功能是收发e-mail,android系统不是本身带有e-mail功能么,那怎么样可以把系统自带的功能弄到我的应用中来?
...全文
3136 17 打赏 收藏 转发到动态 举报
写回复
用AI写文章
17 条回复
切换为时间正序
请发表友善的回复…
发表回复
diuuuuus 2011-07-04
  • 打赏
  • 举报
回复
学习了
ljfljf2006205 2010-08-23
  • 打赏
  • 举报
回复
学习学习
changhe0501 2010-06-01
  • 打赏
  • 举报
回复
mark.
LG漫谈技术 2010-03-28
  • 打赏
  • 举报
回复
不错,希望高手加 83546292 群 ,一起学研究Android
chenjili1987 2010-03-10
  • 打赏
  • 举报
回复
这个平台在哪里运行好点啊
chenhuai2001 2010-01-29
  • 打赏
  • 举报
回复
[Quote=引用 8 楼 lmdy2001 的回复:]
来个总结:

显示网页: Uri uri = Uri.parse("http://www.google.com");

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);
复制代码路径规划: Uri uri = Uri.parse("http://maps.google.com/maps?f=d&saddr=startLat%20startLng&daddr=endLat%20endLng&hl=en");

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("tel.xxxxxx");

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

要使用这个必须在配置文件中加入 <uses-permission id="android.permission.CALL_PHONE" />
复制代码发送SMS/MMS
调用发送短信的程序 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); 
复制代码发送彩信 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);
复制代码发送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 程序 Uri uri = Uri.fromParts("package", strPackageName, null); 

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

startActivity(it);
[/Quote]
请问,这些URI是在哪看到的,例如短信的“smsto:”,我在文档里没找到这块。
你的信息对我非常有用,谢谢!
莫名的码农 2009-12-30
  • 打赏
  • 举报
回复
关于楼主的问题,只要指定email地址,然后发个intent就可以把Email启动起来了:

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

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

startActivity(it);

莫名的码农 2009-12-30
  • 打赏
  • 举报
回复
来个总结:

显示网页: Uri uri = Uri.parse("http://www.google.com");

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);
复制代码路径规划: Uri uri = Uri.parse("http://maps.google.com/maps?f=d&saddr=startLat%20startLng&daddr=endLat%20endLng&hl=en");

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("tel.xxxxxx");

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

要使用这个必须在配置文件中加入<uses-permission id="android.permission.CALL_PHONE" />
复制代码发送SMS/MMS
调用发送短信的程序 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);
复制代码发送彩信 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);
复制代码发送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 程序 Uri uri = Uri.fromParts("package", strPackageName, null);

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

startActivity(it);
iammuyue 2009-12-30
  • 打赏
  • 举报
回复
[Quote=引用 8 楼 lmdy2001 的回复:]
来个总结:

显示网页: Uri uri = Uri.parse("http://www.google.com");

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);
复制代码路径规划: Uri uri = Uri.parse("http://maps.google.com/maps?f=d&saddr=startLat%20startLng&daddr=endLat%20endLng&hl=en");

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("tel.xxxxxx");

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

要使用这个必须在配置文件中加入 <uses-permission id="android.permission.CALL_PHONE" />
复制代码发送SMS/MMS
调用发送短信的程序 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);
复制代码发送彩信 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);
复制代码发送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 程序 Uri uri = Uri.fromParts("package", strPackageName, null);

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

startActivity(it);
[/Quote]

你这个比较全,受教了。
誰伴我闖荡 2009-12-23
  • 打赏
  • 举报
回复
嗯,文档是个好东西~
  • 打赏
  • 举报
回复
sample里有相关的例子呀
iammuyue 2009-12-22
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 zxh_wolfe 的回复:]
可惜文档不全,唉
这里有几种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"));
[/Quote]

是不是很多,但也可以凑合着用了,学习学习。。。
zxh_wolfe 2009-12-22
  • 打赏
  • 举报
回复
可惜文档不全,唉
这里有几种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"));
iammuyue 2009-12-21
  • 打赏
  • 举报
回复
i see,谢谢楼上两位。。。
biaozai06 2009-12-21
  • 打赏
  • 举报
回复
在Android中调用系统功能,一般是通过Intent
challenge99 2009-12-21
  • 打赏
  • 举报
回复
sdk 文档上有说明

android_sdk/docs/guide/appendix/g-app-intents.html

80,476

社区成员

发帖
与我相关
我的任务
社区描述
移动平台 Android
androidandroid-studioandroidx 技术论坛(原bbs)
社区管理员
  • Android
  • yechaoa
  • 失落夏天
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧