首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >用于启动Gmail应用的意图URI

用于启动Gmail应用的意图URI
EN

Stack Overflow用户
提问于 2010-08-13 00:49:57
回答 19查看 79.8K关注 0票数 38

有没有什么URI可以指向android里的GMAIL App,帮我上线?

EN

回答 19

Stack Overflow用户

回答已采纳

发布于 2010-08-29 03:07:04

我在我的应用程序中使用了这个:

代码语言:javascript
运行
复制
Intent mailClient = new Intent(Intent.ACTION_VIEW);
mailClient.setClassName("com.google.android.gm", "com.google.android.gm.ConversationListActivity");
startActivity(mailClient);
票数 40
EN

Stack Overflow用户

发布于 2011-09-18 00:20:25

这只适用于gmail应用程序。

代码语言:javascript
运行
复制
final Intent intent = new Intent(Intent.ACTION_VIEW)
    .setType("plain/text")
    .setData(Uri.parse("test@gmail.com"))
    .setClassName("com.google.android.gm", "com.google.android.gm.ComposeActivityGmail")
    .putExtra(Intent.EXTRA_EMAIL, new String[]{"test@gmail.com"})
    .putExtra(Intent.EXTRA_SUBJECT, "test")
    .putExtra(Intent.EXTRA_TEXT, "hello. this is a message sent from my demo app :-)");
startActivity(intent);

用于大量的电子邮件:

代码语言:javascript
运行
复制
intent.putExtra(Intent.EXTRA_EMAIL, new String[] { "test@gmail.com" });

对于单个电子邮件:

代码语言:javascript
运行
复制
intent.setData(Uri.parse("test@gmail.com"));

您可以根据需要添加extra putExtra(Intent.EXTRA..)和更改setType。:P

更新(14年1月22日):请务必注意,如果您要使用此代码,请检查以确保用户在其设备上安装了包"com.google.android.gm“。在任何语言中,确保在特定的字符串和初始化中检查null。

请参阅Launch an application from another application on Android

票数 72
EN

Stack Overflow用户

发布于 2014-02-11 19:29:41

不建议使用包名,因为它是一种未记录的方法。如果某一天包名称发生了变化,代码将会失败。

请尝试使用此代码

代码语言:javascript
运行
复制
 Intent emailIntent = new Intent(Intent.ACTION_SENDTO, Uri.fromParts(
 "mailto", "abc@gmail.com", null));
 emailIntent.putExtra(Intent.EXTRA_SUBJECT, "This is my subject text");
 context.startActivity(Intent.createChooser(emailIntent, null));

参考:http://developer.android.com/reference/android/content/Intent.html#ACTION_SENDTO\

票数 21
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/3470042

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档