【发布时间】:2018-01-25 05:59:09
【问题描述】:
当我尝试通过 kotlin 使用意图发送电子邮件时发生崩溃
这是我的功能
/**
* intentEmail is called when we need to send email
*
* @param price int
*/
fun intentEmail(price: Int) {
var intent = Intent(Intent.ACTION_SEND)
//intent.putExtra(Intent.EXTRA_EMAIL, addressees)
intent.data= Uri.parse("mailto:")
intent.putExtra(Intent.EXTRA_SUBJECT, "Just Java order for $name")
intent.putExtra(Intent.EXTRA_TEXT, createOrderSummary(price))
if(intent.resolveActivity(packageManager) != null){
startActivity(intent)
}
}
调用startActivity(intent)时发生崩溃
【问题讨论】:
-
使用 LogCat 检查与您的崩溃相关的 Java 堆栈跟踪:stackoverflow.com/questions/23353173/… 另外,请注意
ACTION_SEND不使用Uri,因此您应该删除intent.data= Uri.parse("mailto:")行。 -
您是否在清单文件中添加了权限?
-
@CommonsWare 我附上了 LogCat 也评论了 intent.data 行,但没有崩溃,但应用程序没有做任何事情
-
@SígvardrÓlavrsson 你是指哪些权限?
-
1.我建议您阅读 android 文档 (developer.android.com/guide/components/…)。它指出,对于没有附件,您应该使用“ACTION_SENDTO”作为操作。
标签: android android-intent kotlin