You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Android应用集成Zoom会议一键加入按钮实现求助

Android 实现点击按钮打开Zoom并加入指定会议

步骤1:配置权限(Android 11+ 必需)

在AndroidManifest.xml中添加应用查询权限,确保能检测Zoom是否安装:

<!-- 精准查询Zoom应用,比QUERY_ALL_PACKAGES更合规 -->
<queries>
    <package android:name="us.zoom.videomeetings" />
</queries>

步骤2:添加按钮到布局

在你的Activity布局文件(比如activity_main.xml)中加入触发按钮:

<Button
    android:id="@+id/joinZoomMeetingBtn"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text="加入Zoom会议" />

步骤3:处理按钮点击逻辑

下面提供Kotlin和Java两种实现,选你熟悉的语言即可:

Kotlin 实现

import android.content.Intent
import android.content.pm.PackageManager
import android.net.Uri
import android.os.Bundle
import android.widget.Button
import android.widget.Toast
import androidx.appcompat.app.AppCompatActivity

class MainActivity : AppCompatActivity() {
    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setContentView(R.layout.activity_main)

        val joinBtn = findViewById<Button>(R.id.joinZoomMeetingBtn)
        joinBtn.setOnClickListener {
            // 替换为你的实际会议ID和密码
            val targetMeetingId = "1234567890"
            val targetMeetingPwd = "abc123"

            val zoomPackage = "us.zoom.videomeetings"
            val packageManager = packageManager
            val isZoomInstalled = try {
                packageManager.getPackageInfo(zoomPackage, 0)
                true
            } catch (e: PackageManager.NameNotFoundException) {
                false
            }

            if (isZoomInstalled) {
                // 构建Zoom跳转链接,直接唤起应用加入会议
                val zoomUri = Uri.parse("zoomus://zoom.us/join?confno=$targetMeetingId&pwd=$targetMeetingPwd")
                val intent = Intent(Intent.ACTION_VIEW, zoomUri).apply {
                    setPackage(zoomPackage) // 指定仅Zoom打开,避免弹出选择器
                }
                startActivity(intent)
            } else {
                // 未安装Zoom时提示并跳转应用商店
                Toast.makeText(this, "请先安装Zoom应用", Toast.LENGTH_SHORT).show()
                val marketIntent = Intent(Intent.ACTION_VIEW, Uri.parse("market://details?id=$zoomPackage"))
                startActivity(marketIntent)
            }
        }
    }
}

Java 实现

import android.content.Intent;
import android.content.pm.PackageManager;
import android.net.Uri;
import android.os.Bundle;
import android.widget.Button;
import android.widget.Toast;
import androidx.appcompat.app.AppCompatActivity;

public class MainActivity extends AppCompatActivity {
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        Button joinBtn = findViewById(R.id.joinZoomMeetingBtn);
        joinBtn.setOnClickListener(v -> {
            // 替换为你的实际会议ID和密码
            String targetMeetingId = "1234567890";
            String targetMeetingPwd = "abc123";

            String zoomPackage = "us.zoom.videomeetings";
            PackageManager packageManager = getPackageManager();
            boolean isZoomInstalled;
            try {
                packageManager.getPackageInfo(zoomPackage, 0);
                isZoomInstalled = true;
            } catch (PackageManager.NameNotFoundException e) {
                isZoomInstalled = false;
            }

            if (isZoomInstalled) {
                Uri zoomUri = Uri.parse("zoomus://zoom.us/join?confno=" + targetMeetingId + "&pwd=" + targetMeetingPwd);
                Intent intent = new Intent(Intent.ACTION_VIEW, zoomUri);
                intent.setPackage(zoomPackage);
                startActivity(intent);
            } else {
                Toast.makeText(this, "请先安装Zoom应用", Toast.LENGTH_SHORT).show();
                Intent marketIntent = new Intent(Intent.ACTION_VIEW, Uri.parse("market://details?id=" + zoomPackage));
                startActivity(marketIntent);
            }
        });
    }
}

关键注意事项

  • 务必替换代码中的targetMeetingId和targetMeetingPwd为你创建的会议实际信息
  • 如果你的会议没有设置密码,直接移除URI中的&pwd=$targetMeetingPwd部分即可
  • setPackage(zoomPackage)能确保直接打开Zoom,不会弹出应用选择器,提升用户体验

内容的提问来源于stack exchange,提问作者Leonard Alphonso

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.28 03:12:55