gpt4 book ai didi

android - 在Android App中单击按钮时如何打开Gmail Compose?

转载 作者:IT王子 更新时间:2023-10-28 23:33:11 25 4
gpt4 key购买 nike

我试图在我的 Android 应用程序中单击按钮时打开 Gmail 撰写屏幕。我需要谷歌的一些 API key 吗?或者我需要在我的按钮 onClickListener 中做什么?

非常感谢任何形式的见解。

最佳答案

正如 JeffC 所指出的,很容易告诉 Android 您想要发送类似电子邮件的内容,并让 Android 为用户提供一个选择列表,其中可能包括 GMail。如果你特别想要 GMail,你必须更聪明一点。 (请注意,正确的 MIME 类型实际上是“text/plain”,而不是“plain/text”。为了实现奇怪,GMail 似乎是唯一响应后者的 Activity ,但这不是我想要的行为指望。)

以下 App 展示了您可以遵循的原则:实际检查所有声称可以处理您的 SEND Intent 的 Activity ,看看它们中是否有任何看起来像 GMail。

package com.stackoverflow.beekeeper;

import android.app.Activity;
import android.content.Intent;
import android.content.pm.PackageManager;
import android.content.pm.ResolveInfo;
import android.os.Bundle;

import java.util.List;

public class StackOverflowTest extends Activity {
/** Called when the activity is first created. */
@Override
public void onCreate(final Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
final Intent intent = new Intent(android.content.Intent.ACTION_SEND);
intent.setType("text/plain");
final PackageManager pm = getPackageManager();
final List<ResolveInfo> matches = pm.queryIntentActivities(intent, 0);
ResolveInfo best = null;
for (final ResolveInfo info : matches)
if (info.activityInfo.packageName.endsWith(".gm") ||
info.activityInfo.name.toLowerCase().contains("gmail")) best = info;
if (best != null)
intent.setClassName(best.activityInfo.packageName, best.activityInfo.name);
startActivity(intent);
}
}

关于android - 在Android App中单击按钮时如何打开Gmail Compose?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3935009/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com